1 import init.manta.usb.rc 2 3 on init 4 start watchdogd 5 6 # See storage config details at http://source.android.com/tech/storage/ 7 mkdir /mnt/shell/emulated 0700 shell shell 8 mkdir /storage/emulated 0555 root root 9 10 export EXTERNAL_STORAGE /storage/emulated/legacy 11 export EMULATED_STORAGE_SOURCE /mnt/shell/emulated 12 export EMULATED_STORAGE_TARGET /storage/emulated 13 14 # Support legacy paths 15 symlink /storage/emulated/legacy /sdcard 16 symlink /storage/emulated/legacy /mnt/sdcard 17 symlink /storage/emulated/legacy /storage/sdcard0 18 symlink /mnt/shell/emulated/0 /storage/emulated/legacy 19 20 on post-fs-data 21 mkdir /data/media 0770 media_rw media_rw 22 23 setprop vold.post_fs_data_done 1 24 mkdir /data/misc/wifi 0770 wifi wifi 25 mkdir /data/misc/wifi/sockets 0770 wifi wifi 26 mkdir /data/misc/dhcp 0770 dhcp dhcp 27 chown dhcp dhcp /data/misc/dhcp 28 29 # permissions for bluetooth. 30 setprop ro.bt.bdaddr_path "/factory/bluetooth/bt_addr" 31 chown bluetooth net_bt_stack ro.bt.bdaddr_path 32 chown bluetooth net_bt_stack /dev/ttySAC0 33 chmod 0660 /dev/ttySAC0 34 chmod 0660 /sys/class/rfkill/rfkill0/state 35 chown bluetooth net_bt_stack /sys/class/rfkill/rfkill0/state 36 chown bluetooth net_bt_stack /sys/class/rfkill/rfkill0/type 37 restorecon /sys/class/rfkill/rfkill0/state 38 restorecon /sys/class/rfkill/rfkill0/type 39 40 on boot 41 # override init.rc to keep plenty of large order chunks around 42 # to improve allocation times 43 write /proc/sys/vm/min_free_kbytes 32768 44 write /proc/sys/vm/min_free_order_shift 1 45 46 mount debugfs /sys/kernel/debug /sys/kernel/debug 47 setprop ro.radio.noril yes 48 49 # Reduce reserved lowmem from ~48MB to ~12MB 50 write /proc/sys/vm/lowmem_reserve_ratio "128 128" 51 52 # Set up kernel tracing, but disable it by default 53 chmod 0222 /sys/kernel/debug/tracing/trace_marker 54 write /sys/kernel/debug/tracing/tracing_on 0 55 56 chmod 0444 /sys/kernel/debug/smb347-regs 57 58 # Set Mali power policy as Coarse demand 59 write /sys/devices/platform/mali.0/power_policy coarse_demand 60 61 on fs 62 mkdir /factory 0775 radio radio 63 64 mount_all /fstab.manta 65 mount ext4 /dev/block/platform/dw_mmc.0/by-name/efs /factory rw remount 66 restorecon /factory 67 restorecon /factory/bluetooth 68 restorecon /factory/bluetooth/bt_addr 69 restorecon /factory/FactoryApp 70 restorecon /factory/FactoryApp/ 71 restorecon /factory/FactoryApp/baro_delta 72 restorecon /factory/FactoryApp/factorymode 73 restorecon /factory/FactoryApp/fdata 74 restorecon /factory/FactoryApp/hist_nv 75 restorecon /factory/FactoryApp/hw_ver 76 restorecon /factory/FactoryApp/keystr 77 restorecon /factory/FactoryApp/reset_flag 78 restorecon /factory/FactoryApp/test_nv 79 restorecon /factory/hdcp2.keys 80 restorecon /factory/wv.keys 81 restorecon /factory/wifi 82 restorecon /factory/wifi/ 83 mount ext4 /dev/block/platform/dw_mmc.0/by-name/efs /factory ro remount 84 setprop ro.crypto.fuse_sdcard true 85 86 # Permissions for backlight 87 chmod 0660 /sys/class/backlight/pwm-backlight.0/brightness 88 chown system system /sys/class/backlight/pwm-backlight.0/brightness 89 90 # create data/gps for GPS daemon 91 chown root system /sys/class/gps/bcm475x/GPS_PWR_EN/value 92 chmod 0664 /sys/class/gps/bcm475x/GPS_PWR_EN/value 93 chown root system /sys/class/gps/bcm475x/GPS_nRST/value 94 chmod 0664 /sys/class/gps/bcm475x/GPS_nRST/value 95 mkdir /data/gps 771 system system 96 chown system system /data/gps 97 98 # NFC: create data/nfc for nv storage 99 mkdir /data/nfc 770 nfc nfc 100 mkdir /data/nfc/param 770 nfc nfc 101 102 # audio: permissions for voice processing 103 # global switch for voice processing effects 104 chown root audio /sys/class/i2c-dev/i2c-4/device/4-003e/voice_processing 105 chmod 0660 /sys/class/i2c-dev/i2c-4/device/4-003e/voice_processing 106 # voice processing chip sleep 107 chown root audio /sys/class/i2c-dev/i2c-4/device/4-003e/sleep 108 chmod 0660 /sys/class/i2c-dev/i2c-4/device/4-003e/sleep 109 # voice processing usecase preset 110 chown root audio /sys/class/i2c-dev/i2c-4/device/4-003e/preset 111 chmod 0660 /sys/class/i2c-dev/i2c-4/device/4-003e/preset 112 # voice processing noise suppression level 113 chown root audio /sys/class/i2c-dev/i2c-4/device/4-003e/tx_ns_level 114 chmod 0660 /sys/class/i2c-dev/i2c-4/device/4-003e/tx_ns_level 115 # voice processing AGC enable (TX) 116 chown root audio /sys/class/i2c-dev/i2c-4/device/4-003e/tx_agc_enable 117 chmod 0660 /sys/class/i2c-dev/i2c-4/device/4-003e/tx_agc_enable 118 # voice processing AEC enable 119 chown root audio /sys/class/i2c-dev/i2c-4/device/4-003e/aec_enable 120 chmod 0660 /sys/class/i2c-dev/i2c-4/device/4-003e/aec_enable 121 122 # virtual sdcard daemon running as media_rw (1023) 123 service sdcard /system/bin/sdcard /data/media /mnt/shell/emulated 1023 1023 124 class late_start 125 126 service p2p_supplicant /system/bin/wpa_supplicant \ 127 -iwlan0 -Dnl80211 -c/data/misc/wifi/wpa_supplicant.conf \ 128 -I/system/etc/wifi/wpa_supplicant_overlay.conf \ 129 -puse_multi_chan_concurrent=1 -N -ip2p0 -Dnl80211 \ 130 -c/data/misc/wifi/p2p_supplicant.conf \ 131 -I/system/etc/wifi/wpa_supplicant_overlay.conf \ 132 -puse_p2p_group_interface=1use_multi_chan_concurrent=1 -e/data/misc/wifi/entropy.bin 133 # we will start as root and wpa_supplicant will switch to user wifi 134 # after setting up the capabilities required for WEXT 135 # user wifi 136 # group wifi inet keystore 137 class main 138 socket wpa_wlan0 dgram 660 wifi wifi 139 disabled 140 oneshot 141 142 service wpa_supplicant /system/bin/wpa_supplicant \ 143 -iwlan0 -Dnl80211 -c/data/misc/wifi/wpa_supplicant.conf \ 144 -I/system/etc/wifi/wpa_supplicant_overlay.conf \ 145 -e/data/misc/wifi/entropy.bin 146 # we will start as root and wpa_supplicant will switch to user wifi 147 # after setting up the capabilities required for WEXT 148 # user wifi 149 # group wifi inet keystore 150 class main 151 socket wpa_wlan0 dgram 660 wifi wifi 152 disabled 153 oneshot 154 155 service dhcpcd_wlan0 /system/bin/dhcpcd -aABDKL 156 class main 157 disabled 158 oneshot 159 160 service dhcpcd_p2p /system/bin/dhcpcd -aABKL 161 class main 162 disabled 163 oneshot 164 165 service dhcpcd_eth0 /system/bin/dhcpcd -ABDKL 166 class main 167 disabled 168 oneshot 169 170 service dhcpcd_bt-pan /system/bin/dhcpcd -ABKL 171 class main 172 disabled 173 oneshot 174 175 service iprenew_wlan0 /system/bin/dhcpcd -n 176 class main 177 disabled 178 oneshot 179 180 service iprenew_p2p /system/bin/dhcpcd -n 181 class main 182 disabled 183 oneshot 184 185 service iprenew_eth0 /system/bin/dhcpcd -n 186 class main 187 disabled 188 oneshot 189 190 service iprenew_bt-pan /system/bin/dhcpcd -n 191 class main 192 disabled 193 oneshot 194 195 service battery_charger /charger 196 class charger 197 198 # Set watchdog timer to 30 seconds and pet it every 10 seconds to get a 20 second margin 199 service watchdogd /sbin/watchdogd 10 20 200 class core 201 seclabel u:r:watchdogd:s0 202 203 service gpsd /system/vendor/bin/gpsd -c /system/vendor/etc/gps.xml 204 class main 205 socket gps seqpacket 0660 gps system 206 user gps 207 group system inet 208 209 # MobiCore startup 210 service mobicore /system/bin/mcDriverDaemon -r /system/vendor/secapp/020a0000000000000000000000000000.drbin 211 setenv MC_REGISTRY_PATH /system/vendor/secapp 212 user drmrpc 213 group drmrpc 214 class main 215 216 # on userdebug and eng builds, enable kgdb on the serial console 217 on property:ro.debuggable=1 218 write /sys/module/kgdboc/parameters/kgdboc ttyFIQ2 219 write /sys/module/fiq_debugger/parameters/kgdb_enable 1 220 221 # bugreport is triggered by holding down volume down, volume up and power 222 service bugreport /system/bin/dumpstate -d -p -B \ 223 -o /data/data/com.android.shell/files/bugreports/bugreport 224 class main 225 disabled 226 oneshot 227 keycodes 114 115 116 228