Permalink
Switch branches/tags
Nothing to show
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
executable file 678 lines (560 sloc) 20 KB
# /* < DTS2012020908284 fangxinyong 20120209 begin */
# updated to ICS 29I init.qcom.rc release
# Copyright (c) 2009-2012, Code Aurora Forum. 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 Code Aurora 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.
#
# /*< DTS2012011801998 chenxi 20120203 begin */
# import init.qcom.usb.rc
# /* DTS2012011801998 chenxi 20120203 end >*/
on init
# Set permissions for persist partition
mkdir /persist 0771 system system
on early-boot
# set RLIMIT_MEMLOCK to 64MB
setrlimit 8 67108864 67108864
on boot
# /* < DTS2012061805699 niuyongmin 20120618 begin */
# exec system/bin/btnvtool -O
# /* DTS2012061805699 niuyongmin 20120618 end > */
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 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
# /* < DTS2010101901100 xuhui 20101021 begin */
chmod 0660 /proc/bluetooth/clock/proto
# /* DTS2010101901100 xuhui 20101021 end > */
chown bluetooth bluetooth /dev/ttyHS0
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
#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
# Allow QMUX daemon to assign port open wait time
chown radio radio /sys/devices/virtual/hsicctl/hsicctl0/modem_wait
#/* < DTS2012011902218 zhuwenying 20120119 begin */
setprop wifi.interface eth0
#/* DTS2012011902218 zhuwenying 20120119 end > */
# Enable Bluetooth 802.11 PAL when Bluetooth is turned on
setprop ro.config.bt.amp no
#Set SUID bit for usbhub
chmod 4755 /system/bin/usbhub
chmod 755 /system/bin/usbhub_init
#Remove SUID bit for iproute2 ip tool
chmod 0755 /system/bin/ip
#port-bridge
chmod 0660 /dev/smd0
chown system system /dev/smd0
#BT DUN port-bridge
chmod 0660 /dev/smd7
chown bluetooth bluetooth /dev/smd7
chmod 0444 /sys/devices/platform/msm_hsusb/gadget/usb_state
# create symlink for fb1 as HDMI
symlink /dev/graphics/fb1 /dev/graphics/hdmi
# Remove write permissions to video related nodes
chmod 0664 /sys/devices/virtual/graphics/fb1/hpd
chmod 0664 /sys/devices/virtual/graphics/fb1/video_mode
chmod 0664 /sys/devices/virtual/graphics/fb1/format_3d
# Change owner and group for media server and surface flinger
chown system system /sys/devices/virtual/graphics/fb1/format_3d
#For bridgemgr daemon to inform the USB driver of the correct transport
chown radio radio /sys/class/android_usb/f_rmnet_smd_sdio/transport
#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
# 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
# import cne init file
on post-fs
export_rc /persist/init.cne.rc
# msm specific files that need to be created on /data
on post-fs-data
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 directory used by audio subsystem
mkdir /data/misc/audio 0770 audio audio
# 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
#/* < DTS2012011902218 zhuwenying 20120119 begin */
#mkdir /data/system 0775 system system
#symlink /data/misc/wifi/wpa_supplicant /data/system/wpa_supplicant
#/*< DTS2011012004226 xuhui 20110120 begin */
# porting wifi service for 7x30 platform
#/* < DTS2010112200902 hanshirong 20101124 begin */
#setprop wifi.interface eth0
#/* DTS2010112200902 hanshirong 20101124 end > */
#/* DTS2012011902218 zhuwenying 20120119 end > */
#/* DTS2011012004226 xuhui 20110120 end >*/
#Create directories for wiper services
mkdir /data/wpstiles/ 0755 shell
mkdir /data/wiper 0755 gps qcom_oncrpc
#Create directories for gpsone_daemon services
mkdir /data/misc/gpsone_d 0770 system gps
#Create directories for QuIPS
mkdir /data/misc/quipc 0770 gps system
#Create directories for Location services
mkdir /data/misc/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
#Provide the access to hostapd.conf only to root and group
chmod 0660 /data/hostapd/hostapd.conf
# Create /data/time folder for time-services
mkdir /data/time/ 0700 system system
setprop vold.post_fs_data_done 1
# Export GPIO56 for fusion targets to enable/disable hub
service usbhub_init /system/bin/usbhub_init
class late_start
user root
disabled
oneshot
on property:ro.board.platform=msm7630_fusion
start usbhub_init
on property:init.svc.wpa_supplicant=stopped
stop dhcpcd
# /* < DTS2012052401250 limeng 20120524 begin */
on property:bluetooth.isEnabled=true
start abtfilt
write /sys/class/bluetooth/hci0/idle_timeout 7000
# /* DTS2012052401250 limeng 20120524 end > */
on property:bluetooth.isEnabled=false
start amp_unload
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.qcom.class_main.sh
class main
user root
oneshot
on property:vold.decrypt=trigger_restart_framework
start qcom-c_main-sh
service cnd /system/bin/cnd
class late_start
socket cnd stream 666 root radio
disabled
on property:persist.cne.UseCne=vendor
start cnd
on property:persist.cne.UseCne=Vendor
start cnd
service rmt_storage /system/bin/rmt_storage
class core
user root
disabled
on property:ro.emmc=1
start rmt_storage
service hciattach /system/bin/sh /system/etc/init.qcom.bt.sh
class late_start
user bluetooth
group qcom_oncrpc bluetooth net_bt_admin
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
class late_start
disabled
oneshot
service sapd /system/bin/sdptool add --channel=15 SAP
class late_start
user bluetooth
group bluetooth net_bt_admin
disabled
oneshot
service dund /system/bin/sdptool add --channel=1 DUN
class late_start
user bluetooth
group bluetooth net_bt_admin
disabled
oneshot
service bridgemgrd /system/bin/bridgemgrd
class late_start
user radio
group radio
disabled
service port-bridge /system/bin/port-bridge /dev/smd0 /dev/ttyGS0
class late_start
user system
group system inet
disabled
service qmiproxy /system/bin/qmiproxy
class main
user radio
group radio
disabled
#/* <DTS2011112804765 wangdong 20111206 begin */
service pcm-bridge /system/bin/pcm-bridge /dev/smd7 /dev/ttyGS1
#/* DTS2011112804765 wangdong 20111206 end> */
service qmuxd /system/bin/qmuxd
class main
user radio
group radio audio bluetooth gps
service netmgrd /system/bin/netmgrd
class main
#/* < DTS2012020908284 fangxinyong 20120209 begin */
# disabled
#/* DTS2012020908284 fangxinyong 20120209 end > */
service sensors /system/bin/sensors.qcom
class late_start
user root
group root
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 1
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 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
#/* < DTS2012011902218 zhuwenying 20120119 begin */
#service wpa_supplicant /system/bin/logwrapper /system/bin/wpa_supplicant -Dnl80211 -ddd
# class late_start
# user root
# group wifi inet
# socket wpa_wlan0 dgram 660 wifi wifi
# disabled
# oneshot
#service dhcpcd_wlan0 /system/bin/dhcpcd -BKLG
# class late_start
# disabled
# oneshot
#/* DTS2012011902218 zhuwenying 20120119 end > */
service dhcpcd_p2p /system/bin/dhcpcd -BKLG
class late_start
disabled
oneshot
service iprenew_wlan0 /system/bin/dhcpcd -n
class late_start
disabled
oneshot
service iprenew_p2p /system/bin/dhcpcd -n p2p
class late_start
disabled
oneshot
service dhcpcd_bnep0 /system/bin/dhcpcd -BKLG
disabled
oneshot
service wiperiface /system/bin/wiperiface
class late_start
user gps
group gps qcom_oncrpc net_raw
oneshot
service gpsone_daemon /system/bin/gpsone_daemon
class late_start
user gps
group gps qcom_oncrpc inet net_raw
disabled
service quipc_igsn /system/bin/quipc_igsn
class late_start
user gps
group inet gps
disabled
service quipc_main /system/bin/quipc_main
class late_start
user gps
group gps net_admin wifi inet
disabled
service location_mq /system/bin/location-mq
class late_start
user gps
group gps
disabled
service xtwifi_inet /system/bin/xtwifi-inet-agent
class late_start
user gps
group inet gps
disabled
service xtwifi_client /system/bin/xtwifi-client
class late_start
user gps
group net_admin wifi inet gps
disabled
service fm_dl /system/bin/sh /system/etc/init.qcom.fm.sh
class late_start
user root
group system qcom_oncrpc
disabled
oneshot
on property:crypto.driver.load=1
insmod /system/lib/modules/qce.ko
insmod /system/lib/modules/qcedev.ko
on property:crypto.driver.load=0
exec /system/bin/rmmod qcedev.ko
exec /system/bin/rmmod qce.ko
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
service qcom-sh /system/bin/sh /init.qcom.sh
class late_start
user root
oneshot
#/* < BU5D10262 xuhui 20100521 begin */
service BtWiRfServer /system/xbin/RfTest
user root
group bluetooth net_bt_admin system
disabled
oneshot
#/* BU5D10262 xuhui 20100521 end > */
service qcom-post-boot /system/bin/sh /system/etc/init.qcom.post_boot.sh
class late_start
user root
disabled
oneshot
service qcom-wifi /system/bin/sh /system/etc/init.qcom.wifi.sh
class late_start
oneshot
on property:init.svc.bootanim=stopped
start qcom-post-boot
service atfwd /system/bin/ATFWD-daemon
class late_start
user system
group system radio
onrestart /system/bin/log -t RIL-ATFWD -p w "ATFWD daemon restarted"
service hdmid /system/bin/hdmid
class late_start
socket hdmid stream 0660 root system graphics
disabled
on property:ro.hdmi.enable=true
start hdmid
service abld /system/bin/mm-abl-daemon
class late_start
disabled
service hostapd /system/bin/hostapd -dddd /data/hostapd/hostapd.conf
class late_start
user root
group root
oneshot
disabled
service ds_fmc_appd /system/bin/ds_fmc_appd -p "rmnet0" -D
class late_start
group radio
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
user system
group qcom_oncrpc net_bt_admin inet radio wifi
disabled
# /* <DTS2010090400601 hufeng 20100904 begin */
#/* <DTSxxxxxx qinwei 201008xx begin */
# bugreport is triggered by the KEY_VOLUMEUP and KEY_VOLUMEDOWN keycodes or triggered by projectmenu
service bugreport /system/bin/dumpstate -d -v -o /sdcard/bugreports/bugreport
user root
disabled
oneshot
keycodes 115 114
# applogcat is triggered by projectmenu or setprop
# <DTS2010092802152 hufeng 20100928 begin
# /*<DTS2011060905268 fangxinyong 20110613 begin */
# /* <DTS2011061406137 libeibei 20110614 begin */
# Modify the bugreport directory to /sdcard/bugreports/
service applogcat /system/bin/logcat -v time -r 1024 -n 8 -f /sdcard/bugreports/applogcat-log
# /* DTS2011061406137 libeibei 20110614 end> */
disabled
# kmsglogcat is triggered by projectmenu or setprop
# /* <DTS2011061406137 libeibei 20110614 begin */
# Modify the bugreport directory to /sdcard/bugreports/
service kmsglogcat /system/bin/kmsgcat -r 1024 -n 8 -f /sdcard/bugreports/kmsgcat-log
# /* DTS2011061406137 libeibei 20110614 end> */
# /*DTS2011060905268 fangxinyong 20110613 end> */
# DTS2010092802152 hufeng 20100928 end>
disabled
#/* DTSxxxxxx qinwei 201008xx end > */
# /* DTS2010090400601 hufeng 20100904 end> */
#/*<DTS2011030801141 renxigagn 20110308 begin*/
# sleeplogcat is triggered by projectmenu or setprop
service sleeplogcat /system/bin/sleeplogcat -t 10 -p /sdcard/sleeplog/
disabled
#/*DTS2011030801141 renxigang 20110308 end>*/
#/*<DTS2011022801991 renjun 20110228 begin*/
service modemlogcat /system/bin/diag_mdlog -f /sdcard/diag_logs/Diag.cfg -o /sdcard/diag_logs
disabled
#/*DTS2011022801991 renjun 20110228 end>*/
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 1
service thermald /system/bin/thermald
class late_start
user root
group root
disabled
on property:persist.thermal.monitor=true
start thermald
service time_daemon /system/bin/time_daemon
class late_start
user root
group root
oneshot
disabled
on property:persist.timed.enable=true
start time_daemon
service ftp /system/bin/sdptool add --psm=5257 --channel=20 FTP
class late_start
user bluetooth
group bluetooth net_bt_admin
disabled
oneshot
service map0 /system/bin/sdptool add --channel=16 MAS0
class late_start
user bluetooth
group bluetooth net_bt_admin
disabled
oneshot
service map1 /system/bin/sdptool add --channel=17 MAS1
class late_start
user bluetooth
group bluetooth net_bt_admin
disabled
oneshot
service ril-daemon1 /system/bin/rild -c 1
class main
socket rild1 stream 660 root radio
socket rild-debug1 stream 660 radio system
user root
#DTS2012062502656 wangwenbo 20120625 begin
disabled
# DTS2012062502656 wangwenbo 20120625 end
group radio cache inet misc audio sdcard_rw qcom_oncrpc diag
#DTS2012062502656 wangwenbo 20120625 begin
on property:ro.multi.rild=true
start ril-daemon1
#DTS2012062502656 wangwenbo 20120625 end
service profiler_daemon /system/bin/profiler_daemon
class late_start
user root
group root
disabled
#/*< DTS2011063003923 lihongbin 20110630 begin */
#start the test_diag support automation and diag in arm11
service test_diag /system/bin/test_diag
#/* DTS2011063003923 lihongbin 20110630 end >*/
service sdcard /system/bin/sdcard /data/media 1023 1023
class late_start
disabled
on property:persist.fuse_sdcard=true
start sdcard
#/* DTS2012020908284 fangxinyong 20120209 end > */
service hcidump /system/bin/sh /system/etc/hcidump.sh
user bluetooth
group bluetooth system net_bt_admin net_admin
disabled
oneshot
# /* < DTS2012052401250 limeng 20120524 begin */
# /* < DTS2012062703453 wanghao 20120628 begin */
service abtfilt /system/bin/abtfilt -a -d -z -n -q -v -s -w eth0
class late_start
user root
group bluetooth net_bt_admin inet net_admin net_raw
disabled
oneshot
# /* DTS2012062703453 wanghao 20120628 end > */
# /* DTS2012052401250 limeng 20120524 end > */