android_device_sony_tama-co.../rootdir/etc/init.qcom.rc
Sorayukii 4f82ef5706 tama-common: init: Refine virtual memory
- set zram 3gb
- remove duplicate swappines

Signed-off-by: Sorayukii <sorayukii69@gmail.com>
2026-05-25 14:18:15 +00:00

1558 lines
54 KiB
Text

# Copyright (c) 2009-2012, 2014-2020, The Linux Foundation. All rights reserved.
# Copyright (C) 2018 Sony Mobile Communications Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
# * Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
# * Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in the
# documentation and/or other materials provided with the distribution.
# * Neither the name of The Linux Foundation nor
# the names of its contributors may be used to endorse or promote
# products derived from this software without specific prior written
# permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
# NON-INFRINGEMENT ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#
# NOTE: This file has been modified by Sony Mobile Communications Inc.
# Modifications are licensed under the License.
#
import /vendor/etc/init/hw/init.qcom.power.rc
import /vendor/etc/init/hw/init.qcom.usb.rc
import /vendor/etc/init/hw/init.msm.usb.configfs.rc
import /vendor/etc/init/hw/init.target.rc
import /vendor/etc/init/hw/init.qcom.factory.rc
on early-init
mount debugfs debugfs /sys/kernel/debug
chmod 0755 /sys/kernel/debug
# Create symlink for vendor mount points
symlink /vendor/firmware_mnt /firmware
symlink /vendor/bt_firmware /bt_firmware
symlink /vendor/dsp /dsp
# Change ownership of hw_recovery related nodes
chown system graphics /sys/kernel/debug/dri/0/debug/dump
chown system graphics /sys/kernel/debug/dri/0/debug/recovery_reg
chown system graphics /sys/kernel/debug/dri/0/debug/recovery_dbgbus
chown system graphics /sys/kernel/debug/dri/0/debug/recovery_vbif_dbgbus
# Change ownership of sw_sync node
chown system graphics /sys/kernel/debug/sync/sw_sync
chmod 0666 /sys/kernel/debug/sync/sw_sync
chown root system /dev/kmsg
chmod 0620 /dev/kmsg
# Change reset behavior to warm reset
write /sys/module/msm_rtb/parameters/enable 0
write /sys/devices/platform/soc/soc:fpc1145/uevent add
# zRAM
write /sys/block/zram0/comp_algorithm lz4
write /proc/sys/vm/page-cluster 0
write /proc/sys/vm/swappiness 100
on init
# Support legacy paths
symlink /sdcard /mnt/sdcard
symlink /sdcard /storage/sdcard0
# Create cgroup mount point for memory
mkdir /sys/fs/cgroup/memory/bg 0750 root system
write /sys/fs/cgroup/memory/bg/memory.swappiness 140
write /sys/fs/cgroup/memory/bg/memory.move_charge_at_immigrate 1
chown root system /sys/fs/cgroup/memory/bg/tasks
chmod 0660 /sys/fs/cgroup/memory/bg/tasks
# SONY: Start the TrimArea Daemon. It must be started before fota-ua
wait /dev/block/platform/soc/1d84000.ufshc
symlink /dev/block/platform/soc/1d84000.ufshc /dev/block/bootdevice
wait /dev/block/sda1
chown oem_2997 oem_2997 /dev/block/sda1
chmod 0770 /dev/block/sda1
class_start trimarea
start tad
# These are needed for MiscTA HIDL service
start hwservicemanager
start hidl_memory
#Enable Bluetooth HFP 1.7
setprop ro.bluetooth.hfp.ver 1.7
# Bluetooth address setting
setprop ro.vendor.bt.bdaddr_path "/data/vendor/etc/bluetooth_bdaddr"
on late-init
setprop vendor.keyprovd.suntory.prov "false"
on fs
# Set SD card clock gating delay to 1ms
write /sys/devices/platform/soc/8804000.sdhci/mmc_host/mmc0/clkgate_delay 1
restorecon /dev/block/platform/soc/1d84000.ufshc/by-name/TA
on post-fs
chmod 0755 /sys/kernel/debug/tracing
# Display
chown system system /sys/devices/dsi_panel_driver/mplus_mode
chown system system /sys/devices/dsi_panel_driver/panel_id
chown system system /sys/devices/dsi_panel_driver/chargemon_exit
chown system system /sys/devices/dsi_panel_driver/area_count
chown system system /sys/devices/dsi_panel_driver/c_mode
# backlight
chown system system /sys/class/leds/wled/area_count
chown system system /sys/class/leds/wled/bl_scale
chown system system /sys/class/leds/wled/en_cabc
# System setting access from white balance app into fb.
chown system graphics /dev/graphics/fb0
chown system graphics /dev/graphics/fb1
chown system graphics /dev/graphics/fb2
# Transfer sensor json files
chown system system /mnt/vendor/persist/sensors
exec system -- /vendor/bin/sensor_json_transfer.sh
start vendor.qseecomd
# Update dm-verity state and set partition.*.verified properties
verity_update_state
on early-boot
# ta_qmi_service use wakelock before on boot, so add permission here.
chown radio wakelock /sys/power/wake_lock
chown radio wakelock /sys/power/wake_unlock
chmod 0660 /sys/power/wake_lock
chmod 0660 /sys/power/wake_unlock
start ta_qmi_service
start mlog_qmi_service
start sct_service
# set RLIMIT_MEMLOCK to 64MB
setrlimit 8 67108864 67108864
# Allow subsystem (modem etc) debugging
write /sys/kernel/boot_adsp/boot 1
write /sys/kernel/boot_cdsp/boot 1
write /sys/devices/virtual/npu/msm_npu/boot 1
write /sys/kernel/boot_slpi/boot 1
write /sys/devices/virtual/cvp/cvp/boot 1
exec u:r:vendor_qti_init_shell:s0 -- /vendor/bin/init.qcom.early_boot.sh
# SSR Setup
write /sys/bus/msm_subsys/devices/subsys0/restart_level RELATED
write /sys/bus/msm_subsys/devices/subsys1/restart_level RELATED
write /sys/bus/msm_subsys/devices/subsys2/restart_level RELATED
write /sys/bus/msm_subsys/devices/subsys3/restart_level RELATED
write /sys/bus/msm_subsys/devices/subsys4/restart_level RELATED
write /sys/bus/msm_subsys/devices/subsys5/restart_level RELATED
write /sys/bus/msm_subsys/devices/subsys6/restart_level RELATED
write /sys/bus/msm_subsys/devices/subsys7/restart_level RELATED
# for backward compatibility
chown system system /persist/sensors
chown system system /persist/sensors/registry
chown system system /persist/sensors/registry/registry
chown system system /persist/sensors/registry/registry/sensors_registry
chown system system /persist/sensors/sensors_settings
chown system system /persist/sensors/registry/config
chmod 0664 /persist/sensors/sensors_settings
chown system system /mnt/vendor/persist/sensors
chown system system /mnt/vendor/persist/sensors/sns.reg
chown system system /mnt/vendor/persist/sensors/sensors_list.txt
chown system system /mnt/vendor/persist/sensors/registry
chown system system /mnt/vendor/persist/sensors/registry/registry
chown system system /mnt/vendor/persist/sensors/registry/registry/sensors_registry
chown system system /mnt/vendor/persist/sensors/sensors_settings
chown system system /mnt/vendor/persist/sensors/registry/sns_reg_config
chown system system /mnt/vendor/persist/sensors/registry/sns_reg_version
chown system system /mnt/vendor/persist/sensors/registry/config
chmod 0664 /mnt/vendor/persist/sensors/sensors_settings
chown system system /mnt/vendor/persist/data/pfm/licenses
chmod 0775 /mnt/vendor/persist/data/pfm/licenses
on boot
# NFC local data and storage
mkdir /data/vendor/nfc 0770 nfc nfc
mkdir /data/vendor/nfc/param 0770 nfc nfc
# Create NETMGR daemon socket area
mkdir /dev/socket/netmgr 0750 radio radio
# Create netmgr recovery folder
mkdir /data/vendor/netmgr/recovery 0700 radio radio
chmod 0770 /data/vendor/netmgr/recovery
write /data/vendor/netmgr/recovery/recovery_info ""
chown radio radio /data/vendor/netmgr/recovery/recovery_info
# 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 16777216
write /proc/sys/net/core/wmem_max 8388608
chown bluetooth bluetooth /sys/module/bluetooth_power/parameters/power
chown bluetooth net_bt /sys/class/rfkill/rfkill0/type
chown bluetooth net_bt /sys/class/rfkill/rfkill0/state
chown bluetooth bluetooth /proc/bluetooth/sleep/proto
chown bluetooth bluetooth /sys/module/hci_uart/parameters/ath_lpm
chown bluetooth bluetooth /sys/module/hci_uart/parameters/ath_btwrite
chown system system /sys/module/sco/parameters/disable_esco
chown bluetooth bluetooth /sys/module/hci_smd/parameters/hcismd_set
chown system system /sys/module/msm_core/parameters/polling_interval
chown system system /sys/module/msm_core/parameters/disabled
chown system system /sys/kernel/debug/msm_core/enable
chown system system /sys/kernel/debug/msm_core/ptable
chown system system /sys/kernel/boot_slpi/ssr
chown system system /sys/module/radio_iris_transport/parameters/fmsmd_set
chmod 0660 /sys/module/bluetooth_power/parameters/power
chmod 0660 /sys/module/hci_smd/parameters/hcismd_set
chmod 0660 /sys/module/radio_iris_transport/parameters/fmsmd_set
chmod 0660 /sys/class/rfkill/rfkill0/state
chmod 0660 /proc/bluetooth/sleep/proto
chown bluetooth net_bt /dev/ttyHS0
chmod 0660 /sys/module/hci_uart/parameters/ath_lpm
chmod 0660 /sys/module/hci_uart/parameters/ath_btwrite
chmod 0660 /dev/ttyHS0
chown bluetooth bluetooth /sys/devices/platform/msm_serial_hs.0/clock
chmod 0660 /sys/devices/platform/msm_serial_hs.0/clock
chmod 0660 /dev/ttyHS2
chown bluetooth bluetooth /dev/ttyHS2
chown bluetooth net_bt /sys/class/rfkill/rfkill0/device/extldo
chmod 0660 /sys/class/rfkill/rfkill0/device/extldo
# This location is used by QCRIL to host UNIX domain
# socket files used for internal IPC within QCRIL
# modules
mkdir /dev/socket/qmux_radio 0770 radio radio
chmod 2770 /dev/socket/qmux_radio
mkdir /persist/drm 0770 system system
mkdir /persist/bluetooth 0770 bluetooth bluetooth
mkdir /persist/misc 0770 system system
mkdir /persist/alarm 0777 system system
chmod 0666 /persist/alarm/data
mkdir /mnt/vendor/persist/time 0770 system system
mkdir /mnt/vendor/persist/secnvm 0770 system system
mkdir /mnt/vendor/persist/iar_db 0770 system system
mkdir /mnt/vendor/spunvm 0770 system system
# Create WIGIG socket area
mkdir /dev/socket/wigig 0770 wifi wifi
setprop wifi.interface wlan0
setprop ro.telephony.call_ring.multiple false
# Remove SUID bit for iproute2 ip tool
chmod 0755 /system/bin/ip
chmod 0444 /sys/devices/platform/msm_hsusb/gadget/usb_state
setprop net.tcp.2g_init_rwnd 10
# To prevent out of order acknowledgements from making
# connection tracking to treat them as not belonging to
# the connection they belong to.
# Otherwise, a weird issue happens in which some long
# connections on high-throughput links get dropped when
# an ack packet comes out of order
write /proc/sys/net/netfilter/nf_conntrack_tcp_be_liberal 1
# Allow access for CCID command/response timeout configuration
chown system system /sys/module/ccid_bridge/parameters/bulk_msg_timeout
# bond0 used by FST Manager
chown wifi wifi /sys/class/net/bond0/bonding/queue_id
# Allow access to emmc rawdump block partition and dload sysfs node
chown root system /dev/block/bootdevice/by-name/rawdump
chmod 0660 /dev/block/bootdevice/by-name/rawdump
chown root system /sys/kernel/dload/emmc_dload
chmod 0660 /sys/kernel/dload/emmc_dload
chown root system /dev/block/bootdevice/by-name/ramdump
chmod 0660 /dev/block/bootdevice/by-name/ramdump
chown root system /sys/kernel/dload/dload_mode
chmod 0660 /sys/kernel/dload/dload_mode
chown system system /sys/class/backlight/panel0-backlight/brightness
chown system system /sys/class/backlight/panel0-backlight/max_brightness
chown system system /sys/class/backlight/panel1-backlight/brightness
chown system system /sys/class/backlight/panel1-backlight/max_brightness
# Allow access to sensors device attributes
chown system system /sys/class/sensors/MPU6050-accel/enable
chown system system /sys/class/sensors/MPU6050-accel/poll_delay
chown system system /sys/class/sensors/MPU6050-gyro/enable
chown system system /sys/class/sensors/MPU6050-gyro/poll_delay
chown system system /sys/class/sensors/apds9930-light/enable
chown system system /sys/class/sensors/apds9930-light/poll_delay
chown system system /sys/class/sensors/apds9930-proximity/enable
chown system system /sys/class/sensors/apds9930-proximity/poll_delay
# Create directory used for display
# for backward compatibility
mkdir /persist/display 0770 system graphics
mkdir /mnt/vendor/persist/display 0770 system graphics
# Create vpp directory
mkdir /mnt/vendor/persist/vpp 0770 media media
# USB controller configuration
setprop vendor.usb.rndis.func.name "gsi"
setprop vendor.usb.rmnet.func.name "gsi"
setprop vendor.usb.rmnet.inst.name "rmnet"
setprop vendor.usb.dpl.inst.name "dpl"
setprop vendor.usb.controller a600000.dwc3
# Create hvdcp_opti directory
mkdir /mnt/vendor/persist/hvdcp_opti 0770 root system
#sensors log dir
mkdir /data/vendor/sensors
chown system system /data/vendor/sensors
write sys/devices/virtual/input/clearpad/post_probe_start 1
write /sys/devices/virtual/input/lge_touch/charge_out 1
chown system system /sys/devices/common_touch/touch/cover_mode
chmod 0600 /sys/devices/common_touch/touch/cover_mode
restorecon /sys/devices/common_touch/touch/cover_mode
chown system system /sys/devices/virtual/input/clearpad/fwrevision
chmod 0600 /sys/devices/virtual/input/clearpad/fwrevision
restorecon /sys/devices/virtual/input/clearpad/fwrevision
chown system system /sys/devices/virtual/input/clearpad/fwfamily
chmod 0600 /sys/devices/virtual/input/clearpad/fwfamily
restorecon /sys/devices/virtual/input/clearpad/fwfamily
chown system system /sys/devices/virtual/input/clearpad/fwstate
chmod 0600 /sys/devices/virtual/input/clearpad/fwstate
restorecon /sys/devices/virtual/input/clearpad/fwstate
chown system system /sys/devices/virtual/input/clearpad/fwinfo
chmod 0600 /sys/devices/virtual/input/clearpad/fwinfo
restorecon /sys/devices/virtual/input/clearpad/fwinfo
# Debug config for clearpad
chown system system /sys/devices/virtual/input/clearpad/hwtest
chmod 0600 /sys/devices/virtual/input/clearpad/hwtest
restorecon /sys/devices/virtual/input/clearpad/hwtest
# Cover mode
chown system system /sys/devices/virtual/input/clearpad/cover_win_bottom
chmod 0600 /sys/devices/virtual/input/clearpad/cover_win_bottom
restorecon /sys/devices/virtual/input/clearpad/cover_win_bottom
chown system system /sys/devices/virtual/input/clearpad/cover_win_left
chmod 0600 /sys/devices/virtual/input/clearpad/cover_win_left
restorecon /sys/devices/virtual/input/clearpad/cover_win_left
chown system system /sys/devices/virtual/input/clearpad/cover_win_right
chmod 0600 /sys/devices/virtual/input/clearpad/cover_win_right
restorecon /sys/devices/virtual/input/clearpad/cover_win_right
chown system system /sys/devices/virtual/input/clearpad/cover_win_top
chmod 0600 /sys/devices/virtual/input/clearpad/cover_win_top
restorecon /sys/devices/virtual/input/clearpad/cover_win_top
# Glove for clearpad
chown system system /sys/devices/common_touch/touch/glove_mode
chmod 0600 /sys/devices/common_touch/touch/glove_mode
restorecon /sys/devices/common_touch/touch/glove_mode
chown system system /sys/bus/platform/devices/synaptics_tcm.0/synaptics_tcm/reflash/config_id
chmod 0600 /sys/bus/platform/devices/synaptics_tcm.0/synaptics_tcm/reflash/config_id
restorecon /sys/bus/platform/devices/synaptics_tcm.0/synaptics_tcm/reflash/config_id
# for tcm
chown system system /sys/devices/common_touch/touch/glove_mode
chmod 0600 /sys/devices/common_touch/touch/glove_mode
restorecon /sys/devices/common_touch/touch/glove_mode
chown system system /sys/devices/common_touch/touch/cover_mode
chmod 0600 /sys/devices/common_touch/touch/cover_mode
restorecon /sys/devices/common_touch/touch/cover_mode
# for atmel
chown system system /sys/devices/virtual/input/lge_touch/glove_mode
chmod 0600 /sys/devices/virtual/input/lge_touch/glove_mode
restorecon /sys/devices/virtual/input/lge_touch/glove_mode
chown system system /sys/devices/virtual/input/lge_touch/aod_mode
chmod 0600 /sys/devices/virtual/input/lge_touch/aod_mode
restorecon /sys/devices/virtual/input/lge_touch/aod_mode
chown system system /sys/devices/virtual/input/lge_touch/cover_mode
chmod 0600 /sys/devices/virtual/input/lge_touch/cover_mode
restorecon /sys/devices/virtual/input/lge_touch/cover_mode
chown system system /sys/devices/virtual/input/lge_touch/stamina_mode
chmod 0600 /sys/devices/virtual/input/lge_touch/stamina_mode
restorecon /sys/devices/virtual/input/lge_touch/stamina_mode
chown system system /sys/devices/virtual/input/lge_touch/power_control
chmod 0600 /sys/devices/virtual/input/lge_touch/power_control
restorecon /sys/devices/virtual/input/lge_touch/power_control
chown system system /sys/devices/virtual/input/lge_touch/sidekey_status
chmod 0660 /sys/devices/virtual/input/lge_touch/sidekey_status
restorecon /sys/devices/virtual/input/lge_touch/sidekey_status
chown system system /sys/devices/virtual/input/lge_touch/register_r
chmod 0600 /sys/devices/virtual/input/lge_touch/register_r
restorecon /sys/devices/virtual/input/lge_touch/register_r
chown system system /sys/devices/virtual/input/lge_touch/register_w
chmod 0600 /sys/devices/virtual/input/lge_touch/register_w
restorecon /sys/devices/virtual/input/lge_touch/register_w
chown system system /sys/devices/virtual/water_detection/wdet/wdet_polling_restart
chmod 0660 /sys/devices/virtual/water_detection/wdet/wdet_polling_restart
chown system audio /sys/class/leds/vibrator/activate
chmod 0660 /sys/class/leds/vibrator/activate
#exec u:r:charge_osv_daemon:s0 root -- /vendor/bin/charge_lrc_osv.sh
# msm specific files that need to be created on /data
on post-fs-data
#Create DATAQTI dir for logs
mkdir /data/vendor/dataqti 0770 radio radio
chmod 0770 /data/vendor/dataqti
# create spc database directory
mkdir /mnt/vendor/persist/pc/ 0770 radio system
chown system system /mnt/vendor/persist/pc/cache_0.dat
chown system system /mnt/vendor/persist/pc/cache_1.dat
# create database directory
mkdir /mnt/vendor/persist/credmgr 0700 system system
# SONY: Start early TA-users
mkdir /data/vendor/etc 0755 root shell
mkdir /mnt/vendor/persist/wlan 0755 root shell
exec u:r:taimport_vendor:s0 -- /vendor/bin/taimport_vendor
# Create NETMGR daemon log dir
mkdir /data/vendor/netmgr 0770 radio radio
chmod 0770 /data/vendor/netmgr
mkdir /data/vendor/misc 01771 system system
# Create directory used for dump collection
mkdir /data/vendor/ssrdump 0770 root system
# Create directory used by display clients
mkdir /data/vendor/display 0770 system graphics
# Change lm related dirs
mkdir /data/vendor/lm 0700 root root
# Create directory used by media clients
mkdir /data/vendor/media 0770 mediacodec media
# Create /data/vendor/tzstorage directory for SFS listener
mkdir /data/vendor/tzstorage 0770 system system
# Create directory for apps access via QTEEConnector
mkdir /data/vendor/qtee 0770 system system
# Create folder of camera
mkdir /data/vendor/camera 0770 camera camera
# Create directory for tftp
mkdir /data/vendor/tombstones 0771 system system
mkdir /data/vendor/tombstones/rfs 0771 system system
mkdir /data/vendor/ramdump 0771 root system
mkdir /data/vendor/bluetooth 0770 bluetooth bluetooth
mkdir /data/vendor/ramdump/bluetooth 0770 bluetooth bluetooth
# Create the directories used by the Wireless subsystem
mkdir /data/vendor/wifi 0770 wifi wifi
mkdir /data/vendor/wifi/sockets 0770 wifi wifi
mkdir /data/vendor/wifi/hostapd 0770 wifi wifi
mkdir /data/vendor/wifi/hostapd/ctrl 0770 wifi wifi
mkdir /data/vendor/wifi/wpa_supplicant 0770 wifi wifi
mkdir /data/vendor/wifi/wigig_hostapd 0770 wifi wifi
mkdir /data/vendor/wifi/wpa 0770 wifi wifi
mkdir /data/vendor/wifi/wpa/sockets 0770 wifi wifi
# Create the directories used by WiGig Sensing
mkdir /data/vendor/sensing 0770 system wifi
# Create the directories used by CnE subsystem
mkdir /data/vendor/connectivity 0771 radio radio
chown radio radio /data/vendor/connectivity
# Create directory used by audio subsystem
mkdir /data/vendor/audio 0770 audio audio
# Create directory for audio delta files
mkdir /data/vendor/audio/acdbdata 0770 media audio
mkdir /data/vendor/audio/acdbdata/delta 0770 media audio
# Create directory for radio
mkdir /data/vendor/radio 0770 system radio
rm /data/vendor/radio/shmbus
# Create directory for modem_config
mkdir /data/vendor/modem_config 0570 radio root
# Mounting of persist is moved to 'on emmc-fs' and 'on fs' sections
# We chown/chmod /persist again so because mount is run as root + defaults
chown root system /persist
chmod 0771 /persist
chown system system /persist/WCNSS_qcom_wlan_nv.bin
chmod 0664 /sys/devices/platform/msm_sdcc.1/polling
chmod 0664 /sys/devices/platform/msm_sdcc.2/polling
chmod 0664 /sys/devices/platform/msm_sdcc.3/polling
chmod 0664 /sys/devices/platform/msm_sdcc.4/polling
# Chown polling nodes as needed from UI running on system server
chown system system /sys/devices/platform/msm_sdcc.1/polling
chown system system /sys/devices/platform/msm_sdcc.2/polling
chown system system /sys/devices/platform/msm_sdcc.3/polling
chown system system /sys/devices/platform/msm_sdcc.4/polling
# Create directories for Location services
mkdir /data/vendor/location 0770 gps gps
mkdir /data/vendor/location/mq 0770 gps gps
mkdir /data/vendor/location/xtwifi 0770 gps gps
mkdir /dev/socket/location 0770 gps gps
mkdir /dev/socket/location/mq 0770 gps gps
mkdir /dev/socket/location/xtra 0770 gps gps
# Create directories for wifihal services
mkdir /dev/socket/wifihal 0770 wifi wifi
chmod 2770 /dev/socket/wifihal
# Create /data/time folder for time-services
mkdir /data/vendor/time/ 0700 system system
setprop vold.post_fs_data_done 1
# Create a folder for SRS to be able to create a usercfg file
#mkdir /data/data/media 0770 media media
mkdir /data/vendor/secure_element 0777 system system
# Mark the copy complete flag to not completed
write /data/vendor/radio/copy_complete 0
chown radio radio /data/vendor/radio/copy_complete
chmod 0660 /data/vendor/radio/copy_complete
# copy prebuilt qcril.db files always
copy /vendor/radio/qcril_database/qcril.db /data/vendor/radio/qcril_prebuilt.db
chown radio radio /data/vendor/radio/qcril_prebuilt.db
chmod 0660 /data/vendor/radio/qcril_prebuilt.db
# File flags for prebuilt ril db file
write /data/vendor/radio/prebuilt_db_support 1
chown radio radio /data/vendor/radio/prebuilt_db_support
chmod 0400 /data/vendor/radio/prebuilt_db_support
write /data/vendor/radio/db_check_done 0
chown radio radio /data/vendor/radio/db_check_done
chmod 0660 /data/vendor/radio/db_check_done
# qti-logkit data
mkdir /data/vendor/qti-logkit/ 0771 system system
mkdir /data/vendor/qti-logkit/shared-privileged/ 2770 system system
mkdir /data/vendor/qti-logkit/shared-public/ 2770 system diag
mkdir /data/vendor/qti-logkit/socket-privileged/ 2770 system system
mkdir /data/vendor/qti-logkit/socket-public/ 2750 system diag
mkdir /data/vendor/qti-logkit/logdata/ 2750 system shell
# Create SWAP related dirs
mkdir /data/vendor/swap 0770 root system
chmod 2770 /data/vendor/swap
# Create vpp directory
mkdir /data/vendor/vpp 0770 media media
start vendor.netmgrd
start vendor.port-bridge
# Create dir for TUI
mkdir /data/vendor/tui 0700 system drmrpc
# idd
# We expect that vold has already started and would not unmount the partitions again.
mkdir /mnt/idd 0751 oem_2987 oem_2987
mkdir /mnt/rca 0750 oem_2987 oem_2987
mount_all /vendor/etc/idd.fstab
chown oem_2987 oem_2987 /mnt/idd
chmod 0751 /mnt/idd
rmdir /mnt/idd/lost+found
chown oem_2987 oem_2987 /mnt/rca
chmod 0750 /mnt/rca
rmdir /mnt/rca/lost+found
mkdir /mnt/idd/lost+found 0770 root root
mkdir /mnt/idd/output 0755 oem_2987 oem_2987
mkdir /mnt/idd/socket 0711 oem_2987 oem_2987
mkdir /mnt/idd/startup-prober 0700 root root
restorecon_recursive /mnt/idd
mkdir /mnt/rca/plugins 0750 oem_2987 oem_2987
restorecon_recursive /mnt/rca
# Charger
# power_supply sysfs
chmod 0664 /sys/class/power_supply/battery/charging_enabled
chmod 0664 /sys/class/power_supply/battery/lrc_socmax
chmod 0664 /sys/class/power_supply/battery/lrc_socmin
chmod 0664 /sys/class/power_supply/battery/lrc_enable
chmod 0664 /sys/class/power_supply/battery/system_temp_level
chmod 0664 /sys/class/power_supply/battery/uevent
chmod 0664 /sys/class/power_supply/battery/running_status
chmod 0664 /sys/class/power_supply/battery/device/enable_shutdown_at_low_battery
chmod 0664 /sys/class/power_supply/bms/charge_full
chmod 0664 /sys/class/power_supply/bms/batt_aging_level
# SONY: creat mount point for qns
mkdir /mnt/qns 0750 oem_2985 oem_2985
wait /dev/block/bootdevice/by-name/Qnovo
mount_all /vendor/etc/qns.fstab
# SONY: setup qns partition
chown oem_2985 oem_2985 /mnt/qns
chmod 0750 /mnt/qns
restorecon_recursive /mnt/qns
# qns
chown oem_2985 oem_2985 /sys/class/qns
chown oem_2985 oem_2985 /sys/class/qns/alarm
chown oem_2985 oem_2985 /sys/class/qns/charge_current
chown oem_2985 oem_2985 /sys/class/qns/charge_voltage
chown oem_2985 oem_2985 /sys/class/qns/charging_state
chown oem_2985 oem_2985 /sys/class/qns/current_now
chown oem_2985 oem_2985 /sys/class/qns/design
chown oem_2985 oem_2985 /sys/class/qns/fcc
chown oem_2985 oem_2985 /sys/class/qns/options
chown oem_2985 oem_2985 /sys/class/qns/soc
chown oem_2985 oem_2985 /sys/class/qns/temp
chown oem_2985 oem_2985 /sys/class/qns/voltage
chown oem_2985 oem_2985 /sys/class/qns/battery_type
start qns
# The charge_service/chargemon/hvdcp_opti use wakelock before on boot, so add permission here.
chown radio wakelock /sys/power/wake_lock
chown radio wakelock /sys/power/wake_unlock
chmod 0660 /sys/power/wake_lock
chmod 0660 /sys/power/wake_unlock
# chargemon use brightness and autosleep before on boot, so add permission here.
chown system system /sys/class/backlight/panel0-backlight/brightness
chown system system /sys/power/autosleep
# hvdcp_opti
enable vendor.qti-chg-policy-sh
start vendor.qti-chg-policy-sh
mkdir /mnt/vendor/persist/hvdcp_opti 0770 root system
enable vendor.hvdcp_opti
start vendor.hvdcp_opti
# Set USB mode to MSC for SDP charging
write /config/usb_gadget/g1/os_desc/use 0
write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration mass_storage
write /config/usb_gadget/g1/idProduct 0xeeee
write /config/usb_gadget/g1/idVendor 0x0fce
symlink /config/usb_gadget/g1/functions/mass_storage.0 /config/usb_gadget/g1/configs/b.1/f1
write /config/usb_gadget/g1/UDC ${sys.usb.controller}
# create directory for widevine
mkdir /data/vendor/wv 0700 media media
# Fingerprint data folder
mkdir /data/vendor/fpc 0770 system system
# SONY: Camera
chown cameraserver camera /dev/sony_camera0
chmod 0770 /dev/sony_camera0
chown cameraserver camera /dev/sony_camera1
chmod 0770 /dev/sony_camera1
mkdir /data/vendor/camera 0770 cameraserver camera
# Camera flash
chown cameraserver camera /sys/class/leds/led:flash_0/brightness
chown cameraserver camera /sys/class/leds/led:flash_1/brightness
chown cameraserver camera /sys/class/leds/led:flash_0/max_brightness
chown cameraserver camera /sys/class/leds/led:flash_1/max_brightness
chown cameraserver camera /sys/class/leds/led:flash_0/ires_ua
chown cameraserver camera /sys/class/leds/led:flash_1/ires_ua
chown cameraserver camera /sys/class/leds/led:flash_0/strobe
chown cameraserver camera /sys/class/leds/led:flash_1/strobe
chown cameraserver camera /sys/class/leds/led:flash_0/duration
chown cameraserver camera /sys/class/leds/led:flash_1/duration
chown cameraserver camera /sys/class/leds/led:torch_0/brightness
chown cameraserver camera /sys/class/leds/led:torch_1/brightness
chown cameraserver camera /sys/class/leds/led:torch_0/max_brightness
chown cameraserver camera /sys/class/leds/led:torch_1/max_brightness
chown cameraserver camera /sys/class/leds/led:torch_0/ires_ua
chown cameraserver camera /sys/class/leds/led:torch_1/ires_ua
chown cameraserver camera /sys/class/leds/led:switch_0/brightness
chown cameraserver camera /sys/class/leds/led:switch_0/fault_status
# ToF sensor
chown cameraserver camera /dev/i2c-3
chmod 666 /dev/i2c-3
chown cameraserver camera /sys/devices/virtual/input/tof_sensor/tof_power_ctl
chmod 666 /sys/devices/virtual/input/tof_sensor/tof_power_ctl
restorecon /sys/devices/virtual/input/tof_sensor/tof_get_info
restorecon /sys/devices/virtual/input/tof_sensor/tof_power_ctl
restorecon /sys/devices/virtual/input/tof_sensor/tof_ranging_notify
# RGBC-IR sensor
chown cameraserver camera /sys/devices/virtual/input/rgbcir_sensor/als_Itime
chown cameraserver camera /sys/devices/virtual/input/rgbcir_sensor/als_all
chown cameraserver camera /sys/devices/virtual/input/rgbcir_sensor/als_auto_gain
chown cameraserver camera /sys/devices/virtual/input/rgbcir_sensor/als_blue
chown cameraserver camera /sys/devices/virtual/input/rgbcir_sensor/als_channel
chown cameraserver camera /sys/devices/virtual/input/rgbcir_sensor/als_clear
chown cameraserver camera /sys/devices/virtual/input/rgbcir_sensor/als_gain
chown cameraserver camera /sys/devices/virtual/input/rgbcir_sensor/als_green
chown cameraserver camera /sys/devices/virtual/input/rgbcir_sensor/als_persist
chown cameraserver camera /sys/devices/virtual/input/rgbcir_sensor/als_power_state
chown cameraserver camera /sys/devices/virtual/input/rgbcir_sensor/als_red
chown cameraserver camera /sys/devices/virtual/input/rgbcir_sensor/als_thres
chown cameraserver camera /sys/devices/virtual/input/rgbcir_sensor/als_thresh_deltaP
chown cameraserver camera /sys/devices/virtual/input/rgbcir_sensor/chip_id
chown cameraserver camera /sys/devices/virtual/input/rgbcir_sensor/chip_pow
chmod 666 /sys/devices/virtual/input/rgbcir_sensor/als_Itime
chmod 666 /sys/devices/virtual/input/rgbcir_sensor/als_auto_gain
chmod 666 /sys/devices/virtual/input/rgbcir_sensor/als_channel
chmod 666 /sys/devices/virtual/input/rgbcir_sensor/als_gain
chmod 666 /sys/devices/virtual/input/rgbcir_sensor/als_persist
chmod 666 /sys/devices/virtual/input/rgbcir_sensor/als_power_state
chmod 666 /sys/devices/virtual/input/rgbcir_sensor/als_thres
chmod 666 /sys/devices/virtual/input/rgbcir_sensor/als_thresh_deltaP
chmod 666 /sys/devices/virtual/input/rgbcir_sensor/chip_pow
restorecon /sys/devices/virtual/input/rgbcir_sensor/als_Itime
restorecon /sys/devices/virtual/input/rgbcir_sensor/als_all
restorecon /sys/devices/virtual/input/rgbcir_sensor/als_auto_gain
restorecon /sys/devices/virtual/input/rgbcir_sensor/als_blue
restorecon /sys/devices/virtual/input/rgbcir_sensor/als_channel
restorecon /sys/devices/virtual/input/rgbcir_sensor/als_clear
restorecon /sys/devices/virtual/input/rgbcir_sensor/als_gain
restorecon /sys/devices/virtual/input/rgbcir_sensor/als_green
restorecon /sys/devices/virtual/input/rgbcir_sensor/als_persist
restorecon /sys/devices/virtual/input/rgbcir_sensor/als_power_state
restorecon /sys/devices/virtual/input/rgbcir_sensor/als_red
restorecon /sys/devices/virtual/input/rgbcir_sensor/als_thres
restorecon /sys/devices/virtual/input/rgbcir_sensor/als_thresh_deltaP
restorecon /sys/devices/virtual/input/rgbcir_sensor/chip_id
restorecon /sys/devices/virtual/input/rgbcir_sensor/chip_pow
restorecon /sys/devices/virtual/input/rgbcir_sensor/notify
# create directory for wfd
mkdir /data/vendor/wfd 0770 system system
# Haptics vibrator
chown system system /sys/class/leds/vibrator/play_mode
chown system system /sys/class/leds/vibrator/vmax_mv
chown system system /sys/class/leds/vibrator/wf_samp
chown system system /sys/class/leds/vibrator/wf_rep_count
chown system system /sys/class/leds/vibrator/wf_s_rep_count
chown system system /sys/class/leds/vibrator/lra_auto_mode
#Start move time data to /data/vendor once post-fs-data done
start vendor.move_time_data
service iop /system/vendor/bin/iop
class main
user root
group root
disabled
socket iop seqpacket 0666 root system
service qcomsysd /system/vendor/bin/qcom-system-daemon
class main
user root
group root diag oem_2901
disabled
on property:persist.vendor.qcomsysd.enabled=1
enable qcomsysd
on property:persist.vendor.qcomsysd.enabled=0
stop qcomsysd
on property:ro.vendor.iocgrp.config=1
mkdir /dev/blkio
mount cgroup none /dev/blkio blkio
chown system system /dev/blkio
chown system system /dev/blkio/tasks
chmod 0664 /dev/blkio/tasks
mkdir /dev/blkio/bg 0755 system system
chown system system /dev/blkio/bg/tasks
chmod 0664 /dev/blkio/bg/tasks
write /dev/blkio/blkio.weight 1000
write /dev/blkio/bg/blkio.weight 100
# Set bdi ratio to 1 for external sdcard
on property:sys.boot_completed=1
write /sys/class/block/mmcblk0/bdi/max_ratio 1
# SONY: Enable wakeup irq module
write /sys/devices/platform/wakeup_debug.0/enable 1
on property:persist.sys.mba_boot_timeout=*
write /sys/module/pil_msa/parameters/pbl_mba_boot_timeout_ms ${persist.sys.mba_boot_timeout}
on property:persist.sys.modem_auth_timeout=*
write /sys/module/pil_msa/parameters/modem_auth_timeout_ms ${persist.sys.modem_auth_timeout}
on property:persist.sys.pil_proxy_timeout=*
write /sys/module/peripheral_loader/parameters/proxy_timeout_ms ${persist.sys.pil_proxy_timeout}
on property:persist.vendor.sys.rawdump_copy=1
write /sys/kernel/dload/emmc_dload 1
on property:persist.vendor.sys.rawdump_copy=0
write /sys/kernel/dload/emmc_dload 0
on property:sys.boot_completed=1
write /dev/kmsg "Boot completed "
#Reset read ahead for dm-0 and dm-1 to 512kb
write /sys/block/dm-0/queue/read_ahead_kb 512
write /sys/block/dm-1/queue/read_ahead_kb 512
#WDSP FW boot sysfs node used by STHAL
chown media audio /sys/kernel/wdsp0/boot
chown media audio /sys/kernel/wcd_cpe0/fw_name
#Reinit lmkd to reconfigure lmkd properties
setprop lmkd.reinit 1
on property:persist.vendor.radio.atfwd.start=false
stop vendor.atfwd
on property:vendor.radio.atfwd.start=false
stop vendor.atfwd
# corefile limit
on property:persist.debug.trace=1
mkdir /data/core 0777 root root
write /proc/sys/kernel/core_pattern "/data/core/%E.%p.%e"
on property:init.svc.wpa_supplicant=stopped
stop dhcpcd
on property:vendor.bluetooth.dun.status=running
start vendor.bt-dun
on property:vendor.bluetooth.dun.status=stopped
stop vendor.bt-dun
on property:ro.bluetooth.ftm_enabled=true
start ftmd
on property:vendor.bluetooth.startbtlogger=true
start vendor.bt_logger
on property:vendor.bluetooth.startbtlogger=false
stop vendor.bt_logger
on property:vendor.media.target.version=*
setprop vendor.sys.media.target.version ${vendor.media.target.version}
on property:sys.user.0.ce_available=true
# Remounting partitions here just in case vold restarts
mount_all /vendor/etc/idd.fstab
mount_all /vendor/etc/qns.fstab
# Setting property to inform that partitions are mounted
setprop vendor.idd.partitions_ready 1
# Shutdown notification for ChargeService
on property:sys.shutdown.requested=*
write /sys/class/power_supply/battery/running_status 2
write /sys/class/power_supply/battery/uevent change
# Set value in property to sysfs for LRC mode
on property:vendor.battery.charge.osv.init=1
setprop persist.vendor.battery.charge ${persist.service.battery.charge}
on property:persist.vendor.battery.charge=0
write /sys/class/power_supply/battery/lrc_enable 0
write /sys/class/power_supply/battery/lrc_socmax 0
write /sys/class/power_supply/battery/lrc_socmin 0
on property:persist.vendor.battery.charge=1
write /sys/class/power_supply/battery/lrc_socmax 60
write /sys/class/power_supply/battery/lrc_socmin 40
write /sys/class/power_supply/battery/lrc_enable 1
# Set value in property to sysfs for SmartCharge
on property:persist.vendor.battery.smt_chg=activate
write /sys/class/power_supply/battery/smart_charging_activation 1
on property:persist.vendor.battery.smt_chg=charging_suspend
write /sys/class/power_supply/battery/smart_charging_interruption 1
on property:persist.vendor.battery.smt_chg=charging_resume
write /sys/class/power_supply/battery/smart_charging_interruption 0
# Assure Bluetooth A2DP hardware offload is not disabled (JIML-163845)
# This is only needed in Q AND only for products that have run on P.
on property:persist.bluetooth.a2dp_offload.disabled=true
setprop persist.bluetooth.a2dp_offload.disabled false
service qcom-c_main-sh /vendor/bin/init.class_main.sh
class main
user root
oneshot
on property:vold.decrypt=trigger_restart_framework
start qcom-c_main-sh
start wcnss-service
start vendor.ipacm-diag
start vendor.netmgrd
start vendor.port-bridge
on property:persist.env.fastdorm.enabled=true
setprop persist.radio.data_no_toggle 1
service vendor.qrtr-ns /vendor/bin/qrtr-ns -f
class core
user vendor_qrtr
group vendor_qrtr
capabilities NET_BIND_SERVICE
service irsc_util /vendor/bin/irsc_util "/vendor/etc/sec_config"
class core
user root
oneshot
service vendor.rmt_storage /vendor/bin/rmt_storage
class core
user root
shutdown critical
ioprio rt 0
service vendor.tftp_server /vendor/bin/tftp_server
class core
user root
service vendor.bt-dun /system/bin/dun-server /dev/smd7 /dev/rfcomm0
class late_start
user bluetooth
group bluetooth net_bt_admin inet
disabled
oneshot
service vendor.bt_logger /system/bin/bt_logger
user bluetooth
group bluetooth net_bt_admin sdcard_rw sdcard_r media_rw
class late_start
disabled
oneshot
service ftmd /system/bin/logwrapper /system/bin/ftmdaemon
class late_start
user root
group bluetooth net_bt_admin misc diag net_bt
disabled
oneshot
service qmiproxy /system/bin/qmiproxy
class main
user radio
group radio diag
disabled
service vendor.sensors /vendor/bin/sscrpcd sensorspd
class early_hal
user system
group system wakelock
capabilities BLOCK_SUSPEND
service vendor.sensors.qti /vendor/bin/sensors.qti
class core
user system
group system
disabled
# Adjust socket buffer to enlarge TCP receive window for high bandwidth
# but only if ro.data.large_tcp_window_size property is set.
on property:ro.data.large_tcp_window_size=true
write /proc/sys/net/ipv4/tcp_adv_win_scale 2
on property:sys.sysctl.tcp_adv_win_scale=*
write /proc/sys/net/ipv4/tcp_adv_win_scale ${sys.sysctl.tcp_adv_win_scale}
service vendor.cnss-daemon /vendor/bin/cnss-daemon -n -l
class late_start
user system
group system inet net_admin wifi
capabilities NET_ADMIN
on property:sys.shutdown.requested=*
write /sys/kernel/shutdown_wlan/shutdown 1
stop vendor.cnss-daemon
service dhcpcd_bt-pan /system/bin/dhcpcd -BKLG
class late_start
disabled
oneshot
service iprenew_bt-pan /system/bin/dhcpcd -n
class late_start
disabled
oneshot
#service ssgqmigd /vendor/bin/ssgqmigd
# class late_start
# user radio
# group radio gps system
# socket ssgqmig seqpacket 0660 radio inet
service mlid /vendor/bin/mlid
class late_start
user gps
group gps
socket mlid stream 0666 gps gps
service loc_launcher /system/vendor/bin/loc_launcher
class late_start
user gps
group gps
on property:crypto.driver.load=1
insmod /system/lib/modules/qce.ko
insmod /system/lib/modules/qcedev.ko
service drmdiag /system/vendor/bin/drmdiagapp
class late_start
user root
disabled
oneshot
on property:drmdiag.load=1
start drmdiag
on property:drmdiag.load=0
stop drmdiag
service qcom-sh /vendor/bin/init.qcom.sh
class late_start
user root
group root system radio
oneshot
service vendor-sensor-sh /vendor/bin/init.qcom.sensors.sh
class core
user root
oneshot
on property:persist.vendor.somc.cust.modem0=*
setprop persist.vendor.somc.sim0 ${persist.vendor.somc.cust.modem0}
on property:persist.vendor.somc.cust.modem1=*
setprop persist.vendor.somc.sim1 ${persist.vendor.somc.cust.modem1}
service qcom-post-boot /vendor/bin/init.qcom.post_boot.sh
class late_start
user root
group root system wakelock graphics
disabled
oneshot
service qti-testscripts /system/bin/sh /system/etc/init.qcom.testscripts.sh
class late_start
user root
disabled
oneshot
service wifi-sdio-on /vendor/bin/init.qcom.sdio.sh
class late_start
group wifi inet
disabled
oneshot
service wifi-crda /vendor/bin/init.crda.sh
class late_start
user root
disabled
oneshot
on property:sys.boot_completed=1
start qcom-post-boot
start qti-testscripts
on property:ro.vendor.ril.mbn_copy_completed=1
write /data/vendor/radio/copy_complete 1
service vendor.atfwd /vendor/bin/ATFWD-daemon
class late_start
user system
group system radio
service hostapd_fst /vendor/bin/hw/hostapd -dd -g /data/vendor/wifi/hostapd/global
interface android.hardware.wifi.hostapd@1.0::IHostapd default
class main
capabilities NET_ADMIN NET_RAW
user wifi
group wifi
disabled
oneshot
service vendor.wigig_hostapd /vendor/bin/hw/hostapd -dd -j wigighostapd /data/vendor/wifi/hostapd/wigig_hostapd.conf
class late_start
capabilities NET_ADMIN NET_RAW
user wifi
group wifi inet keystore
oneshot
disabled
service ims_regmanager /system/vendor/bin/exe-ims-regmanagerprocessnative
class late_start
group net_bt_admin inet radio wifi
disabled
on property:persist.ims.regmanager.mode=1
start ims_regmanager
on property:ro.data.large_tcp_window_size=true
# Adjust socket buffer to enlarge TCP receive window for high bandwidth (e.g. DO-RevB)
write /proc/sys/net/ipv4/tcp_adv_win_scale 2
on property:ro.board.platform=msmnile && property:ro.baseband=msm && property:ro.vendor.qti.va_aosp.support=1
setprop ro.telephony.iwlan_operation_mode "legacy"
service battery_monitor /system/bin/battery_monitor
user system
group system
disabled
service vendor.ril-daemon2 /vendor/bin/hw/rild -c 2
class main
user radio
disabled
group radio cache inet misc audio sdcard_r sdcard_rw diag oem_2901 log
capabilities BLOCK_SUSPEND NET_ADMIN NET_RAW
service vendor.ril-daemon3 /vendor/bin/hw/rild -c 3
class main
user radio
disabled
group radio cache inet misc audio sdcard_r sdcard_rw diag oem_2901 log
capabilities BLOCK_SUSPEND NET_ADMIN NET_RAW
service profiler_daemon /system/bin/profiler_daemon
class late_start
user root
group root
disabled
service charger /system/bin/charger
class charger
user system
group system graphics input
capabilities SYS_BOOT
service hvdcp /system/bin/hvdcp
class core
user root
disabled
on property:persist.usb.hvdcp.detect=true
start hvdcp
on property:persist.usb.hvdcp.detect=false
stop hvdcp
service charger_monitor /system/bin/charger_monitor
user root
group root
disabled
service qbcharger /charger -m 1
disabled
oneshot
on property:sys.qbcharger.enable=true
start qbcharger
on property:sys.qbcharger.enable=false
stop qbcharger
service diag_mdlog_start /system/vendor/bin/diag_mdlog
class late_start
user shell
group system oem_2901 sdcard_rw sdcard_r media_rw
disabled
oneshot
service diag_mdlog_stop /system/vendor/bin/diag_mdlog -k
class late_start
user shell
group system oem_2901 sdcard_rw sdcard_r media_rw
disabled
oneshot
service qlogd /system/xbin/qlogd
socket qlogd stream 0662 system system
class main
disabled
on property:persist.sys.qlogd=1
start qlogd
on property:persist.sys.qlogd=0
stop qlogd
service vm_bms /vendor/bin/vm_bms
user root
group root
disabled
service msim_sh /vendor/bin/init.qcom.msim.sh
class core
user root
group root
oneshot
service vendor.msm_irqbalance /vendor/bin/msm_irqbalance -f /system/vendor/etc/msm_irqbalance.conf
class core
user root
group root
disabled
service vendor.msm_irqbal_lb /vendor/bin/msm_irqbalance -f /system/vendor/etc/msm_irqbalance_little_big.conf
class core
user root
group root
disabled
service vendor.msm_irqbl_sdm630 /vendor/bin/msm_irqbalance -f /system/vendor/etc/msm_irqbalance_sdm630.conf
class core
user root
group root
disabled
on post-fs-data && property:ro.crypto.state=encrypted && property:ro.crypto.type=file
start time_daemon
service time_daemon /vendor/bin/time_daemon
class main
user system
group system
capabilities SYS_TIME
# service for USERDEBUG
service vendor.LKCore-dbg /vendor/bin/LKCore
class late_start
oneshot
disabled
user root
group root system log diag net_raw
# service for USER
service vendor.LKCore-rel /vendor/bin/LKCore
class late_start
oneshot
disabled
user system
group system log diag
on charger
setprop persist.sys.usb.config mass_storage
start qcom-post-boot
chown radio wakelock /sys/power/wake_lock
chmod 0660 /sys/power/wake_lock
chown radio wakelock /sys/power/wake_unlock
chmod 0660 /sys/power/wake_unlock
mkdir /mnt/vendor/persist/hvdcp_opti 0770 root system
mount_all /vendor/etc/charger_fstab.qti
enable vendor.qti-chg-policy-sh
start vendor.qti-chg-policy-sh
#add poweroffhandler
service poweroffhandler /system/vendor/bin/poweroffhandler
class core
user media
group graphics audio
disabled
oneshot
on property:vendor.display.lcd_density=*
setprop ro.sf.lcd_density ${vendor.display.lcd_density}
on property:persist.vendor.radio.multisim.config=dsds
setprop persist.radio.multisim.config dsds
setprop ro.telephony.default_network "22,22"
setprop persist.vendor.radio.block_allow_data 1
enable vendor.qcrild
enable vendor.qcrild2
on property:persist.vendor.radio.multisim.config=ss
setprop ro.telephony.default_network 22
setprop persist.vendor.radio.block_allow_data 1
enable vendor.qcrild
# Logcat dump daemon, dumps logs to logdump partition
service logdumpd /system/bin/logcat -b all -v threadtime -D -w /dev/block/bootdevice/by-name/logdump
class core
writepid /dev/cpuset/system-background/tasks
disabled
# Logdumpd is enabled only for userdebug non-perf build
on property:ro.logdumpd.enabled=1
start logdumpd
on property:ro.vendor.radio.noril=*
setprop ro.radio.noril ${ro.vendor.radio.noril}
#service seemp_healthd /vendor/bin/seemp_healthd
# class late_start
# user system
# group system
service vendor.port-bridge /vendor/bin/port-bridge
class main
user radio
group radio system inet
disabled
oneshot
service vendor.power_off_alarm /vendor/bin/power_off_alarm
class core
group system
disabled
oneshot
service vendor.move_time_data /system/bin/move_time_data.sh
class main
user system
group system
disabled
oneshot
#service vendor.hbtp /vendor/bin/hbtp_daemon
# class main
# user system
# group system
# capabilities SYS_NICE
# disabled
#service chre /vendor/bin/chre
# class late_start
# user system
# group system
# socket chre seqpacket 0660 root system
# shutdown critical
on property:vendor.chre.enabled=0
stop chre
service bugreport /system/bin/dumpstate -d -p -B -z -o /data/user_de/0/com.android.shell/files/bugreports/bugreport
class main
disabled
oneshot
keycodes 114 115 116
service vendor.audio-hal /vendor/bin/hw/android.hardware.audio.service
override
class hal
user audioserver
# media gid needed for /dev/fm (radio) and for /data/misc/media (tee)
group audio camera drmrpc inet media mediadrm net_bt net_bt_admin net_bw_acct oem_2901 wakelock
capabilities BLOCK_SUSPEND SYS_NICE
ioprio rt 4
task_profiles ProcessCapacityHigh HighPerformance
onrestart restart audioserver
# imsdatadaemon starts with root and UID will be downgraded to RADIO.
service vendor.imsdatadaemon /vendor/bin/imsdatadaemon
class main
user radio
socket ims_datad stream 0660 system radio
group radio wifi inet vendor_qti_diag log
disabled
service vendor.imsqmidaemon /vendor/bin/imsqmidaemon
class main
user radio
socket ims_qmid stream 0660 system radio
group radio vendor_qti_diag log
on property:vendor.ims.QMI_DAEMON_STATUS=1
start vendor.imsdatadaemon
service vendor.imsrcsservice /vendor/bin/imsrcsd
class main
user radio
group radio vendor_qti_diag log inet wakelock
service vendor.ipacm /vendor/bin/ipacm
class main
user radio
group radio inet
service vendor.ipacm-diag /vendor/bin/ipacm-diag
class main
user radio
socket ipacm_log_file dgram 660 radio radio
group radio diag
disabled
# imsdatadaemon starts with root and UID will be downgraded to RADIO.
service vendor.ims_rtp_daemon /vendor/bin/ims_rtp_daemon
class main
user radio
group radio vendor_qti_diag inet log
on property:vendor.ims.DATA_DAEMON_STATUS=1
restart vendor.ims_rtp_daemon
service iddd /vendor/bin/iddd
class core
user oem_2987
group oem_2987 log inet oem_2993
writepid /dev/cpuset/system-background/tasks
# SONY: TrimArea Daemon
# Last 2 args: start block(blk size 128k), number of blocks(partitionsize(kb)/128(kb))
service tad /vendor/bin/tad /dev/block/bootdevice/by-name/TA 0,16 2
user oem_2997
group oem_2997 root
socket tad stream 0660 system oem_2993
class trimarea
# Trim Area QMI service
service ta_qmi_service /system/vendor/bin/ta_qmi_service
user root
disabled
# Modem log qmi service
service mlog_qmi_service /vendor/bin/mlog_qmi_service
user root
disabled
# Secure Config Transfer service
service sct_service /vendor/bin/sct_service
user root
disabled
# qns
service qns /vendor/bin/qns -d /mnt/qns -l /mnt/qns
user oem_2985
group oem_2985
socket qnsbsd stream 660 oem_2985 system
disabled
# DRM widevine
service wvkbd_installer /vendor/bin/wvkbd
class late_start
user system
group system
oneshot
# Manage netmgrd based on value of property
on property:persist.vendor.data.mode=disabled
stop vendor.netmgrd
service vendor.netmgrd /system/vendor/bin/netmgrd
class main
on property:ro.vendor.use_data_netmgrd=false
# netmgr not supported on specific target
stop vendor.netmgrd
service vendor.qcrild /vendor/bin/hw/qcrild
class main
user radio
disabled
group radio cache inet misc audio log readproc wakelock oem_2901 oem_2993
capabilities BLOCK_SUSPEND NET_ADMIN NET_RAW
service vendor.qcrild2 /vendor/bin/hw/qcrild -c 2
class main
user radio
disabled
group radio cache inet misc audio log readproc wakelock oem_2901 oem_2993
capabilities BLOCK_SUSPEND NET_ADMIN NET_RAW
service vendor.qcrild3 /vendor/bin/hw/qcrild -c 3
class main
user radio
disabled
group radio cache inet misc audio log readproc wakelock oem_2901 oem_2993
capabilities BLOCK_SUSPEND NET_ADMIN NET_RAW
service vendor.qseecomd /vendor/bin/qseecomd
class core
user root
group root
service vendor.dataqti /vendor/bin/qti
class main
user radio
socket qti_dpm_uds_file dgram 660 radio radio
group radio oem_2901 diag usb inet
disabled
service vendor.hvdcp_opti /vendor/bin/hvdcp_opti
class main
user system
group system wakelock
capabilities BLOCK_SUSPEND WAKE_ALARM
disabled
service vendor.qti-chg-policy-sh /vendor/bin/init.qti.chg_policy.sh
class core
user root
oneshot
disabled
on property:persist.vendor.hvdcp_opti.start=1
mkdir /mnt/vendor/persist/hvdcp_opti 0770 root system
enable vendor.hvdcp_opti
start vendor.hvdcp_opti
setprop persist.vendor.hvdcp_opti.start 0
service fps_hal /vendor/bin/hw/fpc_fingerprint@2.1_HIDL-service
# "class hal" causes a race condition on some devices due to files created
# in /data. As a workaround, postpone startup until later in boot once
# /data is mounted.
class late_start
user system
group system input
socket fpc_oem stream 0660 system system
service vendor.somc.hardware.camera-provider-1-0 /vendor/bin/hw/vendor.somc.hardware.camera.provider@1.0-service
class hal
user cameraserver
group camera audio input drmrpc oem_2993 oem_2996
ioprio rt 4
capabilities SYS_NICE
writepid /dev/cpuset/camera-daemon/tasks /dev/stune/top-app/tasks
socket cammw_excal:ipc:9000 stream 0660 cameraserver camera
socket cammw_excal:ipc:9001 stream 0660 cameraserver camera
# start secd service
service vendor.semc.hardware.secd-1-0 /vendor/bin/hw/vendor.semc.hardware.secd@1.0-service
class hal
user system
group system
# Start Key Provision daemon
service keyprov_daemon /vendor/bin/keyprovd
user system
group system
oneshot
class late_start
# Uevent observer
service kobjeventd /vendor/bin/hw/kobjeventd
user system
group system
class main
# Touch
on property:dev.bootcomplete=1 && property:vendor.cover_state=*
write /sys/devices/common_touch/touch/cover_status ${vendor.cover_state}