1import init.grouper.usb.rc 2 3on early-init 4 mount debugfs debugfs /sys/kernel/debug 5 6on init 7 # See storage config details at http://source.android.com/tech/storage/ 8 mkdir /mnt/shell/emulated 0700 shell shell 9 mkdir /storage/emulated 0555 root root 10 11 export EXTERNAL_STORAGE /storage/emulated/legacy 12 export EMULATED_STORAGE_SOURCE /mnt/shell/emulated 13 export EMULATED_STORAGE_TARGET /storage/emulated 14 15 # Support legacy paths 16 symlink /storage/emulated/legacy /sdcard 17 symlink /storage/emulated/legacy /mnt/sdcard 18 symlink /storage/emulated/legacy /storage/sdcard0 19 symlink /mnt/shell/emulated/0 /storage/emulated/legacy 20 21on early-boot 22 write /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor interactive 23 write /sys/devices/system/cpu/cpu1/cpufreq/scaling_governor interactive 24 write /sys/devices/system/cpu/cpu2/cpufreq/scaling_governor interactive 25 write /sys/devices/system/cpu/cpu3/cpufreq/scaling_governor interactive 26 27on fs 28 setprop ro.crypto.umount_sd false 29 mount_all /fstab.grouper 30 31on post-fs-data 32 mkdir /data/media 0770 media_rw media_rw 33 34 # change back to bluetooth from system 35 chown bluetooth net_bt_stack /data/misc/bluetooth 36 37 # sensors-config 38 mkdir /data/sensors 751 39 # /data/sensors was owned by system/system earlier. 40 # Force it to root/root if it already exists. 41 chown root root /data/sensors 42 mkdir /data/lightsensor 751 43 # /data/lightsensor was owned by system/system earlier. 44 # Force it to root/root if it already exists. 45 chown root root /data/lightsensor 46 mkdir /data/calibration 47 mkdir /data/amit 48 49 # Set indication (checked by vold) that we have finished this action 50 setprop vold.post_fs_data_done 1 51 52on boot 53 54# bluetooth 55 # UART device 56 chmod 0660 /dev/ttyHS2 57 chown bluetooth net_bt_stack /dev/ttyHS2 58 59 # power up/down interface 60 chmod 0660 /sys/class/rfkill/rfkill0/state 61 chmod 0660 /sys/class/rfkill/rfkill0/type 62 chown bluetooth net_bt_stack /sys/class/rfkill/rfkill0/state 63 chown bluetooth net_bt_stack /sys/class/rfkill/rfkill0/type 64 65 # bluetooth MAC address programming 66 chown bluetooth net_bt_stack ro.bt.bdaddr_path 67 chown bluetooth net_bt_stack /system/etc/bluetooth 68 chown bluetooth net_bt_stack /data/misc/bluetooth 69 setprop ro.bt.bdaddr_path "/data/misc/bluetooth/bdaddr" 70 71 # bluetooth LPM 72 chmod 0220 /proc/bluetooth/sleep/lpm 73 chmod 0220 /proc/bluetooth/sleep/btwrite 74 chown bluetooth net_bt_stack /proc/bluetooth/sleep/lpm 75 chown bluetooth net_bt_stack /proc/bluetooth/sleep/btwrite 76 77# NFC 78 setprop ro.nfc.port "I2C" 79 chmod 0660 /dev/pn544 80 chown nfc nfc /dev/pn544 81 82# backlight 83 chown system system /sys/class/backlight/pwm-backlight/brightness 84 85# didim 86 chown system system /sys/class/graphics/fb0/device/smartdimmer/enable 87 chown system system /sys/class/graphics/fb0/device/smartdimmer/aggressiveness 88 89# power 90 chown system system /sys/kernel/tegra_cap/core_cap_level 91 chown system system /sys/kernel/tegra_cap/core_cap_state 92 chown system system /sys/module/cpu_tegra/parameters/cpu_user_cap 93 94# Sensor 95# iio 96 chown system system /dev/iio:device0 97 chown system system /sys/bus/iio/devices/trigger0/name 98 chown system system /sys/bus/iio/devices/iio:device0/accl_enable 99 chown system system /sys/bus/iio/devices/iio:device0/accl_matrix 100 chown system system /sys/bus/iio/devices/iio:device0/buffer/length 101 chown system system /sys/bus/iio/devices/iio:device0/buffer/enable 102 chown system system /sys/bus/iio/devices/iio:device0/compass_enable 103 chown system system /sys/bus/iio/devices/iio:device0/compass_matrix 104 chown system system /sys/bus/iio/devices/iio:device0/dmp_on 105 chown system system /sys/bus/iio/devices/iio:device0/dmp_int_on 106 chown system system /sys/bus/iio/devices/iio:device0/gyro_enable 107 chown system system /sys/bus/iio/devices/iio:device0/gyro_matrix 108 chown system system /sys/bus/iio/devices/iio:device0/in_accel_scale 109 chown system system /sys/bus/iio/devices/iio:device0/in_anglvel_scale 110 chown system system /sys/bus/iio/devices/iio:device0/in_magn_scale 111 chown system system /sys/bus/iio/devices/iio:device0/key 112 chown system system /sys/bus/iio/devices/iio:device0/power_state 113 chown system system /sys/bus/iio/devices/iio:device0/sampling_frequency 114 chown system system /sys/bus/iio/devices/iio:device0/scan_elements/in_accel_x_en 115 chown system system /sys/bus/iio/devices/iio:device0/scan_elements/in_accel_y_en 116 chown system system /sys/bus/iio/devices/iio:device0/scan_elements/in_accel_z_en 117 chown system system /sys/bus/iio/devices/iio:device0/scan_elements/in_anglvel_x_en 118 chown system system /sys/bus/iio/devices/iio:device0/scan_elements/in_anglvel_y_en 119 chown system system /sys/bus/iio/devices/iio:device0/scan_elements/in_anglvel_z_en 120 chown system system /sys/bus/iio/devices/iio:device0/scan_elements/in_magn_x_en 121 chown system system /sys/bus/iio/devices/iio:device0/scan_elements/in_magn_y_en 122 chown system system /sys/bus/iio/devices/iio:device0/scan_elements/in_magn_z_en 123 chown system system /sys/bus/iio/devices/iio:device0/scan_elements/in_timestamp_en 124 chown system system /sys/bus/iio/devices/iio:device0/temperature 125 chown system system /sys/bus/iio/devices/iio:device0/trigger/current_trigger 126 127 # new in MA 5.1.5 128 chown system system /sys/bus/iio/devices/iio:device0/secondary_name 129 chown system system /sys/bus/iio/devices/iio:device0/dmp_firmware 130 chown system system /sys/bus/iio/devices/iio:device0/firmware_loaded 131 chown system system /sys/bus/iio/devices/iio:device0/dmp_event_int_on 132 chown system system /sys/bus/iio/devices/iio:device0/dmp_output_rate 133 chown system system /sys/bus/iio/devices/iio:device0/in_accel_x_offset 134 chown system system /sys/bus/iio/devices/iio:device0/in_accel_y_offset 135 chown system system /sys/bus/iio/devices/iio:device0/in_accel_z_offset 136 chown system system /sys/bus/iio/devices/iio:device0/gyro_fsr 137 ## LPQ 138 chown system system /sys/bus/iio/devices/iio:device0/quaternion_on 139 chown system system /sys/bus/iio/devices/iio:device0/scan_elements/in_quaternion_z_en 140 chown system system /sys/bus/iio/devices/iio:device0/scan_elements/in_quaternion_y_en 141 chown system system /sys/bus/iio/devices/iio:device0/scan_elements/in_quaternion_x_en 142 chown system system /sys/bus/iio/devices/iio:device0/scan_elements/in_quaternion_r_en 143 ## Screen orientation 144 chown system system /sys/bus/iio/devices/iio:device0/event_display_orientation 145 chown system system /sys/bus/iio/devices/iio:device0/display_orientation_on 146 ## SMD 147 chown system system /sys/bus/iio/devices/iio:device0/event_smd 148 chown system system /sys/bus/iio/devices/iio:device0/smd_enable 149 chown system system /sys/bus/iio/devices/iio:device0/smd_threshold 150 chown system system /sys/bus/iio/devices/iio:device0/smd_delay_threshold 151 chown system system /sys/bus/iio/devices/iio:device0/smd_delay_threshold2 152 ## AMI compass sensor 153 chown system system /dev/iio:device1 154 chown system system /sys/bus/iio/devices/trigger1/name 155 chown system system /sys/bus/iio/devices/iio:device1/buffer/length 156 chown system system /sys/bus/iio/devices/iio:device1/buffer/enable 157 chown system system /sys/bus/iio/devices/iio:device1/compass_enable 158 chown system system /sys/bus/iio/devices/iio:device1/compass_matrix 159 chown system system /sys/bus/iio/devices/iio:device1/in_magn_scale 160 chown system system /sys/bus/iio/devices/iio:device1/power_state 161 chown system system /sys/bus/iio/devices/iio:device1/sampling_frequency 162 chown system system /sys/bus/iio/devices/iio:device1/scan_elements/in_magn_x_en 163 chown system system /sys/bus/iio/devices/iio:device1/scan_elements/in_magn_y_en 164 chown system system /sys/bus/iio/devices/iio:device1/scan_elements/in_magn_z_en 165 chown system system /sys/bus/iio/devices/iio:device1/scan_elements/in_timestamp_en 166 chown system system /sys/bus/iio/devices/iio:device1/trigger/current_trigger 167 168 chmod 600 /dev/iio:device0 169 chmod 600 /sys/bus/iio/devices/trigger0/name 170 chmod 600 /sys/bus/iio/devices/iio:device0/accl_enable 171 chmod 600 /sys/bus/iio/devices/iio:device0/accl_matrix 172 chmod 600 /sys/bus/iio/devices/iio:device0/buffer/length 173 chmod 600 /sys/bus/iio/devices/iio:device0/buffer/enable 174 chmod 600 /sys/bus/iio/devices/iio:device0/compass_enable 175 chmod 600 /sys/bus/iio/devices/iio:device0/compass_matrix 176 chmod 600 /sys/bus/iio/devices/iio:device0/dmp_on 177 chmod 600 /sys/bus/iio/devices/iio:device0/dmp_int_on 178 chmod 600 /sys/bus/iio/devices/iio:device0/gyro_enable 179 chmod 600 /sys/bus/iio/devices/iio:device0/gyro_matrix 180 chmod 600 /sys/bus/iio/devices/iio:device0/in_accel_scale 181 chmod 600 /sys/bus/iio/devices/iio:device0/in_anglvel_scale 182 chmod 600 /sys/bus/iio/devices/iio:device0/in_magn_scale 183 chmod 600 /sys/bus/iio/devices/iio:device0/key 184 chmod 600 /sys/bus/iio/devices/iio:device0/power_state 185 chmod 600 /sys/bus/iio/devices/iio:device0/sampling_frequency 186 chmod 600 /sys/bus/iio/devices/iio:device0/scan_elements/in_accel_x_en 187 chmod 600 /sys/bus/iio/devices/iio:device0/scan_elements/in_accel_y_en 188 chmod 600 /sys/bus/iio/devices/iio:device0/scan_elements/in_accel_z_en 189 chmod 600 /sys/bus/iio/devices/iio:device0/scan_elements/in_anglvel_x_en 190 chmod 600 /sys/bus/iio/devices/iio:device0/scan_elements/in_anglvel_y_en 191 chmod 600 /sys/bus/iio/devices/iio:device0/scan_elements/in_anglvel_z_en 192 chmod 600 /sys/bus/iio/devices/iio:device0/scan_elements/in_magn_x_en 193 chmod 600 /sys/bus/iio/devices/iio:device0/scan_elements/in_magn_y_en 194 chmod 600 /sys/bus/iio/devices/iio:device0/scan_elements/in_magn_z_en 195 chmod 600 /sys/bus/iio/devices/iio:device0/scan_elements/in_timestamp_en 196 chmod 600 /sys/bus/iio/devices/iio:device0/temperature 197 chmod 600 /sys/bus/iio/devices/iio:device0/trigger/current_trigger 198 # new in MA 5.1.5 199 chmod 600 /sys/bus/iio/devices/iio:device0/secondary_name 200 chmod 600 /sys/bus/iio/devices/iio:device0/dmp_firmware 201 chmod 600 /sys/bus/iio/devices/iio:device0/firmware_loaded 202 chmod 600 /sys/bus/iio/devices/iio:device0/dmp_event_int_on 203 chmod 600 /sys/bus/iio/devices/iio:device0/dmp_output_rate 204 chmod 600 /sys/bus/iio/devices/iio:device0/in_accel_x_offset 205 chmod 600 /sys/bus/iio/devices/iio:device0/in_accel_y_offset 206 chmod 600 /sys/bus/iio/devices/iio:device0/in_accel_z_offset 207 chmod 600 /sys/bus/iio/devices/iio:device0/gyro_fsr 208 ## LPQ 209 chmod 600 /sys/bus/iio/devices/iio:device0/quaternion_on 210 chmod 600 /sys/bus/iio/devices/iio:device0/scan_elements/in_quaternion_z_en 211 chmod 600 /sys/bus/iio/devices/iio:device0/scan_elements/in_quaternion_y_en 212 chmod 600 /sys/bus/iio/devices/iio:device0/scan_elements/in_quaternion_x_en 213 chmod 600 /sys/bus/iio/devices/iio:device0/scan_elements/in_quaternion_r_en 214 ## Screen orientation 215 chmod 600 /sys/bus/iio/devices/iio:device0/event_display_orientation 216 chmod 600 /sys/bus/iio/devices/iio:device0/display_orientation_on 217 ## SMD 218 chmod 600 /sys/bus/iio/devices/iio:device0/event_smd 219 chmod 600 /sys/bus/iio/devices/iio:device0/smd_enable 220 chmod 600 /sys/bus/iio/devices/iio:device0/smd_threshold 221 chmod 600 /sys/bus/iio/devices/iio:device0/smd_delay_threshold 222 chmod 600 /sys/bus/iio/devices/iio:device0/smd_delay_threshold2 223 ## AMI compass sensor 224 chmod 600 /dev/iio:device1 225 chmod 600 /sys/bus/iio/devices/trigger1/name 226 chmod 600 /sys/bus/iio/devices/iio:device1/buffer/length 227 chmod 600 /sys/bus/iio/devices/iio:device1/buffer/enable 228 chmod 600 /sys/bus/iio/devices/iio:device1/compass_enable 229 chmod 600 /sys/bus/iio/devices/iio:device1/compass_matrix 230 chmod 600 /sys/bus/iio/devices/iio:device1/in_magn_scale 231 chmod 600 /sys/bus/iio/devices/iio:device1/power_state 232 chmod 600 /sys/bus/iio/devices/iio:device1/sampling_frequency 233 chmod 600 /sys/bus/iio/devices/iio:device1/scan_elements/in_magn_x_en 234 chmod 600 /sys/bus/iio/devices/iio:device1/scan_elements/in_magn_y_en 235 chmod 600 /sys/bus/iio/devices/iio:device1/scan_elements/in_magn_z_en 236 chmod 600 /sys/bus/iio/devices/iio:device1/scan_elements/in_timestamp_en 237 chmod 600 /sys/bus/iio/devices/iio:device1/trigger/current_trigger 238 239# Power management settings 240 write /sys/module/cpu_tegra3/parameters/no_lp 0 241 #write /sys/module/tegra3_emc/parameters/emc_enable 0 242 #write /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq 1000000 243 write /sys/devices/system/cpu/cpufreq/interactive/boost_factor 2 244 write /sys/devices/system/cpu/cpufreq/interactive/input_boost 1 245 write /sys/devices/system/cpu/cpufreq/interactive/sustain_load 80 246 write /sys/module/cpu_tegra3/parameters/auto_hotplug 1 247 #write /sys/module/cpuidle_t3/parameters/lp2_0_in_idle 0 248 write /sys/module/cpuidle/parameters/lp2_in_idle 0 249 250# Interactive governor settings 251 chown system system /sys/devices/system/cpu/cpufreq/interactive/boost_factor 252 chmod 0660 /sys/devices/system/cpu/cpufreq/interactive/boost_factor 253 chown system system /sys/devices/system/cpu/cpufreq/interactive/go_maxspeed_load 254 chmod 0660 /sys/devices/system/cpu/cpufreq/interactive/go_maxspeed_load 255 chown system system /sys/devices/system/cpu/cpufreq/interactive/io_is_busy 256 chmod 0660 /sys/devices/system/cpu/cpufreq/interactive/io_is_busy 257 chown system system /sys/devices/system/cpu/cpufreq/interactive/max_boost 258 chmod 0660 /sys/devices/system/cpu/cpufreq/interactive/max_boost 259 chown system system /sys/devices/system/cpu/cpufreq/interactive/sustain_load 260 chmod 0660 /sys/devices/system/cpu/cpufreq/interactive/sustain_load 261 chown system system /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq 262 chmod 0660 /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq 263 chown system system /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq 264 chmod 0660 /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq 265 chown system system /sys/devices/system/cpu/cpu1/cpufreq/scaling_min_freq 266 chmod 0660 /sys/devices/system/cpu/cpu1/cpufreq/scaling_min_freq 267 chown system system /sys/devices/system/cpu/cpu1/cpufreq/scaling_max_freq 268 chmod 0660 /sys/devices/system/cpu/cpu1/cpufreq/scaling_max_freq 269 chown system system /sys/devices/system/cpu/cpu2/cpufreq/scaling_min_freq 270 chmod 0660 /sys/devices/system/cpu/cpu2/cpufreq/scaling_min_freq 271 chown system system /sys/devices/system/cpu/cpu2/cpufreq/scaling_max_freq 272 chmod 0660 /sys/devices/system/cpu/cpu2/cpufreq/scaling_max_freq 273 chown system system /sys/devices/system/cpu/cpu3/cpufreq/scaling_min_freq 274 chmod 0660 /sys/devices/system/cpu/cpu3/cpufreq/scaling_min_freq 275 chown system system /sys/devices/system/cpu/cpu3/cpufreq/scaling_max_freq 276 chmod 0660 /sys/devices/system/cpu/cpu3/cpufreq/scaling_max_freq 277 278# Default Read Ahead value for sdcards 279 write /sys/block/mmcblk0/queue/read_ahead_kb 2048 280 write /sys/block/mmcblk1/queue/read_ahead_kb 2048 281 282# GPS init 283 write /sys/class/gpio/export 162 284 write /sys/class/gpio/gpio162/value 0 285 write /sys/class/gpio/gpio162/direction out 286 chown gps system /sys/class/gpio/gpio162/value 287 chmod 0664 /sys/class/gpio/gpio162/value 288 mkdir /data/gps 289 chown gps system /data/gps 290 chmod 770 /data/gps 291 chown gps system /dev/ttyHS1 292 chmod 0660 /dev/ttyHS1 293 294 295# Load WiFi driver 296 297# BB mapping symbolic name to the logging ttyACM port 298 symlink /dev/ttyACM2 /dev/log_modem 299 300# Touch 301 chown system system /dev/elan-iap 302 chown system system /proc/ektf_dbg 303 start touch_fw_update 304 305service wpa_supplicant /system/bin/wpa_supplicant \ 306 -iwlan0 -Dnl80211 -c/data/misc/wifi/wpa_supplicant.conf \ 307 -I/system/etc/wifi/wpa_supplicant_overlay.conf \ 308 -e/data/misc/wifi/entropy.bin -g@android:wpa_wlan0 309 # we will start as root and wpa_supplicant will switch to user wifi 310 # after setting up the capabilities required for WEXT 311 # user wifi 312 # group wifi inet keystore 313 class main 314 socket wpa_wlan0 dgram 660 wifi wifi 315 disabled 316 oneshot 317 318service p2p_supplicant /system/bin/wpa_supplicant \ 319 -iwlan0 -Dnl80211 -iwlan0 -c/data/misc/wifi/wpa_supplicant.conf \ 320 -I/system/etc/wifi/wpa_supplicant_overlay.conf -N \ 321 -ip2p0 -Dnl80211 -c /data/misc/wifi/p2p_supplicant.conf \ 322 -I/system/etc/wifi/p2p_supplicant_overlay.conf \ 323 -puse_p2p_group_interface=1 -e/data/misc/wifi/entropy.bin \ 324 -g@android:wpa_wlan0 325# we will start as root and wpa_supplicant will switch to user wifi 326# after setting up the capabilities required for WEXT 327# user wifi 328# group wifi inet keystore 329 class main 330 socket wpa_wlan0 dgram 660 wifi wifi 331 disabled 332 oneshot 333 334service dhcpcd_wlan0 /system/bin/dhcpcd -aABDKL 335 class main 336 disabled 337 oneshot 338 339service dhcpcd_p2p /system/bin/dhcpcd -aABKL 340 class main 341 disabled 342 oneshot 343 344service dhcpcd_eth0 /system/bin/dhcpcd -ABDKL -f/system/etc/dhcpcd/dhcpcd.conf 345 class main 346 disabled 347 oneshot 348 349service dhcpcd_bt-pan /system/bin/dhcpcd -ABKL 350 class main 351 disabled 352 oneshot 353 354service iprenew_wlan0 /system/bin/dhcpcd -n 355 class main 356 disabled 357 oneshot 358 359service iprenew_p2p /system/bin/dhcpcd -n 360 class main 361 disabled 362 oneshot 363 364service iprenew_eth0 /system/bin/dhcpcd -n 365 class main 366 disabled 367 oneshot 368 369service iprenew_bt-pan /system/bin/dhcpcd -n 370 class main 371 disabled 372 oneshot 373 374#Sensor: load calibration files. 375 service sensors-config /system/bin/sensors-config 376 class main 377 user root 378 oneshot 379#Sensor load calibration files end 380 381# virtual sdcard daemon running as media_rw (1023) 382service sdcard /system/bin/sdcard -u 1023 -g 1023 -l /data/media /mnt/shell/emulated 383 class late_start 384 385# bugreport is triggered by the VOLUME-DOWN and VOLUME-UP keys 386service bugreport /system/bin/dumpstate -d -p -B \ 387 -o /data/data/com.android.shell/files/bugreports/bugreport 388 class main 389 disabled 390 oneshot 391 keycodes 115 114 392 393# Start GPS daemon 394 on boot 395 service gps-daemon /system/bin/glgps -c /system/etc/gps/gpsconfig.xml 396 user gps 397 group system 398 class late_start 399 400# Recovery daemon: configure MSC partition 401service recoveryd /system/bin/recoveryd /dev/block/platform/sdhci-tegra.3/by-name/MSC 402 disabled 403 class main 404 user root 405 group root 406 oneshot 407 408on property:sys.shutdown.requested=1recovery 409 start recoveryd 410 411# start tf_daemon service 412service tf_daemon /system/bin/tf_daemon -storageDir /data/tf -d 413 class main 414 user root 415 group shell 416 417# may restart due to /data/tf not existing yet 418on property:init.svc.tf_daemon=restarting 419 mkdir /data/tf 420 421# create filesystems if necessary 422service setup_fs /system/bin/setup_fs \ 423 /dev/block/platform/sdhci-tegra.3/by-name/UDA \ 424 /dev/block/platform/sdhci-tegra.3/by-name/CAC 425 class core 426 user root 427 group root 428 oneshot 429 430service touch_fw_update /system/bin/sh -c "echo /system/etc/firmware/touch_fw.ekt > /sys/bus/i2c/drivers/elan-ktf3k/1-0010/update_fw" 431 class main 432 disabled 433 user root 434 group root 435 oneshot 436 437