summaryrefslogtreecommitdiffstats
path: root/rootdir/init.smdk4210.rc
blob: 4fe417720cdcddc0ff97796cdf1b084a3870b65d (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
370
371
372
373
374
375
376
377
378
import init.smdk4210.usb.rc

on init
    mkdir /efs 0771 radio system
    mkdir /preload 0771 system system
    mkdir /mnt 0775 root system
    mkdir /mnt/.lfs 0755 root root

    # for backwards compatibility
    symlink /sdcard /mnt/sdcard
    symlink /sdcard /storage/sdcard

# Disable CFQ slice idle delay
    write /sys/block/mmcblk0/queue/iosched/slice_idle 0

on fs
    mount_all /fstab.smdk4210
    swapon_all /fstab.smdk4210

    mkdir /efs/bluetooth
    mkdir /efs/wifi
    chown radio system /efs/bluetooth
    chown radio system /efs/wifi
    chmod 0775 /efs/bluetooth
    chmod 0775 /efs/wifi

    mkdir /data/misc/vpn/profiles 0770 system system
    mkdir /data/misc/radio 0775 radio system
    mkdir /data/radio 0770 radio radio
    chmod 0770 /data/misc/wifi 

on charger

# CPU Frequency Governor
    write /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor powersave

# EHCI runtime enable for LPA
    write /sys/devices/platform/s5p-ehci/power/control auto

on post-fs-data
# insmod kernel modules
    insmod /system/lib/modules/j4fs.ko
    insmod /system/lib/modules/Si4709_driver.ko
    
# mount param.lfs
    mount j4fs /dev/block/mmcblk0p4 /mnt/.lfs

# MDNS
    socket mdns stream 0660 root system
    

    # give system access to wpa_supplicant.conf for backup and restore
    mkdir /data/misc/wifi 0770 wifi wifi
    chmod 0770 /data/misc/wifi
    chmod 0660 /data/misc/wifi/wpa_supplicant.conf
    mkdir /data/misc/wifi/sockets 0770 wifi wifi
    mkdir /data/misc/dhcp 0770 dhcp dhcp
    chown dhcp dhcp /data/misc/dhcp
    chown wifi root /dev/rfkill

#DRM directory creation
    mkdir /system/etc/security/.drm 0775
    chown root root /system/etc/security/.drm
    chmod 0775 /system/etc/security/.drm

    # Added for Playready DRM Support
    mkdir /data/data/.drm 0775
    chown drm system /data/data/.drm
    chmod 0775 /data/data/.drm
    mkdir /data/data/.drm/.playready 0775
    chown drm system /data/data/.drm/.playready
    chmod 0775 /data/data/.drm/.playready

    #Added drm folder to copy drm plugins
    mkdir /system/lib/drm 0775
    chown root root /system/lib/drm
    chmod 0775 /system/lib/drm

    # DivX DRM
    mkdir /efs/.files 0775
    mkdir /efs/.files/.dx1 0775
    mkdir /efs/.files/.dm33 0775
    mkdir /efs/.files/.mp301 0775
    chown media system /efs/.files/.dx1
    chown media system /efs/.files/.dm33
    chown media system /efs/.files/.mp301
    chmod 0775 /efs/.files/.dx1
    chmod 0775 /efs/.files/.dm33
    chmod 0775 /efs/.files/.mp301

# SELinux restore context for efs files
    restorecon_recursive /efs

# MTP Device permission.
    chmod 0660 /dev/mtp_usb
    chown system mtp /dev/mtp_usb

# terminal mode
    chmod 0660 /sys/class/android_usb/android0/terminal_version
    chown system system /sys/class/android_usb/android0/terminal_version

# NFC
    setprop ro.nfc.port "I2C"
    chmod 0600 /dev/pn544
    chown nfc nfc /dev/pn544

# setup for alsa snd device
    chmod 0770 /dev/snd/pcmC0D0c
    chmod 0770 /dev/snd/pcmC0D0p
    chmod 0770 /dev/snd/controlC0
    chmod 0770 /dev/snd/timer
    chmod 0770 /dev/snd/hwC0D0

    # create log system
    mkdir /data/log 0775 system log
    chown system log /data/log

    chmod 0775 /data/log
    chmod 0775 /data/anr

#panorama directory creation
    mkdir /data/pxtmpdir 0775
    chown system system /data/pxtmpdir
    chmod 0775 /data/pxtmpdir

    # permission for HDMI audio path
    chown media audio /sys/class/hdmi_audio/hdmi_audio/hdmi_audio_set_ext

# Permissions for gpio_keys.
    chown system radio /sys/class/sec/sec_key/wakeup_keys 
    write /sys/class/sec/sec_key/wakeup_keys  102,116

# Add permission for ATM. 2010.03.20
    chown system radio /sys/devices/platform/i2c-gpio.9/i2c-9/9-0036/power_supply/fuelgauge/fg_read_soc
    chown system radio /sys/devices/platform/i2c-gpio.9/i2c-9/9-0036/power_supply/fuelgauge/fg_reset_soc
    chown system radio /sys/devices/platform/sec-battery/power_supply/battery/batt_lpm_state
    chown system radio /sys/devices/platform/sec-battery/power_supply/battery/fg_psoc
    chown system radio /sys/devices/platform/sec-battery/power_supply/battery/system_rev
    chown system radio /sys/devices/platform/sec-battery/power_supply/battery/batt_current_adc
    chown system radio /sys/devices/platform/sec-battery/power_supply/battery/batt_test_value
    chown system radio /sys/devices/platform/sec-battery/power_supply/battery/batt_temp_adc_spec
    chown system radio /sys/devices/platform/sec-battery/power_supply/battery/batt_temp_check
    chown system radio /sys/devices/platform/sec-battery/power_supply/battery/batt_full_check
    chown system radio /sys/devices/platform/sec-battery/power_supply/battery/batt_type
    chown system radio /sys/devices/platform/sec-battery/power_supply/battery/mp3
    chown system radio /sys/devices/platform/sec-battery/power_supply/battery/video
    chown system radio /sys/devices/platform/sec-battery/power_supply/battery/batt_lp_charging
    chown system radio /sys/devices/platform/sec-battery/power_supply/battery/charging_source
    chown system radio /sys/devices/platform/sec-battery/power_supply/battery/charging_enabled
    chown system radio /sys/devices/platform/sec-battery/power_supply/battery/batt_temp_adc_avg
    chown system radio /sys/devices/platform/sec-battery/power_supply/battery/batt_temp_adc
    chown system radio /sys/devices/platform/sec-battery/power_supply/battery/batt_temp
    chown system radio /sys/devices/platform/sec-battery/power_supply/battery/batt_vfocv
    chown system radio /sys/devices/platform/sec-battery/power_supply/battery/batt_soc
    chown system radio /sys/devices/platform/sec-battery/power_supply/battery/batt_vol

    chown system system /sys/class/backlight/panel/brightness
    chown system system /sys/class/power_supply/battery/temp

# Permissions for input devices
    chown system radio /sys/devices/virtual/sec/sec_key/sec_key_pressed

    chown system radio /sys/devices/virtual/sec/sec_touchkey/force_disable
    chown system radio /sys/devices/virtual/sec/sec_touchkey/recommended_version
    chown system radio /sys/devices/virtual/sec/sec_touchkey/touch_sensitivity
    chown system radio /sys/devices/virtual/sec/sec_touchkey/brightness
    chown system radio /sys/devices/virtual/sec/sec_touchkey/touchkey_brightness
    chown system radio /sys/devices/virtual/sec/sec_touchkey/touchkey_back
    chown system radio /sys/devices/virtual/sec/sec_touchkey/touchkey_menu
    chown system radio /sys/devices/virtual/sec/sec_touchkey/touchkey_firm_version_panel
    chown system radio /sys/devices/virtual/sec/sec_touchkey/touchkey_firm_version_phone
    chown system radio /sys/devices/virtual/sec/sec_touchkey/touchkey_firm_update_status
    chown system radio /sys/devices/virtual/sec/sec_touchkey/touchkey_firm_update
    chown system radio /sys/devices/virtual/sec/sec_touchkey/updated_version
    chown system radio /sys/devices/virtual/sec/sec_touchkey/timeout

    chown system radio /sys/devices/virtual/sec/tsp_noise_test/set_firm_version
    chown system radio /sys/devices/virtual/sec/tsp_noise_test/set_threshould
    chown system radio /sys/devices/virtual/sec/tsp_noise_test/set_all_delta
    chown system radio /sys/devices/virtual/sec/tsp_noise_test/set_all_refer
    chown system radio /sys/devices/virtual/sec/tsp_noise_test/set_delta4
    chown system radio /sys/devices/virtual/sec/tsp_noise_test/set_refer4
    chown system radio /sys/devices/virtual/sec/tsp_noise_test/set_delta3
    chown system radio /sys/devices/virtual/sec/tsp_noise_test/set_refer3
    chown system radio /sys/devices/virtual/sec/tsp_noise_test/set_delta2
    chown system radio /sys/devices/virtual/sec/tsp_noise_test/set_refer2
    chown system radio /sys/devices/virtual/sec/tsp_noise_test/set_delta1
    chown system radio /sys/devices/virtual/sec/tsp_noise_test/set_refer1
    chown system radio /sys/devices/virtual/sec/tsp_noise_test/set_delta0
    chown system radio /sys/devices/virtual/sec/tsp_noise_test/set_refer0
    chown system radio /sys/devices/virtual/sec/tsp_noise_test/disp_all_deltadata
    chown system radio /sys/devices/virtual/sec/tsp_noise_test/disp_all_refdata
    chown system radio /sys/devices/virtual/sec/tsp_noise_test/set_module_off
    chown system radio /sys/devices/virtual/sec/tsp_noise_test/set_module_on

    chown system radio /sys/devices/virtual/sec/sec_touchscreen/tsp_firm_version_panel
    chown system radio /sys/devices/virtual/sec/sec_touchscreen/tsp_firm_version_phone
    chown system radio /sys/devices/virtual/sec/sec_touchscreen/tsp_firm_update_status 
    chown system radio /sys/devices/virtual/sec/sec_touchscreen/tsp_firm_update 
    chown system radio /sys/devices/virtual/sec/sec_touchscreen/tsp_threshold
    chown system radio /sys/devices/virtual/sec/sec_touchscreen/tsp_config_version
    chown system radio /sys/devices/virtual/sec/sec_touchscreen/tsp_touchtype

# Permissions for bluetooth
    setprop ro.bt.bdaddr_path "/efs/bluetooth/bt_addr"
    chown bluetooth bluetooth ro.bt.bdaddr_path
    chown bluetooth bluetooth /dev/ttySAC0
    chmod 0600 /dev/ttySAC0
    chmod 0660 /sys/class/rfkill/rfkill0/state
    chown bluetooth bluetooth /sys/class/rfkill/rfkill0/state
    chown bluetooth bluetooth /sys/class/rfkill/rfkill0/type

# Vibetonz
    chmod 0660 /dev/tspdrv
    chown root shell /dev/tspdrv
    chmod 0660 /sys/class/timed_output/vibrator/pwm_value
    chown system system /sys/class/timed_output/vibrator/pwm_value

# Permissions for LCD
    chown system radio /sys/class/lcd/panel/lcd_power
    chown system radio /sys/class/lcd/panel/lcd_type
    chown system media_rw /sys/class/lcd/panel/gamma_mode
    chown system media_rw /sys/class/lcd/panel/power_reduce
    chown system system /sys/class/backlight/panel/auto_brightness

# Permissions for mDNIe
    chown system media_rw /sys/class/mdnie/mdnie/mode
    chown system media_rw /sys/class/mdnie/mdnie/outdoor
    chown system media_rw /sys/class/mdnie/mdnie/scenario
    chown system media_rw /sys/class/mdnie/mdnie/negative
    write /sys/class/mdnie/mdnie/scenario 0
    write /sys/class/mdnie/mdnie/mode 1

# Permissions for uart_sel and usb_sel
    chown system radio /sys/class/sec/switch/uart_sel/value
    chown system radio /sys/class/sec/switch/usb_sel
    chown system radio /sys/class/sec/switch/audio_path
    chown system radio /sys/class/sec/switch/otg_test
    chown system radio /sys/class/sec/switch/adc_debounce_time
    chown system radio /sys/class/sec/switch/status
    chown system radio /sys/class/sec/switch/adc
    chown system radio /mnt/.lfs/sw_sel

# Permissions for OTG Test
    chown system radio /sys/class/host_notify/usb_otg/booster
    chmod 0664 /sys/class/host_notify/usb_otg/booster

# Permission for radio
    chown system radio /sys/devices/platform/s5p-ehci/ehci_power
    chown system radio /sys/devices/platform/s5p-ehci/ehci_runtime
    chown system radio /sys/devices/virtual/misc/multipdp/waketime    

# for datarouter
    chown system system /dev/dun
    chown system system /dev/ttyGS0
    chown system system /dev/ttyGS1
    chown system system /dev/ttyGS2
    chown system system /dev/ttyGS3

# DVFS - cpufreq ondemand
    write /sys/devices/system/cpu/cpufreq/ondemand/down_differential 5
    write /sys/devices/system/cpu/cpufreq/ondemand/up_threshold 85

#panorama directory creation
    mkdir /data/pxtmpdir 0775
    chown system system /data/pxtmpdir
    chmod 0775 /data/pxtmpdir

# backlight permissions
    chown system system /sys/class/backlight/pwm-backlight/brightness
    chmod 0660 /sys/class/backlight/pwm-backlight/brightness
    chown radio system /sys/devices/virtual/misc/melfas_touchkey/brightness
    chmod 0660 /sys/devices/virtual/misc/melfas_touchkey/brightness

# Permissions for dvfs lock
    chown system system /sys/power/cpufreq_max_limit
    chown system system /sys/power/cpufreq_min_limit
    chmod 0660 /sys/power/cpufreq_max_limit
    chmod 0660 /sys/power/cpufreq_min_limit

    chown system system /sys/power/gpu_lock
    chmod 0660 /sys/power/gpu_lock

# Permisions for sensors
    chown radio system /sys/devices/virtual/K3G_GYRO-dev/k3g/gyro_selftest
    chown radio system /sys/devices/virtual/K3G_GYRO-dev/k3g/gyro_get_temp
    chown radio system /sys/devices/virtual/K3G_GYRO-dev/k3g/gyro_power_on
    chown radio system /sys/devices/virtual/accelerometer/accelerometer/acc_file
    chown radio system /sys/devices/virtual/sec/gsensorcal/calibration

# for device encryption
    setprop vold.post_fs_data_done 1

on boot
    mount debugfs /sys/kernel/debug /sys/kernel/debug
    setprop wifi.interface wlan0

# permissions for NFC
    setprop ro.nfc.port "I2C"
    chmod 0600 /dev/pn544
    chown nfc nfc /dev/pn544

# fake some battery state
    setprop status.battery.state Slow
    setprop status.battery.level 5
    setprop status.battery.level_raw  50
    setprop status.battery.level_scale 9

# increase read-ahead value to 256 kb
    write /sys/block/mmcblk0/queue/read_ahead_kb 256

service charger /sbin/healthd -c
    class charger
    critical
    seclabel u:r:healthd:s0

service p2p_supplicant /system/bin/wpa_supplicant \
    -iwlan0 -Dnl80211 -c/data/misc/wifi/wpa_supplicant.conf \
    -I/system/etc/wifi/wpa_supplicant_overlay.conf -N \
    -ip2p0 -Dnl80211 -c/data/misc/wifi/p2p_supplicant.conf \
    -I/system/etc/wifi/p2p_supplicant_overlay.conf \
    -puse_p2p_group_interface=1 \
    -e/data/misc/wifi/entropy.bin -g@android:wpa_wlan0
    #   we will start as root and wpa_supplicant will switch to user wifi
    #   after setting up the capabilities required for WEXT
    #   user wifi
    #   group wifi inet keystore
    class main
    socket wpa_wlan0 dgram 660 wifi wifi
    disabled
    oneshot

service wpa_supplicant /system/bin/wpa_supplicant \
    -iwlan0 -Dnl80211 -c/data/misc/wifi/wpa_supplicant.conf \
    -I/system/etc/wifi/wpa_supplicant_overlay.conf \
    -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 dhcpcd_wlan0 /system/bin/dhcpcd -ABKL
    class main
    disabled
    oneshot

service dhcpcd_p2p /system/bin/dhcpcd -aABKL
    class main
    disabled
    oneshot

service dhcpcd_bt-pan /system/bin/dhcpcd -ABKL
    class main
    disabled
    oneshot

service iprenew_wlan0 /system/bin/dhcpcd -n
    class main
    disabled
    oneshot

service iprenew_p2p /system/bin/dhcpcd -n
    class main
    disabled
    oneshot

service iprenew_bt-pan /system/bin/dhcpcd -n
    class main
    disabled
    oneshot

service macloader /system/bin/macloader
    class main
    oneshot