forked from koush/android_device_htc_inc
-
Notifications
You must be signed in to change notification settings - Fork 19
/
Copy pathinit.inc.rc
181 lines (151 loc) · 6.06 KB
/
init.inc.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
on init
# eMMC related
export PHONE_STORAGE /mnt/emmc
# Create mountpoints
mount rootfs rootfs / remount
mkdir /mnt/emmc 0000 system system
symlink /mnt/emmc /emmc
mount rootfs rootfs / ro remount
#
# START from umount/re-mount data
#
umount /data
devwait /dev/block/mmcblk0p1
mount ext3 /dev/block/mmcblk0p1 /data nosuid noatime nodiratime
exec /system/bin/e2fsck -p /dev/block/mmcblk0p1
chown system system /data
chmod 0771 /data
# Create dump dir and collect dumps.
# Do this before we mount cache so eventually we can use cache for
# storing dumps on platforms which do not have a dedicated dump partition.
mkdir /data/dontpanic
chown root log /data/dontpanic
chmod 0750 /data/dontpanic
# Collect apanic data, free resources and re-arm trigger
copy /proc/apanic_console /data/dontpanic/apanic_console
chown root log /data/dontpanic/apanic_console
chmod 0640 /data/dontpanic/apanic_console
copy /proc/apanic_threads /data/dontpanic/apanic_threads
chown root log /data/dontpanic/apanic_threads
chmod 0640 /data/dontpanic/apanic_threads
write /proc/sys/kernel/sched_latency_ns 5000000
write /proc/sys/kernel/sched_wakeup_granularity_ns 100000
write /proc/sys/kernel/sched_min_granularity_ns 100000
# create basic filesystem structure
mkdir /data/misc 01771 system misc
mkdir /data/misc/bluetoothd 0770 bluetooth bluetooth
mkdir /data/misc/bluetooth 0770 system system
mkdir /data/misc/keystore 0700 keystore keystore
mkdir /data/misc/vpn 0770 system system
mkdir /data/misc/systemkeys 0700 system system
mkdir /data/misc/vpn/profiles 0770 system 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/local 0771 shell shell
mkdir /data/local/tmp 0771 shell shell
mkdir /data/data 0771 system system
mkdir /data/app-private 0771 system system
mkdir /data/app 0771 system system
chmod 0771 /data/app
mkdir /data/property 0700 root root
# DRMv1 rights storage
symlink /data/local /data/drm
mkdir /data/local/rights 0777 shell shell
chown shell shell /data/drm
# create dalvik-cache and double-check the perms
mkdir /data/dalvik-cache 0771 system system
chown system system /data/dalvik-cache
chmod 0771 /data/dalvik-cache
# create the lost+found directories, so as to enforce our permissions
mkdir /data/lost+found 0770
# double check the perms, in case lost+found already exists, and set owner
chown root root /data/lost+found
chmod 0770 /data/lost+found
# change the mode for dmdata
chmod 0777 /data/local/dmdata
#
# END umount/re-mount data
#
mount yaffs2 mtd@datadata /data/data nosuid nodev
chown system system /data/data
chmod 0771 /data/data
#
# START umount/re-mount cache
#
umount /cache
devwait /dev/block/mmcblk0p2
mount ext3 /dev/block/mmcblk0p2 /cache nosuid nodev noatime nodiratime
chown system cache /cache
chmod 0771 /cache
# This may have been created by the recovery system with odd permissions
mkdir system system /cache/recovery
chown system system /cache/recovery
chmod 0770 /cache/recovery
mkdir /cache/lost+found 0770
chown root root /cache/lost+found
chmod 0770 /cache/lost+found
mkdir /cache/dalvik-cache 0771 system system
chown system system /cache/dalvik-cache
chmod 0771 /cache/dalvik-cache
#
# END umount/re-mount cache
#
# Ramdisk related
mount rootfs rootfs / remount
mkdir /app-cache 01777 system system
mount tmpfs tmpfs /app-cache size=8m
mount rootfs rootfs / ro remount
on boot
mkdir /data/misc/wifi 0770 wifi wifi
mkdir /data/misc/wifi/sockets 0770 wifi wifi
mkdir /data/misc/dhcp 0770 dhcp dhcp
chown dhcp dhcp /data/misc/dhcp
chown bluetooth bluetooth /sys/class/rfkill/rfkill0/type
chown bluetooth bluetooth /sys/class/rfkill/rfkill0/state
chmod 0660 /sys/class/rfkill/rfkill0/state
# bluetooth MAC address programming
chown bluetooth bluetooth /sys/module/board_mahimahi/parameters/bdaddress
setprop ro.bt.bdaddr_path /sys/module/board_mahimahi/parameters/bdaddress
chown system system /sys/module/serial/parameters/modem_enabled
chown system system /dev/ttyHSUSB0
chown system system /dev/ttySA0
chown system system /dev/smd9
chown media system /sys/android_camera/cam_mode
chown radio radio /sys/module/msm_flashlight/parameters/phone_status
# Power Management
write /sys/devices/system/cpu/cpu0/cpufreq/ondemand/sampling_rate 40000
# Enable low memory killer to check file pages
write /sys/module/lowmemorykiller/parameters/minfile 0,0,0,5120,5632,6144
write /sys/module/lowmemorykiller/parameters/check_filepages 1
# Power Management
write /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq 245000
write /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq 998400
write /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor ondemand
write /sys/devices/system/cpu/cpufreq/ondemand/sampling_rate 40000
service wpa_supplicant /system/bin/logwrapper /system/bin/wpa_supplicant \
-Dwext -ieth0 -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
socket wpa_eth0 dgram 660 wifi wifi
disabled
oneshot
service dhcpcd /system/bin/dhcpcd -ABKL eth0
disabled
oneshot
service hciattach /system/bin/brcm_patchram_plus --enable_hci --enable_lpm \
--baudrate 3000000 --patchram /etc/firmware/bcm4329.hcd /dev/ttyHS0
user bluetooth
group bluetooth net_bt_admin
disabled
# compass/accelerometer daemon
service akmd /system/bin/akmd
user compass
group compass misc input
service dmagent /system/bin/dmagent -N -P19 -VSY
socket dmagent stream 660 root radio
user root
group radio cache inet misc