| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436 |
- # Copyright (c) 2014-2015,2018, 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 init.carrier.rc
- #import /vendor/st/nfc/st21nfc/conf/init.vendor.st21nfc.rc
- on early-init
- exec u:r:vendor_modprobe:s0 -- /vendor/bin/modprobe -a -d /vendor/lib/modules audio_apr audio_adsp_loader audio_q6_notifier audio_q6 audio_usf audio_native audio_pinctrl_wcd audio_swr audio_platform audio_swr_ctrl audio_hdmi audio_wcd9xxx audio_wcd_core audio_wsa881x_analog audio_wsa881x audio_mbhc audio_stub audio_digital_cdc audio_analog_cdc audio_wcd_cpe audio_cpe_lsm audio_wcd9335 audio_machine_sdm450 audio_machine_ext_sdm450
- mkdir /firmware 0771 system system
- mkdir /system 0777 root root
- mkdir /bt_firmware 0771 system system
- symlink /data/tombstones /tombstones
- mkdir /dsp 0771 media media
- on fs
- wait /dev/block/platform/soc/${ro.boot.bootdevice}
- symlink /dev/block/platform/soc/${ro.boot.bootdevice} /dev/block/bootdevice
- write /proc/sys/vm/swappiness 100
- mount_all /vendor/etc/fstab.qcom
- chown root system /mnt/vendor/persist
- chmod 0771 /mnt/vendor/persist
- mkdir /mnt/vendor/persist/data 0700 system system
- mkdir /mnt/vendor/persist/bms 0700 root system
- restorecon_recursive /mnt/vendor/persist
- #write /sys/kernel/boot_adsp/boot 1
- wait /dev/block/bootdevice/by-name/oem
- mount ext4 /dev/block/bootdevice/by-name/oem /oem ro nosuid nodev barrier=1
- on post-fs
- # set RLIMIT_MEMLOCK to 64MB
- setrlimit 8 67108864 67108864
- start vendor.qseecomd
- exec - system system -- /vendor/bin/init.qti.qseecomd.sh
- write /dev/ipa 1
- chown system system /sys/devices/proinfo/factoryreset_date
- chmod 0664 /sys/devices/proinfo/factoryreset_date
- on post-fs-data
- mkdir /data/tombstones 0771 system system
- mkdir /tombstones/modem 0771 system system
- mkdir /tombstones/lpass 0771 system system
- mkdir /tombstones/wcnss 0771 system system
- mkdir /tombstones/dsps 0771 system system
- mkdir /persist/data/sfs 0700 system system
- mkdir /persist/data/tz 0700 system system
- mkdir /data/vendor/hbtp 0750 system system
- mkdir /data/misc/dts 0770 media audio
- mkdir /data/vendor/tloc 0700 system drmrpc
- #Create folder for mm-qcamera-daemon
- mkdir /data/vendor/camera 0770 camera camera
- #start camera server as daemon
- service qcamerasvr /system/vendor/bin/mm-qcamera-daemon
- class late_start
- user camera
- group camera system inet input graphics
- on init
- write /dev/stune/top-app/schedtune.colocate 1
- write /sys/module/qpnp_rtc/parameters/poweron_alarm 1
- service qfp-daemon /system/vendor/bin/qfp-daemon
- class late_start
- user system
- group system drmrpc
- # Allow usb charging to be disabled peristently
- on property:persist.usb.chgdisabled=1
- write /sys/class/power_supply/battery/charging_enabled 0
- on property:persist.usb.chgdisabled=0
- write /sys/class/power_supply/battery/charging_enabled 1
- service qrngd /system/bin/qrngd -f
- class main
- user root
- group root
- service qrngp /system/bin/qrngp -f
- class main
- user root
- group root
- oneshot
- disabled
- on property:sys.boot_completed=1
- start qrngp
- service vendor.qseecomd /vendor/bin/qseecomd
- class core
- user root
- group root
- #service aostlmd /system/bin/aostlmd
- # class late_start
- # user system
- # group system net_raw
- service perfd /system/vendor/bin/perfd
- class main
- user root
- disabled
- service gamed /system/vendor/bin/gamed
- class main
- user system
- group system
- disabled
- socket gamed seqpacket 0640 system system
- service thermal-engine /system/vendor/bin/thermal-engine
- class main
- user root
- socket thermal-send-client stream 0666 system system
- socket thermal-recv-client stream 0660 system system
- socket thermal-recv-passive-client stream 0666 system system
- socket thermal-send-rule stream 0660 system system
- group root
- service time_daemon /system/vendor/bin/time_daemon
- class late_start
- user root
- group root
- service audiod /system/vendor/bin/audiod
- class late_start
- user system
- group system
- on boot
- #+ExtB328-7580, yiguochao.wt, add, on 20190118
- # after mount /mnt/ permission will change to root:root 0755
- # so need to restorecon_recursive permission
- # cts will check /mnt/ directory permission which do not allow to read
- # run cts -m CtsAppSecurityHostTestCases \
- # -t android.appsecurity.cts.ExternalStorageHostTest#testExternalStorageNone
-
- #fix DPL-7768 Oman issue
- write /proc/sys/net/ipv4/tcp_mtu_probing 1
- chown root system /mnt/demoapp
- chmod 0771 /mnt/demoapp
- restorecon_recursive /mnt/demoapp
- chown root system /mnt/elabel
- chmod 0771 /mnt/elabel
- restorecon_recursive /mnt/elabel
- #-ExtB328-7580, yiguochao.wt, add, on 20190118
- start rmt_storage
- insmod /system/lib/modules/adsprpc.ko
- # enable sched boost in order to schedule tasks on perf cluster
- write /proc/sys/kernel/sched_boost 1
- # access permission for secure touch
- chmod 0660 /sys/devices/soc.0/78b7000.i2c/i2c-3/3-0020/input/input0/secure_touch_enable
- chmod 0440 /sys/devices/soc.0/78b7000.i2c/i2c-3/3-0020/input/input0/secure_touch
- chmod 0660 /sys/devices/soc.0/78b8000.i2c/i2c-4/4-0020/input/input0/secure_touch_enable
- chmod 0440 /sys/devices/soc.0/78b8000.i2c/i2c-4/4-0020/input/input0/secure_touch
- #bug413048 add sar_sensor node permission and radio group
- chmod 0664 /sys/class/capsense/enable
- chown system drmrpc /sys/devices/soc.0/78b7000.i2c/i2c-3/3-0020/input/input0/secure_touch_enable
- chown system drmrpc /sys/devices/soc.0/78b7000.i2c/i2c-3/3-0020/input/input0/secure_touch
- chown system drmrpc /sys/devices/soc.0/78b8000.i2c/i2c-4/4-0020/input/input0/secure_touch_enable
- chown system drmrpc /sys/devices/soc.0/78b8000.i2c/i2c-4/4-0020/input/input0/secure_touch
- chown system system /sys/kernel/hbtp/display_pwr
- #bug413048 add sar_sensor node permission and radio group
- chown radio radio /sys/class/capsense/enable
- chmod 0664 /sys/devices/proinfo/psn
- chmod 0664 /sys/devices/proinfo/sn
- chown system system /sys/devices/proinfo/psn
- chown system system /sys/devices/proinfo/sn
- # 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-3
- 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
- # access permissions for FPC service
- chown system system /sys/bus/platform/devices/soc/soc:fpc1020/irq
- chown system system /sys/bus/platform/devices/soc/soc:fpc1020/wakeup_enable
- chmod 0666 /dev/qseecom
- ####Regionalization config and prop files####
- chmod 0644 /persist/speccfg/spec
- chmod 0644 /persist/speccfg/devicetype
- chmod 0644 /persist/speccfg/mbnversion
- chmod 0644 /persist/speccfg/.not_triggered
- chmod 0644 /persist/speccfg/vendor_ro.prop
- chmod 0644 /persist/speccfg/vendor_persist.prop
- chmod 0644 /persist/speccfg/submask
- chmod 0644 /persist/speccfg/partition
- chown system system /persist/speccfg/spec
- chown system system /persist/speccfg/devicetype
- chown system system /persist/speccfg/mbnversion
- chown system system /persist/speccfg/.not_triggered
- chown system system /persist/speccfg/vendor_ro.prop
- chown system system /persist/speccfg/vendor_persist.prop
- chown system system /persist/speccfg/submask
- chown system system /persist/speccfg/partition
- # access permission for wlan
- chown system system /mnt/vendor/persist/WCNSS_qcom_wlan_nv.bin
- #USB controller configuration
- write /sys/module/g_android/parameters/mtp_tx_req_len 131072
- write /sys/module/g_android/parameters/mtp_rx_req_len 131072
- setprop vendor.usb.rndis.func.name "rndis"
- setprop vendor.usb.rmnet.func.name "rmnet_bam"
- setprop vendor.usb.rmnet.inst.name "rmnet_bam_dmux"
- setprop vendor.usb.dpl.inst.name "dpl_bam_dmux"
- service wcnss-service /system/vendor/bin/wcnss_service
- class main
- user system
- group system wifi radio
- oneshot
- service imsstarter /vendor/bin/init.qti.ims.sh
- class main
- oneshot
- on property:vold.decrypt=trigger_restart_framework
- start imsstarter
- ## imsqmidaemon starts with root and UID will be downgraded to SYSTEM.
- service vendor.imsqmidaemon /system/vendor/bin/imsqmidaemon
- class main
- user system
- socket ims_qmid stream 0660 system radio
- group radio log diag
- disabled
- on property:vendor.service.qti.ims.enabled=1
- start vendor.imsqmidaemon
- # imsdatadaemon starts with root and UID will be downgraded to SYSTEM.
- service vendor.imsdatadaemon /system/vendor/bin/imsdatadaemon
- class main
- user system
- socket ims_datad stream 0660 system radio
- group system wifi radio inet log diag
- disabled
- on property:vendor.ims.QMI_DAEMON_STATUS=1
- start vendor.imsdatadaemon
- service stflashtool /vendor/bin/STFlashTool -c /vendor/etc/st21nfc_conf.txt
- class late_start
- group nfc
- user nfc
- oneshot
- service vendor.ims_rtp_daemon /system/vendor/bin/ims_rtp_daemon
- class main
- user system
- group radio diag inet log
- service vendor.imsrcsservice /system/vendor/bin/imsrcsd
- class main
- user system
- group radio diag inet log wakelock
- on property:vendor.ims.DATA_DAEMON_STATUS=1
- restart vendor.ims_rtp_daemon
- service ppd /system/vendor/bin/mm-pp-dpps
- class late_start
- disabled
- user system
- socket pps stream 0660 system system
- group system graphics
- on property:init.svc.surfaceflinger=stopped
- stop ppd
- on property:init.svc.surfaceflinger=running
- start ppd
- on property:init.svc.surfaceflinger=restarting
- stop ppd
- on property:init.svc.zygote=stopped
- stop ppd
- on property:init.svc.zygote=running
- start ppd
- on property:init.svc.zygote=restarting
- stop ppd
- on charger
- wait /dev/block/bootdevice/by-name/system
- mount ext4 /dev/block/bootdevice/by-name/system /system ro barrier=1
- load_all_props
- setprop persist.sys.usb.config mass_storage
- start qcom-post-boot
- setprop persist.sys.usb.config mass_storage
- start vendor.hvdcp_opti
- start vendor.vm_bms
- on charger && property:ro.boot.usbconfigfs=true
- setprop sys.usb.configfs 1
- on charger && property:ro.boot.usbconfigfs=false
- setprop sys.usb.configfs 0
- service hbtp /system/vendor/bin/hbtp_daemon
- class main
- user system
- group system
- disabled
- service dts_configurator /system/vendor/bin/dts_configurator
- class late_start
- user system
- group media audio
- oneshot
- service dtseagleservice /system/vendor/bin/dts_eagle_service
- class late_start
- user system
- group audio media
- disabled
- service adsprpcd /system/vendor/bin/adsprpcd
- class main
- user media
- group media
- on property:init.svc.dts_configurator=stopped
- start dtseagleservice
- service vendor.per_mgr /system/vendor/bin/pm-service
- class core
- user system
- group system net_raw
- service vendor.per_proxy /system/vendor/bin/pm-proxy
- class core
- user system
- group system
- disabled
- on property:init.svc.vendor.per_mgr=running
- start vendor.per_proxy
- on property:sys.shutdown.requested=*
- stop vendor.per_proxy
- stop vendor.ims_rtp_daemon
- service vendor.hvdcp_opti /vendor/bin/hvdcp_opti
- class main
- user root
- group system wakelock
- service vendor.vm_bms /vendor/bin/vm_bms
- class main
- user root
- group system wakelock
- service mdtpd /system/vendor/bin/mdtpd
- class late_start
- user root
- group system radio drmrpc
- on boot
- write /sys/devices/soc.0/78b8000.i2c/i2c-4/4-0020/input/input0/fw_name PR1702898-s3528t_00260005_00380008.img
- write /sys/devices/soc.0/78b8000.i2c/i2c-4/4-0020/input/input0/update_fw 1
- service vendor.tlocd /vendor/bin/tloc_daemon
- class late_start
- user system
- group drmrpc gps net_raw
- on boot
- chown system system /sys/class/leds/red/blink
- chown system system /sys/class/leds/red/breath
- chown system system /sys/class/leds/red/delay_on
- chown system system /sys/class/leds/red/delay_off
- chown system system /sys/class/leds/green/blink
- chown system system /sys/class/leds/green/breath
- chown system system /sys/class/leds/green/delay_on
- chown system system /sys/class/leds/green/delay_off
- chown system system /sys/class/leds/blue/blink
- chown system system /sys/class/leds/blue/breath
- chown system system /sys/class/leds/blue/delay_on
- chown system system /sys/class/leds/blue/delay_off
- on post-fs
- chmod 660 /dev/fpsensor
- chown system system /dev/fpsensor
- chmod 660 /dev/sunwave_fp
- chown system system /dev/sunwave_fp
- on property:sys.boot_completed=1
- write /sys/devices/proinfo/psn ${oem.radio.factory_psn}
- write /sys/devices/proinfo/sn ${oem.radio.factory_sn}
|