# Copyright (c) 2013-2017, 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 /vendor/etc/init/hw/init.samsung.rc import /vendor/etc/init/hw/init.${ro.product.vendor.device}.rc import /vendor/etc/init/hw/init.${ro.product.vendor.name}.rc on early-init mkdir /mnt/vendor/persist 0771 system system symlink /data/tombstones /tombstones on fs wait /dev/block/platform/soc/${ro.boot.bootdevice} symlink /dev/block/platform/soc/${ro.boot.bootdevice} /dev/block/bootdevice mount_all /vendor/etc/fstab.qcom setprop ro.crypto.fde_algorithm AES-256-XTS swapon_all /vendor/etc/fstab.qcom mkdir /mnt/vendor/efs 0771 system radio mkdir /mnt/vendor/persist 0771 root system mount /firmware /vendor/firmware_mnt bind mount /firmware-modem /vendor/firmware-modem bind mount /efs /mnt/vendor/efs bind mount /persist /mnt/vendor/persist bind mkdir /mnt/vendor/persist/data 0700 system system mkdir /mnt/vendor/persist/rfs 0700 system system wait /dev/block/bootdevice/by-name/bluetooth mount vfat /dev/block/bootdevice/by-name/bluetooth /vendor/bt_firmware ro shortname=lower,uid=1002,gid=3002,dmask=227,fmask=337,context=u:object_r:bt_firmware_file:s0 wait /dev/block/bootdevice/by-name/dsp mount ext4 /dev/block/bootdevice/by-name/dsp /vendor/dsp ro nosuid nodev barrier=1 restorecon_recursive /vendor/dsp mount ext4 /dev/block/bootdevice/by-name/dsp /vendor/dsp ro remount nosuid nodev barrier=1 on init write /sys/module/qpnp_rtc/parameters/poweron_alarm 1 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 /persist/qti_fp 0700 system system mkdir /data/misc/dts 0770 media audio mkdir /data/misc/seemp 0700 system system mkdir /data/usf 0700 system system mkdir /data/misc/tloc/ 0700 system drmrpc mkdir /data/misc/audio_pp 0771 media audio #Create folder for mm-qcamera-daemon mkdir /data/vendor/camera 0770 camera camera on property:init.svc.bootanim=running write /sys/class/leds/wled/brightness 4095 on post-fs # set RLIMIT_MEMLOCK to 64MB setrlimit 8 67108864 67108864 write /dev/ipa 1 on late-fs mount_all /vendor/etc/fstab.qcom --late ##### added by init.qcom.early_boot.sh (booting performance team)##### on early-boot # Setup display nodes & permissions chown system graphics /sys/class/graphics/fb1/hpd chown system graphics /sys/class/graphics/fb1/res_info chown system graphics /sys/class/graphics/fb1/vendor_name chown system graphics /sys/class/graphics/fb1/product_description chown system graphics /sys/class/graphics/fb1/video_mode chown system graphics /sys/class/graphics/fb1/format_3d chown system graphics /sys/class/graphics/fb1/s3d_mode chown system graphics /sys/class/graphics/fb1/dynamic_fps chown system graphics /sys/class/graphics/fb1/msm_fb_dfps_mode chown system graphics /sys/class/graphics/fb1/hdr_stream chown system graphics /sys/class/graphics/fb1/cec/enable chown system graphics /sys/class/graphics/fb1/cec/logical_addr chown system graphics /sys/class/graphics/fb1/cec/rd_msg chown system graphics /sys/class/graphics/fb1/pa chown system graphics /sys/class/graphics/fb1/cec/wr_msg chown system graphics /sys/class/graphics/fb1/hdcp/tp chown system graphics /sys/class/graphics/fb1/pll_enable chown system graphics /sys/class/graphics/fb1/hdmi_ppm chown audioserver audio /sys/class/graphics/fb1/hdmi_audio_cb chown system graphics /sys/devices/virtual/hdcp/msm_hdcp/min_level_change chmod 0664 /sys/class/graphics/fb1/hpd chmod 0664 /sys/class/graphics/fb1/res_info chmod 0664 /sys/class/graphics/fb1/vendor_name chmod 0664 /sys/class/graphics/fb1/product_description chmod 0664 /sys/class/graphics/fb1/video_mode chmod 0664 /sys/class/graphics/fb1/format_3d chmod 0664 /sys/class/graphics/fb1/s3d_mode chmod 0664 /sys/class/graphics/fb1/dynamic_fps chmod 0664 /sys/class/graphics/fb1/msm_fb_dfps_mode chmod 0664 /sys/class/graphics/fb1/hdr_stream chmod 0664 /sys/class/graphics/fb1/cec/enable chmod 0664 /sys/class/graphics/fb1/cec/logical_addr chmod 0664 /sys/class/graphics/fb1/cec/rd_msg chmod 0664 /sys/class/graphics/fb1/pa chmod 0600 /sys/class/graphics/fb1/cec/wr_msg chmod 0664 /sys/class/graphics/fb1/hdcp/tp chmod 0664 /sys/class/graphics/fb1/pll_enable chmod 0664 /sys/class/graphics/fb1/hdmi_ppm chmod 0600 /sys/class/graphics/fb1/hdmi_audio_cb chmod 0660 /sys/devices/virtual/hdcp/msm_hdcp/min_level_change symlink /dev/graphics/fb1 /devices/virtual/switch/hdmi # Set permissions "/sys/class/graphics/fb0" chown system graphics /sys/class/graphics/fb0/idle_time chown system graphics /sys/class/graphics/fb0/dynamic_fps chown system graphics /sys/class/graphics/fb0/dyn_pu chown system graphics /sys/class/graphics/fb0/modes chown system graphics /sys/class/graphics/fb0/mode # chown system graphics /sys/class/graphics/fb0/msm_cmd_autorefresh_en chmod 0664 /sys/class/graphics/fb0/idle_time chmod 0664 /sys/class/graphics/fb0/dynamic_fps chmod 0664 /sys/class/graphics/fb0/dyn_pu chmod 0664 /sys/class/graphics/fb0/modes chmod 0664 /sys/class/graphics/fb0/mode # chmod 0664 /sys/class/graphics/fb0/msm_cmd_autorefresh_en # Set lineptr permissions for all displays chown system graphics /sys/class/graphics/fb0/lineptr_value chown system graphics /sys/class/graphics/fb1/lineptr_value chown system graphics /sys/class/graphics/fb2/lineptr_value chown system graphics /sys/class/graphics/fb3/lineptr_value chmod 0664 /sys/class/graphics/fb0/lineptr_value chmod 0664 /sys/class/graphics/fb1/lineptr_value chmod 0664 /sys/class/graphics/fb2/lineptr_value chmod 0664 /sys/class/graphics/fb3/lineptr_value chown system graphics /sys/class/graphics/fb0/msm_fb_persist_mode chown system graphics /sys/class/graphics/fb1/msm_fb_persist_mode chown system graphics /sys/class/graphics/fb2/msm_fb_persist_mode chown system graphics /sys/class/graphics/fb3/msm_fb_persist_mode chmod 0664 /sys/class/graphics/fb0/msm_fb_persist_mode chmod 0664 /sys/class/graphics/fb1/msm_fb_persist_mode chmod 0664 /sys/class/graphics/fb2/msm_fb_persist_mode chmod 0664 /sys/class/graphics/fb3/msm_fb_persist_mode ##### added by init.qcom.early_boot.sh (booting performance team)##### on boot start rmt_storage start rfs_access # access permission for secure touch chmod 0660 /sys/devices/soc/75ba000.i2c/i2c-12/12-004a/secure_touch_enable chmod 0440 /sys/devices/soc/75ba000.i2c/i2c-12/12-004a/secure_touch chown system drmrpc /sys/devices/soc/75ba000.i2c/i2c-12/12-004a/secure_touch_enable chown system drmrpc /sys/devices/soc/75ba000.i2c/i2c-12/12-004a/secure_touch write /sys/devices/soc/75ba000.i2c/i2c-12/12-0020/input/input0/update_fw 1 #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 write /sys/class/android_usb/android0/f_rndis_qc/rndis_transports BAM2BAM_IPA #start camera server as daemon service qcamerasvr /vendor/bin/mm-qcamera-daemon class late_start user camera group camera system inet input graphics #fingerprint service #service fingerprintd /system/vendor/bin/fingerprintd # class late_start # user system # group system # #service qfp-daemon /system/vendor/bin/qfp-daemon # class late_start # user system # group system drmrpc diag input # #service fps_hal /system/vendor/bin/fingerprint.qcom # class late_start # user system # group system input # #Start up peripheral manager service per_mgr /vendor/bin/pm-service class core user system group system net_raw ioprio rt 4 service per_proxy /vendor/bin/pm-proxy class core user system group system disabled on property:init.svc.per_mgr=running start per_proxy on property:sys.shutdown.requested=* stop per_proxy stop vendor.ims_rtp_daemon #service mdm_launcher /system/bin/sh init.mdm.sh # class core # oneshot # #service mdm_helper /system/bin/mdm_helper # class core # group root system # disabled # #service qrngd /system/bin/qrngd -f # class main # user root # group root # #service qrngp /system/bin/qrngp # class main # user root # group root # oneshot # disabled # #on property:sys.boot_completed=1 # start qrngp service qseecomd /vendor/bin/qseecomd class core user root group root #service gamed /system/vendor/bin/gamed # class main # user system # group system # disabled # socket gamed seqpacket 0640 system system # #service seempd /system/vendor/bin/seempd # class late_start # user system # group system # socket seempdw dgram 0666 system system # #service secotad /system/vendor/bin/secotad # class late_start # user system # group system # #service mpdecision /system/vendor/bin/mpdecision --avg_comp # user root # disabled # #service qosmgrd /system/bin/qosmgr /system/etc/qosmgr_rules.xml # user system # group system # disabled # service thermal-engine /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 security-check1 /sbin/security_boot_check system # class core # oneshot # #service security-check2 /sbin/security_boot_check recovery # class core # oneshot # #service time_daemon /system/vendor/bin/time_daemon # class late_start # user root # group root # #service adsprpcd /system/vendor/bin/adsprpcd # class main # user media # group media # service adsprpcd /vendor/bin/adsprpcd rootpd class main user system group system service adsprpcd_audiopd /vendor/bin/adsprpcd audiopd class main user media group media service adsprpcd_sensorspd /vendor/bin/adsprpcd sensorspd class core user system group system #service audiod /system/vendor/bin/audiod # class late_start # user system # group system # # #service usf_tester /system/vendor/bin/usf_tester # user system # group system inet # disabled # oneshot # #service usf_epos /system/vendor/bin/usf_epos # class main # user system # group system inet # disabled # oneshot # #service usf_gesture /system/vendor/bin/usf_gesture # user system # group system inet # disabled # oneshot # #service usf_sync_gesture /system/vendor/bin/usf_sync_gesture # user system # group system inet audio # disabled # oneshot # #service usf_p2p /system/vendor/bin/usf_p2p # user system # group system inet # disabled # oneshot # #service usf_hovering /system/vendor/bin/usf_hovering # user system # group system inet # disabled # oneshot # #service usf_proximity /system/vendor/bin/usf_proximity # class late_start # user system # group system inet audio # #service usf_pairing /system/vendor/bin/usf_pairing # user system # group system inet # disabled # oneshot # #service usf_sw_calib /system/vendor/bin/usf_sw_calib # user system # group system inet # disabled # oneshot # #service usf-post-boot /system/vendor/bin/sh /system/etc/usf_post_boot.sh # class late_start # user root # disabled # oneshot # on property:init.svc.bootanim=stopped start usf-post-boot ## imsdatadaemon 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 # # 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 # service pd_mapper /vendor/bin/pd-mapper class core user system group system on property:persist.sys.pd_enable=1 start pd_mapper write /sys/class/service_locator/service_locator_status 1 on property:persist.sys.pd_enable=0 write /sys/class/service_locator/service_locator_status 0 # ## QCA1530 SoC late_start group trigger #service gnss-init /system/vendor/bin/gnss.qca1530.sh init # class late_start # oneshot # on property:vendor.ims.QMI_DAEMON_STATUS=1 start vendor.imsdatadaemon #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 dts_configurator /system/vendor/bin/dts_configurator # class late_start # user system # group system media audio # oneshot # #service dtseagleservice /system/vendor/bin/dts_eagle_service # class late_start # user system # group audio media # disabled # on property:init.svc.dts_configurator=stopped start dtseagleservice 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 #service energy-awareness /system/vendor/bin/energy-awareness # class main # user system # group system # oneshot # #service vendor.hvdcp_opti /system/vendor/bin/hvdcp_opti # class main # user root # group system wakelock # #service mdtpd /system/vendor/bin/mdtpd # class late_start # user root # group system radio drmrpc # service dhcpcd_eth0 /system/vendor/bin/dhcpcd -ABKLG class late_start disabled oneshot service iprenew_eth0 /system/vendor/bin/dhcpcd -n class late_start disabled oneshot service ppd /vendor/bin/mm-pp-dpps class late_start user system group system graphics socket pps stream 0660 system system disabled service vendor.contexthub-hal-1-0 /vendor/bin/hw/android.hardware.contexthub@1.0-service override class hal interface android.hardware.contexthub@1.0::IContexthub default user system group system disabled