2f8822331b
Xiaomi used to do this in the kernel, but it is broken in the OSS kernel due to missing definitions. Remove the broken kernel code and do it in userspace instead. Change-Id: I5822cc209d969f3ada898d1bfbdace9bfdfce177
1019 lines
31 KiB
Text
1019 lines
31 KiB
Text
# 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.qcom.factory.rc
|
|
|
|
on early-init
|
|
mkdir /firmware 0771 system system
|
|
mkdir /system 0777 root root
|
|
symlink /data/tombstones /tombstones
|
|
mkdir /dsp 0771 media media
|
|
|
|
mount debugfs debugfs /sys/kernel/debug
|
|
chmod 0755 /sys/kernel/debug
|
|
|
|
on init
|
|
# Set permissions for persist partition
|
|
mkdir /persist 0771 system system
|
|
|
|
# Support legacy paths
|
|
symlink /sdcard /mnt/sdcard
|
|
symlink /sdcard /storage/sdcard0
|
|
|
|
write /sys/module/qpnp_rtc/parameters/poweron_alarm 1
|
|
|
|
on fs
|
|
mount_all fstab.qcom
|
|
|
|
mkdir /persist/data 0700 system system
|
|
restorecon_recursive /persist
|
|
|
|
# msm specific files that need to be created on /data
|
|
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/misc/hbtp 0750 system system
|
|
mkdir /data/misc/dts 0770 media audio
|
|
|
|
#Create directories for Fingerprint
|
|
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/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
|
|
|
|
# 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/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
|
|
|
|
#Create IOP deamon related dirs
|
|
mkdir /data/misc/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
|
|
|
|
# qti-logkit data
|
|
mkdir /data/misc/qti-logkit/ 0771 system system
|
|
mkdir /data/misc/qti-logkit/shared-privileged/ 2770 system system
|
|
mkdir /data/misc/qti-logkit/shared-public/ 2770 system qcom_diag
|
|
mkdir /data/misc/qti-logkit/socket-privileged/ 2770 system system
|
|
mkdir /data/misc/qti-logkit/socket-public/ 2750 system qcom_diag
|
|
mkdir /data/misc/qti-logkit/logdata/ 2750 system shell
|
|
|
|
# Sensors
|
|
chmod 0775 /persist/sensors
|
|
chmod 0664 /persist/sensors/sensors_settings
|
|
chown system root /persist/sensors/sensors_settings
|
|
|
|
mkdir /data/misc/sensors
|
|
chmod 0775 /data/misc/sensors
|
|
|
|
on early-boot
|
|
# set RLIMIT_MEMLOCK to 64MB
|
|
setrlimit 8 67108864 67108864
|
|
# Allow subsystem (modem etc) debugging
|
|
write /sys/kernel/boot_adsp/boot 1
|
|
write /sys/kernel/boot_slpi/boot 1
|
|
|
|
# Graphics
|
|
chown system graphics /sys/class/graphics/fb0/idle_time
|
|
chmod 0664 /sys/class/graphics/fb0/idle_time
|
|
chown system graphics /sys/class/graphics/fb0/dynamic_fps
|
|
chmod 0664 /sys/class/graphics/fb0/dynamic_fps
|
|
chown system graphics /sys/class/graphics/fb0/dyn_pu
|
|
chmod 0664 /sys/class/graphics/fb0/dyn_pu
|
|
chown system graphics /sys/class/graphics/fb0/modes
|
|
chmod 0664 /sys/class/graphics/fb0/modes
|
|
chown system graphics /sys/class/graphics/fb0/mode
|
|
chmod 0664 /sys/class/graphics/fb0/mode
|
|
chown system graphics /sys/class/graphics/fb0/msm_cmd_autorefresh_en
|
|
chmod 0664 /sys/class/graphics/fb0/msm_cmd_autorefresh_en
|
|
|
|
on boot
|
|
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
|
|
|
|
#Create NETMGR daemon socket area
|
|
mkdir /dev/socket/netmgr 0750 radio radio
|
|
|
|
#NULL lixiuzhen 2016\04\03 add ota prop for mbn update
|
|
setprop persist.radio.start_ota_daemon 1
|
|
setprop persist.radio.sw_mbn_openmkt 1
|
|
|
|
#enable camera read sensors data
|
|
setprop persist.camera.gyro.disable 0
|
|
setprop persist.camera.stats.test 5
|
|
|
|
#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
|
|
|
|
# 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
|
|
|
|
#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
|
|
|
|
# bond0 used by FST Manager
|
|
chown wifi wifi /sys/class/net/bond0/bonding/queue_id
|
|
# Goodix Fingerprint
|
|
chown system system /dev/goodix_fp
|
|
chmod 0644 /dev/goodix_fp
|
|
|
|
setprop persist.sys.fp.vendor none
|
|
start gx_fpd
|
|
|
|
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
|
|
|
|
restorecon /dev/block/mmcblk0p13
|
|
restorecon /dev/block/mmcblk0p14
|
|
restorecon /dev/block/mmcblk0p16
|
|
restorecon /dev/block/mmcblk0p2
|
|
restorecon /dev/block/mmcblk0p3
|
|
restorecon /dev/block/mmcblk0p27
|
|
restorecon /dev/block/mmcblk0p33
|
|
restorecon /dev/block/mmcblk0p34
|
|
|
|
start rmt_storage
|
|
|
|
# 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
|
|
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 root system /sys/class/leds/red/blink
|
|
chown root system /sys/class/leds/green/blink
|
|
chown root system /sys/class/leds/blue/blink
|
|
|
|
# IR blaster
|
|
chown root system /sys/class/leds/infrared/transmit
|
|
chown root system /sys/class/leds/infrared/brightness
|
|
|
|
# Subsystem restart
|
|
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
|
|
|
|
on class_start:late_start
|
|
write /proc/sys/net/ipv6/conf/default/accept_ra_defrtr 1
|
|
|
|
copy /system/vendor/qcril.db /data/misc/radio/qcril.db
|
|
chown radio radio /data/misc/radio/qcril.db
|
|
write /data/misc/radio/db_check_done 1
|
|
|
|
service iop /system/bin/iop
|
|
class main
|
|
user root
|
|
group root
|
|
disabled
|
|
|
|
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.enable_debug=*
|
|
write /sys/module/subsystem_restart/parameters/enable_debug ${persist.sys.ssr.enable_debug}
|
|
|
|
on property:persist.sys.mba_boot_timeout=*
|
|
write /sys/module/pil_msa/parameters/pbl_mba_boot_timeout_ms ${persist.sys.mba_boot_timeout}
|
|
|
|
on property:persist.sys.modem_auth_timeout=*
|
|
write /sys/module/pil_msa/parameters/modem_auth_timeout_ms ${persist.sys.modem_auth_timeout}
|
|
|
|
on property:persist.sys.pil_proxy_timeout=*
|
|
write /sys/module/peripheral_loader/parameters/proxy_timeout_ms ${persist.sys.pil_proxy_timeout}
|
|
|
|
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 "
|
|
|
|
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"
|
|
|
|
#bug156417 zhaoqf_sh add Allow usb charging to be disabled peristently
|
|
on property:persist.sys.chgdisabled=1
|
|
write /sys/class/power_supply/battery/charging_enabled 0
|
|
on property:persist.sys.chgdisabled=0
|
|
write /sys/class/power_supply/battery/charging_enabled 1
|
|
|
|
on property:init.svc.wpa_supplicant=stopped
|
|
stop dhcpcd
|
|
|
|
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:vold.decrypt=trigger_restart_framework
|
|
start config_bt_addr
|
|
|
|
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
|
|
|
|
service dpmd /system/bin/dpmd
|
|
class late_start
|
|
socket dpmd stream 660 root system
|
|
|
|
service irsc_util /system/bin/irsc_util "/etc/sec_config"
|
|
class core
|
|
user root
|
|
oneshot
|
|
|
|
service rmt_storage /system/bin/rmt_storage
|
|
class core
|
|
user root
|
|
|
|
service rfs_access /system/bin/rfs_access
|
|
class core
|
|
user root
|
|
group system net_raw
|
|
|
|
service tftp_server /system/bin/tftp_server
|
|
class main
|
|
user root
|
|
|
|
service config_bt_addr /system/bin/btnvtool -O
|
|
class core
|
|
user bluetooth
|
|
group bluetooth radio
|
|
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 ftmd /system/bin/logwrapper /system/bin/ftmdaemon
|
|
class late_start
|
|
user root
|
|
group bluetooth net_bt_admin misc net_bt_stack qcom_diag net_bt
|
|
disabled
|
|
oneshot
|
|
|
|
service port-bridge /system/bin/port-bridge
|
|
class main
|
|
user radio system
|
|
group radio system inet
|
|
oneshot
|
|
|
|
# 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 qcom_diag
|
|
|
|
service netmgrd /system/bin/netmgrd
|
|
class main
|
|
|
|
service qti /system/vendor/bin/qti
|
|
class main
|
|
user radio
|
|
group radio net_raw qcom_diag usb net_admin
|
|
|
|
service sensors /system/bin/sensors.qcom
|
|
class core
|
|
user root
|
|
group root
|
|
|
|
# Adjust socket buffer to enlarge TCP receive window for high bandwidth (e.g. DO-RevB)
|
|
# 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 p2p_supplicant /system/bin/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 wpa_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 -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
|
|
|
|
# FST Manager can be started by property_set("ctl.start", "fstman:<hostap ctrl iface>");
|
|
service fstman /system/bin/fstman -B -ddd -c /data/misc/wifi/fstman.ini
|
|
user wifi
|
|
group wifi net_admin net_raw
|
|
class main
|
|
disabled
|
|
oneshot
|
|
|
|
on property:netd.fstman.start=true
|
|
start fstman
|
|
|
|
on property:netd.fstman.start=false
|
|
stop fstman
|
|
|
|
service dhcpcd_wlan0 /system/bin/dhcpcd -ABKLG
|
|
class late_start
|
|
disabled
|
|
oneshot
|
|
|
|
service dhcpcd_bond0 /system/bin/dhcpcd -ABKLG
|
|
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_bond0 /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
|
|
oneshot
|
|
|
|
service ptt_ffbm /system/bin/ptt_socket_app -f -d
|
|
user root
|
|
group root
|
|
disabled
|
|
oneshot
|
|
|
|
service cnss_diag /system/bin/cnss_diag -q -f
|
|
class main
|
|
user root
|
|
group root
|
|
oneshot
|
|
|
|
service cnss-daemon /system/bin/cnss-daemon -n -l
|
|
class late_start
|
|
|
|
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
|
|
|
|
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 system
|
|
group system
|
|
disabled
|
|
oneshot
|
|
|
|
service qcom-sh /system/bin/sh /init.qcom.sh
|
|
class late_start
|
|
user root
|
|
oneshot
|
|
|
|
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
|
|
|
|
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
|
|
group radio cache inet misc audio sdcard_r sdcard_rw qcom_diag diag log
|
|
|
|
service usb_uicc_enable /system/bin/sh /system/etc/init.qcom.uicc.sh
|
|
class late_start
|
|
user root
|
|
disabled
|
|
oneshot
|
|
|
|
on property:sys.usb_uicc.enabled=1
|
|
start usb_uicc_enable
|
|
|
|
on property:sys.usb_uicc.enabled=0
|
|
start usb_uicc_enable
|
|
|
|
service hcidump /system/bin/sh /system/etc/hcidump.sh
|
|
user bluetooth
|
|
group bluetooth system net_bt_admin net_admin
|
|
disabled
|
|
oneshot
|
|
|
|
service charger /charger
|
|
class charger
|
|
group system graphics
|
|
seclabel u:r:healthd:s0
|
|
|
|
service ssr_diag /system/bin/ssr_diag
|
|
class late_start
|
|
user system
|
|
group system
|
|
disabled
|
|
|
|
service qbcharger /charger -m 1
|
|
disabled
|
|
oneshot
|
|
|
|
on property:sys.qbcharger.enable=true
|
|
start qbcharger
|
|
|
|
on property:sys.qbcharger.enable=false
|
|
stop qbcharger
|
|
|
|
#+first boot,jiangtao.wt,add 20150810
|
|
on property:sys.installed.running=1
|
|
write /sys/power/wake_lock InstalldWakeLock
|
|
|
|
on property:sys.installed.running=0
|
|
write /sys/power/wake_unlock InstalldWakeLock
|
|
#-first boot,jiangtao.wt,add 20150810
|
|
|
|
service diag_mdlog_start /system/bin/diag_mdlog -s 200 -n 10
|
|
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
|
|
|
|
on property:persist.radio.otaconfig=0
|
|
setprop persist.radio.start_ota_daemon 0
|
|
on property:persist.radio.otaconfig=1
|
|
setprop persist.radio.start_ota_daemon 1
|
|
|
|
service msm_irqbalance /system/bin/msm_irqbalance -f /system/vendor/etc/msm_irqbalance.conf
|
|
class late_start
|
|
user root
|
|
group root
|
|
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
|
|
disabled
|
|
oneshot
|
|
|
|
on property:sys.wfdservice=enable
|
|
start wfdservice
|
|
|
|
on property:sys.wfdservice=disable
|
|
stop wfdservice
|
|
|
|
on property:sys.dbg.coresight.enable=1
|
|
write /persist/coresight/enable 1
|
|
|
|
on property:sys.dbg.coresight.enable=0
|
|
write /persist/coresight/enable 0
|
|
|
|
service qseeproxydaemon /system/vendor/bin/qseeproxydaemon
|
|
class late_start
|
|
user system
|
|
group system
|
|
|
|
# Add poweroffhandler
|
|
service poweroffhandler /system/bin/poweroffhandler
|
|
class core
|
|
user media
|
|
group graphics audio
|
|
disabled
|
|
oneshot
|
|
|
|
service fingerprintd /system/bin/fingerprintd
|
|
class late_start
|
|
socket fpce stream 0666 system system
|
|
user system
|
|
group system sdcard_rw
|
|
disabled
|
|
|
|
service gx_fpd /system/bin/gx_fpd
|
|
class core
|
|
user root
|
|
group system system
|
|
disabled
|
|
|
|
on property:persist.sys.fp.vendor=switchf
|
|
stop gx_fpd
|
|
setprop persist.sys.fp.vendor searchf
|
|
start fingerprintd
|
|
setprop ro.boot.fpsensor fpc
|
|
|
|
on property:persist.sys.fp.vendor=goodix
|
|
setprop ro.boot.fpsensor gdx
|
|
|
|
on property:persist.sys.fp.onstart=1
|
|
start fingerprintd
|
|
|
|
# Start camera server as daemon
|
|
service qcamerasvr /system/bin/mm-qcamera-daemon
|
|
class late_start
|
|
user camera
|
|
group camera system inet input graphics
|
|
writepid /dev/cpuset/system-background/tasks
|
|
|
|
# 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 qseecomd /system/bin/qseecomd
|
|
class core
|
|
user root
|
|
group root
|
|
|
|
service perfd /system/vendor/bin/perfd
|
|
class main
|
|
user root
|
|
socket perfd seqpacket 0666 root system
|
|
disabled
|
|
writepid /dev/cpuset/system-background/tasks
|
|
|
|
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
|
|
|
|
service time_daemon /system/bin/time_daemon
|
|
class late_start
|
|
user root
|
|
group root
|
|
|
|
service audiod /system/bin/audiod
|
|
class late_start
|
|
user system
|
|
group system
|
|
|
|
service wcnss-service /system/bin/wcnss_service
|
|
class main
|
|
user system
|
|
group system wifi radio
|
|
|
|
service imsqmidaemon /system/bin/imsqmidaemon
|
|
class main
|
|
user system
|
|
socket ims_qmid stream 0660 system radio
|
|
group radio net_raw log diag
|
|
disabled
|
|
|
|
on property:service.qti.ims.enabled=1
|
|
start imsqmidaemon
|
|
|
|
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
|
|
disabled
|
|
|
|
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 diag inet log
|
|
disabled
|
|
|
|
service imscmservice /system/bin/imscmservice
|
|
class main
|
|
user system
|
|
group radio net_raw diag diag log
|
|
disabled
|
|
|
|
on property:sys.ims.DATA_DAEMON_STATUS=1
|
|
start ims_rtp_daemon
|
|
start imscmservice
|
|
|
|
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
|
|
setprop persist.sys.usb.config mass_storage
|
|
start hvdcp_opti
|
|
|
|
service hbtp /system/vendor/bin/hbtp_daemon
|
|
class main
|
|
user system
|
|
group system
|
|
disabled
|
|
|
|
service adsprpcd /system/bin/adsprpcd
|
|
class main
|
|
user media
|
|
group media
|
|
|
|
service per_mgr /system/bin/pm-service
|
|
class core
|
|
user system
|
|
group system net_raw
|
|
|
|
service hvdcp_opti /system/bin/hvdcp_opti
|
|
class main
|
|
user root
|
|
group root
|
|
|
|
service mdtpd /system/vendor/bin/mdtpd
|
|
class late_start
|
|
user root
|
|
group system radio drmrpc
|
|
|
|
service mtservice /system/bin/mtd
|
|
class late_start
|