import init.dragon.usb.rc

on early-init
    mount debugfs /sys/kernel/debug /sys/kernel/debug mode=755

on init
    symlink /sdcard /storage/sdcard0

    # Setup zram options
    write /sys/block/zram0/comp_algorithm lz4
    write /sys/block/zram0/max_comp_streams 4

    setprop ro.hardware.gralloc tegra
    setprop ro.hardware.hwcomposer drm
    setprop hwc.drm.device /dev/dri/card1
    setprop persist.tegra.compression off
    setprop persist.tegra.decompression disabled
    setprop ro.radio.noril yes
    setprop persist.tegra.nvblit.engine gpu

    # GL driver parameters for tiled cache size and efficient tex fetch
    setprop persist.tegra.0x523dc5 0x3f000000
    setprop persist.tegra.58027529 0x00000002
    setprop persist.tegra.a3456abe 0x087f6080

    # fix navigation bar not showing
    setprop qemu.hw.mainkeys 0
    start watchdogd

on late-init
    # Setting slice_idle to 0 for CFQ, so make sure the scheduler is CFQ.
    write /sys/block/mmcblk0/queue/scheduler cfq
    write /sys/block/mmcblk0/queue/iosched/slice_idle 0

    # enable rcu_expedited
    write /sys/kernel/rcu_expedited 1

on early-boot
    # Update dm-verity state and set partition.*.verified properties
    verity_update_state

# Set watchdog timer to 30 seconds and pet it every 10 seconds to get a 20 second margin
service watchdogd /sbin/watchdogd 10 20
    class core
    seclabel u:r:watchdogd:s0

on post-fs
    # Turn on swap
    swapon_all /fstab.dragon

    # Swap in only 1 page at a time
    write /proc/sys/vm/page-cluster 0

on post-fs-data
    # Now that are booted all the way and out of mount panics, ensure that we panic on later errors.
    # This is a hack to work around the fact that we can't recover from all errors that would lead to a panic
    # during the initial mount (http://b/17382778), yet we need to panic on emmc errors (http://b/17640053)
    # For a remount only the flags and the target mount point are relevant.
    mount dummy dummy /data remount nosuid nodev noatime rw seclabel,background_gc=on,user_xattr,acl,errors=panic

    mkdir /data/nvcam 0700 media camera
    mkdir /data/misc/camera 0700 media camera

    # NFC: create data/nfc for nv storage
    mkdir /data/nfc 0770 nfc nfc
    mkdir /data/nfc/param 0770 nfc nfc

    # secure os storage
    mkdir /data/ss 0700 system system
    mkdir /data/ss/tlk 0700 system system

    # secure os storage
    mkdir /data/ss 0700 system system

    # modem init
    mkdir /data/qcks 0770 system system
    mkdir /data/efs 0771 system system
    mkdir /data/qcks/mdm 0770 system system

    # crash_collector
    mkdir /data/system/crash_reports 0700 system system

    # EC/charger logs
    mkdir /data/misc/fw_logs 0755 root root

    # touch firmware updater logs
    mkdir /data/misc/touchfwup 0755 root log

    # initialize region info
    exec -- /system/bin/init_regions.sh

    setprop vold.post_fs_data_done 1

on boot
    # power down interface
    write /sys/class/rfkill/rfkill0/state 0

    write /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor interactive
    write /sys/devices/system/cpu/cpu1/cpufreq/scaling_governor interactive
    write /sys/devices/system/cpu/cpu2/cpufreq/scaling_governor interactive
    write /sys/devices/system/cpu/cpu3/cpufreq/scaling_governor interactive

    # (crosbug.com/p/46057) : Limit min frequency to 204Mhz for audio latency
    write /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq 204000
    write /sys/devices/system/cpu/cpu1/cpufreq/scaling_min_freq 204000
    write /sys/devices/system/cpu/cpu2/cpufreq/scaling_min_freq 204000
    write /sys/devices/system/cpu/cpu3/cpufreq/scaling_min_freq 204000

    restorecon_recursive /sys/devices/system/cpu/cpufreq/interactive
    chown system system /sys/devices/system/cpu/cpufreq/interactive/timer_rate
    chmod 0660 /sys/devices/system/cpu/cpufreq/interactive/timer_rate
    chown system system /sys/devices/system/cpu/cpufreq/interactive/timer_slack
    chmod 0660 /sys/devices/system/cpu/cpufreq/interactive/timer_slack
    chown system system /sys/devices/system/cpu/cpufreq/interactive/min_sample_time
    chmod 0660 /sys/devices/system/cpu/cpufreq/interactive/min_sample_time
    chown system system /sys/devices/system/cpu/cpufreq/interactive/hispeed_freq
    chmod 0660 /sys/devices/system/cpu/cpufreq/interactive/hispeed_freq
    chown system system /sys/devices/system/cpu/cpufreq/interactive/target_loads
    chmod 0660 /sys/devices/system/cpu/cpufreq/interactive/target_loads
    chown system system /sys/devices/system/cpu/cpufreq/interactive/go_hispeed_load
    chmod 0660 /sys/devices/system/cpu/cpufreq/interactive/go_hispeed_load
    chown system system /sys/devices/system/cpu/cpufreq/interactive/above_hispeed_delay
    chmod 0660 /sys/devices/system/cpu/cpufreq/interactive/above_hispeed_delay
    chown system system /sys/devices/system/cpu/cpufreq/interactive/boost
    chmod 0660 /sys/devices/system/cpu/cpufreq/interactive/boost
    chown system system /sys/devices/system/cpu/cpufreq/interactive/boostpulse
    chown system system /sys/devices/system/cpu/cpufreq/interactive/input_boost
    chmod 0660 /sys/devices/system/cpu/cpufreq/interactive/input_boost
    chown system system /sys/devices/system/cpu/cpufreq/interactive/boostpulse_duration
    chmod 0660 /sys/devices/system/cpu/cpufreq/interactive/boostpulse_duration
    chown system system /sys/devices/system/cpu/cpufreq/interactive/io_is_busy
    chmod 0660 /sys/devices/system/cpu/cpufreq/interactive/io_is_busy
    chown system system /sys/devices/57000000.gpu/pstate

    # update foreground cpuset now that processors are up
    # reserve CPU 3 for the top app
    write /dev/cpuset/foreground/cpus 0-2
    write /dev/cpuset/foreground/boost/cpus 0-2
    write /dev/cpuset/background/cpus 0
    write /dev/cpuset/system-background/cpus 0-1
    write /dev/cpuset/top-app/cpus 0-3

    # for gpu cap in battery saver mode
    chown system system /sys/kernel/debug/system_edp/capping/force_gpu
    chmod 0660 /sys/kernel/debug/system_edp/capping/force_gpu

    # for lightbar
    chown system system /sys/class/chromeos/cros_ec/lightbar/userspace_control
    chmod 0660 /sys/class/chromeos/cros_ec/lightbar/userspace_control
    chown system system /sys/class/chromeos/cros_ec/lightbar/sequence
    chmod 0660 /sys/class/chromeos/cros_ec/lightbar/sequence

    # for external power limits
    chown system system /sys/class/chromeos/cros_ec/usb-pd-charger/ext_voltage_lim
    chmod 0660 /sys/class/chromeos/cros_ec/usb-pd-charger/ext_voltage_lim

    # Enable CC4
    write /sys/devices/system/cpu/cpu0/cpuidle/state1/disabled 0
    write /sys/devices/system/cpu/cpu1/cpuidle/state1/disabled 0
    write /sys/devices/system/cpu/cpu2/cpuidle/state1/disabled 0
    write /sys/devices/system/cpu/cpu3/cpuidle/state1/disabled 0

    # b/13568411: make lazy vfree flush thresholds match flush_tlb_range
    write /proc/sys/vm/lazy_vfree_tlb_flush_all_threshold 524288

    chmod 0444 /sys/kernel/debug/bq2419x-regs

    write /proc/sys/net/core/rmem_max 1048576
    write /proc/sys/net/core/wmem_max 1048576

    # Execute crash_collector when a process is crashing.
    write /proc/sys/kernel/core_pattern "|/system/bin/crash_dispatcher %p %u %g %s %t %e"
    write /proc/sys/kernel/core_pipe_limit 4
    write /proc/self/coredump_filter 0x1

    # enable GPU dvfs
    write /sys/class/drm/card0/device/pstate auto

    # set GPU auto suspend
    write /sys/devices/57000000.gpu/power/autosuspend_delay_ms 520

    # Raise RLIMIT_NOFILE softlimit to workaround b/28277319. This is intended
    # to go away at some point, do not copy it to new devices! This makes fd
    # leaks much harder to notice and debug.
    setrlimit 7 2048 4096

    # Wifi firmware reload path
    chown wifi wifi /sys/module/bcmdhd/parameters/firmware_path

on fs
    # Enable verity notification
    write /sys/module/dm_verity/parameters/error_behavior notify

    mount_all /fstab.dragon

# run the touch firmware update script as soon as non-tmpfs /data is ready
on property:vold.decrypt=trigger_restart_framework
    exec -- /system/bin/touchfwup.sh

# tune thermal governor
service tune_therm_gov /system/bin/tune-thermal-gov.sh skin-therm pd_thermal_gov \
    max_err_temp 5000
    class main
    oneshot

service battery_charger /charger
    class charger
    seclabel u:r:healthd:s0

# on userdebug and eng builds, enable kgdb on the serial console
on property:ro.debuggable=1
    write /sys/module/kgdboc/parameters/kgdboc ttyFIQ0
    write /sys/module/fiq_debugger/parameters/kgdb_enable 1

# bugreport is triggered by holding down volume down, volume up and power
service bugreport /system/bin/dumpstate -d -p -B -z \
        -o /data/user_de/0/com.android.shell/files/bugreports/bugreport
    class late_start
    disabled
    oneshot
    keycodes 114 115 116

service wpa_supplicant /vendor/bin/hw/wpa_supplicant \
    -iwlan0 -Dnl80211 -c/data/misc/wifi/wpa_supplicant.conf \
    -I/system/etc/wifi/p2p_supplicant_overlay.conf \
    -puse_p2p_group_interface=1p2p_device=1 \
    -m/data/misc/wifi/p2p_supplicant.conf \
    -e/data/misc/wifi/entropy.bin -g@android:wpa_wlan0
    class late_start
    socket wpa_wlan0 dgram 660 wifi wifi
    disabled
    oneshot

service fwtool /system/bin/fwtool mark_boot success
    class late_start
    user root
    oneshot

service kickstart /vendor/bin/qcks -i /vendor/firmware/mdm/image/ -r /data/qcks/mdm/
    class late_start
    disabled
    user system
    group system
    oneshot

service qmuxd /vendor/bin/qmuxd
    class late_start
    disabled
    user system
    group system radio

service netmgrd /vendor/bin/netmgrd
    class late_start
    disabled
    group system radio

service tlk_daemon /vendor/bin/tlk_daemon --storagedir /data/ss --rpmbdev /dev/block/mmcblk0rpmb
    class main
    group system

on property:debug.bq25892=dump
    exec - root root system -- /system/bin/dump_bq25892.sh
