blob: e864a6458abd88c93744bb6df6b0c721e1dad6dd [file] [log] [blame]
import init.${ro.hardware}.usb.rc
import init.${ro.hardware}.power.rc
on init
# mount debugfs
mount debugfs /sys/kernel/debug /sys/kernel/debug mode=755
# disable transparent huge pages
write /sys/kernel/mm/transparent_hugepage/enabled "never"
# Initialize cpusets to boot-time values
write /dev/cpuset/foreground/cpus 0-7
write /dev/cpuset/background/cpus 0-7
write /dev/cpuset/system-background/cpus 0-7
write /dev/cpuset/top-app/cpus 0-7
start watchdogd
on early-fs
start vold
on fs
setprop ro.crypto.fuse_sdcard false
on post-fs
# set RLIMIT_MEMLOCK to 8MB
setrlimit 8 8388608 8388608
# For legacy support
# See storage config details at http://source.android.com/tech/storage/
# since /storage is mounted on post-fs in init.rc
symlink /sdcard /storage/sdcard0
# BT LED sysfs entry
write /sys/class/leds/bt_active/trigger "hci1rx"
chmod 0666 /dev/ump
chmod 0666 /dev/ion
chmod 0666 /dev/graphics/fb0
# 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
# If an app forces screen rotation, revert it once the apps closes
setprop persist.demo.rotationlock 1
# enable Google-specific location features,
# like NetworkLocationProvider and LocationCollector
setprop ro.com.google.locationfeatures 1
# enable test harness
setprop ro.test_harness true
on post-fs-data
mkdir /data/media 0770 media_rw media_rw
mkdir /data/misc/gatord 0700 root root
# Set SELinux security contexts for files used by lava.
restorecon_recursive /data/local/tmp/lava
on zygote-start
mkdir /data/vendor/wifi 0770 wifi wifi
mkdir /data/vendor/wifi/wpa 0770 wifi wifi
mkdir /data/vendor/wifi/wpa/sockets 0770 wifi wifi
on property:sys.boot_completed=1
# update cpuset now that processors are up
# Foreground should contain most cores (7 is reserved for top-app)
write /dev/cpuset/foreground/cpus 0-6
# top-app gets all cpus (including reserved #7)
write /dev/cpuset/top-app/cpus 0-7
#background contains a small subset (generally one little core)
write /dev/cpuset/background/cpus 0
# add system-background cpuset, a new cpuset for system services
# that should not run on larger cores
# system-background is for system tasks that should only run on
# little cores, not on bigs to be used only by init
write /dev/cpuset/system-background/cpus 0-3
on property:usb_speed.switch=high
write /sys/kernel/debug/f72c0000.usb/config "0"
on property:usb_speed.switch=full
write /sys/kernel/debug/f72c0000.usb/config "1"
#userspace daemon needed for bluetooth
service uim /vendor/bin/uim
class main
user bluetooth
group bluetooth net_bt_admin system
oneshot
service wpa_supplicant /system/vendor/bin/hw/wpa_supplicant \
-g@android:wpa_wlan0
interface android.hardware.wifi.supplicant@1.0::ISupplicant default
interface android.hardware.wifi.supplicant@1.1::ISupplicant default
socket wpa_wlan0 dgram 660 wifi wifi
class main
disabled
oneshot
# Set watchdog timer to 30 seconds and pet it every 10 seconds to get a 20 second margin
service watchdogd /system/bin/watchdogd 10 20
class core
oneshot
seclabel u:r:watchdogd:s0
service bugreport /system/bin/dumpstate -d -p -z
class main
disabled
oneshot
# TODO: disable this service once we implement system suspend
service suspend_blocker /vendor/bin/suspend_blocker
class early_hal # Start together with system_suspend HAL
group system
user root