MiuiCamera: Initial Poco F3 Repository
- Includes following changes: * Import Xiaomi MiSys Hal and Sepolicy * Import needed camera permissions * Import Camera Postprocessing * Import Poco F3 / Mi 11x Device Features [For Miui Deps] * Import camxoverride settings & tune down CameraX logging * Import needed camera prebuilts for Poco F3 AOSP Device trees * Import Leica/Miui Camera mod 5.x by https://t.me/itzdfplayer & HollyBear * Create device-specific config overlay for following Camera to enable appropriate features * Import device-specific OpenCL * Import AOSP and LOS aux camera overlays * Import appropriate sepolicy for Poco F3 / Mi11x - Repo requires: * Have device-side hides in libinit for .mod_device and .name * Import MiSys entries to FCM [Example:47e3f385a6] * Enable newer HIDL overrideFormat [4d9f9a23e9] * Build camera for Jemalloc [c5d5ea6706] * Set TARGET_CAMERA_PACKAGE_NAME for vendor tags [60ad521bf1] -> [c4fbccafa0] Used changes from following authors: Co-authored-by: UtsavBalar1231 <utsavbalar1231@gmail.com> Co-authored-by: ItzDFPlayer <deniskovalevskiy91@gmail.com> Co-authored-by: chrisl7 <wandersonrodriguesf1@gmail.com>
This commit is contained in:
4
sepolicy/camera/vendor/attributes
vendored
Normal file
4
sepolicy/camera/vendor/attributes
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
# Camera
|
||||
attribute vendor_hal_camerapostproc_xiaomi;
|
||||
attribute vendor_hal_camerapostproc_xiaomi_client;
|
||||
attribute vendor_hal_camerapostproc_xiaomi_server;
|
||||
119
sepolicy/camera/vendor/file_contexts
vendored
Normal file
119
sepolicy/camera/vendor/file_contexts
vendored
Normal file
@@ -0,0 +1,119 @@
|
||||
# Camera Data Path
|
||||
/data/user/0/com.android.camera(/.*)? u:object_r:app_data_file:s0
|
||||
/data/user/0/com.miui.extraphoto(/.*)? u:object_r:app_data_file:s0
|
||||
|
||||
# Miui Gallery
|
||||
/data/user/0/com.miui.gallery(/.*)? u:object_r:app_data_file:s0
|
||||
/data/user/0/com.miui.mediaeditor(/.*)? u:object_r:app_data_file:s0
|
||||
|
||||
# PostProcessing
|
||||
/(vendor|system/vendor)/bin/hw/vendor\.xiaomi\.hardware\.campostproc@1\.0-service u:object_r:hal_camerapostproc_xiaomi_default_exec:s0
|
||||
|
||||
# General Rules
|
||||
/vendor/lib(64)?/libmialgoengine\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libmpbase\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libmibokeh_855\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libmialgo_image_colourkeeping\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libSuperSensor\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libSuperSensorCPU\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libHalSuperSensorServer\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libSuperSensor_skel\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libmorpho_HDSR\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libHalSuperSensorServerCWrapper\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libarcsoft_beautyshot\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libarcsoft_dualcam_refocus\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libarcsoft_dualcam_refocus_rear_t\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libarcsoft_dualcam_refocus_rear_w\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libarcsoft_dualcam_refocus_front\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libarcsoft_dualcam_refocus_image\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libarcsoft_dualcam_refocus_video\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libarcsoft_portrait_lighting\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libarcsoft_portrait_lighting_c\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libarcsoft_mf_superresolution\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libsupermoon\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libarcsoft_high_dynamic_range\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libarcsoft_high_dynamic_range_v5\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libarcsoft_low_light_hdr\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libalCFR\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libalCFRLV\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libarcsoft_distortion_correction\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libarcsoft_bodyslim\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libcvp2\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libcvp2_hfi\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libcvp\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libcvp_stub\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libcvp_common\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libalhLDC\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libalAILDC\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libwa_widelens_undistort\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libflaw\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libsdk_sr\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libst_sr_models\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/lib_sr_models\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libarcsoft_superportrait\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libmialgo_ie_capture\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libmialgo_basic\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libmialgo_utils\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libmiphone_bokeh_effect\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libmiphone_bokeh_rectify\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libmiphone_bokeh_proc\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libmiphone_bokeh_gpf\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libmialgo_bokeh\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libmiphone_bokeh_depth\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libcamera_scene_dxo\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libcamera_scene\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libportrait_blur\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libmibokeh_mask\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/librelight_only\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libFaceDetLmd\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/rfsa/adsp(/.*)? u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libMIAIHDRhvx_interface\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/rfsa/adsp/libMIAIHDR_skel\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/rfsa/adsp/libapps_mem_heap\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libxmi_high_dynamic_range\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libxmi_high_dynamic_range_cdsp\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/rfsa/adsp/libhdr_cdsp_skel\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libsymphony-cpu\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libc\+\+_shared\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libwa_opticalzoom_fusion\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libmiStereoFactoryRemapLib\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libmibokeh_712\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libbeauty_face_interface\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libmiai_portraitsupernight\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libxml2_vendor\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libmiphone_capture_ldc\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libSNPE\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libsnpe_dsp_domains_v2\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libPlatformValidatorShared\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libmiai_deblur\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libmialgoengine2\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libcom.xiaomi.pluginutils\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/com.xiaomi.plugin.memcpy\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/com.xiaomi.plugin.hdr\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/com.xiaomi.plugin.skinbeautifier\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/com.xiaomi.plugin.aiasd\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/com.xiaomi.plugin.depurple\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/com.xiaomi.plugin.ldc\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/com.xiaomi.plugin.dc\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/com.xiaomi.plugin.mibokeh\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/com.xiaomi.plugin.miaiie\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/com.xiaomi.plugin.capbokeh\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/com.xiaomi.plugin.sr\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/com.qcom.plugin.gpu\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/com.xiaomi.plugin.miflaw\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/com.xiaomi.plugin.misegment\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/com.xiaomi.plugin.mifragment\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/com.xiaomi.plugin.bodyslim\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/com.xiaomi.plugin.superportrait\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/com.xiaomi.plugin.supernight\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/com.xiaomi.plugin.miaideblur\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libsnpe_dsp_skel\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libsnpe_dsp_domains_skel\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libsnpe_dsp_v65_domains_v2_skel\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libsnpe_dsp_v66_domains_v2_skel\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libanc_dc_base\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libwa_dof\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libwa_refocus\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libwa_depth\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libxmi_hdr_checker\.so u:object_r:same_process_hal_file:s0
|
||||
/vendor/lib(64)?/libmiStereoFactoryRemapBasicLib\.so u:object_r:same_process_hal_file:s0
|
||||
24
sepolicy/camera/vendor/hal_camera_default.te
vendored
Normal file
24
sepolicy/camera/vendor/hal_camera_default.te
vendored
Normal file
@@ -0,0 +1,24 @@
|
||||
binder_call(hal_camera_default, platform_app)
|
||||
|
||||
allow hal_camera_default mnt_vendor_file:dir { search };
|
||||
allow hal_camera_default proc_stat:file { open read };
|
||||
allow hal_camera_default vendor_xdsp_device:chr_file { read };
|
||||
|
||||
# Allow Camera to access system_server
|
||||
allow hal_camera_default system_server:binder { call transfer };
|
||||
|
||||
# Camera Post Processing
|
||||
type vendor_hal_camerapostproc_xiaomi_hwservice, hwservice_manager_type;
|
||||
|
||||
hal_server_domain(hal_camera_default, vendor_hal_camerapostproc_xiaomi)
|
||||
add_hwservice(hal_camera_server, vendor_hal_camerapostproc_xiaomi_hwservice)
|
||||
|
||||
allow hal_camera_client vendor_hal_camerapostproc_xiaomi_hwservice:hwservice_manager find;
|
||||
|
||||
# Allow camera to access /data/misc
|
||||
typeattribute hal_camera_default data_between_core_and_vendor_violators;
|
||||
|
||||
# Allow camera to access /data/misc
|
||||
allow hal_camera_default camera_data_file:sock_file write;
|
||||
allow hal_camera_default camera_data_file:dir create_dir_perms;
|
||||
allow hal_camera_default camera_data_file:file create_file_perms;
|
||||
8
sepolicy/camera/vendor/hal_camerapostproc_xiaomi.te
vendored
Normal file
8
sepolicy/camera/vendor/hal_camerapostproc_xiaomi.te
vendored
Normal file
@@ -0,0 +1,8 @@
|
||||
type hal_camerapostproc_xiaomi_default_exec, exec_type, vendor_file_type, file_type;
|
||||
|
||||
add_hwservice(vendor_hal_camerapostproc_xiaomi_server, vendor_hal_camerapostproc_xiaomi_hwservice)
|
||||
|
||||
allow vendor_hal_camerapostproc_xiaomi_client vendor_hal_camerapostproc_xiaomi_hwservice:hwservice_manager find;
|
||||
|
||||
binder_call(vendor_hal_camerapostproc_xiaomi_client, vendor_hal_camerapostproc_xiaomi_server)
|
||||
binder_call(vendor_hal_camerapostproc_xiaomi_server, vendor_hal_camerapostproc_xiaomi_client)
|
||||
1
sepolicy/camera/vendor/hwservice.te
vendored
Normal file
1
sepolicy/camera/vendor/hwservice.te
vendored
Normal file
@@ -0,0 +1 @@
|
||||
type hal_xiaomi_camera_hwservice, hwservice_manager_type;
|
||||
2
sepolicy/camera/vendor/hwservice_contexts
vendored
Normal file
2
sepolicy/camera/vendor/hwservice_contexts
vendored
Normal file
@@ -0,0 +1,2 @@
|
||||
# Camera
|
||||
vendor.xiaomi.hardware.campostproc::IMiPostProcService u:object_r:hal_xiaomi_camera_hwservice:s0
|
||||
30
sepolicy/camera/vendor/platform_app.te
vendored
Normal file
30
sepolicy/camera/vendor/platform_app.te
vendored
Normal file
@@ -0,0 +1,30 @@
|
||||
# Allow to execute data files
|
||||
allow platform_app app_data_file:file execute;
|
||||
|
||||
# Allow to find camera hal
|
||||
allow platform_app hal_xiaomi_camera_hwservice:hwservice_manager find;
|
||||
|
||||
# Allow to call camera hidl
|
||||
binder_call(platform_app, hal_camera_default)
|
||||
|
||||
# Allow to read camera props
|
||||
get_prop(platform_app, vendor_camera_prop)
|
||||
get_prop(platform_app, vendor_camera_sensor_prop)
|
||||
|
||||
allow platform_app cgroup:file r_file_perms;
|
||||
|
||||
# Allow to read display props
|
||||
get_prop(platform_app, vendor_display_prop)
|
||||
|
||||
# Allow to read audio props
|
||||
get_prop(platform_app, vendor_audio_prop)
|
||||
|
||||
# Allow to access proc/stat
|
||||
allow platform_app proc_stat:file read;
|
||||
|
||||
# Camera Post Processing
|
||||
typeattribute platform_app halclientdomain;
|
||||
typeattribute platform_app vendor_hal_camerapostproc_xiaomi_client;
|
||||
|
||||
allow platform_app { vendor_hal_camerapostproc_xiaomi_hwservice hal_misys_hwservice }:hwservice_manager find;
|
||||
|
||||
1
sepolicy/camera/vendor/property.te
vendored
Normal file
1
sepolicy/camera/vendor/property.te
vendored
Normal file
@@ -0,0 +1 @@
|
||||
vendor_public_prop(vendor_camera_sensor_prop)
|
||||
5
sepolicy/camera/vendor/property_contexts
vendored
Normal file
5
sepolicy/camera/vendor/property_contexts
vendored
Normal file
@@ -0,0 +1,5 @@
|
||||
# Camera Vendor Props
|
||||
persist.vendor.low.cutoff u:object_r:vendor_camera_prop:s0
|
||||
|
||||
# Camera Persist Props
|
||||
vendor.camera.skip_unconfigure.packagelist u:object_r:vendor_persist_camera_prop:s0
|
||||
1
sepolicy/camera/vendor/vendor_hal_camerapostproc_xiaomi.te
vendored
Normal file
1
sepolicy/camera/vendor/vendor_hal_camerapostproc_xiaomi.te
vendored
Normal file
@@ -0,0 +1 @@
|
||||
allow vendor_hal_camerapostproc_xiaomi platform_app:binder transfer;
|
||||
Reference in New Issue
Block a user