from: 026342771c6642980cb4653b1ec4d857a5d8be54 Bug: 167996145 Change-Id: I2ebf7f019afed1cbe9b60dcd82581bd3a52fe109
685 lines
25 KiB
Text
685 lines
25 KiB
Text
import init.gs101.usb.rc
|
|
import android.hardware.drm@1.2-service.widevine.rc
|
|
import init.exynos.sensorhub.rc
|
|
import /vendor/etc/init/hw/init.aoc.rc
|
|
|
|
service vendor.charger /system/bin/charger
|
|
class charger
|
|
seclabel u:r:charger:s0
|
|
user system
|
|
group system wakelock input
|
|
capabilities SYS_BOOT
|
|
file /dev/kmsg w
|
|
file /sys/fs/pstore/console-ramoops-0 r
|
|
file /sys/fs/pstore/console-ramoops r
|
|
file /proc/last_kmsg r
|
|
|
|
on early-init
|
|
mkdir /mnt/vendor/efs 0771 radio system
|
|
mkdir /mnt/vendor/efs_backup 0771 radio system
|
|
mkdir /mnt/vendor/modem_img 0771 radio system
|
|
mkdir /mnt/vendor/modem_userdata 0771 radio system
|
|
mkdir /mnt/vendor/persist 0771 system system
|
|
mount debugfs /sys/kernel/debug /sys/kernel/debug
|
|
mount_all /vendor/etc/fstab.persist --early
|
|
|
|
on init
|
|
# CPU0 cannot be offline
|
|
chmod 0444 /sys/devices/system/cpu/cpu0/online
|
|
|
|
# Boot time fs tuning
|
|
write /sys/block/sda/queue/iostats 0
|
|
write /sys/block/sda/queue/scheduler bfq
|
|
write /sys/block/sda/queue/iosched/slice_idle 8
|
|
write /sys/block/sda/queue/nr_requests 256
|
|
write /dev/sys/fs/by-name/userdata/data_io_flag 56
|
|
write /dev/sys/fs/by-name/userdata/node_io_flag 56
|
|
|
|
chown system system /sys/kernel/vendor_sched/clear_prefer_high_cap
|
|
chown system system /sys/kernel/vendor_sched/set_prefer_high_cap
|
|
chmod 0220 /sys/kernel/vendor_sched/clear_prefer_high_cap
|
|
chmod 0220 /sys/kernel/vendor_sched/set_prefer_high_cap
|
|
|
|
wait /dev/block/platform/${ro.boot.boot_devices}
|
|
symlink /dev/block/platform/${ro.boot.boot_devices} /dev/block/bootdevice
|
|
|
|
# to access UFS/eMMC sysfs directly
|
|
symlink /sys/devices/platform/${ro.boot.boot_devices} /dev/sys/block/bootdevice
|
|
|
|
# Disable UFS powersaving
|
|
write /dev/sys/block/bootdevice/clkgate_enable 0
|
|
|
|
start vendor.keymaster-3-0
|
|
|
|
# ZRAM setup
|
|
write /sys/block/zram0/comp_algorithm lz77eh
|
|
write /proc/sys/vm/page-cluster 0
|
|
|
|
# Some user code relies on ro.boot.hardware.revision
|
|
setprop ro.boot.hardware.revision ${ro.revision}
|
|
|
|
# Allow PAI targeting per hardware SKU
|
|
setprop ro.oem.key1 ${ro.boot.hardware.sku}
|
|
|
|
# Property used by vintf for sku specific manifests
|
|
# Property used by NFC for sku specific configurations
|
|
setprop ro.boot.product.hardware.sku ${ro.boot.hardware.sku}
|
|
|
|
# NFC streset tool name
|
|
setprop persist.vendor.nfc.streset libstreset21
|
|
setprop persist.vendor.se.streset libstreset21
|
|
|
|
# Support legacy paths
|
|
symlink /data/app /factory
|
|
|
|
# Apply network parameters for high data performance.
|
|
write /proc/sys/net/core/rmem_default 327680
|
|
write /proc/sys/net/core/rmem_max 8388608
|
|
write /proc/sys/net/core/wmem_default 327680
|
|
write /proc/sys/net/core/wmem_max 8388608
|
|
write /proc/sys/net/core/optmem_max 20480
|
|
write /proc/sys/net/core/netdev_max_backlog 10000
|
|
write /proc/sys/net/ipv4/tcp_rmem "2097152 4194304 8388608"
|
|
write /proc/sys/net/ipv4/tcp_wmem "262144 524288 1048576"
|
|
write /proc/sys/net/ipv4/tcp_mem "44259 59012 88518"
|
|
write /proc/sys/net/ipv4/udp_mem "88518 118025 177036"
|
|
|
|
write /sys/class/net/rmnet0/queues/rx-0/rps_cpus fe
|
|
write /sys/class/net/rmnet1/queues/rx-0/rps_cpus fe
|
|
write /sys/class/net/rmnet2/queues/rx-0/rps_cpus fe
|
|
write /sys/class/net/rmnet3/queues/rx-0/rps_cpus fe
|
|
write /sys/class/net/rmnet4/queues/rx-0/rps_cpus fe
|
|
write /sys/class/net/rmnet5/queues/rx-0/rps_cpus fe
|
|
write /sys/class/net/rmnet6/queues/rx-0/rps_cpus fe
|
|
write /sys/class/net/rmnet7/queues/rx-0/rps_cpus fe
|
|
|
|
# Create UDS structure for base VR services.
|
|
mkdir /dev/socket/pdx 0775 system system
|
|
mkdir /dev/socket/pdx/system 0775 system system
|
|
mkdir /dev/socket/pdx/system/buffer_hub 0775 system system
|
|
mkdir /dev/socket/pdx/system/performance 0775 system system
|
|
mkdir /dev/socket/pdx/system/vr 0775 system system
|
|
mkdir /dev/socket/pdx/system/vr/display 0775 system system
|
|
mkdir /dev/socket/pdx/system/vr/pose 0775 system system
|
|
mkdir /dev/socket/pdx/system/vr/sensors 0775 system system
|
|
|
|
# EAS utilclamp boosting interfaces
|
|
chown system system /dev/cpuctl/top-app/cpu.uclamp.min
|
|
chown system system /dev/cpuctl/top-app/cpu.uclamp.max
|
|
chown system system /dev/cpuctl/top-app/cpu.uclamp.latency_sensitive
|
|
chown system system /dev/cpuctl/top-app/cgroup.procs
|
|
|
|
chown system system /dev/cpuctl/foreground/cpu.uclamp.min
|
|
chown system system /dev/cpuctl/foreground/cpu.uclamp.max
|
|
chown system system /dev/cpuctl/foreground/cpu.uclamp.latency_sensitive
|
|
chown system system /dev/cpuctl/foreground/cgroup.procs
|
|
|
|
chown system system /dev/cpuctl/background/cpu.uclamp.min
|
|
chown system system /dev/cpuctl/background/cpu.uclamp.max
|
|
chown system system /dev/cpuctl/background/cpu.uclamp.latency_sensitive
|
|
chown system system /dev/cpuctl/background/cgroup.procs
|
|
|
|
chown system system /dev/cpuctl/rt/cpu.uclamp.min
|
|
chown system system /dev/cpuctl/rt/cpu.uclamp.max
|
|
chown system system /dev/cpuctl/rt/cpu.uclamp.latency_sensitive
|
|
chown system system /dev/cpuctl/rt/cgroup.procs
|
|
|
|
write /dev/cpuctl/top-app/cpu.uclamp.min 30
|
|
write /dev/cpuctl/top-app/cpu.uclamp.latency_sensitive 1
|
|
write /dev/cpuctl/foreground/cpu.uclamp.min 30
|
|
write /dev/cpuctl/foreground/cpu.uclamp.latency_sensitive 1
|
|
|
|
# governor setting
|
|
write /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor sched_pixel
|
|
write /sys/devices/system/cpu/cpu0/cpufreq/sched_pixel/up_rate_limit_us 500
|
|
write /sys/devices/system/cpu/cpu0/cpufreq/sched_pixel/down_rate_limit_us 500
|
|
write /sys/devices/system/cpu/cpu4/cpufreq/scaling_governor sched_pixel
|
|
write /sys/devices/system/cpu/cpu4/cpufreq/sched_pixel/up_rate_limit_us 500
|
|
write /sys/devices/system/cpu/cpu4/cpufreq/sched_pixel/down_rate_limit_us 20000
|
|
write /sys/devices/system/cpu/cpu6/cpufreq/scaling_governor sched_pixel
|
|
write /sys/devices/system/cpu/cpu6/cpufreq/sched_pixel/up_rate_limit_us 500
|
|
write /sys/devices/system/cpu/cpu6/cpufreq/sched_pixel/down_rate_limit_us 20000
|
|
|
|
# RT uclamp setting
|
|
write /proc/sys/kernel/sched_util_clamp_min_rt_default 0
|
|
|
|
# change permissions and default values for camera-daemon cpu controller
|
|
chown system system /dev/cpuctl/camera-daemon/cpu.uclamp.min
|
|
chown system system /dev/cpuctl/camera-daemon/cpu.uclamp.max
|
|
chown system system /dev/cpuctl/camera-daemon/cpu.uclamp.latency_sensitive
|
|
chown system system /dev/cpuctl/camera-daemon/cgroup.procs
|
|
write /dev/cpuctl/camera-daemon/cpu.uclamp.latency_sensitive 1
|
|
write /dev/cpuctl/camera-daemon/cpu.uclamp.min 0
|
|
|
|
chown system system /dev/cpuset/cgroup.procs
|
|
|
|
# nanohub sensor
|
|
chmod 0664 /dev/nanohub
|
|
chmod 0664 /dev/nanohub_comms
|
|
chown system system /dev/nanohub
|
|
chown system system /dev/nanohub_comms
|
|
|
|
# logbuffer
|
|
chown system system /dev/logbuffer_batt_ce
|
|
chown system system /dev/logbuffer_maxq
|
|
chown system system /dev/logbuffer_google,cpm
|
|
chown system system /dev/logbuffer_rtx
|
|
chown system system /dev/logbuffer_ssoc
|
|
chown system system /dev/logbuffer_ttf
|
|
chown system system /dev/logbuffer_usbpd
|
|
chown system system /dev/logbuffer_wireless
|
|
|
|
# Dump maxfg
|
|
chown system system /sys/class/power_supply/maxfg/m5_model_state
|
|
chown system system /d/maxfg/fg_model
|
|
|
|
# pca9468 : slider+77729: 6-0057; slider+MW A1: 5-0057
|
|
chown system system /d/regmap/5-0057-pca9468-mains/registers
|
|
chown system system /d/regmap/6-0057-pca9468-mains/registers
|
|
|
|
# Modem temperature driver
|
|
chown radio system /sys/devices/platform/cp-tm1/cp_temp
|
|
|
|
# Loading common kernel modules in background
|
|
start insmod_sh_common
|
|
|
|
# start watchdogd
|
|
start watchdogd
|
|
|
|
# For GKI kernel, no device specific modules
|
|
on init
|
|
setprop vendor.device.modules.ready 1
|
|
|
|
on init && property:ro.boot.hw.soc.rev=0
|
|
setprop vendor.powerhal.config powerhint_a0.json
|
|
|
|
on init && property:ro.boot.hw.soc.rev=1
|
|
setprop vendor.powerhal.config powerhint_a1.json
|
|
|
|
on init && property:ro.boot.hw.soc.rev=0
|
|
# STOPSHIP b/177967147 disable SICD
|
|
write /sys/devices/platform/cpupm/cpupm/sicd 0
|
|
|
|
on init && property:ro.boot.hw.soc.rev=1
|
|
# STOPSHIP b/177967147 disable SICD
|
|
write /sys/devices/platform/cpupm/cpupm/sicd 0
|
|
|
|
on late-fs
|
|
# Wait for keymaster HALs
|
|
exec_start wait_for_keymaster
|
|
|
|
# Start bootanimation class before mount
|
|
class_start animation
|
|
|
|
# Mount RW partitions which need run fsck
|
|
mount_all /vendor/etc/fstab.gs101 --late
|
|
|
|
on post-fs-data
|
|
# Log data folder
|
|
mkdir /data/log 0771 radio system
|
|
mkdir /data/log/abox 0771 audioserver system
|
|
mkdir /data/vendor 0771 radio system
|
|
mkdir /data/vendor/log 0771 radio system
|
|
mkdir /data/vendor/log/cbd 0771 radio system
|
|
mkdir /data/vendor/log/rfsd 0771 radio system
|
|
|
|
mkdir /data/exynos/log 0771 radio system
|
|
mkdir /data/vendor/rild 0771 radio system
|
|
mkdir /data/vendor/dump 0771 radio system
|
|
mkdir /data/vendor/slog 0771 system system
|
|
|
|
# PixelLogger log paths.
|
|
mkdir /data/vendor/radio 773 system radio
|
|
mkdir /data/vendor/radio/logs 773 system radio
|
|
mkdir /data/vendor/radio/logs/always-on 773 system radio
|
|
|
|
# Modem extended log folder
|
|
mkdir /data/vendor/radio/extended_logs 0770 radio system
|
|
|
|
# Modem MDS log folder
|
|
mkdir /data/vendor/radio/mds 0771 radio system
|
|
|
|
# Unzipped modem images folder
|
|
mkdir /data/vendor/radio/image 0771 radio system
|
|
|
|
# Modem stat folder
|
|
mkdir /data/vendor/modem_stat 0771 radio system
|
|
write /data/vendor/modem_stat/debug.txt ""
|
|
chown radio system /data/vendor/modem_stat/debug.txt
|
|
chmod 0664 /data/vendor/modem_stat/debug.txt
|
|
|
|
# Modem replay folder
|
|
mkdir /mnt/vendor/modem_userdata/replay 0775 radio system
|
|
|
|
setprop vold.post_fs_data_done 1
|
|
setprop wifi.direct.interface p2p-dev-wlan0
|
|
setprop wifi.aware.interface aware_nmi0
|
|
|
|
# IPSEC PIDDIR for VoWiFi
|
|
mkdir /data/vendor/misc 0771 root system
|
|
mkdir /data/vendor/misc/vpn 0771 root system
|
|
|
|
# Permissions Camera
|
|
mkdir /data/camera 0777 root root
|
|
mkdir /data/vendor/camera 0770 system camera
|
|
chmod 0755 /sys/kernel/debug/tracing
|
|
restorecon /sys/kernel/debug/tracing/trace_marker
|
|
|
|
# ranging sensor
|
|
chown system system /dev/stmvl53l1_ranging
|
|
chmod 0660 /dev/stmvl53l1_ranging
|
|
|
|
# Audio dump and debug
|
|
mkdir /data/vendor/audio 0770 audio audio
|
|
|
|
# Create the directories for Darwinn HAL.
|
|
mkdir /data/vendor/hal_neuralnetworks_darwinn 0770 system system
|
|
mkdir /data/vendor/hal_neuralnetworks_darwinn/checksum_cache 0770 system system
|
|
|
|
on post-fs-data
|
|
# Create the directories used by the Wireless subsystem
|
|
mkdir /data/vendor/wifi 0771 wifi wifi
|
|
mkdir /data/vendor/wifi/wpa 0770 wifi wifi
|
|
mkdir /data/vendor/wifi/wpa/sockets 0770 wifi wifi
|
|
|
|
# Gatekeeper data
|
|
mkdir /data/vendor/gk 0771 system system
|
|
|
|
# HWC data
|
|
mkdir /data/vendor/log/hwc 0771 system graphics
|
|
|
|
# Video data
|
|
mkdir /data/vendor/media 0700 mediacodec mediacodec
|
|
|
|
on post-fs-data
|
|
# GPS
|
|
mkdir /data/vendor/gps 0771 system system
|
|
chown system system /data/vendor/gps
|
|
rm /data/vendor/gps/gps_started
|
|
rm /data/vendor/gps/glonass_started
|
|
rm /data/vendor/gps/beidou_started
|
|
rm /data/vendor/gps/smd_started
|
|
rm /data/vendor/gps/sv_cno.info
|
|
|
|
chown gps system /sys/devices/platform/10940000.spi/spi_master/spi5/spi5.0/nstandby
|
|
chmod 0664 /dev/ttyBCM
|
|
chown gps system /dev/ttyBCM
|
|
chmod 0664 /dev/bbd_control
|
|
chown gps system /dev/bbd_control
|
|
chmod 0664 /dev/bbd_patch
|
|
chown gps system /dev/bbd_patch
|
|
chmod 0664 /dev/bbd_sensor
|
|
chown gps system /dev/bbd_sensor
|
|
|
|
on early-boot
|
|
# Wait for insmod_sh to finish all common modules
|
|
wait_for_prop vendor.common.modules.ready 1
|
|
|
|
# Wait for insmod_sh to finish all device specific modules
|
|
wait_for_prop vendor.device.modules.ready 1
|
|
|
|
# Other services depend on the properties
|
|
setprop vendor.all.modules.ready 1
|
|
setprop vendor.all.devices.ready 1
|
|
|
|
# Update dm-verity state and set partition.*.verified properties
|
|
verity_update_state
|
|
|
|
# Permission for Health Storage HAL
|
|
chown system system /dev/sys/block/bootdevice/manual_gc
|
|
|
|
# Permission for Pixelstats
|
|
chown system system /dev/sys/block/bootdevice/slowio_read_cnt
|
|
chown system system /dev/sys/block/bootdevice/slowio_write_cnt
|
|
chown system system /dev/sys/block/bootdevice/slowio_unmap_cnt
|
|
chown system system /dev/sys/block/bootdevice/slowio_sync_cnt
|
|
|
|
# Permission to allow system processes to access gpu clocks
|
|
chown system system /sys/devices/platform/1c500000.mali/dvfs_min_lock
|
|
chmod 0660 /sys/devices/platform/1c500000.mali/dvfs_min_lock
|
|
chown system system /sys/devices/platform/1c500000.mali/scaling_min_freq
|
|
chmod 0660 /sys/devices/platform/1c500000.mali/scaling_min_freq
|
|
|
|
on boot
|
|
|
|
# Allow to access debugfs for system:system
|
|
chmod 0755 /sys/kernel/debug
|
|
chown system system /sys/kernel/debug
|
|
|
|
#setprop ro.radio.noril no
|
|
|
|
# default country code
|
|
setprop ro.boot.wificountrycode 00
|
|
|
|
# Set up kernel tracing, but disable it by default
|
|
chmod 0222 /sys/kernel/debug/tracing/trace_marker
|
|
write /sys/kernel/debug/tracing/tracing_on 0
|
|
|
|
# Change permission for A-Box firmware logs file & GPR dump
|
|
chown audioserver system /sys/devices/platform/17c50000.abox/reset
|
|
chown audioserver system /sys/devices/platform/17c50000.abox/service
|
|
chown audioserver system /sys/devices/platform/17c50000.abox/0.abox_debug/gpr
|
|
chown audioserver system /sys/devices/platform/17c50000.abox/0.abox_debug/calliope_sram
|
|
chown audioserver system /sys/devices/platform/17c50000.abox/0.abox_debug/calliope_dram
|
|
chown audioserver system /sys/devices/platform/17c50000.abox/0.abox_debug/calliope_iva
|
|
chown audioserver system /sys/kernel/debug/abox/log-00
|
|
|
|
# Permission for USB SELECT
|
|
chown system system /sys/class/android_usb/android0/enable
|
|
chmod 0660 /sys/class/android_usb/android0/enable
|
|
chown system system /sys/class/android_usb/android0/idVendor
|
|
chmod 0660 /sys/class/android_usb/android0/idVendor
|
|
chown system system /sys/class/android_usb/android0/idProduct
|
|
chmod 0660 /sys/class/android_usb/android0/idProduct
|
|
chown system system /sys/class/android_usb/android0/f_diag/clients
|
|
chmod 0660 /sys/class/android_usb/android0/f_diag/clients
|
|
chown system system /sys/class/android_usb/android0/functions
|
|
chmod 0660 /sys/class/android_usb/android0/functions
|
|
chown system system /sys/class/android_usb/android0/bDeviceClass
|
|
chmod 0660 /sys/class/android_usb/android0/bDeviceClass
|
|
|
|
# Permission for UART SWITCH
|
|
chmod 0660 /sys/class/sec/switch/uart_sel
|
|
chown system system /sys/class/sec/switch/uart_sel
|
|
|
|
# VTS sysfs file permission
|
|
chown audioserver system /sys/devices/platform/13810000.vts/vts_svoice_model
|
|
chown audioserver system /sys/devices/platform/13810000.vts/vts_google_model
|
|
chmod 0660 /sys/devices/platform/13810000.vts/vts_svoice_model
|
|
chmod 0660 /sys/devices/platform/13810000.vts/vts_google_model
|
|
|
|
# WLAN firmware/driver path
|
|
chown wifi wifi /sys/module/bcmdhd/parameters/nvram_path
|
|
chown wifi wifi /sys/module/bcmdhd/parameters/firmware_path
|
|
|
|
on nonencrypted
|
|
mkdir /data/misc/mcRegistry 0775 system drmrpc
|
|
|
|
on property:vold.decrypt=trigger_restart_framework
|
|
mkdir /data/misc/mcRegistry 0775 system drmrpc
|
|
|
|
on property:persist.vendor.radio.no_modem_board=1
|
|
setprop ro.radio.noril yes
|
|
|
|
on fs
|
|
mount_all /vendor/etc/fstab.gs101 --early
|
|
chown radio system /mnt/vendor/efs
|
|
restorecon_recursive /mnt/vendor/efs
|
|
chown radio system /mnt/vendor/efs_backup
|
|
restorecon_recursive /mnt/vendor/efs_backup
|
|
chown radio system /mnt/vendor/modem_userdata
|
|
restorecon_recursive /mnt/vendor/modem_userdata
|
|
|
|
# Configure multi-bin radio
|
|
chown radio system /mnt/vendor/modem_img
|
|
restorecon_recursive /mnt/vendor/modem_img
|
|
|
|
restorecon_recursive /mnt/vendor/persist
|
|
restorecon_recursive /mnt/vendor/persist/audio
|
|
restorecon_recursive /mnt/vendor/persist/sensors
|
|
restorecon_recursive /mnt/vendor/persist/battery
|
|
# Set up display-related directories and permissions
|
|
# Add restorecon_recursive command to make sure the restorecon label is persist_display_file.
|
|
restorecon_recursive /mnt/vendor/persist/display
|
|
mkdir /mnt/vendor/persist/data/sfs 0700 system system
|
|
mkdir /mnt/vendor/persist/data/tz 0700 system system
|
|
mkdir /mnt/vendor/persist/touch 0770 system system
|
|
|
|
# Enable rmnet data and aggregation
|
|
setprop persist.rmnet.mux enabled
|
|
setprop persist.rmnet.data.enable true
|
|
setprop persist.data.wda.enable true
|
|
setprop persist.data.df.agg.dl_pkt 10
|
|
setprop persist.data.df.agg.dl_size 4096
|
|
|
|
# Permissions for ION
|
|
chmod 0660 /sys/class/ion_cma/ion_video_ext/isolated
|
|
chown system system /sys/class/ion_cma/ion_video_ext/isolated
|
|
|
|
# Permissions for hwcomposer
|
|
chown system system /sys/class/backlight/panel0-backlight/als_table
|
|
chown system system /sys/class/backlight/panel0-backlight/brightness
|
|
chown system system /sys/class/backlight/panel0-backlight/hbm_mode
|
|
chown system system /sys/devices/platform/exynos-drm/primary-panel/gamma
|
|
chown system system /sys/module/drm/parameters/vblankoffdelay
|
|
|
|
# Copy DRM Key
|
|
# copy /system/app/wv.keys /factory/wv.keys
|
|
|
|
# Permission for DRM Key
|
|
# chmod 0644 /factory/wv.keys
|
|
|
|
# Permission for flashlight control for HAL3.3
|
|
# The Istor espresso board does not have the flash led h/w, So the below permission line are blocked.
|
|
# If you want to test the flashlight in board which have the flash led h/w, Enable the below blocked lines.
|
|
chmod 0660 /sys/class/camera/flash/rear_torch_flash
|
|
chown system camera /sys/class/camera/flash/rear_torch_flash
|
|
#load ecd firmware
|
|
write /proc/ecd/load_firmware 1
|
|
|
|
service abox /vendor/bin/main_abox 17c50000.abox
|
|
class late_start
|
|
user audioserver
|
|
group audioserver
|
|
seclabel u:r:abox:s0
|
|
|
|
service wpa_supplicant /vendor/bin/hw/wpa_supplicant \
|
|
-O/data/vendor/wifi/wpa/sockets -puse_p2p_group_interface=1p2p_device=1 \
|
|
-m/vendor/etc/wifi/p2p_supplicant.conf \
|
|
-g@android:wpa_wlan0 -dd
|
|
interface android.hardware.wifi.supplicant@1.0::ISupplicant default
|
|
interface android.hardware.wifi.supplicant@1.1::ISupplicant default
|
|
interface android.hardware.wifi.supplicant@1.2::ISupplicant default
|
|
socket wpa_wlan0 dgram 660 wifi wifi
|
|
class main
|
|
disabled
|
|
oneshot
|
|
|
|
|
|
# GPS
|
|
service lhd /vendor/bin/hw/lhd /vendor/etc/gnss/lhd.conf
|
|
class main
|
|
user gps
|
|
group system inet net_raw sdcard_rw
|
|
ioprio be 0
|
|
|
|
service gpsd /vendor/bin/hw/gpsd -c /vendor/etc/gnss/gps.xml
|
|
class main
|
|
user gps
|
|
group system gps radio inet wakelock sdcard_rw net_raw
|
|
ioprio be 0
|
|
|
|
service scd /vendor/bin/hw/scd /vendor/etc/gnss/scd.conf
|
|
class main
|
|
user gps
|
|
group system inet net_raw wakelock
|
|
ioprio be 0
|
|
|
|
service gnss_service /vendor/bin/hw/android.hardware.gnss@2.1-service-brcm
|
|
class hal
|
|
user gps
|
|
group system gps radio
|
|
|
|
# disable gps service if no gps h/w
|
|
on property:vendor.ril.cbd.svc=0
|
|
stop gpsd
|
|
stop lhd
|
|
stop scd
|
|
|
|
# on userdebug and eng builds, enable kgdb on the serial console
|
|
on property:ro.debuggable=1
|
|
write /sys/module/kgdboc/parameters/kgdboc ttyFIQ1
|
|
write /sys/module/fiq_debugger/parameters/kgdb_enable 1
|
|
|
|
# Touch
|
|
on property:vendor.device.modules.ready=1
|
|
chown system system /sys/class/spi_master/spi11/spi11.0/stm_fts_cmd
|
|
chown system system /sys/class/spi_master/spi11/spi11.0/glove_mode
|
|
chown system system /sys/class/spi_master/spi6/spi6.0/stm_fts_cmd
|
|
chown system system /sys/class/spi_master/spi6/spi6.0/glove_mode
|
|
chown system system /sys/devices/virtual/sec/tsp/fw_version
|
|
chown system system /sys/devices/virtual/sec/tsp/cmd
|
|
chown system system /sys/devices/virtual/sec/tsp/cmd_result
|
|
chown system system /sys/devices/virtual/sec/tsp/status
|
|
|
|
on property:init.svc.vendor.charger=running
|
|
stop keymaster-4-0
|
|
|
|
setprop sys.usb.configfs 1
|
|
setprop vendor.setup.power 1
|
|
|
|
# keep one little and one big
|
|
write /sys/devices/system/cpu/cpu1/online 0
|
|
write /sys/devices/system/cpu/cpu2/online 0
|
|
write /sys/devices/system/cpu/cpu3/online 0
|
|
write /sys/devices/system/cpu/cpu4/online 0
|
|
write /sys/devices/system/cpu/cpu5/online 0
|
|
write /sys/devices/system/cpu/cpu7/online 0
|
|
|
|
on property:sys.boot_completed=1
|
|
|
|
# Runtime fs tuning
|
|
write /sys/block/sda/queue/nr_requests 128
|
|
write /sys/block/sda/queue/iostats 1
|
|
write /dev/sys/fs/by-name/userdata/data_io_flag 8
|
|
write /dev/sys/fs/by-name/userdata/node_io_flag 8
|
|
|
|
# Block layer tuning: discard chunk size up to 128MB
|
|
# Otherwise, contiguous discards can be merged
|
|
write /sys/block/sda/queue/discard_max_bytes 134217728
|
|
|
|
# Enable ZRAM on boot_complete
|
|
swapon_all /vendor/etc/fstab.${ro.board.platform}
|
|
write /proc/sys/vm/swappiness 100
|
|
|
|
# Back to default VM settings
|
|
write /proc/sys/vm/dirty_expire_centisecs 3000
|
|
write /proc/sys/vm/dirty_background_ratio 10
|
|
|
|
# Enable UFS powersaving
|
|
write /dev/sys/block/bootdevice/clkgate_enable 1
|
|
|
|
# Setup final cpuset
|
|
write /dev/cpuset/top-app/cpus 0-7
|
|
write /dev/cpuset/foreground/cpus 0-3,4-5
|
|
write /dev/cpuset/background/cpus 0-1
|
|
write /dev/cpuset/system-background/cpus 0-3
|
|
write /dev/cpuset/restricted/cpus 0-3
|
|
write /dev/cpuset/camera-daemon/cpus 0-7
|
|
setprop vendor.powerhal.init 1
|
|
|
|
# Setup final cpu.uclamp
|
|
write /dev/cpuctl/top-app/cpu.uclamp.min 10
|
|
write /dev/cpuctl/foreground/cpu.uclamp.min 0
|
|
|
|
# gvotables for dumpstate
|
|
chown system system /sys/kernel/debug/gvotables
|
|
|
|
# Permission for wireless charging
|
|
chown system system /sys/class/power_supply/wireless/capacity
|
|
chown system system /sys/class/power_supply/wireless/device/rtx
|
|
chown system system /sys/class/power_supply/wireless/device/rxdata
|
|
chown system system /sys/class/power_supply/wireless/device/txdata
|
|
chown system system /sys/class/power_supply/wireless/device/rxlen
|
|
chown system system /sys/class/power_supply/wireless/device/txlen
|
|
chown system system /sys/class/power_supply/wireless/device/ccreset
|
|
chown system system /sys/class/power_supply/wireless/device/status
|
|
chown system system /sys/class/power_supply/wireless/device/version
|
|
|
|
# IMS WiFi Calling
|
|
service charonservice /system/vendor/bin/charon
|
|
class main
|
|
user root
|
|
disabled
|
|
seclabel u:r:charonservice:s0
|
|
|
|
on property:vendor.charon.exec=1
|
|
rm /data/vendor/misc/vpn/charon.pid
|
|
chmod 0666 /dev/tun
|
|
start charonservice
|
|
|
|
on property:vendor.charon.exec=0
|
|
stop charonservice
|
|
rm /data/vendor/misc/vpn/charon.pid
|
|
|
|
# IMS packet router daemon
|
|
service pktrouter /system/vendor/bin/wfc-pkt-router
|
|
class main
|
|
user root
|
|
disabled
|
|
seclabel u:r:pktrouter:s0
|
|
|
|
on property:vendor.pktrouter=1
|
|
start pktrouter
|
|
|
|
on property:vendor.pktrouter=0
|
|
stop pktrouter
|
|
|
|
# charger driver exposes now finer grain control, map demo mode to those properties
|
|
# NOTE: demo mode can only be exit wiping data (which reset the persist properties)
|
|
on property:sys.retaildemo.enabled=1
|
|
setprop persist.vendor.charge.stop.level 35
|
|
setprop persist.vendor.charge.start.level 30
|
|
|
|
on property:persist.vendor.charge.stop.level=*
|
|
write /sys/devices/platform/google,charger/charge_stop_level ${persist.vendor.charge.stop.level}
|
|
|
|
on property:persist.vendor.charge.start.level=*
|
|
write /sys/devices/platform/google,charger/charge_start_level ${persist.vendor.charge.start.level}
|
|
|
|
service insmod_sh_common /vendor/bin/init.insmod.sh /vendor/etc/init.insmod.gs101.cfg
|
|
class main
|
|
user root
|
|
group root system
|
|
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
|
|
|
|
# bugreport is triggered by holding down volume down, volume up and power
|
|
service bugreport /system/bin/dumpstate -d -p -z
|
|
class main
|
|
disabled
|
|
oneshot
|
|
keycodes 114 115 116
|
|
|
|
# Proxy for Secure Storage
|
|
on post-fs-data
|
|
mkdir /data/vendor/rebootescrow 0770 hsm hsm
|
|
start vendor.rebootescrow-citadel
|
|
mkdir /data/vendor/ss 0770 root system
|
|
mkdir /mnt/vendor/persist/ss 0770 root system
|
|
symlink /mnt/vendor/persist/ss /data/vendor/ss/persist
|
|
chown root system /data/vendor/ss/persist
|
|
chmod 0770 /data/vendor/ss/persist
|
|
chown system system /dev/sg1
|
|
|
|
start storageproxyd
|
|
|
|
service storageproxyd /vendor/bin/storageproxyd -d /dev/trusty-ipc-dev0 \
|
|
-r /dev/sg1 -p /data/vendor/ss -t ufs
|
|
class main
|
|
disabled
|
|
user root
|
|
|
|
# Write build info to kdebuginfo
|
|
on property:ro.build.fingerprint=*
|
|
write /sys/module/debug_kinfo/parameters/build_info ${ro.build.fingerprint}
|
|
|
|
# Bluetooth
|
|
on post-fs-data
|
|
chown bluetooth system /sys/devices/platform/175b0000.serial/serial0/serial0-0/bluetooth/hci0/rfkill0/state
|
|
chown bluetooth system /sys/devices/platform/odm/odm:btbcm/rfkill/rfkill0/state
|
|
chown bluetooth system /sys/devices/platform/odm/odm:btbcm/rfkill/rfkill2/state
|
|
chown bluetooth system /proc/bluetooth/sleep/btwake
|
|
chown bluetooth system /proc/bluetooth/sleep/lpm
|
|
chown bluetooth system /proc/bluetooth/sleep/btwrite
|
|
|
|
# ODPM
|
|
on fs
|
|
chown system system /sys/devices/platform/acpm_mfd_bus@17500000/i2c-7/7-001f/s2mpg10-meter/s2mpg10-odpm/iio:device0/enabled_rails
|
|
chown system system /sys/devices/platform/acpm_mfd_bus@17510000/i2c-8/8-002f/s2mpg11-meter/s2mpg11-odpm/iio:device1/enabled_rails
|