| # 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.usb.rc |
| import init.target.rc |
| |
| on early-init |
| mkdir /firmware 0771 system system |
| mkdir /firmware-modem 0771 system system |
| #mkdir /system 0777 root root |
| symlink /data/tombstones /tombstones |
| mount debugfs debugfs /sys/kernel/debug |
| write /sys/block/mmcblk0/queue/scheduler noop |
| # additionaly for init.trace.rc |
| # Allow shell group to enable tgid prints |
| chown root shell /sys/kernel/debug/tracing/options/print-tgid |
| chmod 0664 /sys/kernel/debug/tracing/options/print-tgid |
| |
| chown system system /sys/kernel/debug/kgsl/proc |
| chmod 644 /proc/cmdline |
| |
| on init |
| # Set permissions for persist partition |
| mkdir /persist 0771 system system |
| |
| mkdir /preload 0771 system system |
| # See storage config details at http://source.android.com/tech/storage/ |
| mkdir /mnt/shell/emulated 0700 shell shell |
| mkdir /storage/emulated 0555 root root |
| mkdir /mnt/media_rw/sdcard1 0700 media_rw media_rw |
| mkdir /mnt/media_rw/usbotg 0700 media_rw media_rw |
| mkdir /mnt/media_rw/uicc0 0700 media_rw media_rw |
| mkdir /mnt/media_rw/uicc1 0700 media_rw media_rw |
| mkdir /storage/sdcard1 0700 root root |
| mkdir /storage/uicc0 0700 root root |
| mkdir /storage/uicc1 0700 root root |
| mkdir /storage/usbotg 0700 root root |
| |
| export EXTERNAL_STORAGE /storage/emulated/legacy |
| export SECONDARY_STORAGE /storage/sdcard1 |
| export EMULATED_STORAGE_SOURCE /mnt/shell/emulated |
| export EMULATED_STORAGE_TARGET /storage/emulated |
| |
| # Support legacy paths |
| symlink /storage/emulated/legacy /sdcard |
| symlink /storage/emulated/legacy /mnt/sdcard |
| symlink /storage/emulated/legacy /storage/sdcard0 |
| symlink /mnt/shell/emulated/0 /storage/emulated/legacy |
| |
| 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 |
| |
| on boot |
| start rmt_storage |
| insmod /system/lib/modules/adsprpc.ko |
| # access permission for secure touch |
| chmod 0660 /sys/devices/soc.0/78b9000.i2c/i2c-5/5-0020/secure_touch_enable |
| chmod 0440 /sys/devices/soc.0/78b9000.i2c/i2c-5/5-0020/secure_touch |
| chmod 0660 /sys/devices/soc.0/78b9000.i2c/i2c-5/5-0070/secure_touch_enable |
| chmod 0440 /sys/devices/soc.0/78b9000.i2c/i2c-5/5-0070/secure_touch |
| chown system drmrpc /sys/devices/soc.0/78b9000.i2c/i2c-5/5-0020/secure_touch_enable |
| chown system drmrpc /sys/devices/soc.0/78b9000.i2c/i2c-5/5-0020/secure_touch |
| chown system drmrpc /sys/devices/soc.0/78b9000.i2c/i2c-5/5-0070/secure_touch_enable |
| chown system drmrpc /sys/devices/soc.0/78b9000.i2c/i2c-5/5-0070/secure_touch |
| |
| chown bluetooth bluetooth /sys/module/bluetooth_power/parameters/power |
| chown bluetooth bluetooth /sys/class/rfkill/rfkill0/type |
| chown bluetooth bluetooth /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 |
| chmod 0660 /sys/module/bluetooth_power/parameters/power |
| chmod 0660 /sys/module/hci_smd/parameters/hcismd_set |
| chmod 0660 /sys/class/rfkill/rfkill0/state |
| chmod 0660 /proc/bluetooth/sleep/proto |
| chown bluetooth net_bt_stack /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 bluetooth /sys/class/rfkill/rfkill0/device/extldo |
| chmod 0660 /sys/class/rfkill/rfkill0/device/extldo |
| |
| # for BT MAC address |
| mkdir /efs/bluetooth 0775 radio system |
| # if already exist |
| chown radio system /efs/bluetooth |
| chmod 0775 /efs/bluetooth |
| |
| #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 |
| |
| setprop wifi.interface wlan0 |
| |
| chown system system /proc/sched_orig_load_balance_enable |
| chmod 0660 /proc/sched_orig_load_balance_enable |
| |
| # 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 |
| |
| #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 |
| |
| # For setting tcp delayed ack |
| chown system system /sys/kernel/ipv4/tcp_delack_seg |
| chown system system /sys/kernel/ipv4/tcp_use_userconfig |
| |
| # 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 |
| |
| # 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 |
| |
| # Define TCP delayed ack settings for WiFi |
| setprop net.tcp.delack.default 1 |
| setprop net.tcp.delack.wifi 20 |
| setprop net.tcp.usercfg.default 0 |
| setprop net.tcp.usercfg.wifi 1 |
| setprop persist.tcp.delack.enable true |
| |
| #To allow interfaces to get v6 address when tethering is enabled |
| write /proc/sys/net/ipv6/conf/rmnet0/accept_ra 2 |
| write /proc/sys/net/ipv6/conf/rmnet1/accept_ra 2 |
| write /proc/sys/net/ipv6/conf/rmnet2/accept_ra 2 |
| write /proc/sys/net/ipv6/conf/rmnet3/accept_ra 2 |
| write /proc/sys/net/ipv6/conf/rmnet4/accept_ra 2 |
| write /proc/sys/net/ipv6/conf/rmnet5/accept_ra 2 |
| write /proc/sys/net/ipv6/conf/rmnet6/accept_ra 2 |
| write /proc/sys/net/ipv6/conf/rmnet7/accept_ra 2 |
| write /proc/sys/net/ipv6/conf/rmnet_sdio0/accept_ra 2 |
| write /proc/sys/net/ipv6/conf/rmnet_sdio1/accept_ra 2 |
| write /proc/sys/net/ipv6/conf/rmnet_sdio2/accept_ra 2 |
| write /proc/sys/net/ipv6/conf/rmnet_sdio3/accept_ra 2 |
| write /proc/sys/net/ipv6/conf/rmnet_sdio4/accept_ra 2 |
| write /proc/sys/net/ipv6/conf/rmnet_sdio5/accept_ra 2 |
| write /proc/sys/net/ipv6/conf/rmnet_sdio6/accept_ra 2 |
| write /proc/sys/net/ipv6/conf/rmnet_sdio7/accept_ra 2 |
| write /proc/sys/net/ipv6/conf/rmnet_usb0/accept_ra 2 |
| write /proc/sys/net/ipv6/conf/rmnet_usb1/accept_ra 2 |
| write /proc/sys/net/ipv6/conf/rmnet_usb2/accept_ra 2 |
| write /proc/sys/net/ipv6/conf/rmnet_usb3/accept_ra 2 |
| |
| # 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 |
| |
| # |
| # start qmuxd and qmiproxy for appropriate targets |
| # |
| on property:ro.baseband=msm |
| start qmuxd |
| |
| on property:ro.baseband=mdm |
| start qmuxd |
| |
| on property:ro.baseband=unknown |
| start qmuxd |
| |
| on fs |
| # mount_all fstab.qcom |
| |
| chown system radio /efs |
| chmod 0771 /efs |
| rm -rf /efs/dmverity |
| restorecon -R /efs |
| |
| # fm_radio |
| chmod 0777 /dev/radio0 |
| chown system system /dev/radio0 |
| |
| # msm specific files that need to be created on /data |
| on post-fs-data |
| # Create directory for TZ Apps |
| mkdir /data/misc/qsee 0770 system system |
| |
| # we will remap this as /mnt/sdcard with the sdcard fuse tool |
| 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 system |
| mkdir /data/misc/wifi/sockets 0770 wifi wifi |
| mkdir /data/misc/wifi/wpa_supplicant 0770 wifi wifi |
| mkdir /data/misc/dhcp 0775 dhcp dhcp |
| chown dhcp dhcp /data/misc/dhcp |
| |
| # for WIFI MAC address |
| mkdir /efs/wifi 0775 radio system |
| chown system wifi /efs/wifi/.mac.info |
| chmod 0660 /efs/wifi/.mac.info |
| chmod 0660 /efs/wifi/.mac.cob |
| |
| # for WIFI TRP/TIS |
| chown system root /data/.psm.info |
| chmod 0664 /data/.psm.info |
| |
| # for WIFI Antena Selection |
| chown system root /data/.ant.info |
| chmod 0664 /data/.ant.info |
| |
| # for WIFI Version |
| write /data/.wifiver.info 0 |
| chown system root /data/.wifiver.info |
| chmod 0666 /data/.wifiver.info |
| # 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/fdMgr 0771 system system |
| chown system system /data/dpm/fdMgr |
| |
| 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 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/misc/location 0770 gps gps |
| mkdir /data/misc/location/mq 0770 gps gps |
| mkdir /data/misc/location/xtwifi 0770 gps gps |
| mkdir /data/misc/location/gpsone_d 0770 system gps |
| mkdir /data/misc/location/quipc 0770 gps system |
| mkdir /data/misc/location/gsiff 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 directory for hostapd |
| mkdir /data/hostapd 0770 system wifi |
| |
| # Create /data/time folder for time-services |
| mkdir /data/time/ 0700 system system |
| |
| mkdir /data/audio/ 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 folder for mm-qcamera-daemon |
| mkdir /data/camera 0770 media camera |
| |
| #Create PERFD deamon related dirs |
| mkdir /data/misc/perfd 0755 root system |
| chmod 2755 /data/misc/perfd |
| mkdir /data/system/perfd 0770 root system |
| chmod 2770 /data/system/perfd |
| |
| # NFC local data and nfcee xml storage |
| mkdir /data/nfc 0770 nfc nfc |
| mkdir /data/nfc/param 0770 nfc nfc |
| |
| # DCT(Display Clock Tunning) - Interface 2.0 |
| chown radio system /sys/class/dct/dct_node/data |
| chown radio system /sys/class/dct/dct_node/state |
| chown radio system /sys/class/dct/dct_node/log |
| chown radio system /sys/class/dct/dct_node/enabled |
| chown radio system /sys/class/dct/dct_node/interface |
| chown radio system /sys/class/dct/dct_node/libname |
| chown radio system /sys/class/dct/dct_node/tunned |
| |
| #service qcomsysd /system/bin/qcom-system-daemon |
| # class main |
| # user root |
| # group root qcom_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 |
| 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 " |
| |
| on property:persist.radio.atfwd.start=false |
| stop atfwd |
| |
| # corefile limit and ETB enabling |
| on property:persist.debug.trace=1 |
| mkdir /data/core 0777 root root |
| write /proc/sys/kernel/core_pattern "/data/core/%E.%p.%e" |
| write /sys/devices/system/cpu/cpu1/online 1 |
| write /sys/devices/system/cpu/cpu2/online 1 |
| write /sys/devices/system/cpu/cpu3/online 1 |
| write /sys/bus/coresight/devices/coresight-etm0/enable 0 |
| write /sys/bus/coresight/devices/coresight-etm1/enable 0 |
| write /sys/bus/coresight/devices/coresight-etm2/enable 0 |
| write /sys/bus/coresight/devices/coresight-etm3/enable 0 |
| write /sys/bus/coresight/devices/coresight-etm0/reset 1 |
| write /sys/bus/coresight/devices/coresight-etm1/reset 1 |
| write /sys/bus/coresight/devices/coresight-etm2/reset 1 |
| write /sys/bus/coresight/devices/coresight-etm3/reset 1 |
| write /sys/bus/coresight/devices/coresight-etm0/enable 1 |
| write /sys/bus/coresight/devices/coresight-etm1/enable 1 |
| write /sys/bus/coresight/devices/coresight-etm2/enable 1 |
| write /sys/bus/coresight/devices/coresight-etm3/enable 1 |
| write /sys/module/coresight_event/parameters/event_abort_enable 1 |
| |
| on property:init.svc.wpa_supplicant=stopped |
| stop dhcpcd |
| |
| 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 |
| |
| service qcom-c_core-sh /system/bin/sh /init.qcom.class_core.sh |
| class core |
| user root |
| oneshot |
| |
| service qcom-c_main-sh /system/bin/sh /init.class_main.sh |
| class main |
| user root |
| oneshot |
| |
| on property:vold.decrypt=trigger_restart_framework |
| start qcom-c_main-sh |
| start config_bluetooth |
| start wcnss-service |
| |
| on property:persist.env.fastdorm.enabled=true |
| setprop persist.radio.data_no_toggle 1 |
| |
| service irsc_util /system/bin/irsc_util "/etc/sec_config" |
| class main |
| user root |
| oneshot |
| |
| service rmt_storage /system/bin/rmt_storage |
| class core |
| user root |
| disabled |
| |
| service rfs_access /system/bin/rfs_access |
| class core |
| user root |
| group system net_raw |
| |
| on property:wc_transport.start_hci=true |
| start start_hci_filter |
| |
| on property:wc_transport.start_hci=false |
| stop start_hci_filter |
| |
| 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 net_bt_stack |
| disabled |
| oneshot |
| |
| on property:bluetooth.hciattach=true |
| start hciattach |
| |
| on property:bluetooth.hciattach=false |
| setprop bluetooth.status off |
| |
| service hciattach_ath3k /system/bin/sh /system/etc/init.ath3k.bt.sh |
| class late_start |
| user bluetooth |
| group system bluetooth net_bt_admin misc |
| disabled |
| oneshot |
| |
| 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 ftmd /system/bin/logwrapper /system/bin/ftmdaemon |
| class late_start |
| user root |
| group bluetooth net_bt_admin misc net_bt_stack qcom_diag |
| disabled |
| oneshot |
| |
| service bridgemgrd /system/bin/bridgemgrd |
| class late_start |
| user radio |
| group radio qcom_diag |
| disabled |
| |
| service port-bridge /system/bin/port-bridge /dev/mhi_pipe_32 /dev/ttyGS0 |
| class main |
| user radio system |
| group radio system inet |
| disabled |
| |
| service qmiproxy /system/bin/qmiproxy |
| class main |
| user radio |
| group radio qcom_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 qcom_diag |
| disabled |
| |
| service netmgrd /system/bin/netmgrd |
| class main |
| disabled |
| |
| 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 |
| |
| service btwlancoex /system/bin/sh /system/etc/init.qcom.coex.sh |
| class late_start |
| user bluetooth |
| group bluetooth net_bt_admin inet net_admin net_raw |
| disabled |
| oneshot |
| |
| service p2p_supplicant /system/bin/wpa_supplicant \ |
| -iwlan0 -Dnl80211 -c/data/misc/wifi/wpa_supplicant.conf \ |
| -I/system/etc/wifi/wpa_supplicant_overlay.conf -O/data/misc/wifi/sockets -N \ |
| -ip2p0 -Dnl80211 -c/data/misc/wifi/p2p_supplicant.conf \ |
| -I/system/etc/wifi/p2p_supplicant_overlay.conf \ |
| -puse_p2p_group_interface=1 -puse_multi_chan_concurrent=1 \ |
| -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 wpa_supplicant /system/bin/wpa_supplicant -g@android:wpa_wlan0 \ |
| -iwlan0 -Dnl80211 -c/data/misc/wifi/wpa_supplicant.conf -e/data/misc/wifi/entropy.bin |
| # 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 olsrd /system/bin/olsrd -f /etc/wifi/olsrd.conf |
| class main |
| disabled |
| oneshot |
| |
| service dhcpcd_wlan0 /system/bin/dhcpcd -ABKL |
| class late_start |
| disabled |
| oneshot |
| |
| service dhcpcd_p2p /system/bin/dhcpcd -ABKLG |
| class late_start |
| disabled |
| oneshot |
| |
| service iprenew_wlan0 /system/bin/dhcpcd -n |
| class late_start |
| disabled |
| oneshot |
| |
| service iprenew_p2p /system/bin/dhcpcd -n |
| class late_start |
| disabled |
| oneshot |
| |
| service ptt_socket_app /system/bin/ptt_socket_app -d |
| class main |
| user root |
| group root |
| disabled |
| oneshot |
| |
| service ptt_ffbm /system/bin/ptt_socket_app -f -d |
| user root |
| group root |
| disabled |
| oneshot |
| |
| service ftm_ffbm /system/bin/ftmdaemon |
| user root |
| group root |
| disabled |
| oneshot |
| |
| service dhcpcd_bt-pan /system/bin/dhcpcd -BKLG |
| class late_start |
| disabled |
| oneshot |
| |
| service iprenew_bt-pan /system/bin/dhcpcd -n |
| class late_start |
| disabled |
| oneshot |
| |
| service dhcpcd_bnep0 /system/bin/dhcpcd -BKLG |
| disabled |
| oneshot |
| |
| service dhcpcd_bnep1 /system/bin/dhcpcd -BKLG |
| disabled |
| oneshot |
| |
| service dhcpcd_bnep2 /system/bin/dhcpcd -BKLG |
| disabled |
| oneshot |
| |
| service dhcpcd_bnep3 /system/bin/dhcpcd -BKLG |
| disabled |
| oneshot |
| |
| service dhcpcd_bnep4 /system/bin/dhcpcd -BKLG |
| disabled |
| oneshot |
| |
| #for WiFi MFG(TestMode) |
| service mfgloader /system/bin/mfgloader |
| class main |
| disabled |
| oneshot |
| |
| service wlandutservice /system/bin/wlandutservice |
| class main |
| user system |
| group wifi net_raw net_admin system inet |
| disabled |
| oneshot |
| |
| service macloader /system/bin/macloader |
| class main |
| oneshot |
| |
| on property:init.svc.macloader=stopped |
| chown system root /data/.cid.info |
| chmod 0664 /data/.cid.info |
| chown system root /data/.rev |
| chmod 0664 /data/.rev |
| # end of wifi |
| |
| |
| service loc_launcher /system/bin/loc_launcher |
| #loc_launcher will start as root and set its uid to gps |
| class late_start |
| group gps inet net_raw qcom_diag net_admin wifi |
| |
| service fm_dl /system/bin/sh /system/etc/init.qcom.fm.sh |
| class late_start |
| user root |
| group system |
| disabled |
| oneshot |
| |
| on property:crypto.driver.load=1 |
| insmod /system/lib/modules/qce.ko |
| insmod /system/lib/modules/qcedev.ko |
| |
| service qcom-sh /system/bin/sh /init.qcom.sh |
| class late_start |
| user root |
| oneshot |
| |
| service qcom-post-boot /system/bin/sh /system/etc/init.qcom.post_boot.sh |
| class late_start |
| user root |
| disabled |
| oneshot |
| |
| service wifi-sdio-on /system/bin/sh /system/etc/init.qcom.sdio.sh |
| class late_start |
| group wifi inet |
| disabled |
| oneshot |
| |
| service wifi-crda /system/bin/sh /system/etc/init.crda.sh |
| class late_start |
| user root |
| disabled |
| oneshot |
| |
| service config-zram /system/bin/sh /system/etc/init.qcom.zram.sh |
| class late_start |
| user root |
| disabled |
| oneshot |
| |
| on property:sys.boot_completed=1 |
| start qcom-post-boot |
| start config-zram |
| |
| service atfwd /system/bin/ATFWD-daemon |
| class late_start |
| user system |
| group system radio |
| |
| service hostapd /system/bin/hostapd -dd /data/hostapd/hostapd.conf |
| class late_start |
| user root |
| group root |
| oneshot |
| disabled |
| |
| 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 |
| |
| # |
| # start multiple rilds based on multisim property |
| # |
| on property:ro.multisim.simslotcount=2 |
| stop ril-daemon |
| start ril-daemon |
| start ril-daemon1 |
| |
| on property:persist.radio.multisim.config=dsds |
| stop ril-daemon |
| start ril-daemon |
| start ril-daemon1 |
| |
| on property:persist.radio.multisim.config=dsda |
| stop ril-daemon |
| start ril-daemon |
| start ril-daemon1 |
| |
| #service ril-daemon2 /system/bin/rild -c 2 |
| # class main |
| # socket rild2 stream 660 root radio |
| # socket rild-debug2 stream 660 radio system |
| # user root |
| # disabled |
| # group radio cache inet misc audio sdcard_r sdcard_rw diag qcom_diag log |
| |
| #service ril-daemon3 /system/bin/rild -c 3 |
| # class main |
| # socket rild3 stream 660 root radio |
| # socket rild-debug3 stream 660 radio system |
| # user root |
| # disabled |
| # group radio cache inet misc audio sdcard_r sdcard_rw diag qcom_diag log |
| |
| service usb_uicc_enable /system/bin/sh /system/etc/init.qcom.uicc.sh |
| class late_start |
| user root |
| disabled |
| oneshot |
| |
| 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 |
| |
| # virtual sdcard daemon running as media_rw (1023) |
| service sdcard /system/bin/sdcard -u 1023 -g 1023 -l /data/media /mnt/shell/emulated |
| class late_start |
| |
| service fuse_sdcard1 /system/bin/sdcard -u 1023 -g 1023 -w 1023 -d /mnt/media_rw/sdcard1 /storage/sdcard1 |
| class late_start |
| disabled |
| |
| service fuse_uicc0 /system/bin/sdcard -u 1023 -g 1023 -w 1023 -d /mnt/media_rw/uicc0 /storage/uicc0 |
| class late_start |
| |
| service fuse_uicc1 /system/bin/sdcard -u 1023 -g 1023 -w 1023 -d /mnt/media_rw/uicc1 /storage/uicc1 |
| class late_start |
| disabled |
| |
| service fuse_usbotg /system/bin/sdcard -u 1023 -g 1023 -w 1023 -d /mnt/media_rw/usbotg /storage/usbotg |
| class late_start |
| disabled |
| |
| # Binding fuse mount point to /storage/emulated/legacy |
| on property:init.svc.sdcard=running |
| wait /mnt/shell/emulated/0 |
| mount none /mnt/shell/emulated/0 /storage/emulated/legacy bind |
| |
| |
| service charger /charger |
| class charger |
| |
| service ssr_diag /system/bin/ssr_diag |
| class late_start |
| user system |
| group system |
| disabled |
| |
| # Define fastmmi |
| service fastmmi /system/bin/mmi |
| user root |
| group root |
| disabled |
| |
| service fastmmisrv /system/bin/sh /init.qcom.factory.sh |
| user root |
| disabled |
| oneshot |
| |
| on mmi |
| start fastmmisrv |
| |
| on ffbm |
| trigger early-fs |
| trigger fs |
| trigger post-fs |
| trigger post-fs-data |
| |
| # Load properties from /system/ + /factory after fs mount. Place |
| # this in another action so that the load will be scheduled after the prior |
| # issued fs triggers have completed. |
| trigger load_all_props_action |
| |
| trigger early-boot |
| trigger mmi |
| |
| 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 |
| class late_start |
| user shell |
| group system qcom_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 qcom_diag sdcard_rw sdcard_r media_rw |
| disabled |
| oneshot |
| |
| service bms-sh /system/bin/sh /init.qcom.bms.sh |
| class core |
| user root |
| 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 core |
| user root |
| group root |
| disabled |
| |
| # Change IO scheduler to CFQ after boot_complete |
| on property:sys.boot_completed=1 |
| write /sys/block/mmcblk0/queue/scheduler cfq |
| |
| |
| # umount service |
| service umount_service /system/bin/umount /preload |
| disabled |
| oneshot |
| |
| # Support Preload install apks |
| on property:persist.sys.storage_preload=1 |
| mount ext4 /dev/block/bootdevice/by-name/hidden /preload nosuid nodev ro barrier=1 |
| setprop storage.preload.complete 1 |
| |
| on property:persist.sys.storage_preload=0 |
| start umount_service |
| |