aboutsummaryrefslogtreecommitdiffstats
path: root/rootdir/init.target.rc
blob: f7fbb8f175c271a4ff1cae14b2a38610a51e5393 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
############################
on init
############################

# Vibetonz
    export VIBE_PIPE_PATH /dev/pipes
    mkdir /dev/pipes 0771 system system

############################
on post-fs-data
############################

# Qualcomm Modem requirement
    mkdir /data/cp_log
    chmod 0775 /data/cp_log
    chown system radio /data/cp_log
    mkdir /dev/block/modem
    symlink /dev/block/platform/dw_mmc/by-name/m9kefs1 /dev/block/modem/m9kefs1
    symlink /dev/block/platform/dw_mmc/by-name/m9kefs2 /dev/block/modem/m9kefs2
    symlink /dev/block/platform/dw_mmc/by-name/m9kefs3 /dev/block/modem/m9kefs3
    symlink /dev/block/platform/dw_mmc/by-name/ /dev/block/modem/dump_path
    chown system radio /dev/block/modem/m9kefs1
    chmod 0775 /dev/block/modem/m9kefs1
    chown system radio /dev/block/modem/m9kefs2
    chmod 0775 /dev/block/modem/m9kefs2
    chown system radio /dev/block/modem/m9kefs3
    chmod 0775 /dev/block/modem/m9kefs3
    chown system radio /dev/block/modem/dump_path
    chmod 0775 /dev/block/modem/dump_path
    mkdir /firmware 0771 system system
    chown system system /tombstones
    chmod 0775 /tombstones
    mkdir /tombstones/modem 0775 system system
    mkdir /tombstones/lpass 0775 system system
    mkdir /tombstones/wcnss 0775 system system
    mkdir /tombstones/dsps 0775 system system
    rmdir /tombstones/qcks
    mkdir /tombstones/qcks 771 system system
    rmdir /tombstones/efs
    mkdir /tombstones/efs 771 system system
    chown system radio /dev/block/platform/dw_mmc/by-name
    chmod 0775 /dev/block/platform/dw_mmc/by-name

# Qualcomm RIL
# Create QMUX deamon socket area
    mkdir /dev/socket/qmux_radio 0777 radio radio
    chmod 2777 /dev/socket/qmux_radio
    mkdir /dev/socket/qmux_audio 0777 media audio
    chmod 2777 /dev/socket/qmux_audio
    mkdir /dev/socket/qmux_gps 0777 gps gps
    chmod 2777 /dev/socket/qmux_gps
    chmod 660 /dev/socket/qmux_gps/qmux_client_socket
    chmod 660 /dev/socket/qmux_gps/qmux_connect_socket

# Allow QMUX daemon to assign port open wait time
    chown radio radio /sys/devices/virtual/hsicctl/hsicctl0/modem_wait
    chmod 666 /sys/devices/virtual/hsicctl/hsicctl0/modem_wait

# Waketime fot fast dormancy
    chown system radio /sys/devices/platform/mdm_hsic_pm0/waketime
    chmod 0666 /sys/devices/platform/mdm_hsic_pm0/waketime
    chown radio radio /sys/class/sec/switch/uart_sel
    chown radio radio /sys/power/wake_lock
    chown radio radio /sys/power/wake_unlock
    chown radio radio /sys/devices/virtual/smdpkt/smdcntl0/open_timeout
    chown radio radio /sys/module/f_rmnet/parameters/rmnet_ctl_ch
    chown radio radio /sys/module/rmnet/parameters/rmnet_ctl_ch
    chown radio radio /sys/class/sec/slot_switch/slot_sel
    chown radio radio /sys/block/mmcblk0/device/name
    chown radio radio /sys/block/mmcblk0/device/cid
    chown radio radio /sys/module/rmnet_usb/parameters/dump_ctrl_msg
    chown radio radio /sys/class/sec/sec_key/hall_irq_ctrl
    chown radio radio /sys/devices/virtual/misc/multipdp/waketime
    chmod 666 /sys/power/wake_unlock
    chmod 666 /sys/class/sec/switch/uart_sel
    chmod 666 /sys/block/mmcblk0/device/name
    chmod 666 /sys/block/mmcblk0/device/cid
    chmod 666 /sys/power/wake_lock
    chmod 666 /sys/devices/virtual/smdpkt/smdcntl0/open_timeout
    chmod 666 /sys/module/f_rmnet/parameters/rmnet_ctl_ch
    chmod 666 /sys/module/rmnet/parameters/rmnet_ctl_ch
    chmod 666 /sys/class/sec/slot_switch/slot_sel
    chmod 666 /sys/module/rmnet_usb/parameters/dump_ctrl_msg
    chmod 666 /sys/class/sec/sec_key/hall_irq_ctrl
    chmod 666 /sys/devices/virtual/misc/multipdp/waketime

# MTP device permission
    chmod 0666 /dev/usb_mtp_gadget
    chown system mtp /dev/usb_mtp_gadget

# Permissions for Gscaler log level
    chmod 0666 /sys/module/gsc/parameters/gsc_dbg

# OTG_TEST
    chown system radio /sys/class/host_notify/usb_otg/booster
    chmod 0666 /sys/class/host_notify/usb_otg/booster

# Input Events
    chown system input /sys/class/input/input2/enable
    chown system input /sys/class/input/input2/poll_delay
    chown system input /sys/class/input/input2/delay
    chown system input /sys/class/input/input3/enable
    chown system input /sys/class/input/input3/poll_delay
    chown system input /sys/class/input/input3/delay
    chown system input /sys/class/input/input4/enable
    chown system input /sys/class/input/input4/poll_delay
    chown system input /sys/class/input/input4/delay
    chown system input /sys/class/input/input5/enable
    chown system input /sys/class/input/input5/poll_delay
    chown system input /sys/class/input/input5/delay
    chown system input /sys/class/input/input6/enable
    chown system input /sys/class/input/input6/poll_delay
    chown system input /sys/class/input/input6/delay
    chown system input /sys/class/input/input7/enable
    chown system input /sys/class/input/input7/poll_delay
    chown system input /sys/class/input/input7/delay
    chown system input /sys/class/input/input8/enable
    chown system input /sys/class/input/input8/poll_delay
    chown system input /sys/class/input/input8/delay
    chown system input /sys/class/input/input9/enable
    chown system input /sys/class/input/input9/poll_delay
    chown system input /sys/class/input/input9/delay

# Accelerometer_sensor
    chown system radio /dev/accelerometer
    chown system radio /sys/class/sensors/accelerometer_sensor
    chown system radio /sys/class/sensors/accelerometer_sensor/raw_data
    chown system radio /sys/class/sensors/accelerometer_sensor/calibration
    chown system radio /sys/class/sensors/accelerometer_sensor/reactive_alert
    chown system radio /sys/class/sensors/accelerometer_sensor/vendor
    chown system radio /sys/class/sensors/accelerometer_sensor/name

# Proximity_sensor
    chown system radio /sys/class/sensors/proximity_sensor/state
    chown system radio /sys/class/sensors/proximity_sensor/prox_avg
    chown system radio /sys/class/sensors/proximity_sensor/prox_cal
    chown system radio /sys/class/sensors/proximity_sensor/vendor
    chown system radio /sys/class/sensors/proximity_sensor/name
    chown system radio /sys/class/sensors/proximity_sensor/prox_thresh

# Light_sensor
    chown system radio /sys/class/sensors/light_sensor/lux
    chown system radio /sys/class/sensors/light_sensor/raw_data
    chown system radio /sys/class/sensors/light_sensor/vendor
    chown system radio /sys/class/sensors/light_sensor/name

# Grip_sensor
    chown system radio /sys/class/sensors/grip_sensor/raw_data
    chown system radio /sys/class/sensors/grip_sensor/threshold
    chown system radio /sys/class/sensors/grip_sensor/calibration
    chown system radio /sys/class/sensors/grip_sensor/onoff
    chown system radio /sys/class/sensors/grip_sensor/vendor
    chown system radio /sys/class/sensors/grip_sensor/name

# Magnetic Sensor
    chmod 0777 /dev/i2c-10
    chown system radio /sys/class/sensors/magnetic_sensor/raw_data
    chown system radio /sys/class/sensors/magnetic_sensor/selftest
    chown system radio /sys/class/sensors/magnetic_sensor/vendor
    chown system radio /sys/class/sensors/magnetic_sensor/name
    chown system input /sys/class/input/input3/filter_enable
    chown system input /sys/class/input/input3/filter_len
    chown system input /sys/class/input/input3/data
    chown system input /sys/class/input/input3/status
    chown system input /sys/class/input/input3/wake
    chown system input /sys/class/input/input3/position
    chown system input /sys/class/input/input4/filter_enable
    chown system input /sys/class/input/input4/filter_len
    chown system input /sys/class/input/input4/data
    chown system input /sys/class/input/input4/status
    chown system input /sys/class/input/input4/wake
    chown system input /sys/class/input/input4/position
    chown compass input /sys/class/input/input4/offsets
    chown compass input /sys/class/input/input4/dynamic_matrix
    chown system input /sys/class/input/input4/threshold
    chown system input /sys/class/input/input4/distortion
    chown system input /sys/class/input/input4/shape
    write /sys/class/input/input4/distortion "350 50 15"
    write /sys/class/input/input4/static_matrix "10602 -980 25 -830 10470 -188 2753 1005 9019"
    chown system input /sys/class/input/input5/filter_enable
    chown system input /sys/class/input/input5/filter_len
    chown system input /sys/class/input/input5/data
    chown system input /sys/class/input/input5/status
    chown system input /sys/class/input/input5/wake
    chown system input /sys/class/input/input5/position
    chown compass input /sys/class/input/input5/offsets
    chown compass input /sys/class/input/input5/dynamic_matrix
    chown system input /sys/class/input/input5/threshold
    chown system input /sys/class/input/input5/distortion
    chown system input /sys/class/input/input5/shape
    write /sys/class/input/input5/distortion "350 50 15"
    write /sys/class/input/input5/static_matrix "10602 -980 25 -830 10470 -188 2753 1005 9019"
    chown system input /sys/class/input/input6/filter_enable
    chown system input /sys/class/input/input6/filter_len
    chown system input /sys/class/input/input6/data
    chown system input /sys/class/input/input6/status
    chown system input /sys/class/input/input6/wake
    chown system input /sys/class/input/input6/position
    chown compass input /sys/class/input/input6/offsets
    chown compass input /sys/class/input/input6/dynamic_matrix
    chown system input /sys/class/input/input6/threshold
    chown system input /sys/class/input/input6/distortion
    chown system input /sys/class/input/input6/shape
    write /sys/class/input/input6/distortion "350 50 15"
    write /sys/class/input/input6/static_matrix "10602 -980 25 -830 10470 -188 2753 1005 9019"
    chown compass input /sys/class/input/input7/offsets
    chown compass input /sys/class/input/input7/dynamic_matrix
    chown system input /sys/class/input/input7/threshold
    chown system input /sys/class/input/input7/distortion
    chown system input /sys/class/input/input7/shape
    write /sys/class/input/input7/distortion "350 50 15"
    write /sys/class/input/input7/static_matrix "10602 -980 25 -830 10470 -188 2753 1005 9019"

# GPIO DVS
    chown radio system /sys/class/secgpio_check/secgpio_check_all/check_init_detail
    chown radio system /sys/class/secgpio_check/secgpio_check_all/check_sleep_detail
    chown radio system /sys/class/secgpio_check/secgpio_check_all/gpioinfo_check
    chown radio system /sys/class/secgpio_check/secgpio_check_all/gpioinit_check
    chown radio system /sys/class/secgpio_check/secgpio_check_all/gpiosleep_check

# GPS
    chown root system /dev/ttySAC1
    chmod 0660 /dev/ttySAC1
    chown root system /sys/class/sec/gps/GPS_PWR_EN/value
    chmod 0664 /sys/class/sec/gps/GPS_PWR_EN/value
    mkdir /data/system 0771 system system
    chown system system /data/system
    mkdir /data/system/gps 0771 system system
    chown system system /data/system/gps
    mkdir /vendor/etc 0771 system system
    chown system system /vendor/etc
    rm /data/system/gps/gps_started
    rm /data/system/gps/glonass_started
    rm /data/system/gps/beidou_started
    rm /data/system/gps/smd_started
    rm /data/system/gps/sv_cno.info
# Create directories for gpsone_daemon services
    mkdir /data/misc/gpsone_d 0770 system gps
# Create directories for QuIPS
    mkdir /data/misc/quipc 0770 system gps
# 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

# Audio
    mkdir /data/local/audio 0775 media audio
    chown media audio /data/local/audio

# Camera
    chown radio system /sys/devices/platform/samsung-pd.5/s3c-fimc.2/range_mode
    chmod 0660 /sys/devices/platform/samsung-pd.5/s3c-fimc.2/range_mode

# Permissions for Touchkey
    chown system radio /sys/class/sec/sec_touchkey/touchkey_dummy_btn1
    chown system radio /sys/class/sec/sec_touchkey/touchkey_dummy_btn3
    chown system radio /sys/class/sec/sec_touchkey/touchkey_dummy_btn5
    chown system radio /sys/class/sec/sec_touchkey/extra_button_event
    chown system radio /sys/class/sec/sec_touchkey/touchkey_button_all
    chown system radio /sys/class/sec/sec_touchkey/touchkey_threshold
    chmod 0660 /sys/class/sec/sec_touchkey/extra_button_event

# Permissions for Hall IC
    chown system radio /sys/class/sec/sec_key/hall_detect

# Battery node
    chown system radio /sys/class/power_supply/battery/batt_error_test
    chown system radio /sys/class/power_supply/battery/batt_slate_mode
    chown system radio /sys/class/power_supply/battery/batt_temp_adc_cal
    chown system radio /sys/class/power_supply/battery/batt_vf_adc
    chown system radio /sys/class/power_supply/battery/batt_vol_adc
    chown system radio /sys/class/power_supply/battery/batt_vol_adc_aver
    chown system radio /sys/class/power_supply/battery/batt_vol_adc_cal
    chown system radio /sys/class/power_supply/battery/batt_vol_aver
    chown system radio /sys/class/power_supply/battery/factory_mode
    chown system radio /sys/class/power_supply/battery/siop_activated
    chown system radio /sys/class/power_supply/battery/siop_level
    chown system radio /sys/class/power_supply/battery/update

# IR_LED
    chown system system /sys/class/sec/sec_ir/ir_send
    chown system system /sys/class/sec/sec_ir/ir_send_result

# SELinux
    restorecon_recursive /data/system/gps
    restorecon /data/system/yas*
    restorecon /data/.cid.info
    restorecon_recursive /efs
    restorecon_recursive /tombstones/qcks

############################
on boot
############################

# Changing scheduler to noop during boot
    write /sys/block/mmcblk0/queue/scheduler noop
    write /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor performance

# Changing scheduler to cfq and reseting cpu min freq to -1 after boot complete
on property:sys.boot_completed=1
    write /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor pegasusq
    write /sys/block/mmcblk0/queue/scheduler cfq
    write /sys/power/cpufreq_min_limit -1

# epen
    chown system system /sys/class/sec/sec_epen/epen_saving_mode
    chmod 660 /sys/class/sec/sec_epen/epen_saving_mode

# 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

# MACloader
    rm /data/.cid.info
    rm /efs/wifi/.mac.info
    copy /efs/wifi/.mac.cob /efs/wifi/.mac.info
    chown system system /efs/wifi/.mac.cob
    chown system system /efs/wifi/.mac.info
    chmod 0666 /efs/wifi/.mac.cob
    chmod 0666 /efs/wifi/.mac.info
    start macloader
    write /data/.cid.info murata
    chown system root /data/.cid.info
    chmod 0666 /data/.cid.info

############################
# Services
############################

service geomagneticd /system/bin/geomagneticd
    class main
    user compass
    group system input
    seclabel u:r:geomagneticd:s0

service gpsd /system/bin/gpsd -c /system/etc/gps.xml
    class main
    user gps
    group system inet net_raw
    ioprio be 0
    seclabel u:r:gpsd:s0

service orientationd /system/bin/orientationd
    class main
    user compass
    group input
    seclabel u:r:orientationd:s0

service qc_kickstart /system/bin/qcks s
    class core
    user root
    group radio cache inet misc audio sdcard_rw log
    seclabel u:r:qc_kickstart:s0

service qmiproxy /system/bin/qmiproxy
    class main
    user radio
    group radio gps
    seclabel u:r:qmiproxy:s0

service qmuxd /system/bin/qmuxd
    class main
    user root
    group radio log audio bluetooth gps log
    seclabel u:r:qmuxd:s0