init.xiaomi_sm8450.rc 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271
  1. #
  2. # Copyright (C) 2024 The LineageOS Project
  3. #
  4. # SPDX-License-Identifier: Apache-2.0
  5. #
  6. import /vendor/etc/init/hw/init.mi_thermald.rc
  7. import /vendor/etc/init/hw/init.batterysecret.rc
  8. on init
  9. # Initial cpusets
  10. mkdir /dev/cpuset/foreground/boost
  11. copy /dev/cpuset/cpus /dev/cpuset/foreground/boost/cpus
  12. copy /dev/cpuset/mems /dev/cpuset/foreground/boost/mems
  13. # Initial cpuctl
  14. chmod 0666 /dev/cpuctl/background/cpu.shares
  15. chmod 0666 /dev/cpuctl/top-app/cpu.shares
  16. on fs
  17. mkdir /mnt/vendor/persist/haptics 0755 system system
  18. mkdir /mnt/vendor/persist/audio 0755 system system
  19. mkdir /dev/logfs 0771 system system
  20. mount vfat /dev/block/bootdevice/by-name/logfs /dev/logfs noatime umask=006,uid=1000,gid=1000
  21. mount ext4 /dev/block/bootdevice/by-name/rescue /mnt/rescue noatime
  22. restorecon_recursive /mnt/rescue
  23. mkdir /mnt/vendor/persist/qca6490/ 0700 system system
  24. chmod 0666 /dev/xlog
  25. on early-boot
  26. # Enable WLAN cold boot calibration
  27. write /sys/kernel/cnss/fs_ready 1
  28. # Enable WLAN SSR recovery
  29. write /sys/kernel/cnss/recovery 1
  30. on boot
  31. # modem
  32. chmod 0777 /dev/smd8
  33. chown radio radio /dev/smd8
  34. mkdir /data/vendor/modem 0777 radio radio
  35. setprop persist.bluetooth.a2dp_offload.disabled false
  36. #modify permission of block_size node
  37. #chown -h root.oem_2902 /sys/bus/coresight/devices/coresight-tmc-etr/block_size
  38. chown -h vendor_qdss /sys/bus/coresight/devices/coresight-tmc-etr/block_size
  39. chmod 660 /sys/bus/coresight/devices/coresight-tmc-etr/block_size
  40. chown system system /sys/class/thermal/thermal_message/sconfig
  41. chown system system /sys/class/thermal/thermal_message/charger_temp
  42. chown system system /sys/class/thermal/thermal_message/board_sensor_temp_comp
  43. chown system system /sys/class/thermal/thermal_message/cpu_nolimit_temp
  44. chown system system /sys/class/thermal/thermal_message/balance_mode
  45. chown cameraserver cameraserver /sys/class/thermal/thermal_message/flash_state
  46. chown system system /sys/module/perf_helper/mimd/mimdtrigger
  47. # Create persist for camera calibration data
  48. mkdir /mnt/vendor/persist/camera 0755 system cameraserver
  49. # Set fingerprint related permissions
  50. chmod 0660 /dev/goodix_fp
  51. chown system system /dev/goodix_fp
  52. chown system system /sys/bus/platform/devices/soc:fingerprint_fpc/irq
  53. chown system system /sys/bus/platform/devices/soc:fingerprint_fpc/irq_enable
  54. chown system system /sys/bus/platform/devices/soc:fingerprint_fpc/wakeup_enable
  55. chown system system /sys/bus/platform/devices/soc:fingerprint_fpc/hw_reset
  56. chown system system /sys/bus/platform/devices/soc:fingerprint_fpc/device_prepare
  57. chown system system /sys/bus/platform/devices/soc:fingerprint_fpc/fingerdown_wait
  58. chown system system /sys/bus/platform/devices/soc:fingerprint_fpc/vendor
  59. chown system system /sys/bus/platform/devices/soc:fingerprint_fpc/request_vreg
  60. chown system system /sys/bus/platform/devices/soc:fingerprint_fpc/simulate_irq
  61. chown system system /sys/bus/platform/devices/soc:fingerprint_fpc/finger_irq
  62. chown system system /sys/bus/platform/devices/soc:fingerprint_fpc/power_cfg
  63. # Xiaomi touch
  64. chown system system /dev/xiaomi-touch
  65. chmod 0660 /dev/xiaomi-touch
  66. on post-fs-data
  67. # Create folder of camera
  68. mkdir /data/vendor/camera/offlinelog 0777 cameraserver audio
  69. chmod 0666 /dev/camlog
  70. # Create the directories used by the Wireless subsystem
  71. mkdir /data/vendor/mac_addr 0770 system wifi
  72. mkdir /data/vendor/thermal 0771 root system
  73. mkdir /data/vendor/thermal/config 0771 root system
  74. mkdir /data/vendor/perfspy 0775 camera camera
  75. chmod 0660 /dev/ir_spi
  76. chown system system /dev/ir_spi
  77. #nfc
  78. mkdir /data/vendor/nfc 0770 nfc nfc
  79. # add torch node for cit && mmi
  80. chown system system /sys/class/leds/led:torch_0/brightness
  81. chown system system /sys/class/leds/led:torch_1/brightness
  82. chown system system /sys/class/leds/led:torch_2/brightness
  83. chown system system /sys/class/leds/led:torch_3/brightness
  84. chown system system /sys/class/leds/led:flash_0/brightness
  85. chown system system /sys/class/leds/led:flash_1/brightness
  86. chown system system /sys/class/leds/led:flash_2/brightness
  87. chown system system /sys/class/leds/led:flash_3/brightness
  88. chown system system /sys/class/leds/led:switch_0/brightness
  89. chown system system /sys/class/leds/led:switch_1/brightness
  90. chown system system /sys/class/leds/led:switch_2/brightness
  91. chown system system /sys/class/leds/led:switch_3/brightness
  92. chown system system /sys/class/leds/led:switch_0/trigger
  93. chown system system /sys/class/leds/led:switch_1/trigger
  94. chown system system /sys/class/leds/led:switch_2/trigger
  95. chown system system /sys/class/leds/led:switch_3/trigger
  96. chown system system /sys/class/leds/flashlight/brightness
  97. chmod 0664 /sys/class/leds/led:torch_0/brightness
  98. chmod 0664 /sys/class/leds/led:torch_1/brightness
  99. chmod 0664 /sys/class/leds/led:torch_2/brightness
  100. chmod 0664 /sys/class/leds/led:torch_3/brightness
  101. chmod 0664 /sys/class/leds/led:flash_0/brightness
  102. chmod 0664 /sys/class/leds/led:flash_1/brightness
  103. chmod 0664 /sys/class/leds/led:flash_2/brightness
  104. chmod 0664 /sys/class/leds/led:flash_3/brightnesssss
  105. chmod 0664 /sys/class/leds/led:switch_0/brightness
  106. chmod 0664 /sys/class/leds/led:switch_1/brightness
  107. chmod 0664 /sys/class/leds/led:switch_2/brightness
  108. chmod 0664 /sys/class/leds/led:switch_3/brightness
  109. chmod 0664 /sys/class/leds/led:switch_0/trigger
  110. chmod 0664 /sys/class/leds/led:switch_1/trigger
  111. chmod 0664 /sys/class/leds/led:switch_2/trigger
  112. chmod 0664 /sys/class/leds/led:switch_3/trigger
  113. chmod 0664 /sys/class/leds/flashlight/brightness
  114. mkdir /data/vendor/wlan_logs 0777 root shell
  115. mkdir /data/vendor/qxwz 0770 gps system
  116. #QCC mode configuration
  117. setprop vendor.qti.qdma.oper.mode 3
  118. setprop vendor.qti.qcc.oper.mode 3
  119. # Display feature sysfs node
  120. chown system system /sys/class/mi_display/disp-DSI-0/disp_param
  121. chmod 0664 /sys/class/mi_display/disp-DSI-0/disp_param
  122. chown system system /sys/class/mi_display/disp-DSI-0/mipi_rw
  123. chmod 0664 /sys/class/mi_display/disp-DSI-0/mipi_rw
  124. chown system system /sys/class/mi_display/disp-DSI-0/panel_info
  125. chmod 0444 /sys/class/mi_display/disp-DSI-0/panel_info
  126. chown system system /sys/class/mi_display/disp-DSI-0/wp_info
  127. chmod 0444 /sys/class/mi_display/disp-DSI-0/wp_info
  128. chown system system /sys/class/mi_display/disp-DSI-0/dynamic_fps
  129. chmod 0444 /sys/class/mi_display/disp-DSI-0/dynamic_fps
  130. chown system system /sys/class/mi_display/disp-DSI-0/doze_brightness
  131. chmod 0664 /sys/class/mi_display/disp-DSI-0/doze_brightness
  132. chown system system /sys/class/mi_display/disp-DSI-0/brightness_clone
  133. chmod 0664 /sys/class/mi_display/disp-DSI-0/brightness_clone
  134. chown system system /sys/class/mi_display/disp-DSI-0/max_brightness_clone
  135. chmod 0664 /sys/class/mi_display/disp-DSI-0/max_brightness_clone
  136. # Display feature sysfs node for penel1
  137. chown system system /sys/class/mi_display/disp-DSI-1/brightness_clone
  138. chmod 0664 /sys/class/mi_display/disp-DSI-1/brightness_clone
  139. chown system system /sys/class/mi_display/disp-DSI-1/max_brightness_clone
  140. chmod 0664 /sys/class/mi_display/disp-DSI-1/max_brightness_clone
  141. # Create fingerprint related directories
  142. mkdir /data/vendor/fpc 0770 system system
  143. mkdir /data/vendor/fpdump 0770 system system
  144. mkdir /data/vendor/goodix 0770 system system
  145. mkdir /mnt/vendor/persist/fpc 0770 system system
  146. mkdir /mnt/vendor/persist/goodix 0770 system system
  147. on property:sys.boot_completed=1
  148. # Set thermal mode to mgame
  149. write /sys/devices/virtual/thermal/thermal_message/sconfig 20
  150. on property:init.svc.vendor.charger=running
  151. chown system system /sys/class/backlight/panel0-backlight/brightness
  152. chown system system /sys/class/backlight/panel1-backlight/brightness
  153. on property:sys.boot_completed=1 && property:ro.build.type=user && property:ro.debuggable="1"
  154. mount debugfs debugfs /sys/kernel/debug
  155. chmod 0755 /sys/kernel/debug
  156. # cooling device used to set 4Rx or 2Rx
  157. chmod 0666 /sys/class/thermal/cooling_device39/cur_state
  158. chmod 0666 /sys/class/thermal/cooling_device40/cur_state
  159. chmod 0666 /sys/class/thermal/cooling_device41/cur_state
  160. chmod 0666 /sys/class/thermal/cooling_device42/cur_state
  161. chmod 0666 /sys/class/thermal/cooling_device43/cur_state
  162. chmod 0666 /sys/class/thermal/cooling_device44/cur_state
  163. chmod 0666 /sys/class/thermal/cooling_device45/cur_state
  164. chmod 0666 /sys/class/thermal/cooling_device46/cur_state
  165. chmod 0666 /sys/class/thermal/cooling_device47/cur_state
  166. chmod 0666 /sys/class/thermal/cooling_device48/cur_state
  167. chmod 0666 /sys/class/thermal/cooling_device49/cur_state
  168. chmod 0666 /sys/class/thermal/cooling_device50/cur_state
  169. on property:vendor.audio.cit.spkcal.copy=true
  170. # 1.cal 3.newCreate
  171. # oldCaliFile ---> newCaliFile -----------------> newCaliFile(or emptyFile)
  172. # \
  173. # \ / 4.recovery
  174. # 2.backup ---> newCaliFile.bak ----
  175. #
  176. # _if oldCaliFile isn't exist then 2 and 4 will failed(try again will success).
  177. # it could optimized when property action in front of spkcal
  178. #
  179. # 2.backup
  180. chmod 600 /mnt/vendor/persist/audio/crus_calr.bin
  181. chmod 600 /mnt/vendor/persist/audio/crus_calr.txt
  182. copy /mnt/vendor/persist/audio/crus_calr.bin /mnt/vendor/persist/audio/crus_calr.bin.bak
  183. copy /mnt/vendor/persist/audio/crus_calr.txt /mnt/vendor/persist/audio/crus_calr.txt.bak
  184. # 3.newCreate
  185. write /mnt/vendor/persist/audio/crus_calr.bin ""
  186. write /mnt/vendor/persist/audio/crus_calr.txt ""
  187. # 4.recovery
  188. copy /mnt/vendor/persist/audio/crus_calr.bin.bak /mnt/vendor/persist/audio/crus_calr.bin
  189. copy /mnt/vendor/persist/audio/crus_calr.txt.bak /mnt/vendor/persist/audio/crus_calr.txt
  190. chmod 666 /mnt/vendor/persist/audio/crus_calr.bin
  191. chmod 666 /mnt/vendor/persist/audio/crus_calr.txt
  192. # 2.backup
  193. chmod 600 /mnt/vendor/persist/audio/aw_calr.bin
  194. chmod 600 /mnt/vendor/persist/audio/aw_calr.txt
  195. copy /mnt/vendor/persist/audio/aw_calr.bin /mnt/vendor/persist/audio/aw_calr.bin.bak
  196. copy /mnt/vendor/persist/audio/aw_calr.txt /mnt/vendor/persist/audio/aw_calr.txt.bak
  197. # 3.newCreate
  198. write /mnt/vendor/persist/audio/aw_calr.bin ""
  199. write /mnt/vendor/persist/audio/aw_calr.txt ""
  200. # 4.recovery
  201. copy /mnt/vendor/persist/audio/aw_calr.bin.bak /mnt/vendor/persist/audio/aw_calr.bin
  202. copy /mnt/vendor/persist/audio/aw_calr.txt.bak /mnt/vendor/persist/audio/aw_calr.txt
  203. chmod 666 /mnt/vendor/persist/audio/aw_calr.bin
  204. chmod 666 /mnt/vendor/persist/audio/aw_calr.txt
  205. on property:persist.sys.xtra-daemon.enabled=*
  206. restart loc_launcher
  207. service vendor.nv_mac /vendor/bin/nv_mac
  208. class late_start
  209. user system
  210. group system inet net_admin wifi net_raw
  211. oneshot
  212. service vendor.audio-hal /vendor/bin/hw/android.hardware.audio.service
  213. override
  214. class hal
  215. user audioserver
  216. # media gid needed for /dev/fm (radio) and for /data/misc/media (tee)
  217. group audio camera drmrpc inet media mediadrm net_bt net_bt_admin net_bw_acct oem_2901 wakelock context_hub
  218. capabilities BLOCK_SUSPEND SYS_NICE
  219. # setting RLIMIT_RTPRIO allows binder RT priority inheritance
  220. rlimit rtprio 10 10
  221. ioprio rt 4
  222. task_profiles ProcessCapacityHigh HighPerformance
  223. onrestart restart audioserver
  224. socket audio_us_socket_0 seqpacket 0666 system system
  225. service vendor.sensors-hal-2-1-multihal /vendor/bin/hw/[email protected]
  226. override
  227. class hal
  228. user system
  229. group system wakelock context_hub
  230. task_profiles ServiceCapacityLow
  231. capabilities BLOCK_SUSPEND
  232. rlimit rtprio 10 10
  233. socket audio_us_socket_1 seqpacket 0666 system system