# Copyright (c) 2009-2012, 2014-2015, 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 BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "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 fs wait /dev/block/platform/soc/${ro.boot.bootdevice} symlink /dev/block/platform/soc/${ro.boot.bootdevice} /dev/block/bootdevice symlink /dev/block/bootdevice/by-name/oem_stanvbk /dev/block/bootdevice/by-name/oem_stanvbk_a symlink /dev/block/bootdevice/by-name/oem_stanvbk /dev/block/bootdevice/by-name/oem_stanvbk_b symlink /dev/block/bootdevice/by-name/oem_dycnvbk /dev/block/bootdevice/by-name/oem_dycnvbk_a symlink /dev/block/bootdevice/by-name/oem_dycnvbk /dev/block/bootdevice/by-name/oem_dycnvbk_b chmod 0660 /dev/qseecom chown system drmrpc /dev/qseecom chmod 0664 /dev/ion chown system system /dev/ion install_keyring on early-fs start vold # Separate copy needed to use /sbin/linker64 instead of /system/bin/linker64 service sbinqseecomd /sbin/qseecomd user root group root disabled seclabel u:r:recovery:s0 service prepdecrypt /sbin/prepdecrypt.sh oneshot disabled user root group root seclabel u:r:recovery:s0 service hwservicemanager /sbin/hwservicemanager user root group root disabled onrestart setprop hwservicemanager.ready false seclabel u:r:recovery:s0 service boot-1-0 /sbin/android.hardware.boot@1.0-service user root group root disabled seclabel u:r:recovery:s0 service servicemanager /sbin/servicemanager user root group root readproc disabled seclabel u:r:recovery:s0 service keystore_auth /sbin/keystore_auth oneshot user system group root disabled seclabel u:r:recovery:s0 # keystore is started and stopped on demand by TWRP service keystore /sbin/keystore /tmp/misc/keystore user root group root drmrpc readproc disabled seclabel u:r:recovery:s0 service gatekeeper-1-0 /sbin/android.hardware.gatekeeper@1.0-service-qti user root group root disabled seclabel u:r:recovery:s0 service keymaster-4-0 /sbin/android.hardware.keymaster@4.0-service-qti user root group root disabled seclabel u:r:recovery:s0 service logd /sbin/logd user root group root disabled seclabel u:r:recovery:s0 service time_daemon /sbin/time_daemon user root group root disabled seclabel u:r:recovery:s0 # This helps fix ld.config.txt errors from the linker on Android 8.1+ service ldconfigtxt /sbin/touch /sbin/ld.config.txt oneshot seclabel u:r:recovery:s0 on boot export LD_CONFIG_FILE /sbin/ld.config.txt setprop sys.usb.config adb write /proc/touchpanel/gesture_enable 1 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 on init start logd start hwservicemanager start boot-1-0 start prepdecrypt start time_daemon setprop crypto.ready 1 on property:crypto.ready=0 stop sbinqseecomd stop keymaster-4-0 stop gatekeeper-1-0 stop servicemanager on property:crypto.ready=1 start sbinqseecomd on property:vendor.sys.listeners.registered=true start keymaster-4-0 start gatekeeper-1-0 start servicemanager restart time_daemon on property:sys.usb.config=mtp,adb restart time_daemon