android_device_xiaomi_sdm66.../rootdir/etc/init.target.rc
Adithya R fbd91b6f05 sdm660-common: init: Add MIUI camera flag from stock
* Prebuilt libcameraservice sets this prop to 1 if the running camera
   app is MIUI/ANX camera, and 0 otherwise

 * This is needed to unlock all functions of MIUI/ANX camera in
   the camera HAL, such as pro mode controls, beauty modes, portrait
   depth slider and much more, and mainly fixes excess noise in
   camera shots taken with our ultrawide lens

 * We won't keep the prop enabled by default because as long as its
   enabled, gcam/mods crash immediately on launch and we don't want
   that. So let's retain the stock behaviour instead.

[clarencelol]: * avc: denied { set } for property=sys.camera.miui.apk pid=1008 uid=1047 gid=1005 scontext=u:object_r:system_prop:s0 tclass=property_service permissive=0

Signed-off-by: clarencelol <clarencekuiek@icloud.com>
Signed-off-by: pix106 <sbordenave@gmail.com>
2022-02-21 06:52:18 +01:00

354 lines
14 KiB
Text
Executable file

# Copyright (c) 2013-2018, The Linux Foundation. All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are
# met:
# * Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
# * Redistributions in binary form must reproduce the above
# copyright notice, this list of conditions and the following
# disclaimer in the documentation and/or other materials provided
# with the distribution.
# * Neither the name of The Linux Foundation nor the names of its
# contributors may be used to endorse or promote products derived
# from this software without specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED
# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS
# BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
# BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
# OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
# IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#
#
on early-init
# Disable EAS
write /proc/sys/kernel/sched_energy_aware 0
on init
# Add a cpuset for the camera daemon
mkdir /dev/cpuset/camera-daemon 0750 cameraserver cameraserver
write /dev/cpuset/camera-daemon/cpus 0-7
write /dev/cpuset/camera-daemon/mems 0
chown cameraserver cameraserver /dev/cpuset/camera-daemon/tasks
chmod 0660 /dev/cpuset/camera-daemon/tasks
# Create an stune group for camera-specific processes
mkdir /dev/stune/camera-daemon
write /dev/stune/camera-daemon/schedtune.prefer_idle 1
write /dev/stune/camera-daemon/schedtune.boost 0
chown system system /dev/stune/camera-daemon
chown system system /dev/stune/camera-daemon/tasks
chmod 0664 /dev/stune/camera-daemon/tasks
mkdir /dev/cpuset/system 0750 root system
write /dev/cpuset/system/cpus 0
write /dev/cpuset/system/mems 0
chown system system /dev/cpuset/system/tasks
chmod 0660 /dev/cpuset/system/tasks
mkdir /dev/cpuset/system/performance 0750 root system
write /dev/cpuset/system/performance/cpus 0
write /dev/cpuset/system/performance/mems 0
chown system system /dev/cpuset/system/performance/tasks
chmod 0660 /dev/cpuset/system/performance/tasks
mkdir /dev/cpuset/system/background 0750 root system
write /dev/cpuset/system/background/cpus 0
write /dev/cpuset/system/background/mems 0
chown system system /dev/cpuset/system/background/tasks
chmod 0660 /dev/cpuset/system/background/tasks
mkdir /dev/cpuset/application 0750 root system
write /dev/cpuset/application/cpus 0
write /dev/cpuset/application/mems 0
chown system system /dev/cpuset/application/tasks
chmod 0660 /dev/cpuset/application/tasks
mkdir /dev/cpuset/application/performance 0750 root system
write /dev/cpuset/application/performance/cpus 0
write /dev/cpuset/application/performance/mems 0
chown system system /dev/cpuset/application/performance/tasks
chmod 0660 /dev/cpuset/application/performance/tasks
mkdir /dev/cpuset/application/background 0750 root system
write /dev/cpuset/application/background/cpus 0
write /dev/cpuset/application/background/mems 0
chown system system /dev/cpuset/application/background/tasks
chmod 0660 /dev/cpuset/application/background/tasks
write /dev/cpuset/kernel/cpus 0-7
write /dev/cpuset/system/cpus 0-7
write /dev/cpuset/system/performance/cpus 0-7
write /dev/cpuset/system/background/cpus 0-7
write /dev/cpuset/system/cpus 0-7
write /dev/cpuset/application/cpus 0-7
write /dev/cpuset/application/performance/cpus 0-7
write /dev/cpuset/application/background/cpus 0-7
write /dev/cpuset/application/cpus 0-7
# Setup permission for Power HAL
chown system system /dev/stune/top-app/schedtune.boost
chown system system /sys/class/kgsl/kgsl-3d0/devfreq/min_freq
chown system system /sys/class/kgsl/kgsl-3d0/devfreq/max_freq
chown system system /sys/class/kgsl/kgsl-3d0/force_rail_on
chown system system /sys/class/kgsl/kgsl-3d0/force_clk_on
chown system system /sys/class/kgsl/kgsl-3d0/idle_timer
chown system system /sys/class/devfreq/soc:qcom,gpubw/min_freq
chown system system /sys/class/devfreq/soc:qcom,cpu-cpu-ddr-bw/max_freq
chown system system /sys/class/devfreq/soc:qcom,cpu-cpu-ddr-bw/min_freq
chown system system /sys/class/devfreq/soc:qcom,cpu-cpu-ddr-bw/bw_hwmon/hist_memory
chown system system /sys/class/devfreq/soc:qcom,cpu-cpu-ddr-bw/bw_hwmon/hyst_length
chown system system /sys/class/devfreq/soc:qcom,cpu-cpu-ddr-bw/bw_hwmon/hyst_trigger_count
chown system system /sys/class/devfreq/soc:qcom,cpu-cpu-ddr-bw/bw_hwmon/io_percent
chown system system /sys/class/devfreq/soc:qcom,cpu-cpu-ddr-bw/bw_hwmon/sample_ms
chown system system /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq
chown system system /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq
chown system system /sys/devices/system/cpu/cpu4/cpufreq/scaling_max_freq
chown system system /sys/devices/system/cpu/cpu4/cpufreq/scaling_min_freq
chmod 0664 /dev/stune/top-app/schedtune.boost
chmod 0664 /sys/class/kgsl/kgsl-3d0/devfreq/min_freq
chmod 0664 /sys/class/kgsl/kgsl-3d0/devfreq/max_freq
chmod 0664 /sys/class/kgsl/kgsl-3d0/force_rail_on
chmod 0664 /sys/class/kgsl/kgsl-3d0/force_clk_on
chmod 0664 /sys/class/kgsl/kgsl-3d0/idle_timer
chmod 0664 /sys/class/devfreq/soc:qcom,gpubw/min_freq
chmod 0664 /sys/class/devfreq/soc:qcom,cpu-cpu-ddr-bw/max_freq
chmod 0664 /sys/class/devfreq/soc:qcom,cpu-cpu-ddr-bw/min_freq
chmod 0664 /sys/class/devfreq/soc:qcom,cpu-cpu-ddr-bw/bw_hwmon/hist_memory
chmod 0664 /sys/class/devfreq/soc:qcom,cpu-cpu-ddr-bw/bw_hwmon/hyst_length
chmod 0664 /sys/class/devfreq/soc:qcom,cpu-cpu-ddr-bw/bw_hwmon/hyst_trigger_count
chmod 0664 /sys/class/devfreq/soc:qcom,cpu-cpu-ddr-bw/bw_hwmon/io_percent
chmod 0664 /sys/class/devfreq/soc:qcom,cpu-cpu-ddr-bw/bw_hwmon/sample_ms
chmod 0664 /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq
chmod 0664 /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq
chmod 0664 /sys/devices/system/cpu/cpu4/cpufreq/scaling_max_freq
chmod 0664 /sys/devices/system/cpu/cpu4/cpufreq/scaling_min_freq
chown system system /sys/module/battery_saver/parameters/enabled
chmod 0664 /sys/module/battery_saver/parameters/enabled
# Change permissions for /dev/diag
chmod 0666 /dev/diag
on fs
wait /dev/block/platform/soc/${ro.boot.bootdevice}
symlink /dev/block/platform/soc/${ro.boot.bootdevice} /dev/block/bootdevice
mount_all /vendor/etc/fstab.qcom
swapon_all /vendor/etc/fstab.qcom
chown root system /mnt/vendor/persist
chmod 0771 /mnt/vendor/persist
mkdir /mnt/vendor/persist/data 0700 system system
mkdir /mnt/vendor/persist/bms 0700 root system
restorecon_recursive /mnt/vendor/persist
write /sys/kernel/boot_adsp/boot 1
mkdir /mnt/vendor/dsp 0770 root root
copy /vendor/dsp/cdsp/fastrpc_shell_3 /mnt/vendor/dsp/fastrpc_shell_3
chmod 0644 /mnt/vendor/dsp/fastrpc_shell_3
mount none /mnt/vendor/dsp/fastrpc_shell_3 /vendor/dsp/cdsp/fastrpc_shell_3 bind
on post-fs
start vendor.qseecomd
wait_for_prop vendor.sys.listeners.registered true
on init
write /sys/module/qpnp_rtc/parameters/poweron_alarm 1
on post-fs-data
mkdir /data/tombstones/modem 0771 system system
mkdir /data/tombstones/lpass 0771 system system
mkdir /data/tombstones/wcnss 0771 system system
mkdir /data/tombstones/dsps 0771 system system
on early-boot
write /dev/ipa 1
# Enable charging led trigger
write /sys/class/leds/red/trigger battery-charging
on boot
start vendor.rmt_storage
start rfs_access
# Thermal
chmod 0664 /sys/class/thermal/thermal_message/sconfig
chown system system /sys/class/thermal/thermal_message/sconfig
chmod 0666 /sys/class/thermal/thermal_message/temp_state
chown system system /sys/class/thermal/thermal_message/temp_state
# Cpusets
write /dev/cpuset/top-app/cpus 0-7
write /dev/cpuset/foreground/cpus 0-7
write /dev/cpuset/foreground/boost/cpus 0-7
write /dev/cpuset/background/cpus 0-1
write /dev/cpuset/system-background/cpus 0-2
####Regionalization config and prop files####
chmod 0644 /persist/speccfg/spec
chmod 0644 /persist/speccfg/devicetype
chmod 0644 /persist/speccfg/mbnversion
chmod 0644 /persist/speccfg/.not_triggered
chmod 0644 /persist/speccfg/vendor_ro.prop
chmod 0644 /persist/speccfg/vendor_persist.prop
chmod 0644 /persist/speccfg/submask
chmod 0644 /persist/speccfg/partition
chown system system /persist/speccfg/spec
chown system system /persist/speccfg/devicetype
chown system system /persist/speccfg/mbnversion
chown system system /persist/speccfg/.not_triggered
chown system system /persist/speccfg/vendor_ro.prop
chown system system /persist/speccfg/vendor_persist.prop
chown system system /persist/speccfg/submask
chown system system /persist/speccfg/partition
#Create folder dump yuv images while debugging
mkdir /data/vendor/camera 0770 camera camera
#Load WLAN driver
insmod /vendor/lib/modules/wlan.ko
#USB controller configuration
setprop vendor.usb.rndis.func.name "rndis_bam"
setprop vendor.usb.rmnet.func.name "rmnet_bam"
setprop vendor.usb.rmnet.inst.name "rmnet"
setprop vendor.usb.dpl.inst.name "dpl"
setprop vendor.usb.qdss.inst.name "qdss"
setprop vendor.usb.controller a800000.dwc3
setprop sys.usb.configfs 1
write /sys/module/usb_f_qcrndis/parameters/rndis_dl_max_xfer_size 15916
on boot && property:persist.vendor.usb.controller.default=*
setprop vendor.usb.controller ${persist.vendor.usb.controller.default}
on property:vendor.usb.controller=*
setprop sys.usb.controller ${vendor.usb.controller}
# Touchpanel
chown system system /sys/touchpanel/double_tap
chmod 0664 /sys/touchpanel/double_tap
# SmartCharging
chown system system /sys/class/power_supply/battery/charging_enabled
chmod 0666 /sys/class/power_supply/battery/charging_enabled
#Peripheral manager
service vendor.per_mgr /system/vendor/bin/pm-service
class core
user system
group system
ioprio rt 4
service vendor.per_proxy /system/vendor/bin/pm-proxy
class core
user system
group system
disabled
on property:init.svc.vendor.per_mgr=running
start vendor.per_proxy
on property:sys.shutdown.requested=*
stop vendor.per_proxy
## import cne init file
#on post-fs
# export LD_PRELOAD /vendor/lib/libNimsWrap.so
#
## Allow usb charging to be disabled peristently
#on property:persist.usb.chgdisabled=1
# write /sys/class/power_supply/battery/charging_enabled 0
#
#on property:persist.usb.chgdisabled=0
# write /sys/class/power_supply/battery/charging_enabled 1
#
service vendor.qseecomd /vendor/bin/qseecomd
class core
user root
group root
#on boot
# insmod /system/lib/modules/adsprpc.ko
# insmod /system/lib/modules/mhi.ko
## access permission for secure touch
# chmod 0660 /sys/devices/f9966000.i2c/i2c-1/1-004a/secure_touch_enable
# chmod 0440 /sys/devices/f9966000.i2c/i2c-1/1-004a/secure_touch
# chmod 0660 /sys/devices/f9966000.i2c/i2c-1/1-0020/secure_touch_enable
# chmod 0440 /sys/devices/f9966000.i2c/i2c-1/1-0020/secure_touch
# chown system drmrpc /sys/devices/f9966000.i2c/i2c-1/1-004a/secure_touch_enable
# chown system drmrpc /sys/devices/f9966000.i2c/i2c-1/1-004a/secure_touch
# chown system drmrpc /sys/devices/f9966000.i2c/i2c-1/1-0020/secure_touch_enable
# chown system drmrpc /sys/devices/f9966000.i2c/i2c-1/1-0020/secure_touch
#
service vendor.pd_mapper /system/vendor/bin/pd-mapper
class core
service ppd /system/vendor/bin/mm-pp-dpps
class late_start
user system
group system graphics
socket pps stream 0660 system system
disabled
on property:init.svc.surfaceflinger=stopped
stop ppd
on property:init.svc.surfaceflinger=running
start ppd
on property:init.svc.surfaceflinger=restarting
stop ppd
on property:init.svc.zygote=stopped
stop ppd
on property:init.svc.zygote=running
start ppd
on property:init.svc.zygote=restarting
stop ppd
on charger
start qcom-post-boot
start vendor.hvdcp_opti
setprop vendor.usb.controller a800000.dwc3
setprop sys.usb.configfs 1
start vendor.power_off_alarm
service vendor.hvdcp_opti /system/vendor/bin/hvdcp_opti
class main
user root
group system wakelock
on property:sys.boot_completed=1
# Enable EAS
write /proc/sys/kernel/sched_energy_aware 1
# Setup final cpuset
write /dev/cpuset/top-app/cpus 0-7
write /dev/cpuset/foreground/cpus 0-3,6-7
write /dev/cpuset/background/cpus 0-1
write /dev/cpuset/system-background/cpus 0-3
write /dev/cpuset/restricted/cpus 0-3
# Schedtune
write /dev/stune/foreground/schedtune.prefer_idle 1
write /dev/stune/foreground/schedtune.prefer_high_cap 0
write /dev/stune/foreground/schedtune.boost 0
write /dev/stune/schedtune.prefer_idle 0
write /dev/stune/schedtune.prefer_high_cap 0
write /dev/stune/schedtune.boost 0
write /dev/stune/top-app/schedtune.prefer_idle 1
write /dev/stune/top-app/schedtune.prefer_high_cap 0
write /dev/stune/top-app/schedtune.boost 1
# MIUI camera flag
on property:sys.camera.miui.apk=*
setprop vendor.camera.miui.apk ${sys.camera.miui.apk}