#
# 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

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
    mkdir /storage/emulated/legacy 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

on fs
    mount_all ./fstab.hammerhead
    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
    chown bluetooth net_bt_stack /dev/ttyHS99
    chmod 0660 /dev/ttyHS99
    chown bluetooth net_bt_stack /proc/bluetooth/sleep/proto
    chmod 0660 /proc/bluetooth/sleep/proto
    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

    # 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
    chmod 0664 /sys/devices/virtual/graphics/fb1/hpd

    # 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

    # Invensense IIO settings
    chown system system /dev/iio:device0
    chown system system /sys/bus/iio/devices/iio:device0/uevent
    chown system system /sys/bus/iio/devices/iio:device0/dev
    chown system system /sys/bus/iio/devices/iio:device0/buffer/length
    chown system system /sys/bus/iio/devices/iio:device0/buffer/enable
    chown system system /sys/bus/iio/devices/iio:device0/scan_elements/in_timestamp_en
    chown system system /sys/bus/iio/devices/iio:device0/scan_elements/in_timestamp_type
    chown system system /sys/bus/iio/devices/iio:device0/scan_elements/in_timestamp_index
    chown system system /sys/bus/iio/devices/iio:device0/sampling_frequency_available
    chown system system /sys/bus/iio/devices/iio:device0/reg_dump
    chown system system /sys/bus/iio/devices/iio:device0/temperature
    chown system system /sys/bus/iio/devices/iio:device0/in_anglvel_scale
    chown system system /sys/bus/iio/devices/iio:device0/in_anglvel_x_calibbias
    chown system system /sys/bus/iio/devices/iio:device0/in_anglvel_y_calibbias
    chown system system /sys/bus/iio/devices/iio:device0/in_anglvel_z_calibbias
    chown system system /sys/bus/iio/devices/iio:device0/in_anglvel_x_offset
    chown system system /sys/bus/iio/devices/iio:device0/in_anglvel_y_offset
    chown system system /sys/bus/iio/devices/iio:device0/in_anglvel_z_offset
    chown system system /sys/bus/iio/devices/iio:device0/self_test_samples
    chown system system /sys/bus/iio/devices/iio:device0/self_test_threshold
    chown system system /sys/bus/iio/devices/iio:device0/gyro_enable
    chown system system /sys/bus/iio/devices/iio:device0/gyro_fifo_enable
    chown system system /sys/bus/iio/devices/iio:device0/power_state
    chown system system /sys/bus/iio/devices/iio:device0/sampling_frequency
    chown system system /sys/bus/iio/devices/iio:device0/self_test
    chown system system /sys/bus/iio/devices/iio:device0/gyro_matrix
    chown system system /sys/bus/iio/devices/iio:device0/secondary_name
    chown system system /sys/bus/iio/devices/iio:device0/reg_write
    chown system system /sys/bus/iio/devices/iio:device0/debug_smd_enable_testp1
    chown system system /sys/bus/iio/devices/iio:device0/debug_smd_enable_testp2
    chown system system /sys/bus/iio/devices/iio:device0/debug_smd_exe_state
    chown system system /sys/bus/iio/devices/iio:device0/debug_smd_delay_cntr
    chown system system /sys/bus/iio/devices/iio:device0/event_display_orientation
    chown system system /sys/bus/iio/devices/iio:device0/event_accel_motion
    chown system system /sys/bus/iio/devices/iio:device0/event_smd
    chown system system /sys/bus/iio/devices/iio:device0/event_pedometer
    chown system system /sys/bus/iio/devices/iio:device0/in_accel_scale
    chown system system /sys/bus/iio/devices/iio:device0/in_accel_x_calibbias
    chown system system /sys/bus/iio/devices/iio:device0/in_accel_y_calibbias
    chown system system /sys/bus/iio/devices/iio:device0/in_accel_z_calibbias
    chown system system /sys/bus/iio/devices/iio:device0/in_accel_x_offset
    chown system system /sys/bus/iio/devices/iio:device0/in_accel_y_offset
    chown system system /sys/bus/iio/devices/iio:device0/in_accel_z_offset
    chown system system /sys/bus/iio/devices/iio:device0/in_accel_x_dmp_bias
    chown system system /sys/bus/iio/devices/iio:device0/in_accel_y_dmp_bias
    chown system system /sys/bus/iio/devices/iio:device0/in_accel_z_dmp_bias
    chown system system /sys/bus/iio/devices/iio:device0/in_anglvel_x_dmp_bias
    chown system system /sys/bus/iio/devices/iio:device0/in_anglvel_y_dmp_bias
    chown system system /sys/bus/iio/devices/iio:device0/in_anglvel_z_dmp_bias
    chown system system /sys/bus/iio/devices/iio:device0/pedometer_int_on
    chown system system /sys/bus/iio/devices/iio:device0/pedometer_on
    chown system system /sys/bus/iio/devices/iio:device0/pedometer_steps
    chown system system /sys/bus/iio/devices/iio:device0/pedometer_time
    chown system system /sys/bus/iio/devices/iio:device0/smd_enable
    chown system system /sys/bus/iio/devices/iio:device0/smd_threshold
    chown system system /sys/bus/iio/devices/iio:device0/smd_delay_threshold
    chown system system /sys/bus/iio/devices/iio:device0/smd_delay_threshold2
    chown system system /sys/bus/iio/devices/iio:device0/display_orientation_on
    chown system system /sys/bus/iio/devices/iio:device0/dmp_on
    chown system system /sys/bus/iio/devices/iio:device0/dmp_int_on
    chown system system /sys/bus/iio/devices/iio:device0/dmp_event_int_on
    chown system system /sys/bus/iio/devices/iio:device0/dmp_output_rate
    chown system system /sys/bus/iio/devices/iio:device0/batchmode_timeout
    chown system system /sys/bus/iio/devices/iio:device0/batchmode_wake_fifo_full_on
    chown system system /sys/bus/iio/devices/iio:device0/six_axes_q_on
    chown system system /sys/bus/iio/devices/iio:device0/three_axes_q_on
    chown system system /sys/bus/iio/devices/iio:device0/ped_q_on
    chown system system /sys/bus/iio/devices/iio:device0/step_detector_on
    chown system system /sys/bus/iio/devices/iio:device0/motion_lpa_on
    chown system system /sys/bus/iio/devices/iio:device0/motion_lpa_freq
    chown system system /sys/bus/iio/devices/iio:device0/motion_lpa_duration
    chown system system /sys/bus/iio/devices/iio:device0/motion_lpa_threshold
    chown system system /sys/bus/iio/devices/iio:device0/accel_enable
    chown system system /sys/bus/iio/devices/iio:device0/accel_fifo_enable
    chown system system /sys/bus/iio/devices/iio:device0/firmware_loaded
    chown system system /sys/bus/iio/devices/iio:device0/accel_matrix
    chown system system /sys/bus/iio/devices/iio:device0/in_magn_scale
    chown system system /sys/bus/iio/devices/iio:device0/compass_enable
    chown system system /sys/bus/iio/devices/iio:device0/compass_matrix
    chown system system /sys/bus/iio/devices/iio:device0/name
    chown system system /sys/bus/iio/devices/iio:device0/trigger/current_trigger
    chown system system /sys/bus/iio/devices/iio:device0/power/runtime_status
    chown system system /sys/bus/iio/devices/iio:device0/power/control
    chown system system /sys/bus/iio/devices/iio:device0/power/runtime_suspended_time
    chown system system /sys/bus/iio/devices/iio:device0/power/runtime_active_time
    chown system system /sys/bus/iio/devices/iio:device0/power/autosuspend_delay_ms
    chown system system /sys/bus/iio/devices/iio:device0/dmp_firmware
    chown system system /sys/bus/iio/devices/iio:device0/pressure_enable
    chown system system /sys/bus/iio/devices/iio:device0/in_anglvel_self_test_scale
    chown system system /sys/bus/iio/devices/iio:device0/gyro_rate
    chown system system /sys/bus/iio/devices/iio:device0/in_accel_self_test_scale
    chown system system /sys/bus/iio/devices/iio:device0/six_axes_q_rate
    chown system system /sys/bus/iio/devices/iio:device0/ped_q_rate
    chown system system /sys/bus/iio/devices/iio:device0/accel_rate
    chown system system /sys/bus/iio/devices/iio:device0/compass_rate
    chown system system /sys/bus/iio/devices/iio:device0/compass_sens
    chown system system /sys/bus/iio/devices/iio:device0/pressure_rate
    chown system system /sys/bus/iio/devices/iio:device0/step_indicator_on
    chown system system /sys/bus/iio/devices/iio:device0/three_axes_q_rate

    # Proximity and light sensor
    chown system system /sys/bus/i2c/devices/i2c-3/3-0039/enable_als_sensor
    chown system system /sys/bus/i2c/devices/i2c-3/3-0039/enable_ps_sensor

    # 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"

    # Subsytem Ramdump collection
    mkdir /data/tombstones 0775 system system
    mkdir /data/tombstones/ramdump 0775 system system
    write /sys/module/subsystem_restart/parameters/enable_ramdumps 1

    # Modem logging collection
    mkdir /data/diag_logs 0777 system system
    chmod 666 /dev/diag

    # 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

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

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

    # Create the directories used by the Wireless subsystem
    mkdir /data/misc/wifi 0770 wifi wifi
    mkdir /data/misc/wifi/sockets 0770 wifi wifi
    mkdir /data/misc/wifi/wpa_supplicant 0770 wifi wifi
    mkdir /data/misc/dhcp 0770 dhcp dhcp
    chown dhcp dhcp /data/misc/dhcp

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

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

    setprop vold.post_fs_data_done 1

    # 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/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
    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
    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/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/devices/system/cpu/cpu1/online 0
    write /sys/devices/system/cpu/cpu2/online 0
    write /sys/devices/system/cpu/cpu3/online 0

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

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

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

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

service ssr_ramdump /system/bin/subsystem_ramdump 1
    class main
    disabled

service p2p_supplicant /system/bin/logwrapper /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/wpa_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/logwrapper /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 -ABKLG
    class late_start
    disabled
    oneshot

service dhcpcd_p2p /system/bin/dhcpcd -ABKLG
    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 /data/media /mnt/shell/emulated 1023 1023
    class late_start

# Binding fuse mount point to /storage/emulated/legacy
    on property:init.svc.sdcard=running
         wait /mnt/shell/emulated/0
         mount none /mnt/shell/emulated/0 /storage/emulated/legacy bind

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

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

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

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

