# Copyright (c) 2009-2012, 2014-2019, The Linux Foundation. All rights reserved. # # 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. # 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.${ro.product.device}.rc on early-init mount debugfs debugfs /sys/kernel/debug chmod 0755 /sys/kernel/debug # 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 # Load WIGIG platform driver exec u:r:vendor_modprobe:s0 -- /vendor/bin/modprobe -a -d /vendor/lib/modules msm_11ad_proxy on init # 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 on post-fs chmod 0755 /sys/kernel/debug/tracing on early-boot # 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/kernel/boot_slpi/boot 1 setprop ro.alarm_boot false # 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 on boot 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/kernel/boot_adsp/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 #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 #define back flash and front flash chmod 0660 /sys/android_camera/sensor chmod 0660 /sys/class/leds/led:flash_0/brightness chmod 0660 /sys/class/leds/led:flash_1/brightness chmod 0660 /sys/class/leds/led:flash_2/brightness chmod 0660 /sys/class/leds/led:torch_0/brightness chmod 0660 /sys/class/leds/led:torch_1/brightness chmod 0660 /sys/class/leds/led:torch_2/brightness chmod 0660 /sys/class/leds/led:switch_0/brightness chmod 0660 /sys/class/leds/led:switch_1/brightness chmod 0660 /sys/class/leds/flashlight/brightness chown system system /sys/android_camera/sensor chown system system /sys/class/leds/led:flash_0/brightness chown system system /sys/class/leds/led:flash_1/brightness chown system system /sys/class/leds/led:flash_2/brightness chown system system /sys/class/leds/led:torch_0/brightness chown system system /sys/class/leds/led:torch_1/brightness chown system system /sys/class/leds/led:torch_2/brightness chown system system /sys/class/leds/led:switch_0/brightness chown system system /sys/class/leds/led:switch_1/brightness chown system system /sys/class/leds/flashlight/brightness chmod 0660 /sys/class/power_supply/battery/input_suspend chmod 0660 /sys/class/power_supply/battery/charging_enabled chown system system /sys/class/power_supply/battery/input_suspend chown system system /sys/class/power_supply/battery/charging_enabled chmod 0770 /sys/class/power_supply/battery/device/thermalcall chown system system /sys/class/power_supply/battery/device/thermalcall mkdir /vendor/mnt/persist/drm 0770 system system mkdir /vendor/mnt/persist/bluetooth 0770 bluetooth bluetooth mkdir /vendor/mnt/persist/misc 0770 system system mkdir /vendor/mnt/persist/alarm 0770 system system mkdir /vendor/mnt/persist/time 0770 system system mkdir /vendor/mnt/persist/secnvm 0770 system system #create port-bridge log dir mkdir /data/vendor/port_bridge 0770 radio radio chmod 0770 /data/vendor/port_bridge #Create NETMGR daemon socket area mkdir /dev/socket/netmgr 0750 radio radio setprop wifi.interface wlan0 # Define TCP buffer sizes for various networks # ReadMin, ReadInitial, ReadMax, WriteMin, WriteInitial, WriteMax, setprop net.tcp.buffersize.wifi 524288,2097152,4194304,262144,524288,1048576 setprop ro.telephony.call_ring.multiple false #enable camera read sensors data setprop persist.camera.gyro.disable 0 #Remove SUID bit for iproute2 ip tool chmod 0755 /system/bin/ip chmod 0444 /sys/devices/platform/msm_hsusb/gadget/usb_state # Define TCP buffer sizes for various networks # ReadMin, ReadInitial, ReadMax, WriteMin, WriteInitial, WriteMax, setprop net.tcp.buffersize.default 4096,87380,524288,4096,16384,110208 setprop net.tcp.buffersize.lte 2097152,4194304,8388608,262144,524288,1048576 setprop net.tcp.buffersize.umts 4094,87380,110208,4096,16384,110208 setprop net.tcp.buffersize.hspa 4094,87380,1220608,4096,16384,1220608 setprop net.tcp.buffersize.hsupa 4094,87380,1220608,4096,16384,1220608 setprop net.tcp.buffersize.hsdpa 4094,87380,1220608,4096,16384,1220608 setprop net.tcp.buffersize.hspap 4094,87380,1220608,4096,16384,1220608 setprop net.tcp.buffersize.edge 4093,26280,35040,4096,16384,35040 setprop net.tcp.buffersize.gprs 4092,8760,11680,4096,8760,11680 setprop net.tcp.buffersize.evdo 4094,87380,524288,4096,16384,262144 setprop net.tcp.2g_init_rwnd 10 # 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 # 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 # Set the console loglevel to < KERN_INFO # Set the default message loglevel to KERN_INFO write /proc/sys/kernel/printk "6 6 1 7" # 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 -p /dev/block/ chmod 0660 /dev/block/bootdevice/by-name/rawdump -p /dev/block/ chown root system /sys/kernel/dload/emmc_dload chmod 0660 /sys/kernel/dload/emmc_dload chown root system /dev/block/bootdevice/by-name/ramdump -p /dev/block/ chmod 0660 /dev/block/bootdevice/by-name/ramdump -p /dev/block/ 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 # 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 # Create hvdcp_opti directory mkdir /mnt/vendor/persist/hvdcp_opti 0770 root system # Create pa-cal driver directory lct-20180914 mkdir /mnt/vendor/persist/audio 0770 root root # zhitongze@huaqin.com add sensor hardware info 20180207 begin chmod 0664 /sys/devices/platform/HardwareInfo/gsensor chmod 0664 /sys/devices/platform/HardwareInfo/msensor chmod 0664 /sys/devices/platform/HardwareInfo/alsps chmod 0664 /sys/devices/platform/HardwareInfo/gyro # zhitongze@huaqin.com add sensor hardware info 20180207 end chown system system /sys/devices/platform/HardwareInfo/alsps chown system system /sys/devices/platform/HardwareInfo/gsensor chown system system /sys/devices/platform/HardwareInfo/msensor chown system system /sys/devices/platform/HardwareInfo/gyro chown system system /sys/devices/platform/HardwareInfo/sar_sensor_1 chown system system /sys/devices/platform/HardwareInfo/sar_sensor_2 # msm specific files that need to be created on /data on post-fs-data 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 QDMA dropbox mkdir /data/vendor/qdmastats 0700 system system mkdir /data/vendor/qdma 0770 system system mkdir /dev/socket/qdma 0777 system system chmod 2777 /dev/socket/qdma # 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 mkdir /data/misc/camera 0770 camera camera #Change ownership to system chown system system /data/vendor/tombstones 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 port-bridge log dir mkdir /data/vendor/port_bridge 0770 radio radio chmod 0770 /data/vendor/port_bridge #create netmgr log dir mkdir /data/vendor/netmgr 0770 radio radio chmod 0770 /data/vendor/netmgr #create ipacm log dir mkdir /data/vendor/ipa 0770 radio radio chmod 0770 /data/vendor/ipa #Create QTI dir for logs mkdir /data/vendor/dataqti 0770 radio radio chmod 0770 /data/vendor/dataqti # 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 # 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 /vendor/mnt/persist again so because mount is run as root + defaults chown root system /vendor/mnt/persist chmod 0771 /vendor/mnt/persist chown system system /vendor/mnt/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 the symlink to qcn wpa_supplicant folder for ar6000 wpa_supplicant mkdir /data/system 0775 system system #symlink /data/misc/wifi/wpa_supplicant /data/system/wpa_supplicant #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 mkdir /data/vendor/location-partner 0770 gps gps mkdir /data/vendor/location-partner/dre 0770 gps gps mkdir /data/vendor/location-partner/ppe 0770 gps gps mkdir /dev/socket/location 0770 gps gps mkdir /dev/socket/location/ehub 0770 gps gps #Create directory from IMS services mkdir /data/shared 0755 chown system system /data/shared #Create directory for FOTA mkdir /data/fota 0771 chown system system /data/fota # SSC/SLPI sensors mkdir /vendor/mnt/persist/sensors 0775 sensors sensors write /vendor/mnt/persist/sensors/sensors_settings 1 chown system root /vendor/mnt/persist/sensors/sensors_settings chmod 0664 /vendor/mnt/persist/sensors/sensors_settings chown system system /vendor/mnt/persist/PRSensorData.txt chmod 0600 /vendor/mnt/persist/PRSensorData.txt #Create directory for hostapd mkdir /data/hostapd 0770 system wifi # 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 #Create FM dir for patchdownloader mkdir /data/vendor/fm 0770 system system chmod 0770 /data/vendor/fm #Create PERFD deamon related dirs mkdir /data/vendor/perfd 0770 root system chmod 2770 /data/vendor/perfd rm /data/vendor/perfd/default_values mkdir /data/vendor/secure_element 0777 system system #Create IOP deamon related dirs mkdir /data/vendor/iop 0700 root 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 copy /vendor/etc/ad_calib.cfg /data/vendor/display/ad_calib.cfg chmod 0644 /data/vendor/display/ad_calib.cfg # 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 # set aggressive read ahead for dm-0 and dm-1 during boot up write /sys/block/dm-0/queue/read_ahead_kb 2048 write /sys/block/dm-1/queue/read_ahead_kb 2048 write /sys/block/dm-2/queue/read_ahead_kb 2048 # Create vpp directory mkdir /data/vendor/vpp 0770 media media #Create dir for TUI mkdir /data/vendor/tui 0700 system system #Start move time data to /data/vendor once post-fs-data done start vendor.move_time_data service vendor.ssr_setup /system/vendor/bin/ssr_setup oneshot disabled service vendor.ss_ramdump /system/vendor/bin/subsystem_ramdump class main user system group system disabled 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 on property:persist.vendor.sys.ssr.enable_debug=* write /sys/module/subsystem_restart/parameters/enable_debug ${persist.vendor.sys.ssr.enable_debug} on property:persist.vendor.sys.mba_boot_timeout=* write /sys/module/pil_msa/parameters/pbl_mba_boot_timeout_ms ${persist.vendor.sys.mba_boot_timeout} on property:persist.vendor.sys.modem_auth_timeout=* write /sys/module/pil_msa/parameters/modem_auth_timeout_ms ${persist.vendor.sys.modem_auth_timeout} on property:persist.vendor.sys.pil_proxy_timeout=* write /sys/module/peripheral_loader/parameters/proxy_timeout_ms ${persist.vendor.sys.pil_proxy_timeout} on property:persist.vendor.ssr.restart_level=* start vendor.ssr_setup on property:persist.vendor.ssr.enable_ramdumps=1 write /sys/module/subsystem_restart/parameters/enable_ramdumps 1 mkdir /data/vendor/ramdump_ssr 770 system system start vendor.ss_ramdump on property:persist.vendor.ssr.enable_ramdumps=0 write /sys/module/subsystem_restart/parameters/enable_ramdumps 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 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:ro.bluetooth.ftm_enabled=true start vendor.ftmd service vendor.qcom-c_main-sh /vendor/bin/init.class_main.sh class main user root oneshot on property:vold.decrypt=trigger_restart_framework start vendor.qcom-c_main-sh start vendor.cnss_diag restart vendor.audio-hal-2-0 restart vendor.camera-provider-2-4 on property:persist.env.fastdorm.enabled=true setprop persist.radio.data_no_toggle 1 service vendor.cnd /system/vendor/bin/cnd class main user system group system wifi inet radio wakelock net_admin writepid /dev/cpuset/system-background/tasks service dpmQmiMgr /system/vendor/bin/dpmQmiMgr class main user system group system service irsc_util /vendor/bin/irsc_util "/vendor/etc/sec_config" class core user root oneshot writepid /dev/cpuset/system-background/tasks 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 group root system service vendor.port-bridge /system/vendor/bin/port-bridge class main user radio group radio system inet disabled oneshot writepid /dev/cpuset/system-background/tasks service vendor.netmgrd /system/vendor/bin/netmgrd class main disabled writepid /dev/cpuset/system-background/tasks service vendor.ipacm /system/vendor/bin/ipacm class main user radio group radio inet disabled writepid /dev/cpuset/system-background/tasks service vendor.dataqti /system/vendor/bin/qti class main user radio group radio oem_2901 diag usb net_admin disabled writepid /dev/cpuset/system-background/tasks service vendor.sensors /vendor/bin/sscrpcd class core user system group system disabled service vendor.sensors.qti /vendor/bin/sensors.qti class core user system group system service vendor.sensors.qcom /vendor/bin/sensors.qcom class core user root group root writepid /dev/cpuset/system-background/tasks on property:ro.vendor.use_data_netmgrd=false # netmgr not supported on specific target stop vendor.netmgrd # 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 wpa_supplicant /vendor/bin/hw/wpa_supplicant \ -O/data/vendor/wifi/wpa/sockets -puse_p2p_group_interface=1 \ -g@android:vendor_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 interface android.hardware.wifi.supplicant@1.0::ISupplicant default interface android.hardware.wifi.supplicant@1.1::ISupplicant default class main socket vendor_wpa_wlan0 dgram 660 wifi wifi disabled oneshot writepid /dev/cpuset/system-background/tasks service cnss-daemon /system/vendor/bin/cnss-daemon -n -l class late_start user system group system inet net_admin wifi capabilities NET_ADMIN writepid /dev/cpuset/system-background/tasks on property:sys.shutdown.requested=* stop cnss-daemon service loc_launcher /system/vendor/bin/loc_launcher class late_start user gps group gps writepid /dev/cpuset/system-background/tasks service vendor.qcom-sh /vendor/bin/init.qcom.sh class late_start user root group root system radio oneshot service vendor.qcom-post-boot /vendor/bin/init.qcom.post_boot.sh class late_start user root group root system wakelock graphics disabled oneshot on property:sys.boot_completed=1 start vendor.qcom-post-boot on property:ro.vendor.ril.mbn_copy_completed=1 write /data/vendor/radio/copy_complete 1 on property:ro.vendor.ril.mbn_copy_completed=1 write /data/vendor/radio/copy_complete 1 service vendor.qvop-daemon /vendor/bin/qvop-daemon class late_start user system group system drmrpc writepid /dev/cpuset/system-background/tasks service vendor.atfwd /vendor/bin/ATFWD-daemon class late_start user system group system radio on property:persist.vendor.radio.atfwd.start=true start vendor.atfwd 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 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 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 charger /charger class charger group system graphics seclabel u:r:healthd:s0 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 on charger setprop persist.sys.usb.config mass_storage load_system_props start qcom-post-boot on property:vendor.display.lcd_density=* setprop ro.sf.lcd_density ${vendor.display.lcd_density} # Set vendor-ril lib path based on Meta version on property:vendor.rild.libpath=* setprop rild.libpath ${vendor.rild.libpath} on property:ro.vendor.radio.noril=* setprop ro.radio.noril ${ro.vendor.radio.noril} service vendor.power_off_alarm /vendor/bin/power_off_alarm class core group system disabled oneshot #Set GPU Opengles version on property:vendor.opengles.version=* setprop ro.opengles.version ${vendor.opengles.version} #Set gpu available frequencies property on property:vendor.gpu.available_frequencies=* setprop ro.vendor.gpu.available_frequencies ${vendor.gpu.available_frequencies} #workaround for camera HAL can not read sys property on property:sys.camera.face.unlock=* setprop vendor.camera.face.unlock ${sys.camera.face.unlock} #add MIUI camera flag on property:sys.camera.miui.apk=* setprop vendor.camera.miui.apk ${sys.camera.miui.apk} #add cts camera flag #add MIUI camera flag on property:sys.camera.not.cts.apk=* setprop vendor.camera.not.cts.apk ${sys.camera.not.cts.apk} #add MIUI camera flag on property:sys.camera.douyin.apk=* setprop vendor.camera.douyin.apk ${sys.camera.douyin.apk} #add cts verify flag on property:sys.camera.not.ctsverify.apk=* setprop vendor.camera.not.ctsverify.apk ${sys.camera.not.ctsverify.apk} #add cts verify flag on property:sys.gyro.sensorname=* setprop vendor.camera.gyro.sensorname ${sys.gyro.sensorname} service vendor.audio-hal-2-0 /vendor/bin/hw/android.hardware.audio@2.0-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 system capabilities BLOCK_SUSPEND ioprio rt 4 writepid /dev/cpuset/foreground/tasks /dev/stune/foreground/tasks # audioflinger restarts itself when it loses connection with the hal # and its .rc file has an "onrestart restart audio-hal" rule, thus # an additional auto-restart from the init process isn't needed. oneshot interface android.hardware.audio@4.0::IDevicesFactory default interface android.hardware.audio@2.0::IDevicesFactory default