#
# Copyright 2013 The Android Open Source Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#      http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#

import init.hammerhead.usb.rc

on early-init
    mount debugfs debugfs /sys/kernel/debug
    chown system system /sys/kernel/debug/kgsl/proc

on init
    # See storage config details at http://source.android.com/tech/storage/
    mkdir /mnt/shell/emulated 0700 shell shell
    mkdir /storage/emulated 0555 root root

    # Set permissions for persist partition
    mkdir /persist 0771 system system
    mkdir /firmware 0771 system system

    export EXTERNAL_STORAGE /storage/emulated/legacy
    export EMULATED_STORAGE_SOURCE /mnt/shell/emulated
    export EMULATED_STORAGE_TARGET /storage/emulated

    # Support legacy paths
    symlink /storage/emulated/legacy /sdcard
    symlink /storage/emulated/legacy /mnt/sdcard
    symlink /storage/emulated/legacy /storage/sdcard0
    symlink /mnt/shell/emulated/0 /storage/emulated/legacy

on fs
    mount_all ./fstab.hammerhead
    restorecon_recursive /persist
    setprop ro.crypto.fuse_sdcard true
    write /sys/kernel/boot_adsp/boot 1

on early-boot
    # set RLIMIT_MEMLOCK to 64MB
    setrlimit 8 67108864 67108864

on boot
    # Enable DEBUG_SUSPEND, DEBUG_EXIT_SUSPEND, and DEBUG_WAKEUP
    write /sys/module/wakelock/parameters/debug_mask 7

    # bluetooth
    chown bluetooth net_bt_stack /sys/class/rfkill/rfkill0/type
    chown bluetooth net_bt_stack /sys/class/rfkill/rfkill0/state
    chmod 0660 /sys/class/rfkill/rfkill0/state

    # bluetooth LPM
    chown bluetooth net_bt_stack /proc/bluetooth/sleep/lpm
    chown bluetooth net_bt_stack /proc/bluetooth/sleep/btwrite

    #bluetooth UART dev
    chown bluetooth net_bt_stack /sys/devices/platform/msm_serial_hs.0/clock
    chmod 0660 /sys/devices/platform/msm_serial_hs.0/clock

    #Create QMUX deamon socket area
    mkdir /dev/socket/qmux_radio 0770 radio radio
    chmod 2770 /dev/socket/qmux_radio
    mkdir /dev/socket/qmux_audio 0770 media audio
    chmod 2770 /dev/socket/qmux_audio
    mkdir /dev/socket/qmux_bluetooth 0770 bluetooth bluetooth
    chmod 2770 /dev/socket/qmux_bluetooth
    mkdir /dev/socket/qmux_gps 0770 gps gps
    chmod 2770 /dev/socket/qmux_gps

    # Camera Recording
    mkdir /dev/video
    symlink /dev/video32 /dev/video/venus_dec
    symlink /dev/video33 /dev/video/venus_enc

    # Allow QMUX daemon to assign port open wait time
    chown radio radio /sys/devices/virtual/hsicctl/hsicctl0/modem_wait

    #For bridgemgr daemon to inform the USB driver of the correct transport
    chown radio radio /sys/class/android_usb/f_rmnet_smd_sdio/transport

    # Assign TCP buffer thresholds to be ceiling value of technology maximums
    # Increased technology maximums should be reflected here.
    write /proc/sys/net/core/rmem_max  2097152
    write /proc/sys/net/core/wmem_max  2097152

    # Define TCP buffer sizes
    # ReadMin, ReadInitial, ReadMax, WriteMin, WriteInitial, WriteMax
    setprop net.tcp.buffersize.hsdpa    4094,87380,704512,4096,16384,110208
    setprop net.tcp.buffersize.hspa     4094,87380,704512,4096,16384,110208
    setprop net.tcp.buffersize.hsupa    4094,87380,704512,4096,16384,110208

    # create symlink for fb1 as HDMI
    symlink /dev/graphics/fb1 /dev/graphics/hdmi

    # setup permissions for fb1 related nodes
    chown system graphics /sys/class/graphics/fb1/hpd
    chown system graphics /sys/class/graphics/fb1/vendor_name
    chown system graphics /sys/class/graphics/fb1/product_description
    chmod 0664 /sys/devices/virtual/graphics/fb1/hpd
    chmod 0664 /sys/devices/virtual/graphics/fb1/vendor_name
    chmod 0664 /sys/devices/virtual/graphics/fb1/product_description

    # To allow interfaces to get v6 address when tethering is enabled
    write /proc/sys/net/ipv6/conf/rmnet0/accept_ra 2
    write /proc/sys/net/ipv6/conf/rmnet1/accept_ra 2
    write /proc/sys/net/ipv6/conf/rmnet2/accept_ra 2
    write /proc/sys/net/ipv6/conf/rmnet3/accept_ra 2
    write /proc/sys/net/ipv6/conf/rmnet4/accept_ra 2
    write /proc/sys/net/ipv6/conf/rmnet5/accept_ra 2
    write /proc/sys/net/ipv6/conf/rmnet6/accept_ra 2
    write /proc/sys/net/ipv6/conf/rmnet7/accept_ra 2

    # Subsytem Restart
    #adsp
    write /sys/bus/msm_subsys/devices/subsys0/restart_level "related"
    #modem
    write /sys/bus/msm_subsys/devices/subsys1/restart_level "related"
    #venus
    write /sys/bus/msm_subsys/devices/subsys2/restart_level "related"

    # leds
    chown system system /sys/class/leds/red/on_off_ms
    chown system system /sys/class/leds/green/on_off_ms
    chown system system /sys/class/leds/blue/on_off_ms
    chown system system /sys/class/leds/red/rgb_start
    chmod 664 /sys/class/leds/lcd-backlight/brightness

on post-fs-data
    mkdir /data/media 0770 media_rw media_rw

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

    # wifi
    chown wifi system /persist/wifi

    #  bluetooth
    mkdir /data/misc/bluetooth 0770 bluetooth bluetooth

    # Create directory used by audio subsystem
    mkdir /data/misc/audio 0770 audio audio

    # Create directory used by sensor subsystem
    mkdir /data/system 0755 system system
    mkdir /data/system/sensors
    chmod 755 /data/system/sensors
    write /data/system/sensors/settings 1
    chmod 660 /data/system/sensors/settings

    # AKM setting data
    mkdir /data/misc/sensors
    chmod 775 /data/misc/sensors

    # Sensor
    mkdir /persist/sensors
    chmod 775 /persist/sensors

    # communicate with mpdecision and thermald
    mkdir /dev/socket/mpdecision 2770 root system

    # save rtc time offsets
    mkdir /data/system/time 0700 system system

    # Ecc_Handler qcril.db
    mkdir /data/misc/radio 0770 radio radio
    symlink /system/etc/qcril.db /data/misc/radio/qcril.db

    setprop vold.post_fs_data_done 1

    # Set the CPU Freq Sampling rates
    write /sys/module/msm_thermal/core_control/enabled 0
    write /sys/devices/system/cpu/cpu1/online 1
    write /sys/devices/system/cpu/cpu2/online 1
    write /sys/devices/system/cpu/cpu3/online 1
    write /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor "ondemand"
    write /sys/devices/system/cpu/cpu1/cpufreq/scaling_governor "ondemand"
    write /sys/devices/system/cpu/cpu2/cpufreq/scaling_governor "ondemand"
    write /sys/devices/system/cpu/cpu3/cpufreq/scaling_governor "ondemand"
    write /sys/devices/system/cpu/cpufreq/ondemand/up_threshold 90
    write /sys/devices/system/cpu/cpufreq/ondemand/sampling_rate 50000
    write /sys/devices/system/cpu/cpufreq/ondemand/io_is_busy 1
    write /sys/devices/system/cpu/cpufreq/ondemand/sampling_down_factor 4
    write /sys/devices/system/cpu/cpufreq/ondemand/down_differential 10
    write /sys/devices/system/cpu/cpufreq/ondemand/up_threshold_multi_core 70
    write /sys/devices/system/cpu/cpufreq/ondemand/down_differential_multi_core 3
    write /sys/devices/system/cpu/cpufreq/ondemand/optimal_freq 960000
    write /sys/devices/system/cpu/cpufreq/ondemand/sync_freq 960000
    write /sys/devices/system/cpu/cpufreq/ondemand/up_threshold_any_cpu_load 80
    write /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq 300000
    write /sys/devices/system/cpu/cpu1/cpufreq/scaling_min_freq 300000
    write /sys/devices/system/cpu/cpu2/cpufreq/scaling_min_freq 300000
    write /sys/devices/system/cpu/cpu3/cpufreq/scaling_min_freq 300000
    chown system /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq
    chown system /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq
    chmod 664 /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq
    chmod 664 /sys/devices/system/cpu/cpu1/cpufreq/scaling_min_freq
    chmod 664 /sys/devices/system/cpu/cpu2/cpufreq/scaling_min_freq
    chmod 664 /sys/devices/system/cpu/cpu3/cpufreq/scaling_min_freq
    write /sys/module/msm_thermal/core_control/enabled 1
    chown root.system /sys/devices/system/cpu/mfreq
    chmod 220 /sys/devices/system/cpu/mfreq
    chown root.system /sys/devices/system/cpu/cpu1/online
    chown root.system /sys/devices/system/cpu/cpu2/online
    chown root.system /sys/devices/system/cpu/cpu3/online
    chmod 664 /sys/devices/system/cpu/cpu1/online
    chmod 664 /sys/devices/system/cpu/cpu2/online
    chmod 664 /sys/devices/system/cpu/cpu3/online
    write /dev/cpuctl/apps/cpu.notify_on_migrate 1

on charger
    # Booting modem
    wait /dev/block/platform/msm_sdcc.1/by-name/modem
    mount vfat /dev/block/platform/msm_sdcc.1/by-name/modem /firmware ro shortname=lower,uid=1000,gid=1000,dmask=227,fmask=337
    wait /dev/block/platform/msm_sdcc.1/by-name/system
    mount ext4 /dev/block/platform/msm_sdcc.1/by-name/system /system ro barrier=1
    start rmt_storage
    start irsc_util

    # Enable Power modes and set the CPU Freq Sampling rates
    write /sys/module/lpm_resources/enable_low_power/l2 2
    write /sys/module/lpm_resources/enable_low_power/pxo 1
    write /sys/module/lpm_resources/enable_low_power/vdd_dig 1
    write /sys/module/lpm_resources/enable_low_power/vdd_mem 1
    write /sys/module/pm_8x60/modes/cpu0/power_collapse/suspend_enabled 1
    write /sys/module/pm_8x60/modes/cpu1/power_collapse/suspend_enabled 1
    write /sys/module/pm_8x60/modes/cpu2/power_collapse/suspend_enabled 1
    write /sys/module/pm_8x60/modes/cpu3/power_collapse/suspend_enabled 1
    write /sys/module/pm_8x60/modes/cpu0/power_collapse/idle_enabled 1
    write /sys/module/msm_thermal/core_control/enabled 0
    write /sys/devices/system/cpu/cpu1/online 1
    write /sys/devices/system/cpu/cpu2/online 1
    write /sys/devices/system/cpu/cpu3/online 1
    write /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor "powersave"
    write /sys/devices/system/cpu/cpu1/cpufreq/scaling_governor "powersave"
    write /sys/devices/system/cpu/cpu2/cpufreq/scaling_governor "powersave"
    write /sys/devices/system/cpu/cpu3/cpufreq/scaling_governor "powersave"
    write /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq 300000
    write /sys/devices/system/cpu/cpu1/cpufreq/scaling_min_freq 300000
    write /sys/devices/system/cpu/cpu2/cpufreq/scaling_min_freq 300000
    write /sys/devices/system/cpu/cpu3/cpufreq/scaling_min_freq 300000
    write /sys/module/msm_thermal/core_control/enabled 1
    write /sys/devices/system/cpu/cpu1/online 0
    write /sys/devices/system/cpu/cpu2/online 0
    write /sys/devices/system/cpu/cpu3/online 0
    start mpdecision

on property:init.svc.wpa_supplicant=stopped
    stop dhcpcd

on property:sys.boot_completed=1
    # Enable Power modes
    write /sys/module/lpm_resources/enable_low_power/l2 2
    write /sys/module/lpm_resources/enable_low_power/pxo 1
    write /sys/module/lpm_resources/enable_low_power/vdd_dig 1
    write /sys/module/lpm_resources/enable_low_power/vdd_mem 1
    write /sys/module/pm_8x60/modes/cpu0/power_collapse/suspend_enabled 1
    write /sys/module/pm_8x60/modes/cpu1/power_collapse/suspend_enabled 1
    write /sys/module/pm_8x60/modes/cpu2/power_collapse/suspend_enabled 1
    write /sys/module/pm_8x60/modes/cpu3/power_collapse/suspend_enabled 1
    write /sys/module/pm_8x60/modes/cpu0/power_collapse/idle_enabled 1
    write /sys/module/pm_8x60/modes/cpu0/standalone_power_collapse/suspend_enabled 1
    write /sys/module/pm_8x60/modes/cpu1/standalone_power_collapse/suspend_enabled 1
    write /sys/module/pm_8x60/modes/cpu2/standalone_power_collapse/suspend_enabled 1
    write /sys/module/pm_8x60/modes/cpu3/standalone_power_collapse/suspend_enabled 1
    write /sys/module/pm_8x60/modes/cpu0/standalone_power_collapse/idle_enabled 1
    write /sys/module/pm_8x60/modes/cpu1/standalone_power_collapse/idle_enabled 1
    write /sys/module/pm_8x60/modes/cpu2/standalone_power_collapse/idle_enabled 1
    write /sys/module/pm_8x60/modes/cpu3/standalone_power_collapse/idle_enabled 1
    write /sys/module/pm_8x60/modes/cpu0/retention/idle_enabled 1
    write /sys/module/pm_8x60/modes/cpu1/retention/idle_enabled 1
    write /sys/module/pm_8x60/modes/cpu2/retention/idle_enabled 1
    write /sys/module/pm_8x60/modes/cpu3/retention/idle_enabled 1
    start mpdecision

service rmt_storage /system/bin/rmt_storage
    class core
    user root
    group system

service bridgemgrd /system/bin/bridgemgrd
    class main
    user radio
    group radio

# QMUX must be in multiple groups to support external process connections
service qmuxd /system/bin/qmuxd
    class main
    user radio
    group radio audio bluetooth gps

service netmgrd /system/bin/netmgrd
    class main
    group radio

# QCOM sensor
service sensors /system/bin/sensors.qcom
    class main
    user root
    group root

service irsc_util /system/bin/irsc_util "/etc/sec_config"
    class main
    user root
    oneshot

service p2p_supplicant /system/bin/wpa_supplicant \
    -iwlan0 -Dnl80211 -c/data/misc/wifi/wpa_supplicant.conf \
    -I/system/etc/wifi/wpa_supplicant_overlay.conf \
    -O/data/misc/wifi/sockets -N \
    -ip2p0 -Dnl80211 -c/data/misc/wifi/p2p_supplicant.conf \
    -I/system/etc/wifi/p2p_supplicant_overlay.conf \
    -puse_p2p_group_interface=1 -e/data/misc/wifi/entropy.bin \
    -g@android:wpa_wlan0
    #   we will start as root and wpa_supplicant will switch to user wifi
    #   after setting up the capabilities required for WEXT
    #   user wifi
    #   group wifi inet keystore
    class main
    socket wpa_wlan0 dgram 660 wifi wifi
    disabled
    oneshot

service wpa_supplicant /system/bin/wpa_supplicant \
    -iwlan0 -Dnl80211 -c/data/misc/wifi/wpa_supplicant.conf \
    -I/system/etc/wifi/wpa_supplicant_overlay.conf \
    -O/data/misc/wifi/sockets \
    -e/data/misc/wifi/entropy.bin -g@android:wpa_wlan0
    #   we will start as root and wpa_supplicant will switch to user wifi
    #   after setting up the capabilities required for WEXT
    #   user wifi
    #   group wifi inet keystore
    class main
    socket wpa_wlan0 dgram 660 wifi wifi
    disabled
    oneshot

service dhcpcd_wlan0 /system/bin/dhcpcd -aABDKL
    class late_start
    disabled
    oneshot

service dhcpcd_p2p /system/bin/dhcpcd -aABKL
    class late_start
    disabled
    oneshot

service iprenew_wlan0 /system/bin/dhcpcd -n
    class late_start
    disabled
    oneshot

service iprenew_p2p /system/bin/dhcpcd -n
    class late_start
    disabled
    oneshot

service dhcpcd_bnep0 /system/bin/dhcpcd -BKLG
    disabled
    oneshot

service dhcpcd_bnep1 /system/bin/dhcpcd -BKLG
    disabled
    oneshot

service dhcpcd_bnep2 /system/bin/dhcpcd -BKLG
    disabled
    oneshot

service dhcpcd_bnep3 /system/bin/dhcpcd -BKLG
    disabled
    oneshot

service dhcpcd_bnep4 /system/bin/dhcpcd -BKLG
    disabled
    oneshot

service dhcpcd_bt-pan /system/bin/dhcpcd -BKLG
    disabled
    oneshot

service iprenew_bt-pan /system/bin/dhcpcd -n
    disabled
    oneshot

service qseecomd /system/bin/qseecomd
    class late_start
    user system
    group system

# virtual sdcard daemon running as media_rw (1023)
service sdcard /system/bin/sdcard -u 1023 -g 1023 -l /data/media /mnt/shell/emulated
    class late_start

service charger /charger
    class charger


service qcamerasvr /system/bin/mm-qcamera-daemon
    class late_start
    user camera
    group camera system inet input

service bdAddrLoader /system/bin/bdAddrLoader -f /persist/bluetooth/.bdaddr -h -x
    class main
    user bluetooth
    group system bluetooth
    oneshot

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

service mpdecision /system/bin/mpdecision --no_sleep --avg_comp
   class main
   user root
   group root
   disabled

service ssr_ramdump /system/bin/subsystem_ramdump -m -t emmc
    class main
    disabled
    user root
    group root

service thermal-engine /system/bin/thermal-engine-hh
   class main
   user root
   group radio system

service vss_init /vendor/bin/vss_init
    class late_start
    user root
    group root
    disabled

service time_daemon /system/bin/time_daemon
    class late_start
    user root
    group root
