# 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. # import init.qcom.power.rc import init.qcom.usb.rc import init.safailnet.rc on early-init mount debugfs debugfs /sys/kernel/debug chmod 0755 /sys/kernel/debug mkdir /firmware 0771 system system mkdir /bt_firmware 0771 system system symlink /data/tombstones /tombstones mkdir /dsp 0771 media media on init export LD_SHIM_LIBS "/system/vendor/lib/libmmcamera_ppeiscore.so|/system/lib/libshim_camera.so:/system/vendor/lib/hw/camera.vendor.msm8996.so|/system/lib/libshim_camera.so:/system/vendor/lib64/lib-imsvt.so|libshims_ims.so" # Set permissions for persist partition mkdir /persist 0771 system system symlink /sdcard /storage/sdcard0 write /sys/module/qpnp_rtc/parameters/poweron_alarm 1 on late-fs # boot time fs tune write /sys/block/sda/queue/iostats 0 write /sys/block/sda/queue/iosched/slice_idle 0 write /sys/block/sda/queue/read_ahead_kb 2048 write /sys/block/sda/queue/nr_requests 256 write /sys/block/dm-0/queue/read_ahead_kb 2048 write /sys/block/dm-1/queue/read_ahead_kb 2048 on early-boot # set RLIMIT_MEMLOCK to 64MB setrlimit 8 67108864 67108864 # Allow subsystem (modem etc) debugging write /sys/module/subsystem_restart/parameters/enable_debug ${persist.sys.ssr.enable_debug} write /sys/module/pil_msa/parameters/pbl_mba_boot_timeout_ms ${persist.sys.mba_boot_timeout} write /sys/module/pil_msa/parameters/modem_auth_timeout_ms ${persist.sys.modem_auth_timeout} write /sys/module/peripheral_loader/parameters/proxy_timeout_ms ${persist.sys.pil_proxy_timeout} write /sys/kernel/boot_adsp/boot 1 write /sys/kernel/boot_slpi/boot 1 on fs wait /dev/block/platform/soc/${ro.boot.bootdevice} symlink /dev/block/platform/soc/${ro.boot.bootdevice} /dev/block/bootdevice mount_all fstab.qcom swapon_all fstab.qcom # Keeping following partitions outside fstab file. As user may not have # these partition flashed on the device. Failure to mount any partition in fstab file # results in failure to launch late-start class. wait /dev/block/bootdevice/by-name/cache mount ext4 /dev/block/bootdevice/by-name/cache /cache nosuid nodev barrier=1 wait /dev/block/bootdevice/by-name/persist mount ext4 /dev/block/bootdevice/by-name/persist /persist nosuid nodev barrier=1 mkdir /persist/data 0700 system system mkdir /persist/bms 0700 root system restorecon_recursive /persist wait /dev/block/bootdevice/by-name/dsp mount ext4 /dev/block/bootdevice/by-name/dsp /dsp nosuid nodev barrier=1 wait /dev/block/bootdevice/by-name/modem mount vfat /dev/block/bootdevice/by-name/modem /firmware ro shortname=lower,uid=1000,gid=1000,dmask=227,fmask=337,context=u:object_r:firmware_file:s0 wait /dev/block/bootdevice/by-name/bluetooth mount vfat /dev/block/bootdevice/by-name/bluetooth /bt_firmware ro shortname=lower,uid=1002,gid=3002,dmask=227,fmask=337,context=u:object_r:bt_firmware_file:s0 on boot # 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 # Torch chown system system /sys/class/leds/led:torch_0/brightness chmod 666 /sys/class/leds/led:torch_0/brightness chown system system /sys/class/leds/led:torch_1/brightness chmod 666 /sys/class/leds/led:torch_1/brightness chown system system /sys/class/leds/led:switch/brightness chmod 666 /sys/class/leds/led:switch/brightness # Touchscreen chown system radio /proc/touchpanel/double_tap_enable chmod 0660 /proc/touchpanel/double_tap_enable chown root system /proc/touchpanel/camera_enable chmod 0660 /proc/touchpanel/camera_enable chown root system /proc/touchpanel/music_enable chmod 0660 /proc/touchpanel/music_enable chown root system /proc/touchpanel/flashlight_enable chmod 0660 /proc/touchpanel/flashlight_enable # Buttons chown root system /proc/s1302/key_rep chmod 0660 /proc/s1302/key_rep chown root system /proc/s1302/virtual_key chmod 0660 /proc/s1302/virtual_key chown root system /proc/tri-state-key/keyCode_top chmod 0660 /proc/tri-state-key/keyCode_top chown root system /proc/tri-state-key/keyCode_middle chmod 0660 /proc/tri-state-key/keyCode_middle chown root system /proc/tri-state-key/keyCode_bottom chmod 0660 /proc/tri-state-key/keyCode_bottom # U-Touch disable - KeyDisabler chown system system /sys/devices/soc/soc:fpc1020/utouch_disable chmod 0660 /sys/devices/soc/soc:fpc1020/utouch_disable # Graphics chown system graphics /sys/class/graphics/fb0/dyn_pu chmod 0664 /sys/class/graphics/fb0/dyn_pu chown system graphics /sys/class/graphics/fb0/idle_time chmod 0664 /sys/class/graphics/fb0/idle_time chown system graphics /sys/class/graphics/fb0/mode chmod 0664 /sys/class/graphics/fb0/mode chown system graphics /sys/class/graphics/fb0/modes chmod 0664 /sys/class/graphics/fb0/modes chown system graphics /sys/class/graphics/fb0/hbm chmod 0664 /sys/class/graphics/fb0/hbm symlink /data/local /local # Vibrator intensity control chown system system /sys/class/timed_output/vibrator/vtg_level chmod 0664 /sys/class/timed_output/vibrator/vtg_level # Fingerprint chown system system /sys/devices/soc/soc:fpc1020/irq chmod 0660 /sys/devices/soc/soc:fpc1020/irq chown system system /sys/devices/soc/soc:fpc1020/wakeup chmod 0660 /sys/devices/soc/soc:fpc1020/wakeup chown system system /sys/devices/soc/soc:fpc1020/key chmod 0660 /sys/devices/soc/soc:fpc1020/key chown system system /sys/devices/soc/soc:fpc1020/wl chmod 0660 /sys/devices/soc/soc:fpc1020/wl chown system system /sys/devices/soc/soc:fpc1020/screen chmod 0660 /sys/devices/soc/soc:fpc1020/screen chmod 0666 /dev/qseecom #add for board test chown root root /dev/i2c-5 chmod 0660 /dev/i2c-5 #added touch gesture wake node permission chown system system /sys/devices/virtual/touch/tp_dev/gesture_on chmod 0660 /sys/devices/virtual/touch/tp_dev/gesture_on # USB chown system system /sys/module/dwc3/parameters/usb30_disabled chmod 0660 /sys/module/dwc3/parameters/usb30_disabled # RGB light chown system system /sys/class/leds/led:rgb_red/brightness chmod 0660 /sys/class/leds/led:rgb_red/brightness chown system system /sys/class/leds/led:rgb_green/brightness chmod 0660 /sys/class/leds/led:rgb_green/brightness chown system system /sys/class/leds/led:rgb_blue/brightness chmod 0660 /sys/class/leds/led:rgb_blue/brightness chown system system /sys/class/leds/led:rgb_blue/blink chmod 0660 /sys/class/leds/led:rgb_blue/blink chown system system /sys/class/leds/led:rgb_red/blink chmod 0660 /sys/class/leds/led:rgb_red/blink chown system system /sys/class/leds/led:rgb_green/blink chmod 0660 /sys/class/leds/led:rgb_green/blink chown system system /sys/class/leds/led:rgb_blue/ramp_step_ms chmod 0660 /sys/class/leds/led:rgb_blue/ramp_step_ms chown system system /sys/class/leds/led:rgb_red/ramp_step_ms chmod 0660 /sys/class/leds/led:rgb_red/ramp_step_ms chown system system /sys/class/leds/led:rgb_green/ramp_step_ms chmod 0660 /sys/class/leds/led:rgb_green/ramp_step_ms chown system system /sys/class/leds/led:rgb_blue/pause_hi chmod 0660 /sys/class/leds/led:rgb_blue/pause_hi chown system system /sys/class/leds/led:rgb_red/pause_hi chmod 0660 /sys/class/leds/led:rgb_red/pause_hi chown system system /sys/class/leds/led:rgb_green/pause_hi chmod 0660 /sys/class/leds/led:rgb_green/pause_hi chown system system /sys/class/leds/led:rgb_blue/pause_lo chmod 0660 /sys/class/leds/led:rgb_blue/pause_lo chown system system /sys/class/leds/led:rgb_red/pause_lo chmod 0660 /sys/class/leds/led:rgb_red/pause_lo chown system system /sys/class/leds/led:rgb_green/pause_lo chmod 0660 /sys/class/leds/led:rgb_green/pause_lo chown system system /sys/class/leds/led:rgb_blue/duty_pcts chmod 0660 /sys/class/leds/led:rgb_blue/duty_pcts chown system system /sys/class/leds/led:rgb_red/duty_pcts chmod 0660 /sys/class/leds/led:rgb_red/duty_pcts chown system system /sys/class/leds/led:rgb_green/duty_pcts chmod 0660 /sys/class/leds/led:rgb_green/duty_pcts chown system system /sys/class/leds/led:rgb_blue/start_idx chmod 0660 /sys/class/leds/led:rgb_blue/start_idx chown system system /sys/class/leds/led:rgb_red/start_idx chmod 0660 /sys/class/leds/led:rgb_red/start_idx chown system system /sys/class/leds/led:rgb_green/start_idx chmod 0660 /sys/class/leds/led:rgb_green/start_idx chown system system /sys/class/leds/led:rgb_blue/lut_flags chmod 0660 /sys/class/leds/led:rgb_blue/lut_flags chown system system /sys/class/leds/led:rgb_red/lut_flags chmod 0660 /sys/class/leds/led:rgb_red/lut_flags chown system system /sys/class/leds/led:rgb_green/lut_flags chmod 0660 /sys/class/leds/led:rgb_green/lut_flags chown bluetooth bluetooth /sys/module/bluetooth_power/parameters/power chown bluetooth net_bt /sys/class/rfkill/rfkill0/type chown bluetooth net_bt /sys/class/rfkill/rfkill0/state chown bluetooth bluetooth /proc/bluetooth/sleep/proto chown bluetooth bluetooth /sys/module/hci_uart/parameters/ath_lpm chown bluetooth bluetooth /sys/module/hci_uart/parameters/ath_btwrite chown system system /sys/module/sco/parameters/disable_esco chown bluetooth bluetooth /sys/module/hci_smd/parameters/hcismd_set chown system system /sys/module/radio_iris_transport/parameters/fmsmd_set chmod 0660 /sys/module/bluetooth_power/parameters/power chmod 0660 /sys/module/hci_smd/parameters/hcismd_set chmod 0660 /sys/module/radio_iris_transport/parameters/fmsmd_set chmod 0660 /sys/class/rfkill/rfkill0/state chmod 0660 /proc/bluetooth/sleep/proto chown bluetooth net_bt /dev/ttyHS0 chmod 0660 /sys/module/hci_uart/parameters/ath_lpm chmod 0660 /sys/module/hci_uart/parameters/ath_btwrite chmod 0660 /dev/ttyHS0 chown bluetooth bluetooth /sys/devices/platform/msm_serial_hs.0/clock chmod 0660 /sys/devices/platform/msm_serial_hs.0/clock chmod 0660 /dev/ttyHS2 chown bluetooth bluetooth /dev/ttyHS2 chown bluetooth net_bt /sys/class/rfkill/rfkill0/device/extldo chmod 0660 /sys/class/rfkill/rfkill0/device/extldo # Create QMUX deamon socket area mkdir /dev/socket/qmux_radio 0770 radio radio chmod 2770 /dev/socket/qmux_radio mkdir /dev/socket/qmux_audio 0770 media audio chmod 2770 /dev/socket/qmux_audio mkdir /dev/socket/qmux_bluetooth 0770 bluetooth bluetooth chmod 2770 /dev/socket/qmux_bluetooth mkdir /dev/socket/qmux_gps 0770 gps gps chmod 2770 /dev/socket/qmux_gps mkdir /persist/drm 0770 system system mkdir /persist/bluetooth 0770 bluetooth bluetooth mkdir /persist/misc 0770 system system mkdir /persist/alarm 0770 system system mkdir /persist/time 0770 system system # Create NETMGR daemon socket area mkdir /dev/socket/netmgr 0750 radio radio setprop wifi.interface wlan0 # Define TCP buffer sizes for various networks # ReadMin, ReadInitial, ReadMax, WriteMin, WriteInitial, WriteMax, setprop net.tcp.buffersize.wifi 524288,2097152,4194304,262144,524288,1048576 setprop ro.telephony.call_ring.multiple false #enable camera read sensors data setprop persist.camera.gyro.disable 0 #Remove SUID bit for iproute2 ip tool chmod 0755 /system/bin/ip chmod 0444 /sys/devices/platform/msm_hsusb/gadget/usb_state # For bridgemgr daemon to inform the USB driver of the correct transport chown radio radio /sys/class/android_usb/f_rmnet_smd_sdio/transport # Define TCP buffer sizes for various networks # ReadMin, ReadInitial, ReadMax, WriteMin, WriteInitial, WriteMax, setprop net.tcp.buffersize.default 4096,87380,524288,4096,16384,110208 setprop net.tcp.buffersize.lte 2097152,4194304,8388608,262144,524288,1048576 setprop net.tcp.buffersize.umts 4094,87380,110208,4096,16384,110208 setprop net.tcp.buffersize.hspa 4094,87380,1220608,4096,16384,1220608 setprop net.tcp.buffersize.hsupa 4094,87380,1220608,4096,16384,1220608 setprop net.tcp.buffersize.hsdpa 4094,87380,1220608,4096,16384,1220608 setprop net.tcp.buffersize.hspap 4094,87380,1220608,4096,16384,1220608 setprop net.tcp.buffersize.edge 4093,26280,35040,4096,16384,35040 setprop net.tcp.buffersize.gprs 4092,8760,11680,4096,8760,11680 setprop net.tcp.buffersize.evdo 4094,87380,524288,4096,16384,262144 setprop net.tcp.2g_init_rwnd 10 # Assign TCP buffer thresholds to be ceiling value of technology maximums # Increased technology maximums should be reflected here. write /proc/sys/net/core/rmem_max 8388608 write /proc/sys/net/core/wmem_max 8388608 # Enable default router information in RA write /proc/sys/net/ipv6/conf/default/accept_ra_defrtr 1 # To prevent out of order acknowledgements from making # connection tracking to treat them as not belonging to # the connection they belong to. # Otherwise, a weird issue happens in which some long # connections on high-throughput links get dropped when # an ack packet comes out of order write /proc/sys/net/netfilter/nf_conntrack_tcp_be_liberal 1 # Set the console loglevel to < KERN_INFO # Set the default message loglevel to KERN_INFO write /proc/sys/kernel/printk "6 6 1 7" # Allow access for CCID command/response timeout configuration chown system system /sys/module/ccid_bridge/parameters/bulk_msg_timeout # change this when HAL3 is working setprop persist.camera.HAL3.enabled 1 # Wifi firmware reload path chown wifi wifi /sys/module/wlan/parameters/fwpath # Don't reset entire SoC on individual subsystem crash write /sys/bus/msm_subsys/devices/subsys0/restart_level "related" write /sys/bus/msm_subsys/devices/subsys1/restart_level "related" write /sys/bus/msm_subsys/devices/subsys2/restart_level "related" write /sys/bus/msm_subsys/devices/subsys3/restart_level "related" write /sys/bus/msm_subsys/devices/subsys4/restart_level "related" write /sys/bus/msm_subsys/devices/subsys5/restart_level "related" # Allow access for WLAN firmware chown system system /sys/module/cnss_common/parameters/bdwlan_file # msm specific files that need to be created on /data on post-fs-data 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/qc_senseid 0700 system system mkdir /persist/bms 0700 root system restorecon_recursive /persist mkdir /data/misc/dts 0770 media audio mkdir /data/usf 0700 system system mkdir /data/misc/qvop 0660 system system mkdir /data/misc/audio_pp 0771 media audio # Sensors mkdir /data/misc/sensors chmod 0775 /data/misc/sensors chmod 0755 /persist/sensors chmod 0644 /persist/sensors/sensors_settings chmod 0644 /persist/sensors/gyro_sensitity_cal chown system root /persist/sensors/sensors_settings chown system root /persist/sensors/gyro_sensitity_cal # Create directories for Fingerprint mkdir /data/fpc_images 0770 system system mkdir /data/fpc_images/verify 0770 system system mkdir /data/fpc_images/enroll 0770 system system mkdir /data/fpc 0770 system system mkdir /data/misc/stargate 0770 system system mkdir /data/misc/stargate/bg_estimation 0770 system system mkdir /data/misc/stargate/calib_test 0770 system system mkdir /data/misc/stargate/database 0770 system system # Create directory for TZ Apps mkdir /data/misc/qsee 0770 system system # Create folder for mm-qcamera-daemon mkdir /data/misc/camera 0770 camera camera mkdir /data/media 0770 media_rw media_rw chown media_rw media_rw /data/media mkdir /data/misc/ipa 0700 net_admin net_admin mkdir /data/misc/bluetooth 0770 bluetooth bluetooth # Create the directories used by the Wireless subsystem mkdir /data/misc/wifi 0770 wifi wifi mkdir /data/misc/wifi/sockets 0770 wifi wifi mkdir /data/misc/wifi/wpa_supplicant 0770 wifi wifi mkdir /data/misc/dhcp 0770 dhcp dhcp chown dhcp dhcp /data/misc/dhcp # Create port-bridge log dir mkdir /data/misc/port_bridge 0770 radio radio chmod 0770 /data/misc/port_bridge # Create the directories used by CnE subsystem mkdir /data/connectivity 0771 system system chown system system /data/connectivity # Create the directories used by DPM subsystem mkdir /data/dpm 0771 system system chown system system /data/dpm mkdir /data/dpm/nsrm 0771 system system chown system system /data/dpm/nsrm # Create directory used by audio subsystem mkdir /data/misc/audio 0770 audio audio # Create directory for audio delta files mkdir /data/misc/audio/acdbdata 0770 media audio mkdir /data/misc/audio/acdbdata/delta 0770 media audio # Create directory used by the DASH client mkdir /data/misc/dash 0770 media audio # Create directory used by display clients mkdir /data/misc/display 0770 system graphics # Mounting of persist is moved to 'on emmc-fs' and 'on fs' sections # We chown/chmod /persist again so because mount is run as root + defaults chown system system /persist chmod 0771 /persist chmod 0664 /sys/devices/platform/msm_sdcc.1/polling chmod 0664 /sys/devices/platform/msm_sdcc.2/polling chmod 0664 /sys/devices/platform/msm_sdcc.3/polling chmod 0664 /sys/devices/platform/msm_sdcc.4/polling # Chown polling nodes as needed from UI running on system server chown system system /sys/devices/platform/msm_sdcc.1/polling chown system system /sys/devices/platform/msm_sdcc.2/polling chown system system /sys/devices/platform/msm_sdcc.3/polling chown system system /sys/devices/platform/msm_sdcc.4/polling # Create the symlink to qcn wpa_supplicant folder for ar6000 wpa_supplicant mkdir /data/system 0775 system system #symlink /data/misc/wifi/wpa_supplicant /data/system/wpa_supplicant # Create directories for Location services mkdir /data/vendor/location 0770 gps gps mkdir /data/vendor/location/mq 0770 gps gps mkdir /data/vendor/location/xtwifi 0770 gps gps # Create directory from IMS services mkdir /data/shared 0755 chown system system /data/shared # Create directory for FOTA mkdir /data/fota 0771 chown system system /data/fota # Create /data/time folder for time-services mkdir /data/time/ 0700 system system mkdir /data/audio/ 0770 media audio # Create a folder for audio delta files mkdir /data/audio/acdbdata 0770 media audio mkdir /data/audio/acdbdata/delta 0770 media audio setprop vold.post_fs_data_done 1 # Create a folder for SRS to be able to create a usercfg file mkdir /data/data/media 0770 media media # Create FM dir for patchdownloader mkdir /data/misc/fm 0770 system system chmod 0770 /data/misc/fm # RIDL data mkdir /data/misc/SelfHost/ 0710 system shell mkdir /data/misc/SelfHost/QCLogs/ 2750 system shell mkdir /data/misc/SelfHost/QCLogs/temp/ 0700 system shell mkdir /data/misc/SelfHost/storage/ 0700 system shell mkdir /data/misc/SelfHost/Running/ 2750 system shell mkdir /data/misc/SelfHost/socket/ 2770 system system #Create PERFD deamon related dirs mkdir /data/vendor/perfd 0770 root system chmod 2770 /data/vendor/perfd rm /data/vendor/perfd/default_values # NFC local data and nfcee xml storage mkdir /data/nfc 0770 nfc nfc mkdir /data/nfc/param 0770 nfc nfc #Create IOP deamon related dirs mkdir /data/vendor/iop 0770 root system # Mark the copy complete flag to not completed write /data/misc/radio/copy_complete 0 chown radio radio /data/misc/radio/copy_complete chmod 0660 /data/misc/radio/copy_complete # File flags for prebuilt ril db file write /data/misc/radio/prebuilt_db_support 1 chown radio radio /data/misc/radio/prebuilt_db_support chmod 0400 /data/misc/radio/prebuilt_db_support write /data/misc/radio/db_check_done 0 chown radio radio /data/misc/radio/db_check_done chmod 0660 /data/misc/radio/db_check_done # start camera server as daemon service qcamerasvr /system/bin/mm-qcamera-daemon class main user camera group camera system inet input graphics writepid /dev/cpuset/system-background/tasks service qvop-daemon /system/bin/qvop-daemon class late_start user system group system drmrpc # start up peripheral manager service per_mgr system/bin/pm-service class late_start user system group system writepid /dev/cpuset/system-background/tasks service per_proxy /system/bin/pm-proxy class late_start user system group system writepid /dev/cpuset/system-background/tasks disabled on property:init.svc.per_mgr=running start per_proxy on property:sys.shutdown.requested=* stop per_proxy service qseecomd /system/bin/qseecomd class core user root group root writepid /dev/cpuset/system-background/tasks service seempd /system/bin/seempd class late_start user system group system socket seempdw dgram 0666 system system service secotad /system/bin/secotad class late_start user system group 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 group root writepid /dev/cpuset/system-background/tasks service time_daemon /system/bin/time_daemon class late_start user root group root writepid /dev/cpuset/system-background/tasks service adsprpcd /system/bin/adsprpcd class main user media group media service audiod /system/bin/audiod class late_start user system group system service imsqmidaemon /system/bin/imsqmidaemon class main user system socket ims_qmid stream 0660 system radio group radio net_raw log diag writepid /dev/cpuset/system-background/tasks service imsdatadaemon /system/bin/imsdatadaemon class main user system socket ims_datad stream 0660 system radio group system wifi radio inet net_raw log diag net_admin writepid /dev/cpuset/system-background/tasks disabled service pd_mapper /system/vendor/bin/pd-mapper class core disabled 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 on property:sys.ims.QMI_DAEMON_STATUS=1 start imsdatadaemon service ims_rtp_daemon /system/bin/ims_rtp_daemon class main user system socket ims_rtpd stream 0660 system radio group radio net_raw diag inet log disabled service imscmservice /system/bin/imscmservice class main user system group radio net_raw diag diag log writepid /dev/cpuset/system-background/tasks disabled on property:sys.ims.DATA_DAEMON_STATUS=1 start ims_rtp_daemon start imscmservice service dts_configurator /system/bin/dts_configurator class late_start user system group system media audio oneshot service dtseagleservice /system/bin/dts_eagle_service class late_start user system group audio media disabled on property:init.svc.dts_configurator=stopped start dtseagleservice service ppd /system/vendor/bin/mm-pp-dpps class late_start user system group system graphics socket pps stream 0660 system system disabled 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 tlocd /system/bin/tloc_daemon class late_start user system group drmrpc gps net_raw service readmac /system/vendor/bin/readmac class main user root group root oneshot service energy-awareness /system/bin/energy-awareness class main user root group system oneshot service mdtpd /system/vendor/bin/mdtpd class late_start user root group system radio drmrpc service qcomsysd /system/bin/qcom-system-daemon class main user root group root diag service ssr_setup /system/bin/ssr_setup oneshot disabled service ss_ramdump /system/bin/subsystem_ramdump class main user system group system disabled on property:persist.sys.ssr.restart_level=* start ssr_setup on property:persist.sys.ssr.enable_ramdumps=1 write /sys/module/subsystem_restart/parameters/enable_ramdumps 1 mkdir /data/ramdump 770 system system start ss_ramdump on property:persist.sys.ssr.enable_ramdumps=0 write /sys/module/subsystem_restart/parameters/enable_ramdumps 0 on property:sys.boot_completed=1 write /dev/kmsg "Boot completed " # end boot time fs tune write /sys/block/sda/queue/read_ahead_kb 128 write /sys/block/sda/queue/nr_requests 128 write /sys/block/dm-0/queue/read_ahead_kb 128 write /sys/block/dm-1/queue/read_ahead_kb 128 write /sys/block/sda/queue/iostats 1 chown media audio /sys/kernel/wcd_cpe0/fw_name on property:persist.radio.atfwd.start=false stop atfwd on property:radio.atfwd.start=false stop atfwd # corefile limit on property:persist.debug.trace=1 mkdir /data/core 0777 root root write /proc/sys/kernel/core_pattern "/data/core/%E.%p.%e" on property:bluetooth.isEnabled=true start btwlancoex write /sys/class/bluetooth/hci0/idle_timeout 7000 on property:bluetooth.sap.status=running start bt-sap on property:bluetooth.sap.status=stopped stop bt-sap on property:bluetooth.dun.status=running start bt-dun on property:bluetooth.dun.status=stopped stop bt-dun on property:ro.bluetooth.ftm_enabled=true start ftmd on property:bluetooth.startbtsnoop=true start btsnoop on property:bluetooth.startbtsnoop=false stop btsnoop on property:vold.decrypt=trigger_restart_framework start config_bt_addr start config_bluetooth on property:persist.env.fastdorm.enabled=true setprop persist.radio.data_no_toggle 1 service cnd /system/bin/cnd class main socket cnd stream 660 root inet group root wakelock writepid /dev/cpuset/system-background/tasks service dpmd /system/bin/dpmd class late_start socket dpmd stream 660 root system group system readproc writepid /dev/cpuset/system-background/tasks service irsc_util /system/bin/irsc_util "/vendor/etc/sec_config" class core user root oneshot service rmt_storage /system/bin/rmt_storage class core user root group system wakelock writepid /dev/cpuset/system-background/tasks service tftp_server /system/bin/tftp_server class main user root writepid /dev/cpuset/system-background/tasks on property:wc_transport.start_hci=true start start_hci_filter on property:wc_transport.start_hci=false stop start_hci_filter service start_hci_filter /system/bin/wcnss_filter class late_start user bluetooth group bluetooth diag system wakelock seclabel u:r:bluetooth:s0 disabled on property:wc_transport.start_root=true start hci_filter_root on property:wc_transport.start_root=false stop hci_filter_root service hci_filter_root /system/bin/wcnss_filter class late_start user bluetooth group bluetooth diag system disabled service config_bt_addr /system/bin/btnvtool -O class core user bluetooth group bluetooth radio oneshot on property:wc_transport.start_root=true start hci_filter_root on property:wc_transport.start_root=false stop hci_filter_root service hci_filter_root /system/bin/wcnss_filter class late_start user bluetooth group bluetooth diag system disabled service config_bluetooth /system/bin/sh /system/etc/init.qcom.bt.sh "onboot" class core user root oneshot service hciattach /system/bin/sh /system/etc/init.qcom.bt.sh class late_start user bluetooth group bluetooth net_bt_admin disabled oneshot on property:bluetooth.hciattach=true start hciattach on property:bluetooth.hciattach=false setprop bluetooth.status off service bt-dun /system/bin/dun-server /dev/smd7 /dev/rfcomm0 class late_start user bluetooth group bluetooth net_bt_admin inet disabled oneshot service bt-sap /system/bin/sapd 15 user bluetooth group bluetooth net_bt_admin class late_start disabled oneshot service btsnoop /system/bin/btsnoop user bluetooth group bluetooth net_bt_admin sdcard_rw sdcard_r media_rw class late_start disabled oneshot service ftmd /system/bin/logwrapper /system/bin/ftmdaemon class late_start user root group bluetooth net_bt_admin misc diag net_bt disabled oneshot service port-bridge /system/bin/port-bridge class main user radio system group radio system inet oneshot service qmiproxy /system/bin/qmiproxy class main user radio group radio diag disabled # QMUX must be in multiple groups to support external process connections service qmuxd /system/bin/qmuxd class main user root group radio audio bluetooth gps nfc diag writepid /dev/cpuset/system-background/tasks service netmgrd /system/bin/netmgrd class main group radio system wakelock writepid /dev/cpuset/system-background/tasks service qti /system/vendor/bin/qti class main user radio group radio net_raw diag usb net_admin writepid /dev/cpuset/system-background/tasks service sensors /system/bin/sensors.qcom class core user root group root wakelock writepid /dev/cpuset/system-background/tasks on property:ro.use_data_netmgrd=false # netmgr not supported on specific target stop netmgrd # Adjust socket buffer to enlarge TCP receive window for high bandwidth # but only if ro.data.large_tcp_window_size property is set. on property:ro.data.large_tcp_window_size=true write /proc/sys/net/ipv4/tcp_adv_win_scale 2 on property:sys.sysctl.tcp_adv_win_scale=* write /proc/sys/net/ipv4/tcp_adv_win_scale ${sys.sysctl.tcp_adv_win_scale} service amp_init /system/bin/amploader -i class late_start user root disabled oneshot service amp_load /system/bin/amploader -l 7000 class late_start user root disabled oneshot service amp_unload /system/bin/amploader -u class late_start user root disabled oneshot service wpa_supplicant /vendor/bin/hw/wpa_supplicant \ -ip2p0 -Dnl80211 -c/data/misc/wifi/p2p_supplicant.conf \ -I/system/etc/wifi/p2p_supplicant_overlay.conf -N \ -iwlan0 -Dnl80211 -c/data/misc/wifi/wpa_supplicant.conf \ -I/system/etc/wifi/wpa_supplicant_overlay.conf \ -O/data/misc/wifi/sockets -puse_p2p_group_interface=1 -dd \ -e/data/misc/wifi/entropy.bin -g@android:wpa_wlan0 # we will start as root and wpa_supplicant will switch to user wifi # after setting up the capabilities required for WEXT # user wifi # group wifi inet keystore class main socket wpa_wlan0 dgram 660 wifi wifi disabled oneshot service ptt_socket_app /system/bin/ptt_socket_app -d class main user root group root oneshot service ptt_ffbm /system/bin/ptt_socket_app -f -d user root group root disabled oneshot service wifi_fccutild /system/bin/wifi_fccutild user system group system inet net_admin socket wififccutild_server dgram 0660 system system disabled oneshot service cnss-daemon /system/bin/cnss-daemon -n -l class late_start user system group system inet net_admin wifi on property:sys.shutdown.requested=* stop cnss-daemon service loc_launcher /vendor/bin/loc_launcher # loc_launcher will start as root and set its uid to gps class late_start group gps inet diag wifi writepid /dev/cpuset/system-background/tasks service drmdiag /system/bin/drmdiagapp class late_start user root disabled oneshot on property:drmdiag.load=1 start drmdiag on property:drmdiag.load=0 stop drmdiag on property:sys.boot_completed=1 start config-zram service atfwd /system/bin/ATFWD-daemon class late_start user system group system radio service ds_fmc_appd /system/bin/ds_fmc_appd -p "rmnet0" -D class late_start group radio wifi inet disabled oneshot on property:persist.data.ds_fmc_app.mode=1 start ds_fmc_appd service ims_regmanager /system/bin/exe-ims-regmanagerprocessnative class late_start group net_bt_admin inet radio wifi disabled on property:persist.ims.regmanager.mode=1 start ims_regmanager on property:ro.data.large_tcp_window_size=true # Adjust socket buffer to enlarge TCP receive window for high bandwidth (e.g. DO-RevB) write /proc/sys/net/ipv4/tcp_adv_win_scale 2 service battery_monitor /system/bin/battery_monitor user system group system disabled service ril-daemon2 /vendor/bin/hw/rild -c 2 class main user radio group radio cache inet misc audio sdcard_r sdcard_rw diag oem_2901 log capabilities BLOCK_SUSPEND NET_ADMIN NET_RAW service usb_uicc_daemon /system/bin/usb_uicc_client class main user system group system log net_raw oneshot on property:sys.usb_uicc.enabled=1 start usb_uicc_enable on property:sys.usb_uicc.enabled=0 start usb_uicc_enable service profiler_daemon /system/bin/profiler_daemon class late_start user root group root disabled service charger /charger class charger group system graphics seclabel u:r:charger:s0 writepid /dev/cpuset/system-background/tasks service ssr_diag /system/bin/ssr_diag class late_start user system group system disabled service hvdcp /system/bin/hvdcp class core user root disabled on property:persist.usb.hvdcp.detect=true start hvdcp on property:persist.usb.hvdcp.detect=false stop hvdcp service charger_monitor /system/bin/charger_monitor user root group root disabled service qbcharger /charger -m 1 disabled oneshot on property:sys.qbcharger.enable=true start qbcharger on property:sys.qbcharger.enable=false stop qbcharger service diag_mdlog_start /system/bin/diag_mdlog -c class late_start user shell group system diag sdcard_rw sdcard_r media_rw disabled oneshot service diag_mdlog_stop /system/bin/diag_mdlog -k class late_start user shell group system diag sdcard_rw sdcard_r media_rw disabled oneshot service vm_bms /system/bin/vm_bms user root group root disabled service msm_irqbalance /system/bin/msm_irqbalance -f /system/vendor/etc/msm_irqbalance.conf class main user root group root disabled writepid /dev/cpuset/system-background/tasks service wfdservice /system/bin/wfdservice class main user system group audio camera inet net_bt_stack drmrpc media_rw media input net_admin # removed these because of limit of 12 groups #graphics net_bt net_bt_admin bluetooth service qseeproxydaemon /system/vendor/bin/qseeproxydaemon class late_start user system group system writepid /dev/cpuset/system-background/tasks # Seemp health service service seemp_healthd /system/vendor/bin/seemp_healthd class late_start user system group system on charger setprop persist.sys.usb.config charging #add poweroffhandler service poweroffhandler /system/bin/poweroffhandler class core user media group graphics audio disabled oneshot # Logcat dump daemon, dumps logs to logdump partition service logdumpd /system/bin/logcat -b all -v threadtime -D -w /dev/block/bootdevice/by-name/logdump class core writepid /dev/cpuset/system-background/tasks seclabel u:r:logdumpd:s0 disabled # Logdumpd is enabled only for userdebug non-perf build on property:ro.logdumpd.enabled=1 start logdumpd on property:vold.decrypt=trigger_restart_min_framework start time_daemon