Files
device_xiaomi_stone/rootdir/etc/init.target.rc
kamikaonashi 186dbed08e [SQUASH] stone:parts: Implement HBM & Auto HBM
m8250-common: hbm: Add preference for time-based HBM disable

To specify a duration after which High Brightness Mode (HBM)
is automatically disabled if the lux level falls below the
defined threshold.

[EmanuelCN: Use thread sleep and recheck lux after timeToDisableHBM]

Signed-off-by: AnierinB <anierin@evolution-x.org>

sm8250-common: hbm: Deactivate the HBM tile when the screen turns off

When the screen is turned off, HBM will shut down and the HBM tile should become inactive.

sm8250-common: hbm: Refresh the QS brightness slider whenever the HBM is activated

The brightness slider should be set to 100% when the HBM is activated.

sm8250-common: hbm: Avoid writing to the backlight when turning off the HBM

Not needed.

sm8250-common: hbm: Include a 7-second delay when turning off the HBM

The HBM turning off while walking through a shadow was frustrating. Address this issue by verifying if the threshold has been reached after the 7-second delay.

sm8250-common: sepolicy: allow parts to get SettingsLib prop

ThermalSettingsFragment's use of ApplicationsState includes a
check of whether a package is an instant app or not. The function
isInstant() in AppUtils reads settingsdebug.instant.packages prop
to retrieve a list of instant packages for debugging purposes.

We do not actually use this property, but this check triggers an
SELinux denial for every package in the list and spams the logs
with permission denied errors. Get rid of these log spams by
allowing parts to read the prop.

Test: open the thermal profile settings and check logs

sm8250-common: sepolicy: Allow devicesettings write to vendor_sysfs_graphics

sm8250-common: Disable hbm thermal throttle

adapted to stone (sm6375)

Co-Authored-By: Emanuel <emanuelghub@gmail.com>
Co-Authored-By: maxwen <max.weninger@gmail.com>
Co-Authored-By: Hikari-no-Tenshi <16803494+Hikari-no-Tenshi@users.noreply.github.com>
Co-Authored-By: Anierin Bliss <anierin@evolution-x.org>
Co-Authored-By: Alec Chan <88945170+alecchangod@users.noreply.github.com>
2024-05-07 23:17:44 +02:00

316 lines
11 KiB
Plaintext

# Copyright (c) 2019-2020, 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.
#
#
import /vendor/etc/init/hw/init.qti.kernel.rc
import /vendor/etc/init/hw/init.xiaomi.rc
on init
# Scheduler uclamp
mkdir /dev/cpuctl/foreground
mkdir /dev/cpuctl/background
mkdir /dev/cpuctl/top-app
mkdir /dev/cpuctl/rt
chown system system /dev/cpuctl
chown system system /dev/cpuctl/foreground
chown system system /dev/cpuctl/background
chown system system /dev/cpuctl/top-app
chown system system /dev/cpuctl/rt
chown system system /dev/cpuctl/tasks
chown system system /dev/cpuctl/foreground/tasks
chown system system /dev/cpuctl/background/tasks
chown system system /dev/cpuctl/top-app/tasks
chown system system /dev/cpuctl/rt/tasks
chmod 0664 /dev/cpuctl/tasks
chmod 0664 /dev/cpuctl/foreground/tasks
chmod 0664 /dev/cpuctl/background/tasks
chmod 0664 /dev/cpuctl/top-app/tasks
chmod 0664 /dev/cpuctl/rt/tasks
write /dev/cpuctl/foreground/cpu.rt_runtime_us 950000
write /dev/cpuctl/background/cpu.rt_runtime_us 950000
write /dev/cpuctl/top-app/cpu.rt_runtime_us 950000
write /dev/cpuctl/rt/cpu.rt_runtime_us 950000
wait /dev/block/platform/soc/${ro.boot.bootdevice}
symlink /dev/block/platform/soc/${ro.boot.bootdevice} /dev/block/bootdevice
start logd
chown system system /sys/class/drm/card0/card0-DSI-1/hbm
chmod 0664 /sys/class/drm/card0/card0-DSI-1/hbm
on early-fs
start vold
on fs
start hwservicemanager
mount_all --early
chown root system /mnt/vendor/persist
chmod 0771 /mnt/vendor/persist
restorecon_recursive /mnt/vendor/persist
mkdir /mnt/vendor/persist/data 0700 system system
mount ext4 /dev/block/bootdevice/by-name/rescue /mnt/rescue noatime
restorecon_recursive /mnt/rescue
on post-fs
# set RLIMIT_MEMLOCK to 64MB
setrlimit 8 67108864 67108864
on property:ro.factory_mode=1 && property:sys.boot_completed=1
chown system system /data/local/tmp
chmod 0777 /data/local/tmp
chmod 0666 /dev/block/sda9
# Bind mount brightness node
mount none /sys/class/backlight/panel0-backlight/brightness /sys/class/mi_display/disp-DSI-0/brightness_clone bind
on late-fs
wait_for_prop hwservicemanager.ready true
#exec_start wait_for_keymaster
start console
mount_all --late
on post-fs-data
mkdir /data/vendor/mac_addr 0771 system system
mkdir /data/vendor/thermal 0771 root system
mkdir /data/vendor/thermal/config 0771 root system
mkdir /data/vendor/wlan_logs 0777 root shell
mkdir /vendor/data/tombstones 0771 system system
on early-boot
start vendor.sensors
verity_update_state
on boot
chown system system /dev/cpuset/cgroup.procs
chown system system /dev/cpuset/foreground/cgroup.procs
chown system system /dev/cpuset/background/cgroup.procs
chown system system /dev/cpuset/system-background/cgroup.procs
chown system system /dev/cpuset/top-app/cgroup.procs
chmod 0666 /dev/cpuset/foreground/cgroup.procs
chmod 0666 /dev/cpuset/background/cgroup.procs
chmod 0666 /dev/cpuset/system-background/cgroup.procs
chmod 0666 /dev/cpuset/top-app/cgroup.procs
chmod 0666 /dev/cpuset/cgroup.procs
chown system system /dev/stune/background/cgroup.procs
chown system system /dev/stune/top-app/cgroup.procs
chmod 0666 /dev/stune/background/cgroup.procs
chmod 0666 /dev/stune/top-app/cgroup.procs
chown system system /sys/class/drm/card0-DSI-1/doze_brightness
chmod 0664 /sys/class/drm/card0-DSI-1/doze_brightness
chown system system /sys/class/drm/card0-DSI-1/disp_param
chmod 0664 /sys/class/drm/card0-DSI-1/disp_param
chown system system /sys/class/drm/card0-DSI-1/mipi_reg
chmod 0664 /sys/class/drm/card0-DSI-1/mipi_reg
chown system system /sys/class/drm/card0-DSI-1/panel_info
chmod 0444 /sys/class/drm/card0-DSI-1/panel_info
# Health
chmod 0660 /sys/class/power_supply/battery/input_suspend
chown system system /sys/class/power_supply/battery/input_suspend
write /dev/cpuset/audio-app/cpus 1-2
# Add a cpuset for the camera daemon
# We want all cores for camera
mkdir /dev/cpuset/camera-daemon
write /dev/cpuset/camera-daemon/cpus 0-7
write /dev/cpuset/camera-daemon/mems 0
chown cameraserver cameraserver /dev/cpuset/camera-daemon
chown cameraserver cameraserver /dev/cpuset/camera-daemon/tasks
chmod 0660 /dev/cpuset/camera-daemon/tasks
#USB controller configuration
setprop vendor.usb.rndis.func.name "gsi"
setprop vendor.usb.rmnet.func.name "gsi"
setprop vendor.usb.rmnet.inst.name "rmnet"
setprop vendor.usb.dpl.inst.name "dpl"
setprop vendor.usb.qdss.inst.name "qdss_mdm"
setprop vendor.usb.controller 4e00000.dwc3
#ExtR HONGMI-90116,wufa@wingtech.com,add,20210908,add mi_thermal
chmod 0664 /sys/class/thermal/thermal_message/sconfig
chown system system /sys/class/thermal/thermal_message/sconfig
chmod 0664 /sys/class/thermal/thermal_message/charger_temp
chmod 0664 /sys/class/thermal/thermal_message/flash_state
chmod 0664 /sys/class/thermal/thermal_message/balance_mode
chmod 0666 /sys/class/thermal/thermal_message/temp_state
chown system system /sys/class/thermal/thermal_message/temp_state
# add dual
mkdir /mnt/vendor/persist/camera 0777 system system
chmod 0777 /data/vendor/camera
chmod 0666 /mnt/vendor/persist/camera/rear_dc_cal_wd.bin
chmod 0666 /data/vendor/camera/com.xiaomi.dcal.wu.data
on property:vendor.display.lcd_density=560
setprop dalvik.vm.heapgrowthlimit 256m
on property:vendor.display.lcd_density=640
setprop dalvik.vm.heapgrowthlimit 512m
on boot && property:persist.vendor.usb.controller.default=*
setprop vendor.usb.controller ${persist.vendor.usb.controller.default}
on property:init.svc.vendor.charger=running
mount_all /vendor/etc/charger_fstab.qti --early
write /sys/kernel/boot_adsp/boot 1
#restart charger after ADSP is out of reset
#restart charger
start vendor.power_off_alarm
setprop sys.usb.controller 4e00000.dwc3
setprop sys.usb.configfs 1
#+ExtR HONGMI-90116,wufa@wingtech.com,add,20210908,add mi_thermal
start mi_thermald
#-ExtR HONGMI-90116,wufa@wingtech.com,add,20210908,add mi_thermal
#+ExtR HONGMI-90162,zhangb02@wingtech.com,add,20211003,add misound
service audioshell_service /vendor/bin/audioshell_service
oneshot
disabled
on property:ro.vendor.miui.region=*
start audioshell_service
#-ExtR HONGMI-90162,zhangbo2@wingtech.com,add,20211003,add misound
#pd-mapper
service vendor.pd_mapper /vendor/bin/pd-mapper
class core
user system
group system
#Peripheral manager
service vendor.per_mgr /vendor/bin/pm-service
class core
user system
group system
ioprio rt 4
service vendor.per_proxy /vendor/bin/pm-proxy
class core
user system
group system
disabled
#service vendor.mdm_helper /vendor/bin/mdm_helper
# class core
# group system wakelock
# disabled
service vendor.mdm_launcher /vendor/bin/sh /vendor/bin/init.mdm.sh
class core
oneshot
on property:init.svc.vendor.per_mgr=running
start vendor.per_proxy
on property:sys.shutdown.requested=*
stop vendor.per_proxy
#on property:vold.decrypt=trigger_restart_framework
# start vendor.cnss_diag
on property:persist.vendor.cnss_diag.enable=true
start vendor.cnss_diag
on property:persist.vendor.cnss_diag.enable=false
stop vendor.cnss_diag
service vendor.cnss_diag /system/vendor/bin/cnss_diag -q -f -t HELIUM
class main
user system
group system wifi inet sdcard_rw media_rw diag
disabled
oneshot
#ExtR HONGMI-90116,wufa@wingtech.com,add,20210908,add mi_thermal
service mi_thermald /system/vendor/bin/mi_thermald
class main
user root
group system
seclabel u:r:mi_thermald:s0
#-ExtR HONGMI-90116,wufa@wingtech.com,add,20210908,add mi_thermal
service svi_on /vendor/bin/ppd "svi:on"
class main
group root system
oneshot
disabled
on property:init.svc.vendor.nv_mac=stopped
start vendor.btmac-sh
service vendor.btmac-sh /vendor/bin/init.mi.btmac.sh
class late_start
user system
group system bluetooth wifi
oneshot
disabled
on property:ro.vendor.display.svi=1 && property:sys.boot_completed=1
start svi_on
service checknv /system/bin/checknv
class main
user root
group root system
oneshot
seclabel u:r:checknv:s0
service vendor.goodix-events /vendor/bin/init.goodix.events.sh
class late_start
user root
group root system input
disabled
oneshot
# Sync attribute value between system and vendor
on property:persist.sys.mcc.mnc=*
setprop persist.vendor.mcc.mnc ${persist.sys.mcc.mnc}
on property:sys.boot_completed=1
start vendor.goodix-events
on property:persist.sys.sm6375.dt2w=0
exec /system/bin/sendevent /dev/input/event4 0 1 4
on property:persist.sys.sm6375.dt2w=1
exec /system/bin/sendevent /dev/input/event4 0 1 5
# Read only one page at a time
write /proc/sys/vm/page-cluster 0
# Swap more aggressively
write /proc/sys/vm/swappiness 80
# Set zRAM compression algorithm to LZ4
write /sys/block/zram0/comp_algorithm lz4
# Enable zRAM data deduplication feature
write /sys/block/zram0/use_dedup 1
# Mount swap partitions specified in fstab
swapon_all /vendor/etc/fstab.zram