/
init.aries.rc
executable file
·254 lines (200 loc) · 7.84 KB
/
init.aries.rc
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
import init.aries.usb.rc
import init.aries.gps.rc
on init
loglevel 9
export EXTERNAL_STORAGE /storage/sdcard0
export SECONDARY_STORAGE /storage/sdcard1
# FIXME: Market checks this variable for space-checking, but downloads to /datadata
export DOWNLOAD_CACHE /data/download
mkdir /mnt/media_rw/sdcard0 0700 media_rw media_rw
mkdir /mnt/media_rw/sdcard1 0700 media_rw media_rw
mkdir /storage/sdcard0 0700 root root
mkdir /storage/sdcard1 0700 root root
symlink /storage/sdcard0 /sdcard
symlink /storage/sdcard0 /mnt/sdcard
symlink /storage/sdcard1 /emmc
symlink /storage/sdcard1 /mnt/emmc
mkdir /datadata 0771 system system
on fs
# LVM: set up LVM volumes
exec /lvm/sbin/lvm vgscan --mknodes --ignorelockingfailure
exec /lvm/sbin/lvm vgchange -aly --ignorelockingfailure
restorecon /dev/mapper/lvpool-system
restorecon /dev/mapper/lvpool-userdata
mount yaffs2 mtd@cache /cache
mount yaffs2 mtd@datadata /datadata
mount_all /fstab.aries
swapon_all fstab.aries
# We chown/chmod /efs because mount is run as root + defaults
mkdir /efs 0775 radio radio
mount yaffs2 /dev/block/mtdblock4 /efs
chown radio radio /efs
chmod 770 /efs/bluetooth
chmod 770 /efs/imei
# insmod the touchscreen driver
insmod /system/lib/modules/qt602240-ypg1.ko
# insmod the wifi driver
insmod /system/lib/modules/bcmdhd.ko
# Permissions for System Server and daemons.
chown system system /sys/class/backlight/s5p_bl/brightness
chown system system /sys/devices/virtual/sec/ts/touchkey_led
# change permission for uart_switch
chown radio radio /sys/class/sec/uart_switch/UART_SEL/value
chmod 660 /sys/class/sec/uart_switch/UART_SEL/value
on post-fs
# datadata permissions
chown system system /datadata
chmod 0771 /datadata
restorecon /datadata
# allow system to modify cpufreq control files
chown root system /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
chmod 0664 /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
chown root system /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq
chmod 0664 /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq
chown root system /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq
chmod 0664 /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq
chown root system /sys/devices/system/cpu/cpufreq/ondemand/boostpulse
chmod 0664 /sys/devices/system/cpu/cpufreq/ondemand/boostpulse
# zRAM: only read one page at a time
write /proc/sys/vm/page-cluster 0
on post-fs-data
# for migrating download provider's cache out of the small /data/data
mkdir /data/data2 0771 system system
# setup datadata
exec /sbin/setupdatadata.sh
# For sensor control
chown system input /sys/class/input/input0/enable
chown system input /sys/class/input/input0/delay
chown system input /sys/class/input/input0/wake
chown system input /sys/class/input/input0/data
chown system input /sys/class/input/input1/enable
chown system input /sys/class/input/input1/delay
chown system input /sys/class/input/input1/wake
chown system input /sys/class/input/input1/filter_enable
chown system input /sys/class/input/input1/filter_len
chown system input /sys/class/input/input1/data
chown system input /sys/class/input/input1/status
chown system input /sys/class/input/input1/position
chown compass input /sys/class/input/input2/offsets
chown compass input /sys/class/input/input2/threshold
chown compass input /sys/class/input/input2/distortion
chown compass input /sys/class/input/input2/shape
chown system input /sys/class/input/input3/enable
chown system input /sys/class/input/input3/delay
chown system input /sys/class/input/input3/wake
chown system input /sys/class/input/input3/data
chown system input /sys/class/input/input5/enable
chown system input /sys/class/input/input6/enable
chown system input /sys/class/input/input7/enable
# Change permissions for lcd
chown radio system /sys/class/lcd/s5p_lcd/lcd_power
chown radio radio /sys/class/aclset/switch_aclset/aclset_file_cmd
chown radio radio /sys/class/mdnieset_ui/switch_mdnieset_ui/mdnieset_ui_file_cmd
chown radio radio /sys/class/mdnieset_outdoor/switch_mdnieset_outdoor/mdnieset_outdoor_file_cmd
chown root system /sys/devices/virtual/misc/pwm_duty/pwm_duty
chmod 0664 /sys/devices/virtual/misc/pwm_duty/pwm_duty
restorecon /sys/devices/virtual/misc/pwm_duty/pwm_duty
on boot
mount debugfs /sys/kernel/debug /sys/kernel/debug
setprop ro.build.product herring
setprop ro.product.device herring
setprop ro.radio.noril yes
# This is setup by the convert script using /efs/imei/bt.txt
setprop ro.bt.bdaddr_path "/sys/firmware/efs/bt_addr"
# 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
# wi-fi
mkdir /data/misc/wifi/sockets 0770 wifi wifi
mkdir /data/misc/dhcp 0777 dhcp dhcp
# phone
setprop ro.telephony.call_ring.multiple 0
# permissions for bluetooth.
chown bluetooth net_bt_stack ro.bt.bdaddr_path
chown bluetooth net_bt_stack /dev/s3c2410_serial0
chmod 0600 /dev/s3c2410_serial0
chmod 0660 /sys/class/rfkill/rfkill0/state
chown bluetooth net_bt_stack /sys/class/rfkill/rfkill0/state
chown bluetooth net_bt_stack /sys/class/rfkill/rfkill0/type
# We chown/chmod /efs because mount is run as root + defaults
#SEC Device encryption
#chown radio system /efs
chown radio system /efs
chmod 0775 /efs
# permissions for NFC
setprop ro.nfc.port "I2C"
chmod 0600 /dev/pn544
chown nfc nfc /dev/pn544
# 3D init
service pvrsrvinit /system/vendor/bin/pvrsrvinit
class core
user root
group root
oneshot
service dmb /system/bin/dmbserver
user system
group system audio camera graphics inet net_bt net_bt_admin net_raw sdcard_rw
# FUSE sdcard daemon for rich permissions (runs as media_rw)
service fuse_sdcard0 /system/bin/sdcard -u 1023 -g 1023 -d /mnt/media_rw/sdcard0 /storage/sdcard0
class late_start
disabled
service fuse_sdcard1 /system/bin/sdcard -u 1023 -g 1023 -d /mnt/media_rw/sdcard1 /storage/sdcard1
class late_start
disabled
service wpa_supplicant /system/bin/wpa_supplicant \
-iwlan0 -Dnl80211 -c/data/misc/wifi/wpa_supplicant.conf -O/data/misc/wifi/sockets -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 u:object_r:wpa_socket:s0
disabled
oneshot
service dhcpcd_wlan0 /system/bin/dhcpcd -aABDKL
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
# for Broadcom Bluetooth
service iprenew_bt-pan /system/bin/dhcpcd -n
class main
disabled
oneshot
service btld /system/bin/logwrapper /system/bin/btld -hb 3000000 -hp /dev/s3c2410_serial0 -lpm 1
user root
group bluetooth net_bt_stack
disabled
oneshot
# start btld if soft_onoff is enabled
on property:service.brcm.bt.soft_onoff=1
start btld
# stop btld if soft_onoff is disabled
on property:service.brcm.bt.soft_onoff=0
stop btld
# bugreport is triggered by holding down volume down, volume up and power
service bugreport /system/bin/dumpstate -d -v -o /sdcard/bugreports/bugreport
disabled
oneshot
keycodes 114 115 116
#service tvout /system/bin/tvoutserver
# user system
# group graphics
service orientationd /system/vendor/bin/orientationd
class late_start
user compass
group system input
disabled
service geomagneticd /system/vendor/bin/geomagneticd
class late_start
user compass
group system input