1 # Copyright (c) 2009-2012, 2014-2015, The Linux Foundation. All rights reserved.
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
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.
29 wait /dev/block/platform/soc/${ro.boot.bootdevice}
30 symlink /dev/block/platform/soc/${ro.boot.bootdevice} /dev/block/bootdevice
31 symlink /dev/block/bootdevice/by-name/oem_stanvbk /dev/block/bootdevice/by-name/oem_stanvbk_a
32 symlink /dev/block/bootdevice/by-name/oem_stanvbk /dev/block/bootdevice/by-name/oem_stanvbk_b
33 symlink /dev/block/bootdevice/by-name/oem_dycnvbk /dev/block/bootdevice/by-name/oem_dycnvbk_a
34 symlink /dev/block/bootdevice/by-name/oem_dycnvbk /dev/block/bootdevice/by-name/oem_dycnvbk_b
36 # this is for OnePlus 7 Pro 5g stock rom flashing
37 symlink /dev/block/bootdevice/by-name/mdm_oem_stanvbk /dev/block/bootdevice/by-name/mdm_oem_stanvbk_a
38 symlink /dev/block/bootdevice/by-name/mdm_oem_stanvbk /dev/block/bootdevice/by-name/mdm_oem_stanvbk_b
40 # this is not good way for Hydrogen payload reserve
41 write /dev/block/bootdevice/by-name/reserve 0
42 symlink /dev/block/bootdevice/by-name/reserve /dev/block/bootdevice/by-name/reserve_a
43 symlink /dev/block/bootdevice/by-name/reserve /dev/block/bootdevice/by-name/reserve_b
45 chmod 0660 /dev/qseecom
46 chown system drmrpc /dev/qseecom
48 chown system system /dev/ion
54 # Separate copy needed to use /sbin/linker64 instead of /system/bin/linker64
55 service sbinqseecomd /sbin/qseecomd
59 seclabel u:r:recovery:s0
61 service prepdecrypt /sbin/prepdecrypt.sh
66 seclabel u:r:recovery:s0
68 service hwservicemanager /sbin/hwservicemanager
72 onrestart setprop hwservicemanager.ready false
73 seclabel u:r:recovery:s0
75 service boot-1-0 /sbin/android.hardware.boot@1.0-service
79 seclabel u:r:recovery:s0
81 service servicemanager /sbin/servicemanager
85 seclabel u:r:recovery:s0
87 service keystore_auth /sbin/keystore_auth
92 seclabel u:r:recovery:s0
94 # keystore is started and stopped on demand by TWRP
95 service keystore /sbin/keystore /tmp/misc/keystore
97 group root drmrpc readproc
99 seclabel u:r:recovery:s0
101 service gatekeeper-1-0 /sbin/android.hardware.gatekeeper@1.0-service-qti
105 seclabel u:r:recovery:s0
107 service keymaster-4-0 /sbin/android.hardware.keymaster@4.0-service-qti
111 seclabel u:r:recovery:s0
113 service logd /sbin/logd
117 seclabel u:r:recovery:s0
119 service time_daemon /sbin/time_daemon
123 seclabel u:r:recovery:s0
125 # This helps fix ld.config.txt errors from the linker on Android 8.1+
126 service ldconfigtxt /sbin/touch /sbin/ld.config.txt
128 seclabel u:r:recovery:s0
131 export LD_CONFIG_FILE /sbin/ld.config.txt
132 setprop sys.usb.config adb
133 write /proc/touchpanel/gesture_enable 1
134 write /sys/devices/platform/soc/c440000.qcom,spmi/spmi-0/spmi0-02/c440000.qcom,spmi:qcom,pmi8998@2:qcom,qpnp-smb2/power_supply/usb/otg_switch 1
138 start hwservicemanager
142 setprop crypto.ready 1
144 on property:crypto.ready=0
150 on property:crypto.ready=1
153 on property:vendor.sys.listeners.registered=true
159 on property:sys.usb.config=mtp,adb