/
init.smdk4210.rc.2
executable file
·368 lines (307 loc) · 12.1 KB
/
init.smdk4210.rc.2
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
import init.smdk4210.usb.rc
import init.bt.rc
on early-init
export EXTERNAL_STORAGE /storage/sdcard0
mkdir /storage 0550 system sdcard_r
mkdir /storage/sdcard0 0000 system system
symlink /storage/sdcard0 /sdcard
symlink /storage/sdcard0 /mnt/sdcard
export SECONDARY_STORAGE /storage/extSdCard:/storage/UsbDriveA:/storage/UsbDriveB:/storage/UsbDriveC:/storage/UsbDriveD:/storage/UsbDriveE:/storage/UsbDriveF
mkdir /storage/extSdCard 0000 system system
mkdir /storage/UsbDriveA 0000 system system
mkdir /storage/UsbDriveB 0000 system system
mkdir /storage/UsbDriveC 0000 system system
mkdir /storage/UsbDriveD 0000 system system
mkdir /storage/UsbDriveE 0000 system system
mkdir /storage/UsbDriveF 0000 system system
# map "real" external storages paths also in same way. backwards compatibility.
symlink /storage/UsbDriveA /mnt/UsbDriveA
symlink /storage/UsbDriveB /mnt/UsbDriveB
symlink /storage/UsbDriveC /mnt/UsbDriveC
symlink /storage/UsbDriveD /mnt/UsbDriveD
symlink /storage/UsbDriveE /mnt/UsbDriveE
symlink /storage/UsbDriveF /mnt/UsbDriveF
symlink /storage/extSdCard /extSdCard
symlink /storage/extSdCard /mnt/extSdCard
mkdir /efs 0771 radio system
mkdir /mnt/.lfs 0755 root root
on init
# Vibetonz
export VIBE_PIPE_PATH /dev/pipes
mkdir /dev/pipes 0771 shell shell
on post-fs-data
# we will remap this as /storage/sdcard with the sdcard fuse tool
mkdir /data/media 0770 media_rw media_rw
chown media_rw media_rw /data/media
setprop vold.post_fs_data_done 1
# give system access to wpa_supplicant.conf for backup and restore
mkdir /data/misc/wifi 0774 wifi system
mkdir /efs/wifi 0775 radio system
mkdir /efs/bluetooth 0775 radio system
mkdir /efs/imei 0775 radio system
chmod 0660 /data/misc/wifi/wpa_supplicant.conf
mkdir /data/misc/wifi/sockets 0774 wifi wifi
mkdir /data/misc/dhcp 0775 dhcp dhcp
chown dhcp dhcp /data/misc/dhcp
chown system system /efs/wifi/.mac.info
chmod 0664 /efs/wifi/.mac.info
mkdir /efs/FactoryApp 0775
chown radio system /efs/FactoryApp
chmod 0775 /efs/FactoryApp
write /efs/FactoryApp/factorymode ON
chown system system /efs/FactoryApp/factorymode
chmod 0744 /efs/FactoryApp/factorymode
mkdir /data/misc/radio 0775 radio system
# for TRP/TIS
write /data/.psm.info 1
chown system root /data/.psm.info
chmod 0660 /data/.psm.info
on boot
# SISO-ANDR_PERF :: START Changing scheduler to noop during boot
# write /sys/block/mmcblk0/queue/scheduler noop
# SISO-ANDR_PERF :: END
setprop ro.build.product smdk4210
setprop ro.product.device smdk4210
setprop ro.radio.noril yes
# mobicore
mkdir /data/app/mcRegistry 0775 system system
chmod 0660 /dev/mobicore
chown radio system /dev/mobicore
# mobicore trustlets
copy /efs/00000000.authtokcont /data/app/mcRegistry/00000000.authtokcont
chown system system /data/app/mcRegistry/00000000.authtokcont
copy /system/app/FFFFFFFF000000000000000000000001.drbin /data/app/FFFFFFFF000000000000000000000001.drbin
chown system system /data/app/FFFFFFFF000000000000000000000001.drbin
copy /system/app/mcRegistry/00060308060501020000000000000000.tlbin /data/app/mcRegistry/00060308060501020000000000000000.tlbin
chown system system /data/app/mcRegistry/00060308060501020000000000000000.tlbin
copy /system/app/mcRegistry/07010000000000000000000000000000.tlbin /data/app/mcRegistry/07010000000000000000000000000000.tlbin
chown system system /data/app/mcRegistry/07010000000000000000000000000000.tlbin
copy /system/app/mcRegistry/ffffffff000000000000000000000003.tlbin /data/app/mcRegistry/ffffffff000000000000000000000003.tlbin
chown system system /data/app/mcRegistry/ffffffff000000000000000000000003.tlbin
copy /system/app/mcRegistry/ffffffff000000000000000000000004.tlbin /data/app/mcRegistry/ffffffff000000000000000000000004.tlbin
chown system system /data/app/mcRegistry/ffffffff000000000000000000000004.tlbin
copy /system/app/mcRegistry/ffffffff000000000000000000000005.tlbin /data/app/mcRegistry/ffffffff000000000000000000000005.tlbin
chown system system /data/app/mcRegistry/ffffffff000000000000000000000005.tlbin
copy /system/app/mcRegistry/02010000080300030000000000000000.tlbin /data/app/mcRegistry/02010000080300030000000000000000.tlbin
chown system system /data/app/mcRegistry/02010000080300030000000000000000.tlbin
# S.LSI secdrv mem
chown system system /dev/s5p-smem
chmod 0660 /dev/s5p-smem
# WIFI
setprop wifi.interface wlan0
symlink /dev/block/mmcblk0p4 /dev/block/param
# 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
# Permisions for sensors
chown system radio /sys/devices/platform/s5p-ehci/ehci_power
chown system radio /sys/devices/platform/s5p-ehci/ehci_runtime
chown system radio /dev/accelerometer
chown radio system /sys/devices/virtual/accelerometer/accelerometer/acc_file
chown radio system /sys/devices/virtual/sec/gsensorcal/calibration
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 system radio /dev/akm8975
chown system radio /sys/class/sensors/magnetic_sensor/raw_data
chown system radio /sys/class/sensors/magnetic_sensor/vendor
chown system radio /sys/class/sensors/magnetic_sensor/name
chmod 0660 /sys/vibrator/pwm_val
chown system system /sys/vibrator/pwm_val
# permissions for NFC
setprop ro.nfc.port "I2C"
chmod 0600 /dev/pn544
chown nfc nfc /dev/pn544
# Vibetonz
chmod 0660 /dev/tspdrv
chown root shell /dev/tspdrv
on fs
# verify filesystem (UMS)
exec sformat /dev/block/mmcblk0p11 vfat
# make sure sdcard is mounted because we may have our data and cache partitions on it
mount vfat /dev/block/mmcblk0p11 /mnt/.secondrom wait utf8
# Mount all
mount ext4 loop@/res/dev/cache /cache nosuid nodev wait
mount ext4 /dev/block/mmcblk0p1 /efs nosuid nodev wait
mount ext4 loop@/res/dev/data /data nosuid nodev wait
setprop ro.crypto.fuse_sdcard false
# for LogMeIn
chown graphics /system/bin/RescueStarter
chmod 0755 /system/bin/RescueStarter
chown graphics /system/bin/RescueServer
chmod 0755 /system/bin/RescueServer
# Permissions for backlight
chown system system /sys/class/backlight/panel/brightness
chown system system /sys/class/sec/sec_touchkey/brightness
# Permissions for DVFS
chown radio system /sys/power/cpufreq_table
chown radio system /sys/power/cpufreq_max_limit
chown radio system /sys/power/cpufreq_min_limit
chmod 0660 /sys/power/cpufreq_table
chmod 0660 /sys/power/cpufreq_max_limit
chmod 0660 /sys/power/cpufreq_min_limit
# MTP device permission
chmod 0660 /dev/usb_mtp_gadget
chown system system /dev/usb_mtp_gadget
# Permissions for Gscaler log level
chmod 0666 /sys/module/gsc/parameters/gsc_dbg
# create data/gps for GPS daemon
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
chown root system /sys/class/sec/gps/GPS_nRST/value
chmod 0664 /sys/class/sec/gps/GPS_nRST/value
mkdir /data/gps 771 system system
chown system system /data/gps
# NFC
setprop ro.nfc.port "I2C"
chmod 0600 /dev/pn544
chown nfc nfc /dev/pn544
# Permissions for FuelGauge
chown system radio /sys/class/power_supply/fuelgauge/fg_reset_soc
# 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 0
# Switch Device
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
# OTG_TEST
chown system radio /sys/class/host_notify/usb_otg/booster
chmod 0664 /sys/class/host_notify/usb_otg/booster
on post-fs
# insmod /lib/modules/exfat_core.ko
# insmod /lib/modules/exfat_fs.ko
chown radio system /efs
chmod 0771 /efs
# IPC sysfs
chown radio radio /sys/devices/virtual/misc/multipdp/waketime
symlink /dev/block/mmcblk0p8 /dev/mbin0
#RTC_Log
chmod 0770 /system/bin/rtc_log.sh
chown system system /system/bin/rtc_log.sh
# SISO-ANDR_PERF :: START Changing scheduler to cfq and reseting cpu min freq to -1 after boot complete
on property:sys.boot_completed=1
# write /sys/block/mmcblk0/queue/scheduler cfq
# write /sys/power/cpufreq_min_limit -1
# SISO-ANDR_PERF :: END
## Daemon processes to be run by init.
service ueventd /sbin/ueventd
class core
critical
service console /system/bin/sh
class core
console
disabled
group log
on property:ro.debuggable=1
start console
# create filesystem if necessary
service setup_fs /system/bin/setup_fs \
/dev/block/mmcblk0p3 \
/dev/block/mmcblk0p4
class core
user root
group root
oneshot
# -iwlan0 -Dnl80211 -c/data/misc/wifi/wpa_supplicant.conf -N \
service p2p_supplicant /system/bin/p2p_supplicant \
-ip2p0 -Dnl80211 -c/data/misc/wifi/p2p_supplicant.conf -e/data/misc/wifi/entropy.bin -puse_p2p_group_interface=1
class main
disabled
oneshot
service wpa_supplicant /system/bin/wpa_supplicant \
-Dnl80211 -iwlan0 -e/data/misc/wifi/entropy.bin -c/data/misc/wifi/wpa_supplicant.conf
# 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 iprenew_wlan0 /system/bin/dhcpcd -n
class main
disabled
oneshot
service iprenew_p2p /system/bin/dhcpcd -n
class main
disabled
oneshot
# TVout
service TvoutService_C /system/bin/bintvoutservice
class main
user system
group graphics
on property:ro.tvout.enable=false
stop TvoutService_C
service cpboot-daemon /sbin/cbd -d -p 8
class main
user root
group radio cache inet misc audio sdcard_rw log sdcard_r
# mobicore
service mcDriverDaemon /system/bin/mcDriverDaemon -r /data/app/FFFFFFFF000000000000000000000001.drbin
class main
user system
group system
# Vibetonz
service immvibed /system/bin/immvibed
class core
user shell
group shell
oneshot
#for WiFi MFG(TestMode)
service mfgloader /system/bin/mfgloader
class main
disabled
oneshot
service wlandutservice /system/bin/wlandutservice
class main
user system
group wifi net_raw net_admin system inet
disabled
oneshot
service macloader /system/bin/macloader
class main
oneshot
on property:init.svc.macloader=stopped
chown system root /data/.cid.info
chmod 0664 /data/.cid.info
chown system root /data/.rev
chmod 0660 /data/.rev
# end of wifi
#RTC_Log
service rtc_log /system/bin/sh /system/bin/rtc_log.sh
class main
user shell
group log
oneshot