init.qcom.rc 39 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267
  1. # Copyright (c) 2009-2012, 2014-2018, The Linux Foundation. All rights reserved.
  2. #
  3. # Redistribution and use in source and binary forms, with or without
  4. # modification, are permitted provided that the following conditions are met:
  5. # * Redistributions of source code must retain the above copyright
  6. # notice, this list of conditions and the following disclaimer.
  7. # * Redistributions in binary form must reproduce the above copyright
  8. # notice, this list of conditions and the following disclaimer in the
  9. # documentation and/or other materials provided with the distribution.
  10. # * Neither the name of The Linux Foundation nor
  11. # the names of its contributors may be used to endorse or promote
  12. # products derived from this software without specific prior written
  13. # permission.
  14. #
  15. # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
  16. # AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  17. # IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
  18. # NON-INFRINGEMENT ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
  19. # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
  20. # EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
  21. # PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
  22. # OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
  23. # WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
  24. # OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
  25. # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  26. #
  27. import /vendor/etc/init/hw/init.qcom.usb.rc
  28. import /vendor/etc/init/hw/init.msm.usb.configfs.rc
  29. import /vendor/etc/init/hw/init.target.rc
  30. import /vendor/etc/init/hw/init.qcom.factory.rc
  31. import /vendor/etc/init/hw/init.qcom.test.rc
  32. on early-init
  33. mount debugfs debugfs /sys/kernel/debug
  34. chmod 0755 /sys/kernel/debug
  35. # Change ownership of hw_recovery related nodes
  36. chown system graphics /sys/kernel/debug/dri/0/debug/dump
  37. chown system graphics /sys/kernel/debug/dri/0/debug/recovery_reg
  38. chown system graphics /sys/kernel/debug/dri/0/debug/recovery_dbgbus
  39. chown system graphics /sys/kernel/debug/dri/0/debug/recovery_vbif_dbgbus
  40. # Change ownership of sw_sync node
  41. chown system graphics /sys/kernel/debug/sync/sw_sync
  42. chmod 0666 /sys/kernel/debug/sync/sw_sync
  43. chown root system /dev/kmsg
  44. chmod 0620 /dev/kmsg
  45. # Load WIGIG platform driver
  46. exec u:r:vendor_modprobe:s0 -- /vendor/bin/modprobe -a -d /vendor/lib/modules msm_11ad_proxy
  47. on init
  48. # Create cgroup mount point for memory
  49. mkdir /sys/fs/cgroup/memory/bg 0750 root system
  50. write /sys/fs/cgroup/memory/bg/memory.swappiness 140
  51. write /sys/fs/cgroup/memory/bg/memory.move_charge_at_immigrate 1
  52. chown root system /sys/fs/cgroup/memory/bg/tasks
  53. chmod 0660 /sys/fs/cgroup/memory/bg/tasks
  54. exec u:r:vendor_init:s0 -- /vendor/bin/setfingerprop
  55. on post-fs
  56. chmod 0755 /sys/kernel/debug/tracing
  57. on early-boot
  58. # set RLIMIT_MEMLOCK to 64MB
  59. setrlimit 8 67108864 67108864
  60. # Allow subsystem (modem etc) debugging
  61. write /sys/kernel/boot_adsp/boot 1
  62. write /sys/kernel/boot_cdsp/boot 1
  63. write /sys/kernel/boot_slpi/boot 1
  64. exec u:r:qti_init_shell:s0 -- /vendor/bin/init.qcom.early_boot.sh
  65. exec u:r:qti_init_shell:s0 -- /vendor/bin/init.qti.can.sh
  66. # for backward compatibility
  67. chown system system /persist/sensors
  68. chown system system /persist/sensors/registry
  69. chown system system /persist/sensors/registry/registry
  70. chown system system /persist/sensors/registry/registry/sensors_registry
  71. chown system system /persist/sensors/sensors_settings
  72. chown system system /persist/sensors/registry/config
  73. chmod 0664 /persist/sensors/sensors_settings
  74. chown system system /mnt/vendor/persist/sensors
  75. chown system system /mnt/vendor/persist/sensors/sns.reg
  76. chown system system /mnt/vendor/persist/sensors/sensors_list.txt
  77. chown system system /mnt/vendor/persist/sensors/registry
  78. chown system system /mnt/vendor/persist/sensors/registry/registry
  79. chown system system /mnt/vendor/persist/sensors/registry/registry/sensors_registry
  80. chown system system /mnt/vendor/persist/sensors/sensors_settings
  81. chown system system /mnt/vendor/persist/sensors/registry/sns_reg_config
  82. chown system system /mnt/vendor/persist/sensors/registry/sns_reg_version
  83. chown system system /mnt/vendor/persist/sensors/registry/config
  84. chmod 0664 /mnt/vendor/persist/sensors/sensors_settings
  85. on boot
  86. chown bluetooth bluetooth /sys/module/bluetooth_power/parameters/power
  87. chown bluetooth net_bt /sys/class/rfkill/rfkill0/type
  88. chown bluetooth net_bt /sys/class/rfkill/rfkill0/state
  89. chown bluetooth bluetooth /proc/bluetooth/sleep/proto
  90. chown bluetooth bluetooth /sys/module/hci_uart/parameters/ath_lpm
  91. chown bluetooth bluetooth /sys/module/hci_uart/parameters/ath_btwrite
  92. chown system system /sys/module/sco/parameters/disable_esco
  93. chown bluetooth bluetooth /sys/module/hci_smd/parameters/hcismd_set
  94. chown system system /sys/module/msm_core/parameters/polling_interval
  95. chown system system /sys/module/msm_core/parameters/disabled
  96. chown system system /sys/kernel/debug/msm_core/enable
  97. chown system system /sys/kernel/debug/msm_core/ptable
  98. chown system system /sys/kernel/boot_slpi/ssr
  99. chown system system /sys/kernel/boot_adsp/ssr
  100. chown system system /sys/module/radio_iris_transport/parameters/fmsmd_set
  101. chmod 0660 /sys/module/bluetooth_power/parameters/power
  102. chmod 0660 /sys/module/hci_smd/parameters/hcismd_set
  103. chmod 0660 /sys/module/radio_iris_transport/parameters/fmsmd_set
  104. chmod 0660 /sys/class/rfkill/rfkill0/state
  105. chmod 0660 /proc/bluetooth/sleep/proto
  106. chown bluetooth net_bt /dev/ttyHS0
  107. chmod 0660 /sys/module/hci_uart/parameters/ath_lpm
  108. chmod 0660 /sys/module/hci_uart/parameters/ath_btwrite
  109. chmod 0660 /dev/ttyHS0
  110. chown bluetooth bluetooth /sys/devices/platform/msm_serial_hs.0/clock
  111. chmod 0660 /sys/devices/platform/msm_serial_hs.0/clock
  112. chmod 0660 /dev/ttyHS2
  113. chown bluetooth bluetooth /dev/ttyHS2
  114. chown bluetooth net_bt /sys/class/rfkill/rfkill0/device/extldo
  115. chmod 0660 /sys/class/rfkill/rfkill0/device/extldo
  116. #Create QMUX deamon socket area
  117. mkdir /dev/socket/qmux_radio 0770 radio radio
  118. chmod 2770 /dev/socket/qmux_radio
  119. mkdir /dev/socket/qmux_audio 0770 media audio
  120. chmod 2770 /dev/socket/qmux_audio
  121. mkdir /dev/socket/qmux_bluetooth 0770 bluetooth bluetooth
  122. chmod 2770 /dev/socket/qmux_bluetooth
  123. mkdir /dev/socket/qmux_gps 0770 gps gps
  124. chmod 2770 /dev/socket/qmux_gps
  125. mkdir /persist/drm 0770 system system
  126. mkdir /mnt/vendor/persist/bluetooth 0770 bluetooth bluetooth
  127. mkdir /persist/misc 0770 system system
  128. mkdir /mnt/vendor/persist/alarm 0770 system system
  129. mkdir /mnt/vendor/persist/time 0770 system system
  130. mkdir /mnt/vendor/persist/secnvm 0770 system system
  131. #Create NETMGR daemon socket area
  132. mkdir /dev/socket/netmgr 0750 radio radio
  133. setprop wifi.interface wlan0
  134. # Define TCP buffer sizes for various networks
  135. # ReadMin, ReadInitial, ReadMax, WriteMin, WriteInitial, WriteMax,
  136. setprop net.tcp.buffersize.wifi 524288,2097152,4194304,262144,524288,1048576
  137. setprop ro.telephony.call_ring.multiple false
  138. #Remove SUID bit for iproute2 ip tool
  139. chmod 0755 /system/bin/ip
  140. chmod 0444 /sys/devices/platform/msm_hsusb/gadget/usb_state
  141. # Define TCP buffer sizes for various networks
  142. # ReadMin, ReadInitial, ReadMax, WriteMin, WriteInitial, WriteMax,
  143. setprop net.tcp.buffersize.default 4096,87380,524288,4096,16384,110208
  144. setprop net.tcp.buffersize.lte 2097152,4194304,8388608,262144,524288,1048576
  145. setprop net.tcp.buffersize.umts 4094,87380,110208,4096,16384,110208
  146. setprop net.tcp.buffersize.hspa 4094,87380,1220608,4096,16384,1220608
  147. setprop net.tcp.buffersize.hsupa 4094,87380,1220608,4096,16384,1220608
  148. setprop net.tcp.buffersize.hsdpa 4094,87380,1220608,4096,16384,1220608
  149. setprop net.tcp.buffersize.hspap 4094,87380,1220608,4096,16384,1220608
  150. setprop net.tcp.buffersize.edge 4093,26280,35040,4096,16384,35040
  151. setprop net.tcp.buffersize.gprs 4092,8760,11680,4096,8760,11680
  152. setprop net.tcp.buffersize.evdo 4094,87380,524288,4096,16384,262144
  153. setprop net.tcp.2g_init_rwnd 10
  154. # Assign TCP buffer thresholds to be ceiling value of technology maximums
  155. # Increased technology maximums should be reflected here.
  156. write /proc/sys/net/core/rmem_max 16777216
  157. write /proc/sys/net/core/wmem_max 8388608
  158. # To prevent out of order acknowledgements from making
  159. # connection tracking to treat them as not belonging to
  160. # the connection they belong to.
  161. # Otherwise, a weird issue happens in which some long
  162. # connections on high-throughput links get dropped when
  163. # an ack packet comes out of order
  164. write /proc/sys/net/netfilter/nf_conntrack_tcp_be_liberal 1
  165. # Set the console loglevel to < KERN_INFO
  166. # Set the default message loglevel to KERN_INFO
  167. write /proc/sys/kernel/printk "6 6 1 7"
  168. # Allow access for CCID command/response timeout configuration
  169. chown system system /sys/module/ccid_bridge/parameters/bulk_msg_timeout
  170. # bond0 used by FST Manager
  171. chown wifi wifi /sys/class/net/bond0/bonding/queue_id
  172. # Allow access to emmc rawdump block partition and dload sysfs node
  173. chown root system /dev/block/bootdevice/by-name/rawdump -p /dev/block/
  174. chmod 0660 /dev/block/bootdevice/by-name/rawdump -p /dev/block/
  175. chown root system /sys/kernel/dload/emmc_dload
  176. chmod 0660 /sys/kernel/dload/emmc_dload
  177. chown root system /dev/block/bootdevice/by-name/ramdump -p /dev/block/
  178. chmod 0660 /dev/block/bootdevice/by-name/ramdump -p /dev/block/
  179. chown root system /sys/kernel/dload/dload_mode
  180. chmod 0660 /sys/kernel/dload/dload_mode
  181. chown system system /sys/class/backlight/panel0-backlight/brightness
  182. chown system system /sys/class/backlight/panel0-backlight/max_brightness
  183. # Allow access to sensors device attributes
  184. chown system system /sys/class/sensors/MPU6050-accel/enable
  185. chown system system /sys/class/sensors/MPU6050-accel/poll_delay
  186. chown system system /sys/class/sensors/MPU6050-gyro/enable
  187. chown system system /sys/class/sensors/MPU6050-gyro/poll_delay
  188. chown system system /sys/class/sensors/apds9930-light/enable
  189. chown system system /sys/class/sensors/apds9930-light/poll_delay
  190. chown system system /sys/class/sensors/apds9930-proximity/enable
  191. chown system system /sys/class/sensors/apds9930-proximity/poll_delay
  192. # Create directory used for display
  193. # for backward compatibility
  194. mkdir /persist/display 0770 system graphics
  195. mkdir /mnt/vendor/persist/display 0770 system graphics
  196. # Create vpp directory
  197. mkdir /mnt/vendor/persist/vpp 0770 media media
  198. # Create hvdcp_opti directory
  199. mkdir /mnt/vendor/persist/hvdcp_opti 0770 root system
  200. # msm specific files that need to be created on /data
  201. on post-fs-data
  202. mkdir /data/vendor/misc 01771 system system
  203. # Create directory used for dump collection
  204. mkdir /data/vendor/ssrdump 0770 root system
  205. # Create directory used by display clients
  206. mkdir /data/vendor/display 0770 system graphics
  207. # Change lm related dirs
  208. mkdir /data/vendor/lm 0700 root root
  209. # Create directory used by media clients
  210. mkdir /data/vendor/media 0770 mediacodec media
  211. # create QDMA dropbox
  212. mkdir /data/vendor/qdmastats 0700 system system
  213. mkdir /data/vendor/qdma 0770 system system
  214. mkdir /dev/socket/qdma 0777 system system
  215. chmod 2777 /dev/socket/qdma
  216. # Create /data/vendor/tzstorage directory for SFS listener
  217. mkdir /data/vendor/tzstorage 0770 system system
  218. # Create directory for apps access via QTEEConnector
  219. mkdir /data/vendor/qtee 0770 system system
  220. #Create folder of camera
  221. mkdir /data/vendor/camera 0770 camera camera
  222. #Create directory for tftp
  223. mkdir /data/vendor/tombstones 0771 system system
  224. mkdir /data/vendor/ramdump 0771 root system
  225. mkdir /data/vendor/bluetooth 0770 bluetooth bluetooth
  226. mkdir /data/vendor/ramdump/bluetooth 0770 bluetooth bluetooth
  227. # Create the directories used by the Wireless subsystem
  228. mkdir /data/vendor/wifi 0770 wifi wifi
  229. mkdir /data/vendor/wifi/sockets 0770 wifi wifi
  230. mkdir /data/vendor/wifi/hostapd 0770 wifi wifi
  231. mkdir /data/vendor/wifi/hostapd/ctrl 0770 wifi wifi
  232. mkdir /data/vendor/wifi/wpa_supplicant 0770 wifi wifi
  233. mkdir /data/vendor/wifi/wigig_hostapd 0770 wifi wifi
  234. mkdir /data/vendor/wifi/wpa 0770 wifi wifi
  235. mkdir /data/vendor/wifi/wpa/sockets 0770 wifi wifi
  236. #create port-bridge log dir
  237. mkdir /data/vendor/port_bridge 0770 radio radio
  238. chmod 0770 /data/vendor/port_bridge
  239. #create netmgr log dir
  240. mkdir /data/vendor/netmgr 0770 radio radio
  241. chmod 0770 /data/vendor/netmgr
  242. #create ipacm log dir
  243. mkdir /data/vendor/ipa 0770 radio radio
  244. chmod 0770 /data/vendor/ipa
  245. #Create QTI dir for logs
  246. mkdir /data/vendor/dataqti 0770 radio radio
  247. chmod 0770 /data/vendor/dataqti
  248. # Create the directories used by CnE subsystem
  249. mkdir /data/vendor/connectivity 0771 radio radio
  250. chown radio radio /data/vendor/connectivity
  251. # Create directory used by audio subsystem
  252. mkdir /data/vendor/audio 0770 audio audio
  253. # Create directory for audio delta files
  254. mkdir /data/vendor/audio/acdbdata 0770 media audio
  255. mkdir /data/vendor/audio/acdbdata/delta 0770 media audio
  256. # Create directory for radio
  257. mkdir /data/vendor/radio 0770 system radio
  258. # Create directory for modem_config
  259. mkdir /data/vendor/modem_config 0570 radio root
  260. # Mounting of persist is moved to 'on emmc-fs' and 'on fs' sections
  261. # We chown/chmod /persist again so because mount is run as root + defaults
  262. chown root system /persist
  263. chmod 0771 /persist
  264. chown system system /persist/WCNSS_qcom_wlan_nv.bin
  265. chmod 0664 /sys/devices/platform/msm_sdcc.1/polling
  266. chmod 0664 /sys/devices/platform/msm_sdcc.2/polling
  267. chmod 0664 /sys/devices/platform/msm_sdcc.3/polling
  268. chmod 0664 /sys/devices/platform/msm_sdcc.4/polling
  269. # Chown polling nodes as needed from UI running on system server
  270. chown system system /sys/devices/platform/msm_sdcc.1/polling
  271. chown system system /sys/devices/platform/msm_sdcc.2/polling
  272. chown system system /sys/devices/platform/msm_sdcc.3/polling
  273. chown system system /sys/devices/platform/msm_sdcc.4/polling
  274. #Create the symlink to qcn wpa_supplicant folder for ar6000 wpa_supplicant
  275. #symlink /data/misc/wifi/wpa_supplicant /data/system/wpa_supplicant
  276. #Create directories for Location services
  277. mkdir /data/vendor/location 0770 gps gps
  278. mkdir /data/vendor/location/mq 0770 gps gps
  279. mkdir /data/vendor/location/xtwifi 0770 gps gps
  280. mkdir /dev/socket/location 0770 gps gps
  281. mkdir /dev/socket/location/mq 0770 gps gps
  282. mkdir /dev/socket/location/xtra 0770 gps gps
  283. mkdir /data/vendor/location-partner 0770 gps gps
  284. mkdir /data/vendor/location-partner/dre 0770 gps gps
  285. mkdir /data/vendor/location-partner/ppe 0770 gps gps
  286. mkdir /dev/socket/location 0770 gps gps
  287. mkdir /dev/socket/location/ehub 0770 gps gps
  288. #Create directory from IMS services
  289. mkdir /data/shared 0755
  290. chown system system /data/shared
  291. #Create directory for FOTA
  292. mkdir /data/fota 0771
  293. chown system system /data/fota
  294. # Create /data/time folder for time-services
  295. mkdir /data/vendor/time/ 0700 system system
  296. setprop vold.post_fs_data_done 1
  297. #Create a folder for SRS to be able to create a usercfg file
  298. #mkdir /data/data/media 0770 media media
  299. #Create FM dir for patchdownloader
  300. mkdir /data/vendor/fm 0770 system system
  301. chmod 0770 /data/vendor/fm
  302. #Create PERFD deamon related dirs
  303. mkdir /data/vendor/perfd 0770 root system
  304. chmod 2770 /data/vendor/perfd
  305. rm /data/vendor/perfd/default_values
  306. mkdir /data/vendor/secure_element 0777 system system
  307. #Create IOP deamon related dirs
  308. mkdir /data/vendor/iop 0700 root system
  309. # Mark the copy complete flag to not completed
  310. write /data/vendor/radio/copy_complete 0
  311. chown radio radio /data/vendor/radio/copy_complete
  312. chmod 0660 /data/vendor/radio/copy_complete
  313. # copy prebuilt qcril.db files always
  314. copy /vendor/radio/qcril_database/qcril.db /data/vendor/radio/qcril_prebuilt.db
  315. chown radio radio /data/vendor/radio/qcril_prebuilt.db
  316. chmod 0660 /data/vendor/radio/qcril_prebuilt.db
  317. # File flags for prebuilt ril db file
  318. write /data/vendor/radio/prebuilt_db_support 1
  319. chown radio radio /data/vendor/radio/prebuilt_db_support
  320. chmod 0400 /data/vendor/radio/prebuilt_db_support
  321. write /data/vendor/radio/db_check_done 0
  322. chown radio radio /data/vendor/radio/db_check_done
  323. chmod 0660 /data/vendor/radio/db_check_done
  324. # qti-logkit data
  325. mkdir /data/vendor/qti-logkit/ 0771 system system
  326. mkdir /data/vendor/qti-logkit/shared-privileged/ 2770 system system
  327. mkdir /data/vendor/qti-logkit/shared-public/ 2770 system diag
  328. mkdir /data/vendor/qti-logkit/socket-privileged/ 2770 system system
  329. mkdir /data/vendor/qti-logkit/socket-public/ 2750 system diag
  330. mkdir /data/vendor/qti-logkit/logdata/ 2750 system shell
  331. #Create SWAP related dirs
  332. mkdir /data/vendor/swap 0770 root system
  333. chmod 2770 /data/vendor/swap
  334. # set aggressive read ahead for dm-0 and dm-1 during boot up
  335. write /sys/block/dm-0/queue/read_ahead_kb 2048
  336. write /sys/block/dm-1/queue/read_ahead_kb 2048
  337. write /sys/block/dm-2/queue/read_ahead_kb 2048
  338. # Create vpp directory
  339. mkdir /data/vendor/vpp 0770 media media
  340. #Create dir for TUI
  341. mkdir /data/vendor/tui 0700 system system
  342. #Start move time data to /data/vendor once post-fs-data done
  343. start vendor.move_time_data
  344. service nqnfcinfo /system/vendor/bin/nqnfcinfo
  345. class late_start
  346. group nfc
  347. user system
  348. oneshot
  349. service iop /system/vendor/bin/iop
  350. class main
  351. user root
  352. group root
  353. disabled
  354. socket iop seqpacket 0666 root system
  355. service qcomsysd /system/vendor/bin/qcom-system-daemon
  356. class main
  357. user root
  358. group root diag oem_2901
  359. disabled
  360. on property:persist.vendor.qcomsysd.enabled=1
  361. enable qcomsysd
  362. on property:persist.vendor.qcomsysd.enabled=0
  363. stop qcomsysd
  364. service vendor.ssr_setup /system/vendor/bin/ssr_setup
  365. oneshot
  366. disabled
  367. service vendor.ss_ramdump /system/vendor/bin/subsystem_ramdump
  368. class main
  369. user system
  370. group system
  371. disabled
  372. on property:ro.vendor.iocgrp.config=1
  373. mkdir /dev/blkio
  374. mount cgroup none /dev/blkio blkio
  375. chown system system /dev/blkio
  376. chown system system /dev/blkio/tasks
  377. chmod 0664 /dev/blkio/tasks
  378. mkdir /dev/blkio/bg 0755 system system
  379. chown system system /dev/blkio/bg/tasks
  380. chmod 0664 /dev/blkio/bg/tasks
  381. write /dev/blkio/blkio.weight 1000
  382. write /dev/blkio/bg/blkio.weight 100
  383. on property:persist.vendor.sys.ssr.enable_debug=*
  384. write /sys/module/subsystem_restart/parameters/enable_debug ${persist.vendor.sys.ssr.enable_debug}
  385. on property:persist.vendor.sys.mba_boot_timeout=*
  386. write /sys/module/pil_msa/parameters/pbl_mba_boot_timeout_ms ${persist.vendor.sys.mba_boot_timeout}
  387. on property:persist.vendor.sys.modem_auth_timeout=*
  388. write /sys/module/pil_msa/parameters/modem_auth_timeout_ms ${persist.vendor.sys.modem_auth_timeout}
  389. on property:persist.vendor.sys.pil_proxy_timeout=*
  390. write /sys/module/peripheral_loader/parameters/proxy_timeout_ms ${persist.vendor.sys.pil_proxy_timeout}
  391. on property:persist.vendor.ssr.restart_level=*
  392. start vendor.ssr_setup
  393. on property:persist.vendor.ssr.enable_ramdumps=1
  394. write /sys/module/subsystem_restart/parameters/enable_ramdumps 1
  395. mkdir /data/vendor/ramdump_ssr 770 system system
  396. start vendor.ss_ramdump
  397. on property:persist.vendor.ssr.enable_ramdumps=0
  398. write /sys/module/subsystem_restart/parameters/enable_ramdumps 0
  399. on property:sys.boot_completed=1
  400. write /dev/kmsg "Boot completed "
  401. #Reset read ahead for dm-0 and dm-1 to 512kb
  402. write /sys/block/dm-0/queue/read_ahead_kb 512
  403. write /sys/block/dm-1/queue/read_ahead_kb 512
  404. #WDSP FW boot sysfs node used by STHAL
  405. chown media audio /sys/kernel/wdsp0/boot
  406. chown media audio /sys/kernel/wcd_cpe0/fw_name
  407. on property:persist.vendor.radio.atfwd.start=false
  408. stop vendor.atfwd
  409. on property:vendor.radio.atfwd.start=false
  410. stop vendor.atfwd
  411. # corefile limit
  412. on property:persist.debug.trace=1
  413. mkdir /data/core 0777 root root
  414. write /proc/sys/kernel/core_pattern "/data/core/%E.%p.%e"
  415. on property:init.svc.wpa_supplicant=stopped
  416. stop dhcpcd
  417. on property:vendor.bluetooth.dun.status=running
  418. start vendor.bt-dun
  419. on property:vendor.bluetooth.dun.status=stopped
  420. stop vendor.bt-dun
  421. on property:ro.bluetooth.ftm_enabled=true
  422. start ftmd
  423. on property:vendor.bluetooth.startbtsnoop=true
  424. start vendor.btsnoop
  425. on property:vendor.bluetooth.startbtsnoop=false
  426. stop vendor.btsnoop
  427. on property:vendor.bluetooth.startbtlogger=true
  428. start vendor.bt_logger
  429. on property:vendor.bluetooth.startbtlogger=false
  430. stop vendor.bt_logger
  431. service qcom-c_core-sh /vendor/bin/init.qcom.class_core.sh
  432. class core
  433. user root
  434. oneshot
  435. service qcom-c_main-sh /vendor/bin/init.class_main.sh
  436. class main
  437. user root
  438. oneshot
  439. service qcom-c_late-sh /vendor/bin/init.class_late.sh
  440. class late_start
  441. user root
  442. oneshot
  443. on property:vold.decrypt=trigger_restart_framework
  444. start qcom-c_main-sh
  445. start wcnss-service
  446. start qcom-c_late-sh
  447. on property:persist.env.fastdorm.enabled=true
  448. setprop persist.radio.data_no_toggle 1
  449. service vendor.cnd /system/vendor/bin/cnd
  450. class main
  451. user system
  452. group system wifi inet radio wakelock net_admin
  453. service dpmQmiMgr /system/vendor/bin/dpmQmiMgr
  454. class main
  455. user system
  456. group system
  457. service vendor.qrtr-ns /vendor/bin/qrtr-ns -f
  458. class core
  459. user vendor_qrtr
  460. group vendor_qrtr
  461. capabilities NET_BIND_SERVICE
  462. service irsc_util /vendor/bin/irsc_util "/vendor/etc/sec_config"
  463. class core
  464. user root
  465. oneshot
  466. service vendor.rmt_storage /vendor/bin/rmt_storage
  467. class core
  468. user root
  469. shutdown critical
  470. ioprio rt 0
  471. service vendor.tftp_server /vendor/bin/tftp_server
  472. class core
  473. user root
  474. on property:vendor.wc_transport.start_hci=true
  475. start vendor.start_hci_filter
  476. on property:vendor.wc_transport.start_hci=false
  477. stop vendor.start_hci_filter
  478. service vendor.start_hci_filter /system/vendor/bin/wcnss_filter
  479. class late_start
  480. user bluetooth
  481. group bluetooth diag system wakelock
  482. seclabel u:r:bluetooth:s0
  483. disabled
  484. service vendor.bt-dun /system/bin/dun-server /dev/smd7 /dev/rfcomm0
  485. class late_start
  486. user bluetooth
  487. group bluetooth net_bt_admin inet
  488. disabled
  489. oneshot
  490. service vendor.btsnoop /system/bin/btsnoop
  491. user bluetooth
  492. group bluetooth net_bt_admin sdcard_rw sdcard_r media_rw
  493. class late_start
  494. disabled
  495. oneshot
  496. service vendor.bt_logger /system/bin/bt_logger
  497. user bluetooth
  498. group bluetooth net_bt_admin sdcard_rw sdcard_r media_rw
  499. class late_start
  500. disabled
  501. oneshot
  502. service ftmd /system/bin/logwrapper /system/bin/ftmdaemon
  503. class late_start
  504. user root
  505. group bluetooth net_bt_admin misc net_bt_stack diag net_bt
  506. disabled
  507. oneshot
  508. service vendor.port-bridge /system/vendor/bin/port-bridge
  509. class main
  510. user radio
  511. group radio system inet
  512. disabled
  513. oneshot
  514. service qmiproxy /system/bin/qmiproxy
  515. class main
  516. user radio
  517. group radio diag
  518. disabled
  519. # QMUX must be in multiple groups to support external process connections
  520. service vendor.qmuxd /system/vendor/bin/qmuxd
  521. class main
  522. user root
  523. group radio audio bluetooth gps nfc diag
  524. disabled
  525. service vendor.netmgrd /system/vendor/bin/netmgrd
  526. class main
  527. disabled
  528. service vendor.ipacm-diag /system/vendor/bin/ipacm-diag
  529. class main
  530. user radio
  531. socket ipacm_log_file dgram 660 radio radio
  532. group radio diag oem_2901
  533. disabled
  534. service vendor.ipacm /system/vendor/bin/ipacm
  535. class main
  536. user radio
  537. group radio inet
  538. disabled
  539. service vendor.dataqti /system/vendor/bin/qti
  540. class main
  541. user radio
  542. group radio oem_2901 diag usb net_admin
  543. disabled
  544. service vendor.dataadpl /system/vendor/bin/adpl
  545. class main
  546. user radio
  547. group radio oem_2901 diag usb net_admin
  548. disabled
  549. service vendor.sensors /vendor/bin/sscrpcd
  550. class core
  551. user system
  552. group system
  553. disabled
  554. service vendor.sensors.qti /vendor/bin/sensors.qti
  555. class core
  556. user system
  557. group system
  558. disabled
  559. on property:ro.vendor.use_data_netmgrd=false
  560. # netmgr not supported on specific target
  561. stop vendor.netmgrd
  562. # Adjust socket buffer to enlarge TCP receive window for high bandwidth
  563. # but only if ro.data.large_tcp_window_size property is set.
  564. on property:ro.data.large_tcp_window_size=true
  565. write /proc/sys/net/ipv4/tcp_adv_win_scale 2
  566. on property:sys.sysctl.tcp_adv_win_scale=*
  567. write /proc/sys/net/ipv4/tcp_adv_win_scale ${sys.sysctl.tcp_adv_win_scale}
  568. service wpa_supplicant /vendor/bin/hw/wpa_supplicant \
  569. -O/data/vendor/wifi/wpa/sockets -puse_p2p_group_interface=1 -dd \
  570. -g@android:vendor_wpa_wlan0
  571. # we will start as root and wpa_supplicant will switch to user wifi
  572. # after setting up the capabilities required for WEXT
  573. # user wifi
  574. # group wifi inet keystore
  575. interface android.hardware.wifi.supplicant@1.0::ISupplicant default
  576. interface android.hardware.wifi.supplicant@1.1::ISupplicant default
  577. class main
  578. socket vendor_wpa_wlan0 dgram 660 wifi wifi
  579. disabled
  580. oneshot
  581. service vendor.wigig_supplicant /vendor/bin/hw/wpa_supplicant \
  582. -iwigig0 -Dnl80211 -c/data/vendor/wifi/wigig_supplicant.conf \
  583. -m/data/vendor/wifi/wigig_p2p_supplicant.conf \
  584. -O/data/vendor/wifi/wigig_sockets -dd \
  585. -e/data/vendor/wifi/wigig_entropy.bin -g@android:wpa_wigig0 \
  586. -S wigigsvc
  587. # we will start as root and wpa_supplicant will switch to user wifi
  588. # after setting up the capabilities required for WEXT
  589. # user wifi
  590. # group wifi inet keystore
  591. class main
  592. socket wpa_wigig0 dgram 660 wifi wifi
  593. disabled
  594. oneshot
  595. # Data Migration
  596. service vendor.move_wifi_data /system/bin/move_wifi_data.sh
  597. class main
  598. user wifi
  599. group wifi
  600. disabled
  601. oneshot
  602. # FST Manager with hostapd (softap) - all settings inside ini file
  603. service fstman /vendor/bin/fstman -B -ddd -c /data/vendor/wifi/fstman.ini -a 1
  604. user wifi
  605. group wifi
  606. capabilities NET_ADMIN NET_RAW
  607. class main
  608. disabled
  609. oneshot
  610. # FST Manager with supplicant - connect to supplicant socket
  611. service fstman_wlan0 /vendor/bin/fstman -B -ddd -c /data/vendor/wifi/fstman.ini \
  612. -a 0 @android:vendor_wpa_wlan0
  613. user wifi
  614. group wifi
  615. capabilities NET_ADMIN NET_RAW
  616. class main
  617. disabled
  618. oneshot
  619. service wigighalsvc /vendor/bin/wigighalsvc
  620. interface vendor.qti.hardware.wigig.supptunnel@1.0::ISuppTunnelProvider default
  621. class hal
  622. user system
  623. group wifi
  624. # needed for on-demand insmod/rmmod of wigig module
  625. capabilities SYS_MODULE
  626. disabled
  627. service wigignpt /vendor/bin/wigignpt
  628. interface vendor.qti.hardware.wigig.netperftuner@1.0::INetPerfTuner default
  629. class hal
  630. socket wigignpt stream 660 system wifi
  631. user system
  632. group wifi
  633. capabilities NET_ADMIN
  634. disabled
  635. service dhcpcd_wlan0 /system/bin/dhcpcd -ABKLG
  636. class late_start
  637. disabled
  638. oneshot
  639. service dhcpcd_bond0 /system/bin/dhcpcd -ABKLG
  640. class late_start
  641. disabled
  642. oneshot
  643. service dhcpcd_p2p /system/bin/dhcpcd -ABKLG
  644. class late_start
  645. disabled
  646. oneshot
  647. service dhcpcd_wigig0 /system/bin/dhcpcd -ABKLG
  648. class late_start
  649. disabled
  650. oneshot
  651. service iprenew_wlan0 /system/bin/dhcpcd -n
  652. class late_start
  653. disabled
  654. oneshot
  655. service iprenew_bond0 /system/bin/dhcpcd -n
  656. class late_start
  657. disabled
  658. oneshot
  659. service iprenew_p2p /system/bin/dhcpcd -n
  660. class late_start
  661. disabled
  662. oneshot
  663. service iprenew_wigig0 /system/bin/dhcpcd -n
  664. class late_start
  665. disabled
  666. oneshot
  667. service ptt_socket_app /system/vendor/bin/ptt_socket_app -d
  668. class main
  669. user wifi
  670. group wifi system inet net_admin
  671. capabilities NET_ADMIN
  672. disabled
  673. oneshot
  674. service ptt_ffbm /system/vendor/bin/ptt_socket_app -f -d
  675. user root
  676. group root
  677. disabled
  678. oneshot
  679. service wifi_ftmd /system/vendor/bin/wifi_ftmd
  680. user system
  681. group system inet net_admin
  682. socket wififtmd_server dgram 0660 system system
  683. disabled
  684. oneshot
  685. on property:vendor.wifi.ftmd.load=true
  686. insmod /system/lib/modules/pronto/pronto_wlan.ko con_mode=5
  687. on property:persist.vendor.data.shs_ko_load=1
  688. exec u:r:vendor_modprobe:s0 -- /vendor/bin/modprobe -a -d /vendor/lib/modules rmnet_shs
  689. on property:persist.vendor.data.shs_ko_load=0
  690. exec u:r:vendor_modprobe:s0 -- /vendor/bin/modprobe -r -d /vendor/lib/modules rmnet_shs
  691. on property:persist.vendor.data.perf_ko_load=1
  692. exec u:r:vendor_modprobe:s0 -- /vendor/bin/modprobe -a -d /vendor/lib/modules rmnet_perf
  693. on property:persist.vendor.data.perf_ko_load=0
  694. exec u:r:vendor_modprobe:s0 -- /vendor/bin/modprobe -r -d /vendor/lib/modules rmnet_perf
  695. service cnss-daemon /system/vendor/bin/cnss-daemon -n -l
  696. class late_start
  697. user system
  698. group system inet net_admin wifi
  699. capabilities NET_ADMIN
  700. on property:sys.shutdown.requested=*
  701. stop cnss-daemon
  702. service dhcpcd_bt-pan /system/bin/dhcpcd -BKLG
  703. class late_start
  704. disabled
  705. oneshot
  706. service iprenew_bt-pan /system/bin/dhcpcd -n
  707. class late_start
  708. disabled
  709. oneshot
  710. service ssgqmigd /vendor/bin/ssgqmigd
  711. class late_start
  712. user radio
  713. group radio gps system
  714. socket ssgqmig seqpacket 0660 radio inet
  715. service ssgtzd /vendor/bin/ssgtzd
  716. class late_start
  717. user system
  718. group system
  719. socket ssgtzd stream 0660 system inet
  720. service mlid /vendor/bin/mlid
  721. class late_start
  722. user gps
  723. group gps
  724. socket mlid stream 0666 gps gps
  725. service vendor.qdmastatsd /system/vendor/bin/qdmastatsd
  726. class late_start
  727. user system
  728. group readproc system net_bw_stats radio vendor_rfs_shared
  729. service loc_launcher /system/vendor/bin/loc_launcher
  730. class late_start
  731. user gps
  732. group gps
  733. on property:crypto.driver.load=1
  734. insmod /system/lib/modules/qce.ko
  735. insmod /system/lib/modules/qcedev.ko
  736. service drmdiag /system/vendor/bin/drmdiagapp
  737. class late_start
  738. user root
  739. disabled
  740. oneshot
  741. on property:drmdiag.load=1
  742. start drmdiag
  743. on property:drmdiag.load=0
  744. stop drmdiag
  745. service qcom-sh /vendor/bin/init.qcom.sh
  746. class late_start
  747. user root
  748. group root system radio
  749. oneshot
  750. service vendor-sensor-sh /vendor/bin/init.qcom.sensors.sh
  751. class core
  752. user root
  753. oneshot
  754. service crashdata-sh /vendor/bin/init.qcom.crashdata.sh
  755. class late_start
  756. user root
  757. oneshot
  758. service qcom-post-boot /vendor/bin/init.qcom.post_boot.sh
  759. class late_start
  760. user root
  761. group root system wakelock graphics
  762. disabled
  763. oneshot
  764. service qti-testscripts /system/bin/sh /system/etc/init.qcom.testscripts.sh
  765. class late_start
  766. user root
  767. disabled
  768. oneshot
  769. seclabel u:r:qti-testscripts:s0
  770. service wifi-sdio-on /vendor/bin/init.qcom.sdio.sh
  771. class late_start
  772. group wifi inet
  773. disabled
  774. oneshot
  775. service wifi-crda /vendor/bin/init.crda.sh
  776. class late_start
  777. user root
  778. disabled
  779. oneshot
  780. on property:sys.boot_completed=1
  781. start qcom-post-boot
  782. start qti-testscripts
  783. on property:ro.vendor.ril.mbn_copy_completed=1
  784. write /data/vendor/radio/copy_complete 1
  785. service qvop-daemon /vendor/bin/qvop-daemon
  786. class late_start
  787. user system
  788. group system drmrpc
  789. service vendor.atfwd /vendor/bin/ATFWD-daemon
  790. class late_start
  791. user system
  792. group system radio
  793. disabled
  794. service hostapd_fst /vendor/bin/hw/hostapd -dd -g /data/vendor/wifi/hostapd/global
  795. interface android.hardware.wifi.hostapd@1.0::IHostapd default
  796. class main
  797. capabilities NET_ADMIN NET_RAW
  798. user wifi
  799. group wifi
  800. disabled
  801. oneshot
  802. service vendor.wigig_hostapd /vendor/bin/hw/hostapd -dd -j wigighostapd /data/vendor/wifi/hostapd/wigig_hostapd.conf
  803. class late_start
  804. capabilities NET_ADMIN NET_RAW
  805. user wifi
  806. group wifi inet keystore
  807. oneshot
  808. disabled
  809. service ims_regmanager /system/vendor/bin/exe-ims-regmanagerprocessnative
  810. class late_start
  811. group net_bt_admin inet radio wifi
  812. disabled
  813. on property:persist.ims.regmanager.mode=1
  814. start ims_regmanager
  815. on property:ro.data.large_tcp_window_size=true
  816. # Adjust socket buffer to enlarge TCP receive window for high bandwidth (e.g. DO-RevB)
  817. write /proc/sys/net/ipv4/tcp_adv_win_scale 2
  818. service battery_monitor /system/bin/battery_monitor
  819. user system
  820. group system
  821. disabled
  822. service vendor.ril-daemon2 /vendor/bin/hw/rild -c 2
  823. class main
  824. user radio
  825. disabled
  826. group radio cache inet misc audio sdcard_r sdcard_rw diag oem_2901 log
  827. capabilities BLOCK_SUSPEND NET_ADMIN NET_RAW
  828. service vendor.ril-daemon3 /vendor/bin/hw/rild -c 3
  829. class main
  830. user radio
  831. disabled
  832. group radio cache inet misc audio sdcard_r sdcard_rw diag oem_2901 log
  833. capabilities BLOCK_SUSPEND NET_ADMIN NET_RAW
  834. service profiler_daemon /system/bin/profiler_daemon
  835. class late_start
  836. user root
  837. group root
  838. disabled
  839. service charger /charger
  840. class charger
  841. group system graphics
  842. seclabel u:r:healthd:s0
  843. service vendor.ssr_diag /system/vendor/bin/ssr_diag
  844. class late_start
  845. user system
  846. group system
  847. disabled
  848. service hvdcp /system/bin/hvdcp
  849. class core
  850. user root
  851. disabled
  852. on property:persist.usb.hvdcp.detect=true
  853. start hvdcp
  854. on property:persist.usb.hvdcp.detect=false
  855. stop hvdcp
  856. service charger_monitor /system/bin/charger_monitor
  857. user root
  858. group root
  859. disabled
  860. service qbcharger /charger -m 1
  861. disabled
  862. oneshot
  863. on property:sys.qbcharger.enable=true
  864. start qbcharger
  865. on property:sys.qbcharger.enable=false
  866. stop qbcharger
  867. service diag_mdlog_start /system/vendor/bin/diag_mdlog
  868. class late_start
  869. user shell
  870. group system oem_2901 sdcard_rw sdcard_r media_rw
  871. disabled
  872. oneshot
  873. service diag_mdlog_stop /system/vendor/bin/diag_mdlog -k
  874. class late_start
  875. user shell
  876. group system oem_2901 sdcard_rw sdcard_r media_rw
  877. disabled
  878. oneshot
  879. service qlogd /system/xbin/qlogd
  880. socket qlogd stream 0662 system system
  881. class main
  882. disabled
  883. on property:persist.sys.qlogd=1
  884. start qlogd
  885. on property:persist.sys.qlogd=0
  886. stop qlogd
  887. service vm_bms /vendor/bin/vm_bms
  888. user root
  889. group root
  890. disabled
  891. service vendor.msm_irqbalance /vendor/bin/msm_irqbalance -f /system/vendor/etc/msm_irqbalance.conf
  892. class core
  893. user root
  894. group root
  895. disabled
  896. service vendor.msm_irqbal_lb /vendor/bin/msm_irqbalance -f /system/vendor/etc/msm_irqbalance_little_big.conf
  897. class core
  898. user root
  899. group root
  900. disabled
  901. service vendor.msm_irqbl_sdm630 /vendor/bin/msm_irqbalance -f /system/vendor/etc/msm_irqbalance_sdm630.conf
  902. class core
  903. user root
  904. group root
  905. disabled
  906. # service for USERDEBUG
  907. service vendor.LKCore-dbg /vendor/bin/LKCore
  908. class late_start
  909. oneshot
  910. disabled
  911. user root
  912. group root system log diag net_raw
  913. # service for USER
  914. service vendor.LKCore-rel /vendor/bin/LKCore
  915. class late_start
  916. oneshot
  917. disabled
  918. user system
  919. group system log diag
  920. service qseeproxydaemon /system/vendor/bin/qseeproxydaemon
  921. class late_start
  922. user system
  923. group system
  924. service esepmdaemon /system/vendor/bin/esepmdaemon
  925. class core
  926. user system
  927. group nfc
  928. on charger
  929. setprop persist.sys.usb.config mass_storage
  930. load_system_props
  931. start qcom-post-boot
  932. #add poweroffhandler
  933. service poweroffhandler /system/vendor/bin/poweroffhandler
  934. class core
  935. user media
  936. group graphics audio
  937. disabled
  938. oneshot
  939. #Mixed HWC versions among targets
  940. on property:init.svc.surfaceflinger=restarting
  941. stop vendor.hwcomposer-2-1
  942. stop vendor.hwcomposer-2-2
  943. start vendor.hwcomposer-2-1
  944. start vendor.hwcomposer-2-2
  945. on property:vendor.display.lcd_density=*
  946. setprop ro.sf.lcd_density ${vendor.display.lcd_density}
  947. service time_daemon /system/vendor/bin/time_daemon
  948. class main
  949. user root
  950. group root
  951. service vendor.vppservice /vendor/bin/vppservice
  952. class main
  953. user media
  954. group camera
  955. # Set vendor-ril lib path based on Meta version
  956. on property:vendor.rild.libpath=*
  957. setprop rild.libpath ${vendor.rild.libpath}
  958. on property:ro.vendor.radio.noril=*
  959. setprop ro.radio.noril ${ro.vendor.radio.noril}
  960. service seemp_healthd /vendor/bin/seemp_healthd
  961. class late_start
  962. user system
  963. group system
  964. service vendor.power_off_alarm /vendor/bin/power_off_alarm
  965. class core
  966. group system
  967. disabled
  968. oneshot
  969. service vendor.move_time_data /system/bin/move_time_data.sh
  970. class main
  971. user system
  972. group system
  973. disabled
  974. oneshot
  975. service vendor.hbtp /vendor/bin/hbtp_daemon
  976. class main
  977. user system
  978. group system
  979. capabilities SYS_NICE
  980. disabled
  981. service chre /vendor/bin/chre
  982. class late_start
  983. user system
  984. group system
  985. socket chre seqpacket 0660 root system
  986. shutdown critical
  987. #+Extb 840000,liulai.wt, add for keybox, on 20181211
  988. #begin bug for attestation keybox check.
  989. on property:sys.boot_completed=1
  990. # start vendor.check_keybox
  991. service vendor.check_keybox /vendor/bin/check_keybox
  992. class core
  993. user system
  994. oneshot
  995. capabilities SYS_NICE
  996. disabled
  997. #end bug
  998. #-Extb 840000,liulai.wt, add for keybox, on 20181211
  999. on property:vendor.chre.enabled=0
  1000. stop chre
  1001. service bugreport /system/bin/dumpstate -d -p -B -z -o /data/user_de/0/com.android.shell/files/bugreports/bugreport
  1002. class main
  1003. disabled
  1004. oneshot
  1005. keycodes 114 115 116
  1006. #Set GPU Opengles version
  1007. on property:vendor.opengles.version=*
  1008. setprop ro.opengles.version ${vendor.opengles.version}
  1009. #Set gpu available frequencies property
  1010. on property:vendor.gpu.available_frequencies=*
  1011. setprop ro.vendor.gpu.available_frequencies ${vendor.gpu.available_frequencies}
  1012. service vendor.wifilearner /system/vendor/bin/wifilearner
  1013. class main
  1014. user wifi
  1015. group wifi
  1016. oneshot
  1017. service vendor.audio-hal-2-0 /vendor/bin/hw/android.hardware.audio@2.0-service
  1018. override
  1019. class hal
  1020. user audioserver
  1021. # media gid needed for /dev/fm (radio) and for /data/misc/media (tee)
  1022. group audio camera drmrpc inet media mediadrm net_bt net_bt_admin net_bw_acct oem_2901 wakelock
  1023. capabilities BLOCK_SUSPEND
  1024. ioprio rt 4
  1025. writepid /dev/cpuset/foreground/tasks /dev/stune/foreground/tasks
  1026. # audioflinger restarts itself when it loses connection with the hal
  1027. # and its .rc file has an "onrestart restart audio-hal" rule, thus
  1028. # an additional auto-restart from the init process isn't needed.
  1029. oneshot
  1030. interface android.hardware.audio@4.0::IDevicesFactory default
  1031. interface android.hardware.audio@2.0::IDevicesFactory default