blob: f2a060b616b9426b1799ad5ff48a41180c73cfb1 [file] [log] [blame]
Vineeta Srivastava4248fd42014-05-02 16:20:41 -07001#
2# Copyright 2014 The Android Open Source Project
3#
4# Licensed under the Apache License, Version 2.0 (the "License");
5# you may not use this file except in compliance with the License.
6# You may obtain a copy of the License at
7#
8# http://www.apache.org/licenses/LICENSE-2.0
9#
10# Unless required by applicable law or agreed to in writing, software
11# distributed under the License is distributed on an "AS IS" BASIS,
12# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13# See the License for the specific language governing permissions and
14# limitations under the License.
15#
16
17import init.shamu.usb.rc
Chris Fries97337a22014-06-13 09:01:48 -050018import init.shamu.power.rc
Patrick Tjine62a0932014-06-29 21:47:36 -070019import init.shamu.diag.rc
Vineeta Srivastava4248fd42014-05-02 16:20:41 -070020
21on early-init
22 mkdir /firmware 0771 system system
23 symlink /data/tombstones /tombstones
24 mount debugfs debugfs /sys/kernel/debug
25 chown system system /sys/kernel/debug/kgsl/proc
26
27on init
28 # See storage config details at http://source.android.com/tech/storage/
29 mkdir /mnt/shell/emulated 0700 shell shell
30 mkdir /storage/emulated 0555 root root
31
Vineeta Srivastava393ee022014-09-16 08:45:24 -070032 mkdir /oem 0550 root root
33
Vineeta Srivastava4248fd42014-05-02 16:20:41 -070034 # Set permissions for persist partition
35 mkdir /persist 0771 system system
Vineeta Srivastava4248fd42014-05-02 16:20:41 -070036
37 export EXTERNAL_STORAGE /storage/emulated/legacy
38 export EMULATED_STORAGE_SOURCE /mnt/shell/emulated
39 export EMULATED_STORAGE_TARGET /storage/emulated
40
41 # Support legacy paths
42 symlink /storage/emulated/legacy /sdcard
43 symlink /storage/emulated/legacy /mnt/sdcard
44 symlink /storage/emulated/legacy /storage/sdcard0
45 symlink /mnt/shell/emulated/0 /storage/emulated/legacy
46
47on fs
48 mount_all fstab.shamu
Vineeta Srivastava4248fd42014-05-02 16:20:41 -070049 setprop ro.crypto.fuse_sdcard true
50
51 # Keeping following partitions outside fstab file. As user may not have
52 # these partition flashed on the device. Failure to mount any partition in fstab file
53 # results in failure to launch late-start class.
Chris Friesbf09b4d2014-10-28 11:07:07 -050054 wait /dev/block/platform/msm_sdcc.1/by-name/oem
55 mount ext4 /dev/block/platform/msm_sdcc.1/by-name/oem /oem ro nosuid nodev context=u:object_r:oemfs:s0
Vineeta Srivastava4248fd42014-05-02 16:20:41 -070056
Chris Friesbf09b4d2014-10-28 11:07:07 -050057 mkdir /fsg 0755 root root
58 mount ext4 /dev/block/platform/msm_sdcc.1/by-name/mdm1m9kefs3 /fsg ro nosuid nodev barrier=0 context=u:object_r:fsg_file:s0
59
dcashman99edcf72014-08-27 14:27:03 -070060 restorecon_recursive /persist
61 mkdir /persist/data 0700 system system
Nick Kralevichc5234522014-09-25 13:56:55 -070062 mkdir /persist/data/sfs 0700 system system
63 mkdir /persist/data/tz 0700 system system
Eyob Tesfu53587722014-10-14 16:26:22 -050064 mkdir /persist/public 0755 system radio
65 mkdir /persist/public/hiddenmenu 0775 system radio
66 mkdir /persist/public/hiddenmenu/data 0775 system radio
Vineeta Srivastava4248fd42014-05-02 16:20:41 -070067
Naveen Ramaraj8bc93552014-05-20 15:09:15 -070068 # Enable rmnet data and aggregation
69 setprop persist.rmnet.mux enabled
70 setprop persist.rmnet.data.enable true
71 setprop persist.data.wda.enable true
72 setprop persist.data.df.agg.dl_pkt 10
73 setprop persist.data.df.agg.dl_size 4096
Chris Fries2a6a2172014-05-14 15:37:27 -050074
Vineeta Srivastava4248fd42014-05-02 16:20:41 -070075on post-fs-data
76 mkdir /data/tombstones 0771 system system
77 mkdir /tombstones/modem 0771 system system
78 mkdir /tombstones/lpass 0771 system system
79 mkdir /tombstones/wcnss 0771 system system
80 mkdir /tombstones/dsps 0771 system system
81
Chris Friesd6416212014-06-19 13:33:40 -050082 # SENSORS
83 #Create directory used by sensor subsystem(dsps)
84 mkdir /data/system/sensors
85 chmod 0775 /data/system/sensors
Chris Friesd6416212014-06-19 13:33:40 -050086
87 # AKM setting data
88 mkdir /data/misc/sensors
89 chmod 0775 /data/misc/sensors
90
91 mkdir /persist/sensors
92 chmod 0775 /persist/sensors
Vineeta Srivastava4248fd42014-05-02 16:20:41 -070093
Chris Friesc325a3e2014-08-15 15:09:10 -050094 mkdir /persist/mdm 0770 radio radio
95
Wenlong Che9e2d3fa2014-09-06 16:11:48 -050096 #Subsystem RAM-dumps
97 mkdir /data/ss-ram-dumps 0750 radio log
98 mkdir /data/ss-ram-dumps/bp-dumps 0750 radio log
99
Nick Kralevich44212f02014-09-30 16:36:12 -0700100 # rild files
101 mkdir /data/misc/audio_cutback 0770 radio audio
102
Vineeta Srivastava4248fd42014-05-02 16:20:41 -0700103on early-boot
104 # set RLIMIT_MEMLOCK to 64MB
105 setrlimit 8 67108864 67108864
Iliyan Malcheve53cb3c2014-11-06 13:09:53 -0800106
Vineeta Srivastava4248fd42014-05-02 16:20:41 -0700107 # Allow subsystem (modem etc) debugging
Iliyan Malcheve53cb3c2014-11-06 13:09:53 -0800108 # write /sys/module/subsystem_restart/parameters/enable_debug ${persist.sys.ssr.enable_debug}
109
Vineeta Srivastava4248fd42014-05-02 16:20:41 -0700110 write /sys/kernel/boot_adsp/boot 1
111
Chris Friesd077bb12014-06-17 11:24:22 -0500112 # Subsytem Restart
113 #venus
114 write /sys/bus/msm_subsys/devices/subsys0/restart_level "related"
Naveen Ramaraja7b16072014-07-24 08:41:21 -0700115 write /sys/bus/msm_subsys/devices/subsys0/recovery_policy "skip_restart"
Chris Friesd077bb12014-06-17 11:24:22 -0500116 #adsp
Iliyan Malchev26174072014-09-03 17:55:28 +0000117 write /sys/bus/msm_subsys/devices/subsys1/restart_level "related"
118 write /sys/bus/msm_subsys/devices/subsys1/recovery_policy "skip_restart"
Chris Friesd077bb12014-06-17 11:24:22 -0500119 #vpu
120 write /sys/bus/msm_subsys/devices/subsys2/restart_level "related"
Naveen Ramaraja7b16072014-07-24 08:41:21 -0700121 write /sys/bus/msm_subsys/devices/subsys2/recovery_policy "skip_restart"
Chris Friesd077bb12014-06-17 11:24:22 -0500122 #esoc0 (mdm)
123 write /sys/bus/msm_subsys/devices/subsys3/restart_level "related"
Naveen Ramaraja7b16072014-07-24 08:41:21 -0700124 write /sys/bus/msm_subsys/devices/subsys3/recovery_policy "skip_restart"
Chris Friesd077bb12014-06-17 11:24:22 -0500125
Vineeta Srivastava4248fd42014-05-02 16:20:41 -0700126on boot
127 insmod /system/lib/modules/adsprpc.ko
128 insmod /system/lib/modules/mhi.ko
Matthew Xie354446b2014-09-11 00:15:54 -0700129 chown bluetooth net_bt_stack /sys/module/bluetooth_power/parameters/power
130 chown bluetooth net_bt_stack /sys/class/rfkill/rfkill0/type
131 chown bluetooth net_bt_stack /sys/class/rfkill/rfkill0/state
132 chown bluetooth net_bt_stack /proc/bluetooth/sleep/proto
133 chown bluetooth net_bt_stack /proc/bluetooth/sleep/lpm
134 chown bluetooth net_bt_stack /proc/bluetooth/sleep/btwrite
135 chown bluetooth net_bt_stack /sys/module/hci_uart/parameters/ath_lpm
136 chown bluetooth net_bt_stack /sys/module/hci_uart/parameters/ath_btwrite
Vineeta Srivastava4248fd42014-05-02 16:20:41 -0700137 chown system system /sys/module/sco/parameters/disable_esco
Matthew Xie354446b2014-09-11 00:15:54 -0700138 chown bluetooth net_bt_stack /sys/module/hci_smd/parameters/hcismd_set
Vineeta Srivastava4248fd42014-05-02 16:20:41 -0700139 chmod 0660 /sys/module/bluetooth_power/parameters/power
140 chmod 0660 /sys/module/hci_smd/parameters/hcismd_set
141 chmod 0660 /sys/class/rfkill/rfkill0/state
142 chmod 0660 /proc/bluetooth/sleep/proto
Matthew Xie354446b2014-09-11 00:15:54 -0700143 chown bluetooth net_bt_stack /dev/ttyHS0
Vineeta Srivastava4248fd42014-05-02 16:20:41 -0700144 chmod 0660 /sys/module/hci_uart/parameters/ath_lpm
145 chmod 0660 /sys/module/hci_uart/parameters/ath_btwrite
146 chmod 0660 /dev/ttyHS0
Matthew Xie354446b2014-09-11 00:15:54 -0700147 chown bluetooth net_bt_stack /sys/devices/platform/msm_serial_hs.0/clock
Vineeta Srivastava4248fd42014-05-02 16:20:41 -0700148 chmod 0660 /sys/devices/platform/msm_serial_hs.0/clock
149
150 chmod 0660 /dev/ttyHS2
Matthew Xie354446b2014-09-11 00:15:54 -0700151 chown bluetooth net_bt_stack /dev/ttyHS2
Vineeta Srivastava4248fd42014-05-02 16:20:41 -0700152
153 #Create QMUX deamon socket area
154 mkdir /dev/socket/qmux_radio 0770 radio radio
155 chmod 2770 /dev/socket/qmux_radio
156 mkdir /dev/socket/qmux_audio 0770 media audio
157 chmod 2770 /dev/socket/qmux_audio
158 mkdir /dev/socket/qmux_bluetooth 0770 bluetooth bluetooth
159 chmod 2770 /dev/socket/qmux_bluetooth
160 mkdir /dev/socket/qmux_gps 0770 gps gps
161 chmod 2770 /dev/socket/qmux_gps
162
Omprakash Dhyade4f7ef692014-08-24 21:32:38 -0700163 mkdir /dev/socket/mpdecision 2775 root system
164 chmod 2775 /dev/socket/mpdecision
165
Vineeta Srivastava4248fd42014-05-02 16:20:41 -0700166 setprop wifi.interface wlan0
167
Praveen Chavand6f05e12014-05-12 18:09:05 -0700168 #readable symlinks for video nodes
169 mkdir /dev/video
170 symlink /dev/video32 /dev/video/venus_dec
171 symlink /dev/video33 /dev/video/venus_enc
Vineeta Srivastava4248fd42014-05-02 16:20:41 -0700172
173 setprop ro.telephony.call_ring.multiple false
174
Vineeta Srivastava407be712014-08-17 02:31:28 -0700175 chown system system /sys/bus/i2c/devices/1-004a/tsp
Vineeta Srivastava4248fd42014-05-02 16:20:41 -0700176
177 chmod 0444 /sys/devices/platform/msm_hsusb/gadget/usb_state
178
Mekala Natarajand0b2f412014-05-13 22:42:16 -0700179 # Allow QMUX daemon to assign port open wait time
180 chown radio radio /sys/devices/virtual/hsicctl/hsicctl0/modem_wait
181
182 #port-bridge
183 chmod 0660 /dev/smd0
184 chown system system /dev/smd0
185
186 #BT DUN port-bridge
187 chmod 0660 /dev/smd7
Matthew Xie354446b2014-09-11 00:15:54 -0700188 chown bluetooth net_bt_stack /dev/smd7
Mekala Natarajand0b2f412014-05-13 22:42:16 -0700189
Vineeta Srivastava4248fd42014-05-02 16:20:41 -0700190 #For bridgemgr daemon to inform the USB driver of the correct transport
191 chown radio radio /sys/class/android_usb/f_rmnet_smd_sdio/transport
192
Vineeta Srivastava4248fd42014-05-02 16:20:41 -0700193# Assign TCP buffer thresholds to be ceiling value of technology maximums
194# Increased technology maximums should be reflected here.
Rick Zhangac2c3b22014-08-28 11:17:18 -0700195 write /proc/sys/net/core/rmem_max 8388608
196 write /proc/sys/net/core/wmem_max 8388608
Vineeta Srivastava4248fd42014-05-02 16:20:41 -0700197
198 #To allow interfaces to get v6 address when tethering is enabled
199 write /proc/sys/net/ipv6/conf/rmnet0/accept_ra 2
200 write /proc/sys/net/ipv6/conf/rmnet1/accept_ra 2
201 write /proc/sys/net/ipv6/conf/rmnet2/accept_ra 2
202 write /proc/sys/net/ipv6/conf/rmnet3/accept_ra 2
203 write /proc/sys/net/ipv6/conf/rmnet4/accept_ra 2
204 write /proc/sys/net/ipv6/conf/rmnet5/accept_ra 2
205 write /proc/sys/net/ipv6/conf/rmnet6/accept_ra 2
206 write /proc/sys/net/ipv6/conf/rmnet7/accept_ra 2
207 write /proc/sys/net/ipv6/conf/rmnet_sdio0/accept_ra 2
208 write /proc/sys/net/ipv6/conf/rmnet_sdio1/accept_ra 2
209 write /proc/sys/net/ipv6/conf/rmnet_sdio2/accept_ra 2
210 write /proc/sys/net/ipv6/conf/rmnet_sdio3/accept_ra 2
211 write /proc/sys/net/ipv6/conf/rmnet_sdio4/accept_ra 2
212 write /proc/sys/net/ipv6/conf/rmnet_sdio5/accept_ra 2
213 write /proc/sys/net/ipv6/conf/rmnet_sdio6/accept_ra 2
214 write /proc/sys/net/ipv6/conf/rmnet_sdio7/accept_ra 2
215 write /proc/sys/net/ipv6/conf/rmnet_usb0/accept_ra 2
216 write /proc/sys/net/ipv6/conf/rmnet_usb1/accept_ra 2
217 write /proc/sys/net/ipv6/conf/rmnet_usb2/accept_ra 2
218 write /proc/sys/net/ipv6/conf/rmnet_usb3/accept_ra 2
219
220 # To prevent out of order acknowledgements from making
221 # connection tracking to treat them as not belonging to
222 # the connection they belong to.
223 # Otherwise, a weird issue happens in which some long
224 # connections on high-throughput links get dropped when
225 # an ack packet comes out of order
226 write /proc/sys/net/netfilter/nf_conntrack_tcp_be_liberal 1
227
Vineeta Srivastava4248fd42014-05-02 16:20:41 -0700228 # Set the console loglevel to < KERN_INFO
229 # Set the default message loglevel to KERN_INFO
230 # write /proc/sys/kernel/printk "6 6 1 7"
231
Chris Fries18d183c2014-05-14 17:40:55 -0500232 write /sys/bus/platform/drivers/xhci_msm_hsic/unbind msm_hsic_host
233 write /sys/module/rmnet_usb/parameters/mux_enabled 1
234 write /sys/module/rmnet_usb/parameters/no_fwd_rmnet_links 8
235 write /sys/module/rmnet_usb/parameters/no_rmnet_insts_per_dev 17
236 write /sys/module/rmnet_usb/parameters/rmnet_data_init 1
237 chown radio radio /sys/devices/virtual/hsicctl/hsicctl0/modem_wait
238
Chris Friescce79772014-06-17 12:19:52 -0500239 # Audio DSP permissions
240 chown media media /dev/ttyHS3
241 chown media media /sys/devices/c55_ctrl/gpio_ap_int/edge
242 chown media media /sys/devices/c55_ctrl/gpio_ap_int/value
243 chown media media /sys/devices/c55_ctrl/gpio_c55_int/value
244 chown media media /sys/devices/c55_ctrl/gpio_core/value
245 chown media media /sys/devices/c55_ctrl/gpio_reset/value
Chris Friescce79772014-06-17 12:19:52 -0500246
Naveen Ramarajfc5da882014-06-16 12:52:42 -0700247# subsystem ramdump collection
Chris Fries434402f2014-09-21 16:51:07 -0500248on property:persist.sys.qc.sub.rdump.on=*
249 write /sys/module/subsystem_restart/parameters/enable_ramdumps ${persist.sys.qc.sub.rdump.on}
Naveen Ramarajfc5da882014-06-16 12:52:42 -0700250
Vladimir Karpovich12633072014-09-24 16:07:49 -0500251# permissions for CapSense firmware update
252 chown radio radio /sys/devices/cycapsense_prog.1/cycapsense_fw
253 chmod 0220 /sys/devices/cycapsense_prog.1/cycapsense_fw
254
Vineeta Srivastava4248fd42014-05-02 16:20:41 -0700255# msm specific files that need to be created on /data
256on post-fs-data
257 # we will remap this as /mnt/sdcard with the sdcard fuse tool
258 mkdir /data/media 0770 media_rw media_rw
259 chown media_rw media_rw /data/media
260
261 mkdir /data/misc/bluetooth 0770 bluetooth bluetooth
262
263 # Create the directories used by the Wireless subsystem
264 mkdir /data/misc/wifi 0770 wifi wifi
265 mkdir /data/misc/wifi/sockets 0770 wifi wifi
266 mkdir /data/misc/wifi/wpa_supplicant 0770 wifi wifi
267 mkdir /data/misc/dhcp 0770 dhcp dhcp
268 chown dhcp dhcp /data/misc/dhcp
269
270 # Create the directories used by CnE subsystem
271 mkdir /data/connectivity 0771 system system
272 chown system system /data/connectivity
273
274 mkdir /data/connectivity/nsrm 0771 system system
275 chown system system /data/connectivity/nsrm
276
277 # Create directory used by audio subsystem
278 mkdir /data/misc/audio 0770 audio audio
279
280 # Mounting of persist is moved to 'on emmc-fs' and 'on fs' sections
281 # We chown/chmod /persist again so because mount is run as root + defaults
282 chown system system /persist
283 chmod 0771 /persist
284 chmod 0664 /sys/devices/platform/msm_sdcc.1/polling
285 chmod 0664 /sys/devices/platform/msm_sdcc.2/polling
286 chmod 0664 /sys/devices/platform/msm_sdcc.3/polling
287 chmod 0664 /sys/devices/platform/msm_sdcc.4/polling
288
289 # Chown polling nodes as needed from UI running on system server
290 chown system system /sys/devices/platform/msm_sdcc.1/polling
291 chown system system /sys/devices/platform/msm_sdcc.2/polling
292 chown system system /sys/devices/platform/msm_sdcc.3/polling
293 chown system system /sys/devices/platform/msm_sdcc.4/polling
294
295 #Create the symlink to qcn wpa_supplicant folder for ar6000 wpa_supplicant
296 mkdir /data/system 0775 system system
297 #symlink /data/misc/wifi/wpa_supplicant /data/system/wpa_supplicant
298
Kevin Tangb994ecb2014-12-08 12:54:29 -0800299 #Create directories for gpsone_daemon services
300 mkdir /data/misc/gpsone_d 0770 system gps
301
302 #Create directories for QuIPS
303 mkdir /data/misc/quipc 0770 gps system
304
Vineeta Srivastava4248fd42014-05-02 16:20:41 -0700305 #Create directories for Location services
306 mkdir /data/misc/location 0770 gps gps
307 mkdir /data/misc/location/mq 0770 gps gps
308 mkdir /data/misc/location/xtwifi 0770 gps gps
309
310 #Create directory from IMS services
311 mkdir /data/shared 0755
312 chown system system /data/shared
313
314 #Create directory for FOTA
315 mkdir /data/fota 0771
316 chown system system /data/fota
317
318 #Create directory for hostapd
319 mkdir /data/hostapd 0770 system wifi
320
321 # Create /data/time folder for time-services
322 mkdir /data/time/ 0700 system system
323
324 mkdir /data/audio/ 0770 media audio
325
326 setprop vold.post_fs_data_done 1
327
328 #Create a folder for SRS to be able to create a usercfg file
329 mkdir /data/data/media 0770 media media
330
Martijn Coenena32fdb32014-08-27 22:22:42 -0700331 # NFC local data and nfcee xml storage
332 mkdir /data/nfc 0770 nfc nfc
333 mkdir /data/nfc/param 0770 nfc nfc
334
Nick Kralevich1889bc92014-09-18 12:45:43 -0700335 # Audio DSP permissions
336 mkdir /data/adspd 0770 media media
337 mkdir /data/adspd/1 0770 media media
338
Vineeta Srivastava4248fd42014-05-02 16:20:41 -0700339on property:init.svc.wpa_supplicant=stopped
340 stop dhcpcd
341
342on property:bluetooth.isEnabled=true
343 start btwlancoex
344 write /sys/class/bluetooth/hci0/idle_timeout 7000
345
Vineeta Srivastava4248fd42014-05-02 16:20:41 -0700346on property:ro.bluetooth.ftm_enabled=true
347 start ftmd
348
349on property:persist.env.fastdorm.enabled=true
350 setprop persist.radio.data_no_toggle 1
351
dcashman09b614e2014-07-16 16:19:43 -0700352service irsc_util /system/bin/irsc_util "/etc/sec_config"
Vineeta Srivastava4248fd42014-05-02 16:20:41 -0700353 class main
354 user root
355 oneshot
356
Wenlong Che9e2d3fa2014-09-06 16:11:48 -0500357service mdm_helper /system/bin/mdm_helper
358 user root
359 group root system radio
360 class core
361 onrestart setprop ro.service.mdm_helper_restarted "true"
362
Chris Fries4c7cbc32014-08-13 09:33:28 -0500363service tcmd /system/bin/tcmd_mini
364 class core
365 user radio
366 group radio net_raw net_admin
367 disabled
368
Vineeta Srivastava4248fd42014-05-02 16:20:41 -0700369service bridgemgrd /system/bin/bridgemgrd
370 class late_start
371 user radio
Chris Fries18d183c2014-05-14 17:40:55 -0500372 group radio
Vineeta Srivastava4248fd42014-05-02 16:20:41 -0700373
Vineeta Srivastava4248fd42014-05-02 16:20:41 -0700374# QMUX must be in multiple groups to support external process connections
375service qmuxd /system/bin/qmuxd
376 class main
Mekala Natarajane3f0b482014-08-06 14:59:58 -0700377 user root
Chris Fries18d183c2014-05-14 17:40:55 -0500378 group radio audio bluetooth gps
Vineeta Srivastava4248fd42014-05-02 16:20:41 -0700379
380service netmgrd /system/bin/netmgrd
381 class main
Mekala Natarajand0b2f412014-05-13 22:42:16 -0700382 group radio
Vineeta Srivastava4248fd42014-05-02 16:20:41 -0700383
Vineeta Srivastava4248fd42014-05-02 16:20:41 -0700384service sensors /system/bin/sensors.qcom
Vineeta Srivastava521f3752014-09-19 13:05:09 -0700385 class core
Vineeta Srivastava4248fd42014-05-02 16:20:41 -0700386 user root
387 group root
Vineeta Srivastava4248fd42014-05-02 16:20:41 -0700388
389on property:ro.use_data_netmgrd=false
390 # netmgr not supported on specific target
391 stop netmgrd
392
393# Adjust socket buffer to enlarge TCP receive window for high bandwidth
394# but only if ro.data.large_tcp_window_size property is set.
395on property:ro.data.large_tcp_window_size=true
396 write /proc/sys/net/ipv4/tcp_adv_win_scale 2
397
Vineeta Srivastava4248fd42014-05-02 16:20:41 -0700398service p2p_supplicant /system/bin/wpa_supplicant \
Vineeta Srivastava1d772442014-07-16 15:06:06 -0700399 -iwlan0 -Dnl80211 -c/data/misc/wifi/wpa_supplicant.conf \
Santhosh Gillella7784ce92014-06-10 00:06:48 -0500400 -I/system/etc/wifi/p2p_supplicant_overlay.conf \
Dmitry Shmidt4f7130b2014-09-22 15:59:24 -0700401 -puse_p2p_group_interface=1p2p_device=1 \
402 -m/data/misc/wifi/p2p_supplicant.conf \
Vineeta Srivastava4248fd42014-05-02 16:20:41 -0700403 -e/data/misc/wifi/entropy.bin -g@android:wpa_wlan0
404# we will start as root and wpa_supplicant will switch to user wifi
405# after setting up the capabilities required for WEXT
406# user wifi
407# group wifi inet keystore
408 class main
409 socket wpa_wlan0 dgram 660 wifi wifi
410 disabled
411 oneshot
412
413service wpa_supplicant /system/bin/wpa_supplicant \
414 -iwlan0 -Dnl80211 -c/data/misc/wifi/wpa_supplicant.conf \
415 -I/system/etc/wifi/wpa_supplicant_overlay.conf \
Vineeta Srivastava4248fd42014-05-02 16:20:41 -0700416 -e/data/misc/wifi/entropy.bin -g@android:wpa_wlan0
417 # we will start as root and wpa_supplicant will switch to user wifi
418 # after setting up the capabilities required for WEXT
419 # user wifi
420 # group wifi inet keystore
421 class main
422 socket wpa_wlan0 dgram 660 wifi wifi
423 disabled
424 oneshot
425
426service dhcpcd_wlan0 /system/bin/dhcpcd -ABKLG
427 class late_start
428 disabled
429 oneshot
430
431service dhcpcd_p2p /system/bin/dhcpcd -ABKLG
432 class late_start
433 disabled
434 oneshot
435
436service iprenew_wlan0 /system/bin/dhcpcd -n
437 class late_start
438 disabled
439 oneshot
440
441service iprenew_p2p /system/bin/dhcpcd -n
442 class late_start
443 disabled
444 oneshot
445
Vineeta Srivastava4248fd42014-05-02 16:20:41 -0700446service dhcpcd_bt-pan /system/bin/dhcpcd -BKLG
447 class late_start
448 disabled
449 oneshot
450
451service iprenew_bt-pan /system/bin/dhcpcd -n
452 class late_start
453 disabled
454 oneshot
455
456service dhcpcd_bnep0 /system/bin/dhcpcd -BKLG
457 disabled
458 oneshot
459
460service dhcpcd_bnep1 /system/bin/dhcpcd -BKLG
461 disabled
462 oneshot
463
464service dhcpcd_bnep2 /system/bin/dhcpcd -BKLG
465 disabled
466 oneshot
467
468service dhcpcd_bnep3 /system/bin/dhcpcd -BKLG
469 disabled
470 oneshot
471
472service dhcpcd_bnep4 /system/bin/dhcpcd -BKLG
473 disabled
474 oneshot
475
Vineeta Srivastavaa79f4372014-07-17 14:16:53 -0700476service dhcpcd_eth0 /system/bin/dhcpcd -aABDKL
477 class late_start
478 disabled
479 oneshot
480
481service iprenew_eth0 /system/bin/dhcpcd -n
482 class late_start
483 disabled
484 oneshot
485
Chris Friescce79772014-06-17 12:19:52 -0500486service adspd /system/bin/adspd /dev/ttyHS3
487 class late_start
Vineeta Srivastava59afbb62014-10-02 19:31:10 -0700488 socket adspdsock stream 0660 media media
Chris Friescce79772014-06-17 12:19:52 -0500489 user media
490 group media input
Vineeta Srivastava4248fd42014-05-02 16:20:41 -0700491
Vineeta Srivastava4248fd42014-05-02 16:20:41 -0700492on property:sys.boot_completed=1
493 start qcom-post-boot
494
Vineeta Srivastavab04569c2014-07-18 00:48:20 -0700495on property:ro.debuggable=1
496 start ss_ramdump
Naveen Ramarajfc5da882014-06-16 12:52:42 -0700497
Vineeta Srivastava4248fd42014-05-02 16:20:41 -0700498on property:ro.data.large_tcp_window_size=true
499 # Adjust socket buffer to enlarge TCP receive window for high bandwidth (e.g. DO-RevB)
500 write /proc/sys/net/ipv4/tcp_adv_win_scale 2
501
Vineeta Srivastava4248fd42014-05-02 16:20:41 -0700502# virtual sdcard daemon running as media_rw (1023)
503service sdcard /system/bin/sdcard -u 1023 -g 1023 -l /data/media /mnt/shell/emulated
504 class late_start
505
Andrew Wheeleree367102014-06-18 12:09:06 -0500506on charger
507 write /sys/class/leds/lcd-backlight/brightness 100
Chris Fries53fe8d82014-09-04 23:26:14 -0500508 mount ext4 /dev/block/platform/msm_sdcc.1/by-name/system /system ro barrier=1
509 start thermal-engine
Andrew Wheeleree367102014-06-18 12:09:06 -0500510
Andrew Wheelerb99beed2014-06-18 12:06:39 -0500511service charger /charger
512 class charger
Chris Fries09f79972014-10-21 13:24:22 -0500513 group log
Nick Kralevich183430b2014-09-05 18:10:41 -0700514 seclabel u:r:healthd:s0
Vineeta Srivastava4248fd42014-05-02 16:20:41 -0700515
Vineeta Srivastava4248fd42014-05-02 16:20:41 -0700516# Allow usb charging to be disabled peristently
517on property:persist.usb.chgdisabled=1
518 write /sys/class/power_supply/battery/charging_enabled 0
519
520on property:persist.usb.chgdisabled=0
521 write /sys/class/power_supply/battery/charging_enabled 1
522
Vineeta Srivastava4248fd42014-05-02 16:20:41 -0700523service qseecomd /system/bin/qseecomd
Vineeta Srivastava0823a4f2014-06-03 12:05:36 -0700524 class core
525 user root
526 group root
Vineeta Srivastava4248fd42014-05-02 16:20:41 -0700527
Iliyan Malchev20ecf232014-08-05 11:09:50 -0700528service mpdecision /system/bin/mpdecision --avg_comp
Ajay Dudani67adc1a2014-08-07 16:32:54 -0700529 class main
Vineeta Srivastava4248fd42014-05-02 16:20:41 -0700530 user root
Vineeta Srivastava4248fd42014-05-02 16:20:41 -0700531
Naveen Ramaraj6d545252014-06-26 16:29:11 -0700532service ss_ramdump /system/bin/subsystem_ramdump
Naveen Ramarajfc5da882014-06-16 12:52:42 -0700533 class main
534 user root
535 group root
536 disabled
537
Vineeta Srivastava4248fd42014-05-02 16:20:41 -0700538service thermal-engine /system/bin/thermal-engine
539 class main
540 user root
541 group root
542
Vineeta Srivastava4248fd42014-05-02 16:20:41 -0700543service time_daemon /system/bin/time_daemon
544 class late_start
545 user root
546 group root
547
Vineeta Srivastava4248fd42014-05-02 16:20:41 -0700548on property:init.svc.bootanim=stopped
549 start usf-post-boot
550
Vineeta Srivastava4248fd42014-05-02 16:20:41 -0700551service qcamerasvr /system/bin/mm-qcamera-daemon
552 class late_start
553 user camera
554 group camera system inet input graphics
555
Liejun Tao1dff5fd2014-07-09 17:19:14 -0500556service bdAddrLoader /system/bin/bdAddrLoader -p ro.boot.btmacaddr -s -x
557 class main
558 user bluetooth
559 group system bluetooth
560 oneshot
561
Vineeta Srivastava4248fd42014-05-02 16:20:41 -0700562on property:vold.decrypt=trigger_reset_main
563 stop gnss-svcd
564
565# When QCA1530 is known not to present
566on property:persist.qca1530=no
567 stop gnss-svcd
568 stop gnss-detect
569 write /sys/kernel/qca1530/chip_state 0
570
571on property:init.svc.surfaceflinger=stopped
572 stop ppd
Chris Fries5e178bd2014-06-25 08:26:14 -0500573
dcashman09b614e2014-07-16 16:19:43 -0700574service mmi-touch-sh /system/bin/sh /init.mmi.touch.sh atmel
Konstantin Makariev0927af32014-10-02 09:58:00 -0500575 class main
Chris Fries5e178bd2014-06-25 08:26:14 -0500576 user root
577 oneshot
Vineeta Srivastava5d6d1102014-07-02 12:17:22 -0700578
579# bugreport is triggered by holding down volume down, volume up and power
580service bugreport /system/bin/dumpstate -d -p -B \
581 -o /data/data/com.android.shell/files/bugreports/bugreport
582 class main
583 disabled
584 oneshot
585 keycodes 114 115 116
Chris Fries48778202014-09-17 20:56:42 -0500586
587service mdm_helper_proxy /system/bin/mdm_helper_proxy
588 class core
589 user system
590 group system
591 disabled
592
593# Stop mdm_helper_proxy in case of shutdown
594on property:sys.shutdown.requested=*
595 stop mdm_helper_proxy
596
597# Start mdm_helper_proxy after RIL.
598on property:ro.mdm_helper_proxy_req=true
599 start mdm_helper_proxy
600
601on property:init.svc.ril-daemon=running
602 setprop ro.mdm_helper_proxy_req true
Uma Maheswari Ramalingamb27864f2014-09-27 11:54:28 -0700603
604service atfwd /system/bin/ATFWD-daemon
605 class late_start
606 user system
607 group system radio