• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1import init.${ro.hardware}.usb.rc
2import init.${ro.hardware}.power.rc
3
4on init
5    # mount debugfs
6    mount debugfs /sys/kernel/debug /sys/kernel/debug mode=755
7
8    # disable transparent huge pages
9    write /sys/kernel/mm/transparent_hugepage/enabled "never"
10
11    # Initialize cpusets to boot-time values
12    write /dev/cpuset/foreground/cpus 0-7
13    write /dev/cpuset/background/cpus 0-7
14    write /dev/cpuset/system-background/cpus 0-7
15    write /dev/cpuset/top-app/cpus 0-7
16
17    # Create UDS structure for base VR services
18    mkdir /dev/socket/pdx 0775 system system
19    mkdir /dev/socket/pdx/system 0775 system system
20    mkdir /dev/socket/pdx/system/buffer_hub 0775 system system
21    mkdir /dev/socket/pdx/system/performance 0775 system system
22    mkdir /dev/socket/pdx/system/vr 0775 system system
23    mkdir /dev/socket/pdx/system/vr/display 0775 system system
24    mkdir /dev/socket/pdx/system/vr/pose 0775 system system
25    mkdir /dev/socket/pdx/system/vr/sensors 0775 system system
26
27    start watchdogd
28
29on fs
30    mount_all /fstab.${ro.hardware}
31    setprop ro.crypto.fuse_sdcard false
32
33on post-fs
34    # For legacy support
35    # See storage config details at http://source.android.com/tech/storage/
36    # since /storage is mounted on post-fs in init.rc
37    symlink /sdcard /storage/sdcard0
38
39    # BT LED sysfs entry
40    write /sys/class/leds/bt_active/trigger "hci1rx"
41
42    chmod 0666 /dev/ump
43    chmod 0666 /dev/ion
44    chmod 0666 /dev/graphics/fb0
45
46# fake some battery state
47    setprop status.battery.state Slow
48    setprop status.battery.level 5
49    setprop status.battery.level_raw  50
50    setprop status.battery.level_scale 9
51
52# Set Display density
53    setprop ro.sf.lcd_density 160
54
55# Set supported opengles version
56    setprop ro.opengles.version 196608
57
58# If an app forces screen rotation, revert it once the apps closes
59    setprop persist.demo.rotationlock 1
60
61# enable Google-specific location features,
62# like NetworkLocationProvider and LocationCollector
63    setprop ro.com.google.locationfeatures 1
64
65# enable test harness
66    setprop ro.test_harness true
67
68on post-fs-data
69    mkdir /data/media 0770 media_rw media_rw
70    mkdir /data/misc/gatord 0700 root root
71    # Set SELinux security contexts for files used by lava.
72    restorecon_recursive /data/local/tmp/lava
73
74on zygote-start
75    mkdir /data/vendor/wifi 0770 wifi wifi
76    mkdir /data/vendor/wifi/wpa 0770 wifi wifi
77    mkdir /data/vendor/wifi/wpa/sockets 0770 wifi wifi
78
79on property:sys.boot_completed=1
80    # update cpuset now that processors are up
81    # Foreground should contain most cores (7 is reserved for top-app)
82    write /dev/cpuset/foreground/cpus 0-6
83
84    # top-app gets all cpus (including reserved #7)
85    write /dev/cpuset/top-app/cpus 0-7
86
87    #background contains a small subset (generally one little core)
88    write /dev/cpuset/background/cpus 0
89
90    # add system-background cpuset, a new cpuset for system services
91    # that should not run on larger cores
92    # system-background is for system tasks that should only run on
93    # little cores, not on bigs to be used only by init
94    write /dev/cpuset/system-background/cpus 0-3
95
96on property:usb_speed.switch=high
97    write /sys/kernel/debug/f72c0000.usb/config "0"
98
99on property:usb_speed.switch=full
100    write /sys/kernel/debug/f72c0000.usb/config "1"
101
102#userspace daemon needed for bluetooth
103service uim /vendor/bin/uim
104    class main
105    user bluetooth
106    group bluetooth net_bt_admin system
107    oneshot
108
109service wpa_supplicant /system/vendor/bin/hw/wpa_supplicant \
110     -g@android:wpa_wlan0
111     interface android.hardware.wifi.supplicant@1.0::ISupplicant default
112     interface android.hardware.wifi.supplicant@1.1::ISupplicant default
113     socket wpa_wlan0 dgram 660 wifi wifi
114     class main
115     disabled
116     oneshot
117
118# Set watchdog timer to 30 seconds and pet it every 10 seconds to get a 20 second margin
119service watchdogd /sbin/watchdogd 10 20
120    class core
121    oneshot
122    seclabel u:r:watchdogd:s0
123