diff --git a/common.mk b/common.mk index 527ae1a..2514403 100644 --- a/common.mk +++ b/common.mk @@ -202,11 +202,11 @@ PRODUCT_PACKAGES += \ ftm_power_config.sh \ init.class_main.sh \ init.cust.rc \ + init.kernel.post_boot.sh \ init.oem.debug.rc \ - init.oem.minidump.sdx55m.rc \ init.oem.rc \ - init.oem.sec.rc \ init.oem_ftm.rc \ + init.oem_rf.rc \ init.oplus_chg.sh \ init.qcom.class_core.sh \ init.qcom.early_boot.sh \ @@ -218,12 +218,17 @@ PRODUCT_PACKAGES += \ init.qcom.usb.sh \ init.qti.chg_policy.sh \ init.qti.dcvs.sh \ + init.qti.kernel.rc \ + init.qti.kernel.sh \ + init.qti.qcv.rc \ init.qti.qcv.sh \ init.recovery.qcom.rc \ init.target.rc \ + init.uicc.rc \ ueventd.qcom.rc \ vendor.oem_ftm.rc \ - vendor.oem_ftm_svc_disable.rc + vendor.oem_ftm_svc_disable.rc \ + vendor_modprobe.sh # Component overrides PRODUCT_COPY_FILES += \ diff --git a/rootdir/Android.mk b/rootdir/Android.mk index 7577cf8..3b1a902 100644 --- a/rootdir/Android.mk +++ b/rootdir/Android.mk @@ -26,6 +26,14 @@ LOCAL_SRC_FILES := bin/init.class_main.sh LOCAL_MODULE_PATH := $(TARGET_OUT_VENDOR_EXECUTABLES) include $(BUILD_PREBUILT) +include $(CLEAR_VARS) +LOCAL_MODULE := init.kernel.post_boot.sh +LOCAL_MODULE_TAGS := optional +LOCAL_MODULE_CLASS := ETC +LOCAL_SRC_FILES := bin/init.kernel.post_boot.sh +LOCAL_MODULE_PATH := $(TARGET_OUT_VENDOR_EXECUTABLES) +include $(BUILD_PREBUILT) + include $(CLEAR_VARS) LOCAL_MODULE := init.oplus_chg.sh LOCAL_MODULE_TAGS := optional @@ -90,6 +98,14 @@ LOCAL_SRC_FILES := bin/init.qti.dcvs.sh LOCAL_MODULE_PATH := $(TARGET_OUT_VENDOR_EXECUTABLES) include $(BUILD_PREBUILT) +include $(CLEAR_VARS) +LOCAL_MODULE := init.qti.kernel.sh +LOCAL_MODULE_TAGS := optional +LOCAL_MODULE_CLASS := ETC +LOCAL_SRC_FILES := bin/init.qti.kernel.sh +LOCAL_MODULE_PATH := $(TARGET_OUT_VENDOR_EXECUTABLES) +include $(BUILD_PREBUILT) + include $(CLEAR_VARS) LOCAL_MODULE := init.qti.qcv.sh LOCAL_MODULE_TAGS := optional @@ -98,6 +114,14 @@ LOCAL_SRC_FILES := bin/init.qti.qcv.sh LOCAL_MODULE_PATH := $(TARGET_OUT_VENDOR_EXECUTABLES) include $(BUILD_PREBUILT) +include $(CLEAR_VARS) +LOCAL_MODULE := vendor_modprobe.sh +LOCAL_MODULE_TAGS := optional +LOCAL_MODULE_CLASS := ETC +LOCAL_SRC_FILES := bin/vendor_modprobe.sh +LOCAL_MODULE_PATH := $(TARGET_OUT_VENDOR_EXECUTABLES) +include $(BUILD_PREBUILT) + include $(CLEAR_VARS) LOCAL_MODULE := ftm_power_config.sh LOCAL_MODULE_TAGS := optional @@ -131,10 +155,10 @@ LOCAL_MODULE_PATH := $(TARGET_OUT_VENDOR_ETC)/init/hw include $(BUILD_PREBUILT) include $(CLEAR_VARS) -LOCAL_MODULE := init.oem.minidump.sdx55m.rc +LOCAL_MODULE := init.oem_rf.rc LOCAL_MODULE_TAGS := optional LOCAL_MODULE_CLASS := ETC -LOCAL_SRC_FILES := etc/init.oem.minidump.sdx55m.rc +LOCAL_SRC_FILES := etc/init.oem_rf.rc LOCAL_MODULE_PATH := $(TARGET_OUT_VENDOR_ETC)/init/hw include $(BUILD_PREBUILT) @@ -146,14 +170,6 @@ LOCAL_SRC_FILES := etc/init.oem.rc LOCAL_MODULE_PATH := $(TARGET_OUT_VENDOR_ETC)/init/hw include $(BUILD_PREBUILT) -include $(CLEAR_VARS) -LOCAL_MODULE := init.oem.sec.rc -LOCAL_MODULE_TAGS := optional -LOCAL_MODULE_CLASS := ETC -LOCAL_SRC_FILES := etc/init.oem.sec.rc -LOCAL_MODULE_PATH := $(TARGET_OUT_VENDOR_ETC)/init/hw -include $(BUILD_PREBUILT) - include $(CLEAR_VARS) LOCAL_MODULE := init.qcom.factory.rc LOCAL_MODULE_TAGS := optional @@ -178,6 +194,22 @@ LOCAL_SRC_FILES := etc/init.qcom.usb.rc LOCAL_MODULE_PATH := $(TARGET_OUT_VENDOR_ETC)/init/hw include $(BUILD_PREBUILT) +include $(CLEAR_VARS) +LOCAL_MODULE := init.qti.kernel.rc +LOCAL_MODULE_TAGS := optional +LOCAL_MODULE_CLASS := ETC +LOCAL_SRC_FILES := etc/init.qti.kernel.rc +LOCAL_MODULE_PATH := $(TARGET_OUT_VENDOR_ETC)/init/hw +include $(BUILD_PREBUILT) + +include $(CLEAR_VARS) +LOCAL_MODULE := init.qti.qcv.rc +LOCAL_MODULE_TAGS := optional +LOCAL_MODULE_CLASS := ETC +LOCAL_SRC_FILES := etc/init.qti.qcv.rc +LOCAL_MODULE_PATH := $(TARGET_OUT_VENDOR_ETC)/init +include $(BUILD_PREBUILT) + include $(CLEAR_VARS) LOCAL_MODULE := init.recovery.qcom.rc LOCAL_MODULE_TAGS := optional @@ -195,6 +227,14 @@ LOCAL_SRC_FILES := etc/init.target.rc LOCAL_MODULE_PATH := $(TARGET_OUT_VENDOR_ETC)/init/hw include $(BUILD_PREBUILT) +include $(CLEAR_VARS) +LOCAL_MODULE := init.uicc.rc +LOCAL_MODULE_TAGS := optional +LOCAL_MODULE_CLASS := ETC +LOCAL_SRC_FILES := etc/init.uicc.rc +LOCAL_MODULE_PATH := $(TARGET_OUT_VENDOR_ETC)/init/hw +include $(BUILD_PREBUILT) + include $(CLEAR_VARS) LOCAL_MODULE := vendor.oem_ftm.rc LOCAL_MODULE_TAGS := optional diff --git a/rootdir/bin/init.class_main.sh b/rootdir/bin/init.class_main.sh index 35e72ef..05c3251 100755 --- a/rootdir/bin/init.class_main.sh +++ b/rootdir/bin/init.class_main.sh @@ -33,12 +33,12 @@ baseband=`getprop ro.baseband` sgltecsfb=`getprop persist.vendor.radio.sglte_csfb` datamode=`getprop persist.vendor.data.mode` +low_ram=`getprop ro.config.low_ram` qcrild_status=true case "$baseband" in "apq" | "sda" | "qcs" ) setprop ro.vendor.radio.noril yes - stop ril-daemon stop vendor.ril-daemon stop vendor.qcrild esac @@ -86,12 +86,10 @@ case "$baseband" in if [ "$qcrild_status" = "true" ]; then # Make sure both rild, qcrild are not running at same time. # This is possible with vanilla aosp system image. - stop ril-daemon stop vendor.ril-daemon start vendor.qcrild else - start ril-daemon start vendor.ril-daemon fi @@ -129,11 +127,15 @@ case "$baseband" in case "$datamode" in "tethered") start vendor.dataqti - start vendor.dataadpl + if [ "$low_ram" != "true" ]; then + start vendor.dataadpl + fi ;; "concurrent") start vendor.dataqti - start vendor.dataadpl + if [ "$low_ram" != "true" ]; then + start vendor.dataadpl + fi ;; *) ;; diff --git a/rootdir/bin/init.kernel.post_boot.sh b/rootdir/bin/init.kernel.post_boot.sh new file mode 100755 index 0000000..148b537 --- /dev/null +++ b/rootdir/bin/init.kernel.post_boot.sh @@ -0,0 +1,591 @@ +#============================================================================= +# Copyright (c) 2020 Qualcomm Technologies, Inc. +# All Rights Reserved. +# Confidential and Proprietary - Qualcomm Technologies, Inc. +# +# 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. +#============================================================================= + +function configure_zram_parameters() { + postboot_running=$(getprop vendor.sys.memplus.postboot 0) + if [ $postboot_running == 3 ];then + return + fi + + MemTotalStr=`cat /proc/meminfo | grep MemTotal` + MemTotal=${MemTotalStr:16:8} + + low_ram=`getprop ro.config.low_ram` + + # Zram disk - 75% for Go and < 2GB devices . + # For >2GB Non-Go devices, size = 50% of RAM size. Limit the size to 4GB. + # And enable lz4 zram compression for Go targets. + + let RamSizeGB="( $MemTotal / 1048576 ) + 1" + diskSizeUnit=M + if [ $RamSizeGB -le 2 ]; then + let zRamSizeMB="( $RamSizeGB * 1024 ) * 3 / 4" + else + let zRamSizeMB="( $RamSizeGB * 1024 ) / 2" + fi + + # use MB avoid 32 bit overflow + if [ $zRamSizeMB -gt 4096 ]; then + let zRamSizeMB=4096 + fi + + if [ "$low_ram" == "true" ]; then + echo lz4 > /sys/block/zram0/comp_algorithm + fi + + if [ -f /sys/block/zram0/disksize ]; then + if [ -f /sys/block/zram0/use_dedup ]; then + echo 1 > /sys/block/zram0/use_dedup + fi + echo "$zRamSizeMB""$diskSizeUnit" > /sys/block/zram0/disksize + + # ZRAM may use more memory than it saves if SLAB_STORE_USER + # debug option is enabled. + if [ -e /sys/kernel/slab/zs_handle ]; then + echo 0 > /sys/kernel/slab/zs_handle/store_user + fi + if [ -e /sys/kernel/slab/zspage ]; then + echo 0 > /sys/kernel/slab/zspage/store_user + fi + + mkswap /dev/block/zram0 + swapon /dev/block/zram0 -p 32758 + fi +} + +function configure_read_ahead_kb_values() { + MemTotalStr=`cat /proc/meminfo | grep MemTotal` + MemTotal=${MemTotalStr:16:8} + + dmpts=$(ls /sys/block/*/queue/read_ahead_kb | grep -e dm -e mmc) + + # Set 128 for <= 3GB & + # set 512 for >= 4GB targets. + if [ $MemTotal -le 3145728 ]; then + ra_kb=128 + else + ra_kb=512 + fi + if [ -f /sys/block/mmcblk0/bdi/read_ahead_kb ]; then + echo $ra_kb > /sys/block/mmcblk0/bdi/read_ahead_kb + fi + if [ -f /sys/block/mmcblk0rpmb/bdi/read_ahead_kb ]; then + echo $ra_kb > /sys/block/mmcblk0rpmb/bdi/read_ahead_kb + fi + for dm in $dmpts; do + echo $ra_kb > $dm + done +} + +# huangwen.chen@OPTI, 2020/05/14, add for zram writeback +function configure_zram_writeback() { + # get backing storage size, unit: MB + backing_dev_size=$(getprop persist.vendor.zwriteback.backing_dev_size 2048) + case $backing_dev_size in + [1-9]) + ;; + [1-9][0-9]*) + ;; + *) + backing_dev_size=2048 + ;; + esac + + dump_switch=$(getprop persist.vendor.zwriteback.backup) + wb_file="/data/vendor/swap/zram_wb" + if [[ -f $wb_file && $dump_switch == 1 ]];then + rm -f "/data/vendor/swap/zram_wb.old" + mv $wb_file "/data/vendor/swap/zram_wb.old" + fi + # create backing storage + # check if dd command success + ret=$(dd if=/dev/zero of=/data/vendor/swap/zram_wb bs=1m count=$backing_dev_size 2>&1) + if [ $? -ne 0 ];then + rm -f /data/vendor/swap/zram_wb + echo "memplus $ret" > /dev/kmsg + return 1 + fi + + # check if attaching file success + losetup -f + loop_device=$(losetup -f -s /data/vendor/swap/zram_wb 2>&1) + if [ $? -ne 0 ];then + rm -f /data/vendor/swap/zram_wb + echo "memplus $loop_device" > /dev/kmsg + return 1 + fi + echo $loop_device > /sys/block/zram0/backing_dev + + mem_limit=$(getprop persist.vendor.zwriteback.mem_limit) + case $mem_limit in + [1-9]) + mem_limit="${mem_limit}M" + ;; + [1-9][0-9]*) + mem_limit="${mem_limit}M" + ;; + *) + mem_limit="1G" + ;; + esac + echo $mem_limit > /sys/block/zram0/mem_limit +} + +# bin.zhong@ASTI, 2019/10/12, add for memplus +function configure_memplus_parameters() { + bootmode=`getprop ro.vendor.factory.mode` + if [ "$bootmode" == "ftm" ] || [ "$bootmode" == "wlan" ] || [ "$bootmode" == "rf" ];then + return + fi + if [ ! $memplus_post_config ];then + return + fi + setprop vendor.sys.memplus.postboot 1 + memplus=`getprop persist.vendor.memplus.enable` + case "$memplus" in + "0") + # diable swapspace + rm /data/vendor/swap/swapfile + echo "memplus swapoff start" > /dev/kmsg + ret=$(swapoff /dev/block/zram0 2>&1) + if [ $? -ne 0 ];then + echo "memplus $ret" > /dev/kmsg + return + fi + echo "memplus swapoff done" > /dev/kmsg + ;; + "1") + # enable memplus + rm /data/vendor/swap/swapfile + # reset zram swapspace + # huangwen.chen@OPTI, 2020/07/10 check if swapoff success + echo "memplus swapoff start" > /dev/kmsg + ret=$(swapoff /dev/block/zram0 2>&1) + if [ $? -ne 0 ];then + echo "memplus $ret" > /dev/kmsg + return + fi + echo "memplus swapoff done" > /dev/kmsg + echo 1 > /sys/block/zram0/reset + + # huangwen.chen@OPTI, 2020/05/21 set zram disksize by property + disksize=$(getprop persist.vendor.zwriteback.disksize 4096) + case $disksize in + [1-9]) + disksize="${disksize}M" + ;; + [1-9][0-9]*) + disksize="${disksize}M" + ;; + *) + disksize="2100M" + ;; + esac + + # huangwen.chen@OPTI, 2020/05/14 add for zram writeback + # check if ZRAM_WRITEBACK_CONFIG enable + writeback_file="/sys/block/zram0/writeback" + zwriteback=$(getprop persist.vendor.zwriteback.enable 1) + if [[ -f $writeback_file && $zwriteback == 1 ]];then + configure_zram_writeback + # check if configure_zram_writeback success + if [ $? -ne 0 ];then + echo 0 > /sys/block/zram0/mem_limit + fi + else + rm -f /data/vendor/swap/zram_wb + disksize="2100M" + echo 0 > /sys/block/zram0/mem_limit + fi + echo $disksize > /sys/block/zram0/disksize + + mkswap /dev/block/zram0 + echo "memplus swapon start" > /dev/kmsg + swapon /dev/block/zram0 -p 32758 + if [ $? -eq 0 ]; then + echo 1 > /sys/module/memplus_core/parameters/memory_plus_enabled + fi + echo "memplus swapon done" > /dev/kmsg + ;; + *) + #enable kswapd + rm /data/vendor/swap/swapfile + # reset zram swapspace + # huangwen.chen@OPTI, 2020/07/10 check if swapoff success + echo "memplus swapoff start" > /dev/kmsg + ret=$(swapoff /dev/block/zram0 2>&1) + if [ $? -ne 0 ];then + echo "memplus $ret" > /dev/kmsg + return + fi + echo "memplus swapoff done" > /dev/kmsg + echo 1 > /sys/block/zram0/reset + echo lz4 > /sys/block/zram0/comp_algorithm + + + # huangwen.chen@OPTI, 2020/05/21 set zram disksize by property + disksize=$(getprop persist.vendor.zwriteback.disksize 4096) + case $disksize in + [1-9]) + disksize="${disksize}M" + ;; + [1-9][0-9]*) + disksize="${disksize}M" + ;; + *) + disksize="2100M" + ;; + esac + # huangwen.chen@OPTI, 2020/05/14 add for zram writeback + # check if ZRAM_WRITEBACK_CONFIG enable + writeback_file="/sys/block/zram0/writeback" + zwriteback=$(getprop persist.vendor.zwriteback.enable 1) + if [[ -f $writeback_file && $zwriteback == 1 ]];then + configure_zram_writeback + if [ $? -ne 0 ];then + echo 0 > /sys/block/zram0/mem_limit + fi + else + rm -f /data/vendor/swap/zram_wb + disksize="2100M" + echo 0 > /sys/block/zram0/mem_limit + fi + echo $disksize > /sys/block/zram0/disksize + + mkswap /dev/block/zram0 + echo "memplus swapon start" > /dev/kmsg + swapon /dev/block/zram0 -p 32758 + if [ $? -eq 0 ]; then + echo 0 > /sys/module/memplus_core/parameters/memory_plus_enabled + fi + echo "memplus swapon done" > /dev/kmsg + ;; + esac + setprop vendor.sys.memplus.postboot 2 +} + +function configure_memory_parameters() { + # Set Memory parameters. + # + # Set per_process_reclaim tuning parameters + # All targets will use vmpressure range 50-70, + # All targets will use 512 pages swap size. + # + # Set Low memory killer minfree parameters + # 32 bit Non-Go, all memory configurations will use 15K series + # 32 bit Go, all memory configurations will use uLMK + Memcg + # 64 bit will use Google default LMK series. + # + # Set ALMK parameters (usually above the highest minfree values) + # vmpressure_file_min threshold is always set slightly higher + # than LMK minfree's last bin value for all targets. It is calculated as + # vmpressure_file_min = (last bin - second last bin ) + last bin + # + # Set allocstall_threshold to 0 for all targets. + # + MemTotalStr=`cat /proc/meminfo | grep MemTotal` + MemTotal=${MemTotalStr:16:8} + + configure_zram_parameters + configure_read_ahead_kb_values + echo 0 > /proc/sys/vm/page-cluster + echo 100 > /proc/sys/vm/swappiness + # set watermark_scale_factor = 36MB * 1024 * 1024 * 10 / MemTotal + factor=`expr 377487360 / $MemTotal` + echo $factor > /proc/sys/vm/watermark_scale_factor + + # set min_free_kbytes = 32MB + echo 32768 > /proc/sys/vm/min_free_kbytes +} + +rev=`cat /sys/devices/soc0/revision` +ddr_type=`od -An -tx /proc/device-tree/memory/ddr_device_type` +ddr_type4="07" +ddr_type5="08" + +# Core control parameters for gold +echo 2 > /sys/devices/system/cpu/cpu4/core_ctl/min_cpus +echo 60 > /sys/devices/system/cpu/cpu4/core_ctl/busy_up_thres +echo 30 > /sys/devices/system/cpu/cpu4/core_ctl/busy_down_thres +echo 100 > /sys/devices/system/cpu/cpu4/core_ctl/offline_delay_ms +echo 3 > /sys/devices/system/cpu/cpu4/core_ctl/task_thres + +# Core control parameters for gold+ +echo 0 > /sys/devices/system/cpu/cpu7/core_ctl/min_cpus +echo 60 > /sys/devices/system/cpu/cpu7/core_ctl/busy_up_thres +echo 30 > /sys/devices/system/cpu/cpu7/core_ctl/busy_down_thres +echo 100 > /sys/devices/system/cpu/cpu7/core_ctl/offline_delay_ms +echo 1 > /sys/devices/system/cpu/cpu7/core_ctl/task_thres + +# Controls how many more tasks should be eligible to run on gold CPUs +# w.r.t number of gold CPUs available to trigger assist (max number of +# tasks eligible to run on previous cluster minus number of CPUs in +# the previous cluster). +# +# Setting to 1 by default which means there should be at least +# 4 tasks eligible to run on gold cluster (tasks running on gold cores +# plus misfit tasks on silver cores) to trigger assitance from gold+. +echo 1 > /sys/devices/system/cpu/cpu7/core_ctl/nr_prev_assist_thresh + +# Disable Core control on silver +echo 0 > /sys/devices/system/cpu/cpu0/core_ctl/enable + +# Setting b.L scheduler parameters +echo 95 95 > /proc/sys/kernel/sched_upmigrate +echo 85 85 > /proc/sys/kernel/sched_downmigrate +echo 100 > /proc/sys/kernel/sched_group_upmigrate +echo 85 > /proc/sys/kernel/sched_group_downmigrate +echo 1 > /proc/sys/kernel/sched_walt_rotate_big_tasks +echo 400000000 > /proc/sys/kernel/sched_coloc_downmigrate_ns +echo 39000000 39000000 39000000 39000000 39000000 39000000 39000000 5000000 > /proc/sys/kernel/sched_coloc_busy_hyst_cpu_ns +echo 240 > /proc/sys/kernel/sched_coloc_busy_hysteresis_enable_cpus +echo 10 10 10 10 10 10 10 95 > /proc/sys/kernel/sched_coloc_busy_hyst_cpu_busy_pct + +# set the threshold for low latency task boost feature which prioritize +# binder activity tasks +echo 325 > /proc/sys/kernel/walt_low_latency_task_threshold + +# cpuset parameters +echo 0-3 > /dev/cpuset/background/cpus +echo 0-3 > /dev/cpuset/system-background/cpus +# jared.wu@OPTIMIZATION, 2020/09/22, Make foreground run on cpu 0-6 +echo 0-6 > /dev/cpuset/foreground/cpus + +# Turn off scheduler boost at the end +echo 0 > /proc/sys/kernel/sched_boost + +# configure governor settings for silver cluster +echo "schedutil" > /sys/devices/system/cpu/cpufreq/policy0/scaling_governor +echo 0 > /sys/devices/system/cpu/cpufreq/policy0/schedutil/down_rate_limit_us +echo 0 > /sys/devices/system/cpu/cpufreq/policy0/schedutil/up_rate_limit_us +if [ $rev == "1.0" ]; then + echo 1190400 > /sys/devices/system/cpu/cpufreq/policy0/schedutil/hispeed_freq +else + echo 1209600 > /sys/devices/system/cpu/cpufreq/policy0/schedutil/hispeed_freq +fi +echo 691200 > /sys/devices/system/cpu/cpufreq/policy0/scaling_min_freq +echo 1 > /sys/devices/system/cpu/cpufreq/policy0/schedutil/pl + +# configure input boost settings +if [ $rev == "1.0" ]; then + echo "0:1382800" > /sys/devices/system/cpu/cpu_boost/input_boost_freq +else + echo "0:1305600" > /sys/devices/system/cpu/cpu_boost/input_boost_freq +fi +echo 120 > /sys/devices/system/cpu/cpu_boost/input_boost_ms + +# configure governor settings for gold cluster +echo "schedutil" > /sys/devices/system/cpu/cpufreq/policy4/scaling_governor +echo 0 > /sys/devices/system/cpu/cpufreq/policy4/schedutil/down_rate_limit_us +echo 0 > /sys/devices/system/cpu/cpufreq/policy4/schedutil/up_rate_limit_us +if [ $rev == "1.0" ]; then + echo 1497600 > /sys/devices/system/cpu/cpufreq/policy4/schedutil/hispeed_freq +else + echo 1555200 > /sys/devices/system/cpu/cpufreq/policy4/schedutil/hispeed_freq +fi +echo 1 > /sys/devices/system/cpu/cpufreq/policy4/schedutil/pl + +# configure governor settings for gold+ cluster +echo "schedutil" > /sys/devices/system/cpu/cpufreq/policy7/scaling_governor +echo 0 > /sys/devices/system/cpu/cpufreq/policy7/schedutil/down_rate_limit_us +echo 0 > /sys/devices/system/cpu/cpufreq/policy7/schedutil/up_rate_limit_us +if [ $rev == "1.0" ]; then + echo 1536000 > /sys/devices/system/cpu/cpufreq/policy7/schedutil/hispeed_freq +else + echo 1670400 > /sys/devices/system/cpu/cpufreq/policy7/schedutil/hispeed_freq +fi +echo 1 > /sys/devices/system/cpu/cpufreq/policy7/schedutil/pl + + +# tedlin, chown sysfs node to system +chown -R system:system /sys/devices/system/cpu/cpufreq/policy0/schedutil/target_loads +chown -R system:system /sys/devices/system/cpu/cpufreq/policy4/schedutil/target_loads +chown -R system:system /sys/devices/system/cpu/cpufreq/policy7/schedutil/target_loads + +# configure bus-dcvs +for device in /sys/devices/platform/soc +do + for cpubw in $device/*cpu-cpu-llcc-bw/devfreq/*cpu-cpu-llcc-bw + do + cat $cpubw/available_frequencies | cut -d " " -f 1 > $cpubw/min_freq + echo "4577 7110 9155 12298 14236 15258" > $cpubw/bw_hwmon/mbps_zones + echo 4 > $cpubw/bw_hwmon/sample_ms + echo 80 > $cpubw/bw_hwmon/io_percent + echo 20 > $cpubw/bw_hwmon/hist_memory + echo 10 > $cpubw/bw_hwmon/hyst_length + echo 30 > $cpubw/bw_hwmon/down_thres + echo 0 > $cpubw/bw_hwmon/guard_band_mbps + echo 250 > $cpubw/bw_hwmon/up_scale + echo 1600 > $cpubw/bw_hwmon/idle_mbps + echo 12298 > $cpubw/max_freq + echo 40 > $cpubw/polling_interval + done + + for llccbw in $device/*cpu-llcc-ddr-bw/devfreq/*cpu-llcc-ddr-bw + do + cat $llccbw/available_frequencies | cut -d " " -f 1 > $llccbw/min_freq + if [ ${ddr_type:4:2} == $ddr_type4 ]; then + echo "1720 2086 2929 3879 5931 6515 8136" > $llccbw/bw_hwmon/mbps_zones + elif [ ${ddr_type:4:2} == $ddr_type5 ]; then + echo "1720 2086 2929 3879 6515 7980 12191" > $llccbw/bw_hwmon/mbps_zones + fi + echo 4 > $llccbw/bw_hwmon/sample_ms + echo 80 > $llccbw/bw_hwmon/io_percent + echo 20 > $llccbw/bw_hwmon/hist_memory + echo 10 > $llccbw/bw_hwmon/hyst_length + echo 30 > $llccbw/bw_hwmon/down_thres + echo 0 > $llccbw/bw_hwmon/guard_band_mbps + echo 250 > $llccbw/bw_hwmon/up_scale + echo 1600 > $llccbw/bw_hwmon/idle_mbps + echo 6515 > $llccbw/max_freq + echo 40 > $llccbw/polling_interval + done + + for l3bw in $device/*snoop-l3-bw/devfreq/*snoop-l3-bw + do + cat $l3bw/available_frequencies | cut -d " " -f 1 > $l3bw/min_freq + echo 4 > $l3bw/bw_hwmon/sample_ms + echo 10 > $l3bw/bw_hwmon/io_percent + echo 20 > $l3bw/bw_hwmon/hist_memory + echo 10 > $l3bw/bw_hwmon/hyst_length + echo 0 > $l3bw/bw_hwmon/down_thres + echo 0 > $l3bw/bw_hwmon/guard_band_mbps + echo 0 > $l3bw/bw_hwmon/up_scale + echo 1600 > $l3bw/bw_hwmon/idle_mbps + echo 9155 > $l3bw/max_freq + echo 40 > $l3bw/polling_interval + done + + # configure mem_latency settings for LLCC and DDR scaling and qoslat + for memlat in $device/*lat/devfreq/*lat + do + cat $memlat/available_frequencies | cut -d " " -f 1 > $memlat/min_freq + echo 8 > $memlat/polling_interval + echo 400 > $memlat/mem_latency/ratio_ceil + done + + # configure compute settings for gold latfloor + for latfloor in $device/*cpu4-cpu*latfloor/devfreq/*cpu4-cpu*latfloor + do + cat $latfloor/available_frequencies | cut -d " " -f 1 > $latfloor/min_freq + echo 8 > $latfloor/polling_interval + done + + # configure mem_latency settings for prime latfloor + for latfloor in $device/*cpu7-cpu*latfloor/devfreq/*cpu7-cpu*latfloor + do + cat $latfloor/available_frequencies | cut -d " " -f 1 > $latfloor/min_freq + echo 8 > $latfloor/polling_interval + echo 25000 > $latfloor/mem_latency/ratio_ceil + done + + # CPU4 L3 ratio ceil + for l3gold in $device/*cpu4-cpu-l3-lat/devfreq/*cpu4-cpu-l3-lat + do + echo 4000 > $l3gold/mem_latency/ratio_ceil + done + + # CPU5 L3 ratio ceil + for l3gold in $device/*cpu5-cpu-l3-lat/devfreq/*cpu5-cpu-l3-lat + do + echo 4000 > $l3gold/mem_latency/ratio_ceil + done + + # CPU6 L3 ratio ceil + for l3gold in $device/*cpu6-cpu-l3-lat/devfreq/*cpu6-cpu-l3-lat + do + echo 4000 > $l3gold/mem_latency/ratio_ceil + done + + # prime L3 ratio ceil + for l3prime in $device/*cpu7-cpu-l3-lat/devfreq/*cpu7-cpu-l3-lat + do + echo 20000 > $l3prime/mem_latency/ratio_ceil + done + + # qoslat ratio ceil + for qoslat in $device/*qoslat/devfreq/*qoslat + do + echo 50 > $qoslat/mem_latency/ratio_ceil + done +done +echo N > /sys/module/lpm_levels/parameters/sleep_disabled +echo deep > /sys/power/mem_sleep +# Enable fsc. +echo 1 > /sys/module/fsc/parameters/enable +configure_memory_parameters +# bin.zhong@ASTI, 2019/10/12, add for memplus +memplus_post_config=1 +# huangwen.chen@OPTI, 2020/07/10, excute on first boot. +postboot_running=$(getprop vendor.sys.memplus.postboot 0) +if [ $postboot_running != 3 ];then + configure_memplus_parameters +fi + +# Let kernel know our image version/variant/crm_version +if [ -f /sys/devices/soc0/select_image ]; then + image_version="10:" + image_version+=`getprop ro.build.id` + image_version+=":" + image_version+=`getprop ro.build.version.incremental` + image_variant=`getprop ro.product.name` + image_variant+="-" + image_variant+=`getprop ro.build.type` + oem_version=`getprop ro.build.version.codename` + echo 10 > /sys/devices/soc0/select_image + echo $image_version > /sys/devices/soc0/image_version + echo $image_variant > /sys/devices/soc0/image_variant + echo $oem_version > /sys/devices/soc0/image_crm_version +fi + +# Change console log level as per console config property +console_config=`getprop persist.console.silent.config` +case "$console_config" in + "1") + echo "Enable console config to $console_config" + echo 0 > /proc/sys/kernel/printk + ;; + *) + echo "Enable console config to $console_config" + ;; +esac + +setprop vendor.post_boot.parsed 1 + +# UFS add component info +UFS_PN=`cat /sys/devices/platform/soc/1d84000.ufshc/string_descriptors/product_name` +UFS_VENDOR=`cat /sys/devices/platform/soc/1d84000.ufshc/string_descriptors/manufacturer_name` +UFS_VERSION=`cat /sys/devices/platform/soc/1d84000.ufshc/string_descriptors/product_revision` +UFS_INFO="UFS "`echo ${UFS_PN} | tr -d "\r"`" "`echo ${UFS_VENDOR} | tr -d "\r"`" "`echo ${UFS_VERSION} | tr -d "\r"` +echo ${UFS_INFO}> /sys/project_info/add_component +#liochen@SYSTEM, 2020/11/02, Add for enable ufs performance +echo 0 > /sys/class/scsi_host/host0/../../../clkscale_enable diff --git a/rootdir/bin/init.oplus_chg.sh b/rootdir/bin/init.oplus_chg.sh index a9d118d..7c5f678 100755 --- a/rootdir/bin/init.oplus_chg.sh +++ b/rootdir/bin/init.oplus_chg.sh @@ -3,6 +3,7 @@ export PATH=/vendor/bin prefix="/sys/class/oplus_chg" +call_on_name="call_on" if [[ -d "$prefix" ]] then @@ -15,8 +16,14 @@ then then continue else - chown -h system.system "$prefix"/"$i"/"$j" + if [[ "$j" == "$call_on_name" ]] + then + chown -h radio.radio "$prefix"/"$i"/"$j" + else + chown -h system.system "$prefix"/"$i"/"$j" + fi fi done done -fi \ No newline at end of file +fi + diff --git a/rootdir/bin/init.qcom.early_boot.sh b/rootdir/bin/init.qcom.early_boot.sh index 2dce395..8a1d2bb 100755 --- a/rootdir/bin/init.qcom.early_boot.sh +++ b/rootdir/bin/init.qcom.early_boot.sh @@ -262,10 +262,11 @@ case "$target" in log -t BOOT -p i "SDM429 early_boot prop set for: HwID '$soc_hwid'" fi ;; - 303|307|308|309|320) + 303|307|308|309|320|386|436) # Vulkan is not supported for 8917 variants setprop vendor.opengles.version 196608 setprop persist.graphics.vulkan.disable true + setprop vendor.gralloc.disable_ahardware_buffer 1 ;; *) setprop vendor.opengles.version 196608 @@ -342,6 +343,13 @@ case "$target" in 441) setprop vendor.fastrpc.disable.cdsprpcd.daemon 1 setprop vendor.gralloc.disable_ubwc 1 + + # 196609 is decimal for 0x30001 to report version 3.1 + setprop vendor.opengles.version 196609 + ;; + 471) + #scuba APQ + setprop vendor.gralloc.disable_ubwc 1 ;; esac ;; @@ -390,6 +398,9 @@ case "$target" in ;; esac ;; + "holi") + setprop vendor.media.target_variant "_holi" + ;; esac baseband=`getprop ro.baseband` diff --git a/rootdir/bin/init.qcom.post_boot.sh b/rootdir/bin/init.qcom.post_boot.sh index 46a7881..5abb7b1 100755 --- a/rootdir/bin/init.qcom.post_boot.sh +++ b/rootdir/bin/init.qcom.post_boot.sh @@ -32,7 +32,8 @@ function 8953_sched_dcvs_eas() #governor settings echo 1 > /sys/devices/system/cpu/cpu0/online echo "schedutil" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor - echo 0 > /sys/devices/system/cpu/cpufreq/schedutil/rate_limit_us + echo 0 > /sys/devices/system/cpu/cpufreq/schedutil/up_rate_limit_us + echo 0 > /sys/devices/system/cpu/cpufreq/schedutil/down_rate_limit_us #set the hispeed_freq echo 1401600 > /sys/devices/system/cpu/cpufreq/schedutil/hispeed_freq #default value for hispeed_load is 90, for 8953 and sdm450 it should be 85 @@ -44,7 +45,8 @@ function 8917_sched_dcvs_eas() #governor settings echo 1 > /sys/devices/system/cpu/cpu0/online echo "schedutil" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor - echo 0 > /sys/devices/system/cpu/cpufreq/schedutil/rate_limit_us + echo 0 > /sys/devices/system/cpu/cpufreq/schedutil/up_rate_limit_us + echo 0 > /sys/devices/system/cpu/cpufreq/schedutil/down_rate_limit_us #set the hispeed_freq echo 1094400 > /sys/devices/system/cpu/cpufreq/schedutil/hispeed_freq #default value for hispeed_load is 90, for 8917 it should be 85 @@ -56,7 +58,8 @@ function 8937_sched_dcvs_eas() # enable governor for perf cluster echo 1 > /sys/devices/system/cpu/cpu0/online echo "schedutil" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor - echo 0 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/rate_limit_us + echo 0 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/up_rate_limit_us + echo 0 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/down_rate_limit_us #set the hispeed_freq echo 1094400 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/hispeed_freq #default value for hispeed_load is 90, for 8937 it should be 85 @@ -64,7 +67,8 @@ function 8937_sched_dcvs_eas() ## enable governor for power cluster echo 1 > /sys/devices/system/cpu/cpu4/online echo "schedutil" > /sys/devices/system/cpu/cpu4/cpufreq/scaling_governor - echo 0 > /sys/devices/system/cpu/cpu4/cpufreq/schedutil/rate_limit_us + echo 0 > /sys/devices/system/cpu/cpu4/cpufreq/schedutil/up_rate_limit_us + echo 0 > /sys/devices/system/cpu/cpu4/cpufreq/schedutil/down_rate_limit_us #set the hispeed_freq echo 768000 > /sys/devices/system/cpu/cpu4/cpufreq/schedutil/hispeed_freq #default value for hispeed_load is 90, for 8937 it should be 85 @@ -132,8 +136,9 @@ if [ $feature_id == 6 ]; then echo 940800000 > /sys/class/devfreq/soc\:qcom,cpu6-cpu-l3-lat/min_freq echo 1017600000 > /sys/class/devfreq/soc\:qcom,cpu6-cpu-l3-lat/max_freq echo 3 > /sys/class/kgsl/kgsl-3d0/max_pwrlevel - echo {class:ddr, res:fixed, val: 1016} > /sys/kernel/debug/aop_send_message + echo {class:ddr, res:capped, val: 1016} > /sys/kernel/debug/aop_send_message setprop vendor.sku_identified 1 + setprop vendor.sku_name "SA6145" elif [ $feature_id == 5 ]; then echo "SKU Configured : SA6150" echo 748800 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq @@ -157,9 +162,10 @@ elif [ $feature_id == 5 ]; then echo 940800000 > /sys/class/devfreq/soc\:qcom,cpu6-cpu-l3-lat/min_freq echo 1363200000 > /sys/class/devfreq/soc\:qcom,cpu6-cpu-l3-lat/max_freq echo 2 > /sys/class/kgsl/kgsl-3d0/max_pwrlevel - echo {class:ddr, res:fixed, val: 1333} > /sys/kernel/debug/aop_send_message + echo {class:ddr, res:capped, val: 1333} > /sys/kernel/debug/aop_send_message setprop vendor.sku_identified 1 -elif [ $feature_id == 4 || $feature_id == 3 ]; then + setprop vendor.sku_name "SA6150" +elif [ $feature_id == 4 ] || [ $feature_id == 3 ]; then echo "SKU Configured : SA6155" echo 748800 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq echo 748800 > /sys/devices/system/cpu/cpu1/cpufreq/scaling_min_freq @@ -182,10 +188,11 @@ elif [ $feature_id == 4 || $feature_id == 3 ]; then echo 940800000 > /sys/class/devfreq/soc\:qcom,cpu6-cpu-l3-lat/min_freq echo 1363200000 > /sys/class/devfreq/soc\:qcom,cpu6-cpu-l3-lat/max_freq echo 0 > /sys/class/kgsl/kgsl-3d0/max_pwrlevel - echo {class:ddr, res:fixed, val: 1555} > /sys/kernel/debug/aop_send_message + echo {class:ddr, res:capped, val: 1555} > /sys/kernel/debug/aop_send_message setprop vendor.sku_identified 1 + setprop vendor.sku_name "SA6155" else - echo "unknown feature_id value" $feature_id + echo "SKU Configured : SA6155" echo 748800 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq echo 748800 > /sys/devices/system/cpu/cpu1/cpufreq/scaling_min_freq echo 748800 > /sys/devices/system/cpu/cpu2/cpufreq/scaling_min_freq @@ -207,8 +214,9 @@ else echo 940800000 > /sys/class/devfreq/soc\:qcom,cpu6-cpu-l3-lat/min_freq echo 1363200000 > /sys/class/devfreq/soc\:qcom,cpu6-cpu-l3-lat/max_freq echo 0 > /sys/class/kgsl/kgsl-3d0/max_pwrlevel - echo {class:ddr, res:fixed, val: 1555} > /sys/kernel/debug/aop_send_message + echo {class:ddr, res:capped, val: 1555} > /sys/kernel/debug/aop_send_message setprop vendor.sku_identified 1 + setprop vendor.sku_name "SA6155" fi } @@ -470,22 +478,48 @@ function sdm660_sched_interactive_dcvs() { function sdm660_sched_schedutil_dcvs() { - # configure governor settings for little cluster - echo "schedutil" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor - echo 0 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/up_rate_limit_us - echo 0 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/down_rate_limit_us - echo 1401600 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/hispeed_freq + if [ $KernelVersionA -ge 4 ] && [ $KernelVersionB -ge 19 ]; then + # configure governor settings for little cluster + echo "schedutil" > /sys/devices/system/cpu/cpufreq/policy0/scaling_governor + echo 0 > /sys/devices/system/cpu/cpufreq/policy0/schedutil/up_rate_limit_us + echo 0 > /sys/devices/system/cpu/cpufreq/policy0/schedutil/down_rate_limit_us + echo 1401600 > /sys/devices/system/cpu/cpufreq/policy0/schedutil/hispeed_freq + echo 0 > /sys/devices/system/cpu/cpufreq/policy0/schedutil/pl + echo 633600 > /sys/devices/system/cpu/cpufreq/policy0/scaling_min_freq + echo 902400 > /sys/devices/system/cpu/cpufreq/policy0/schedutil/rtg_boost_freq - # configure governor settings for big cluster - echo "schedutil" > /sys/devices/system/cpu/cpu4/cpufreq/scaling_governor - echo 0 > /sys/devices/system/cpu/cpu4/cpufreq/schedutil/up_rate_limit_us - echo 0 > /sys/devices/system/cpu/cpu4/cpufreq/schedutil/down_rate_limit_us - echo 1401600 > /sys/devices/system/cpu/cpu4/cpufreq/schedutil/hispeed_freq + # configure governor settings for big cluster + echo "schedutil" > /sys/devices/system/cpu/cpufreq/policy4/scaling_governor + echo 0 > /sys/devices/system/cpu/cpufreq/policy4/schedutil/up_rate_limit_us + echo 0 > /sys/devices/system/cpu/cpufreq/policy4/schedutil/down_rate_limit_us + echo 1401600 > /sys/devices/system/cpu/cpufreq/policy4/schedutil/hispeed_freq + echo 0 > /sys/devices/system/cpu/cpufreq/policy4/schedutil/pl + echo 1113600 > /sys/devices/system/cpu/cpufreq/policy4/scaling_min_freq + echo 0 > /sys/devices/system/cpu/cpufreq/policy4/schedutil/rtg_boost_freq + else + # configure governor settings for little cluster + echo "schedutil" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor + echo 0 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/up_rate_limit_us + echo 0 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/down_rate_limit_us + echo 1401600 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/hispeed_freq + + # configure governor settings for big cluster + echo "schedutil" > /sys/devices/system/cpu/cpu4/cpufreq/scaling_governor + echo 0 > /sys/devices/system/cpu/cpu4/cpufreq/schedutil/up_rate_limit_us + echo 0 > /sys/devices/system/cpu/cpu4/cpufreq/schedutil/down_rate_limit_us + echo 1401600 > /sys/devices/system/cpu/cpu4/cpufreq/schedutil/hispeed_freq + fi echo 1 > /proc/sys/kernel/sched_walt_rotate_big_tasks - echo "0:1401600" > /sys/module/cpu_boost/parameters/input_boost_freq - echo 40 > /sys/module/cpu_boost/parameters/input_boost_ms + #if the kernel version >=4.19,set input_boost_freq accordingly + if [ $KernelVersionA -ge 4 ] && [ $KernelVersionB -ge 19 ]; then + echo "0:1401600" > /sys/devices/system/cpu/cpu_boost/input_boost_freq + echo 40 > /sys/devices/system/cpu/cpu_boost/input_boost_ms + else + echo "0:1401600" > /sys/module/cpu_boost/parameters/input_boost_freq + echo 40 > /sys/module/cpu_boost/parameters/input_boost_ms + fi # sched_load_boost as -6 is equivalent to target load as 85. It is per cpu tunable. echo -6 > /sys/devices/system/cpu/cpu0/sched_load_boost @@ -520,24 +554,37 @@ function sdm660_sched_schedutil_dcvs() { echo 1600 > $cpubw/bw_hwmon/idle_mbps done - for memlat in $device/*cpu*-lat/devfreq/*cpu*-lat - do - echo "mem_latency" > $memlat/governor - echo 10 > $memlat/polling_interval - echo 400 > $memlat/mem_latency/ratio_ceil - done - - for latfloor in $device/*cpu*-ddr-latfloor*/devfreq/*cpu-ddr-latfloor* - do - echo "compute" > $latfloor/governor - echo 10 > $latfloor/polling_interval - done + if [ $KernelVersionA -ge 4 ] && [ $KernelVersionB -le 14 ]; then + for memlat in $device/*cpu*-lat/devfreq/*cpu*-lat + do + echo "mem_latency" > $memlat/governor + echo 10 > $memlat/polling_interval + echo 400 > $memlat/mem_latency/ratio_ceil + done + for latfloor in $device/*cpu*-ddr-latfloor*/devfreq/*cpu-ddr-latfloor* + do + echo "compute" > $latfloor/governor + echo 10 > $latfloor/polling_interval + done + fi done + + if [ $KernelVersionA -ge 4 ] && [ $KernelVersionB -ge 19 ]; then + # memlat specific settings are moved to seperate file under + # device/target specific folder + setprop vendor.dcvs.prop 1 + fi + } target=`getprop ro.board.platform` +KernelVersionStr=`cat /proc/sys/kernel/osrelease` +KernelVersionS=${KernelVersionStr:2:2} +KernelVersionA=${KernelVersionStr:0:1} +KernelVersionB=${KernelVersionS%.*} + function configure_zram_parameters() { MemTotalStr=`cat /proc/meminfo | grep MemTotal` MemTotal=${MemTotalStr:16:8} @@ -547,12 +594,17 @@ function configure_zram_parameters() { # Zram disk - 75% for Go devices. # For 512MB Go device, size = 384MB, set same for Non-Go. # For 1GB Go device, size = 768MB, set same for Non-Go. - # For >=2GB Non-Go devices, size = 50% of RAM size. Limit the size to 4GB. + # For 2GB Go device, size = 1536MB, set same for Non-Go. + # For >2GB Non-Go devices, size = 50% of RAM size. Limit the size to 4GB. # And enable lz4 zram compression for Go targets. let RamSizeGB="( $MemTotal / 1048576 ) + 1" - let zRamSizeMB="( $RamSizeGB * 1024 ) / 2" diskSizeUnit=M + if [ $RamSizeGB -le 2 ]; then + let zRamSizeMB="( $RamSizeGB * 1024 ) * 3 / 4" + else + let zRamSizeMB="( $RamSizeGB * 1024 ) / 2" + fi # use MB avoid 32 bit overflow if [ $zRamSizeMB -gt 4096 ]; then @@ -567,14 +619,7 @@ function configure_zram_parameters() { if [ -f /sys/block/zram0/use_dedup ]; then echo 1 > /sys/block/zram0/use_dedup fi - if [ $MemTotal -le 524288 ]; then - echo 402653184 > /sys/block/zram0/disksize - elif [ $MemTotal -le 1048576 ]; then - echo 805306368 > /sys/block/zram0/disksize - else - zramDiskSize=$zRamSizeMB$diskSizeUnit - echo $zramDiskSize > /sys/block/zram0/disksize - fi + echo "$zRamSizeMB""$diskSizeUnit" > /sys/block/zram0/disksize # ZRAM may use more memory than it saves if SLAB_STORE_USER # debug option is enabled. @@ -643,56 +688,6 @@ function enable_swap() { fi } -# bin.zhong@ASTI, 2019/10/12, add for memplus -function configure_memplus_parameters() { - bootmode=`getprop ro.vendor.factory.mode` - if [ "$bootmode" == "ftm" ] || [ "$bootmode" == "wlan" ] || [ "$bootmode" == "rf" ];then - return - fi - if [ ! $memplus_post_config ];then - return - fi - setprop vendor.sys.memplus.postboot 1 - memplus=`getprop persist.vendor.memplus.enable` - case "$memplus" in - "0") - # diable swapspace - rm /data/vendor/swap/swapfile - swapoff /dev/block/zram0 - ;; - "1") - # enable memplus - rm /data/vendor/swap/swapfile - # reset zram swapspace - swapoff /dev/block/zram0 - echo 1 > /sys/block/zram0/reset - echo 2202009600 > /sys/block/zram0/disksize - echo 0 > /sys/block/zram0/mem_limit - mkswap /dev/block/zram0 - swapon /dev/block/zram0 -p 32758 - if [ $? -eq 0 ]; then - echo 1 > /sys/module/memplus_core/parameters/memory_plus_enabled - fi - ;; - *) - #enable kswapd - rm /data/vendor/swap/swapfile - # reset zram swapspace - swapoff /dev/block/zram0 - echo 1 > /sys/block/zram0/reset - echo lz4 > /sys/block/zram0/comp_algorithm - echo 2202009600 > /sys/block/zram0/disksize - echo 0 > /sys/block/zram0/mem_limit - mkswap /dev/block/zram0 - swapon /dev/block/zram0 -p 32758 - if [ $? -eq 0 ]; then - echo 0 > /sys/module/memplus_core/parameters/memory_plus_enabled - fi - ;; - esac - setprop vendor.sys.memplus.postboot 2 -} - function configure_memory_parameters() { # Set Memory parameters. # @@ -716,7 +711,7 @@ function configure_memory_parameters() { ProductName=`getprop ro.product.name` low_ram=`getprop ro.config.low_ram` -if [ "$ProductName" == "msmnile" ] || [ "$ProductName" == "kona" ] ; then +if [ "$ProductName" == "msmnile" ] || [ "$ProductName" == "kona" ] || [ "$ProductName" == "sdmshrike_au" ]; then # Enable ZRAM configure_zram_parameters configure_read_ahead_kb_values @@ -724,11 +719,9 @@ if [ "$ProductName" == "msmnile" ] || [ "$ProductName" == "kona" ] ; then echo 100 > /proc/sys/vm/swappiness else arch_type=`uname -m` - MemTotalStr=`cat /proc/meminfo | grep MemTotal` - MemTotal=${MemTotalStr:16:8} # Set parameters for 32-bit Go targets. - if [ $MemTotal -le 1048576 ] && [ "$low_ram" == "true" ]; then + if [ "$low_ram" == "true" ]; then # Disable KLMK, ALMK, PPR & Core Control for Go devices echo 0 > /sys/module/lowmemorykiller/parameters/enable_lmk echo 0 > /sys/module/lowmemorykiller/parameters/enable_adaptive_lmk @@ -786,9 +779,9 @@ else echo 1 > /sys/module/lowmemorykiller/parameters/oom_reaper fi - if [ "$ProductName" != "bengal_32" ]; then - #bengal_32 has appcompaction enabled. So not needed - # Set PPR parametersi for other targets + if [[ "$ProductName" != "bengal"* ]]; then + #bengal has appcompaction enabled. So not needed + # Set PPR parameters for other targets if [ -f /sys/devices/soc0/soc_id ]; then soc_id=`cat /sys/devices/soc0/soc_id` else @@ -815,6 +808,16 @@ else fi fi + if [[ "$ProductName" == "bengal"* ]]; then + #Set PPR nomap parameters for bengal targets + echo 1 > /sys/module/process_reclaim/parameters/enable_process_reclaim + echo 50 > /sys/module/process_reclaim/parameters/pressure_min + echo 70 > /sys/module/process_reclaim/parameters/pressure_max + echo 30 > /sys/module/process_reclaim/parameters/swap_opt_eff + echo 0 > /sys/module/process_reclaim/parameters/per_swap_size + echo 7680 > /sys/module/process_reclaim/parameters/tsk_nomap_swap_sz + fi + # Set allocstall_threshold to 0 for all targets. # Set swappiness to 100 for all targets echo 0 > /sys/module/vmpressure/parameters/allocstall_threshold @@ -822,12 +825,7 @@ else # Disable wsf for all targets beacause we are using efk. # wsf Range : 1..1000 So set to bare minimum value 1. - # set watermark_scale_factor = 36MB * 1024 * 1024 * 10 / MemTotal - factor=`expr 377487360 / $MemTotal` - echo $factor > /proc/sys/vm/watermark_scale_factor - - # set min_free_kbytes = 32MB - echo 32768 > /proc/sys/vm/min_free_kbytes + echo 1 > /proc/sys/vm/watermark_scale_factor configure_zram_parameters @@ -2155,10 +2153,6 @@ case "$target" in done #if the kernel version >=4.9,use the schedutil governor - KernelVersionStr=`cat /proc/sys/kernel/osrelease` - KernelVersionS=${KernelVersionStr:2:2} - KernelVersionA=${KernelVersionStr:0:1} - KernelVersionB=${KernelVersionS%.*} if [ $KernelVersionA -ge 4 ] && [ $KernelVersionB -ge 9 ]; then 8953_sched_dcvs_eas else @@ -2281,7 +2275,8 @@ case "$target" in # configure governor settings for little cluster echo 1 > /sys/devices/system/cpu/cpu0/online echo "schedutil" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor - echo 0 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/rate_limit_us + echo 0 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/up_rate_limit_us + echo 0 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/down_rate_limit_us echo 1363200 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/hispeed_freq #default value for hispeed_load is 90, for sdm632 it should be 85 echo 85 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/hispeed_load @@ -2294,7 +2289,8 @@ case "$target" in # configure governor settings for big cluster echo 1 > /sys/devices/system/cpu/cpu4/online echo "schedutil" > /sys/devices/system/cpu/cpu4/cpufreq/scaling_governor - echo 0 > /sys/devices/system/cpu/cpu4/cpufreq/schedutil/rate_limit_us + echo 0 > /sys/devices/system/cpu/cpu4/cpufreq/schedutil/up_rate_limit_us + echo 0 > /sys/devices/system/cpu/cpu4/cpufreq/schedutil/down_rate_limit_us echo 1401600 > /sys/devices/system/cpu/cpu4/cpufreq/schedutil/hispeed_freq #default value for hispeed_load is 90, for sdm632 it should be 85 echo 85 > /sys/devices/system/cpu/cpu4/cpufreq/schedutil/hispeed_load @@ -2441,10 +2437,6 @@ case "$target" in # disable thermal core_control to update interactive gov settings echo 0 > /sys/module/msm_thermal/core_control/enabled - KernelVersionStr=`cat /proc/sys/kernel/osrelease` - KernelVersionS=${KernelVersionStr:2:2} - KernelVersionA=${KernelVersionStr:0:1} - KernelVersionB=${KernelVersionS%.*} if [ $KernelVersionA -ge 4 ] && [ $KernelVersionB -ge 9 ]; then 8917_sched_dcvs_eas else @@ -2526,10 +2518,6 @@ case "$target" in # disable thermal core_control to update interactive gov and core_ctl settings echo 0 > /sys/module/msm_thermal/core_control/enabled - KernelVersionStr=`cat /proc/sys/kernel/osrelease` - KernelVersionS=${KernelVersionStr:2:2} - KernelVersionA=${KernelVersionStr:0:1} - KernelVersionB=${KernelVersionS%.*} if [ $KernelVersionA -ge 4 ] && [ $KernelVersionB -ge 9 ]; then 8937_sched_dcvs_eas else @@ -2618,7 +2606,9 @@ case "$target" in # enable governor for perf cluster echo 1 > /sys/devices/system/cpu/cpu0/online echo "schedutil" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor - echo 0 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/rate_limit_us + echo 0 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/up_rate_limit_us + echo 0 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/down_rate_limit_us + #set the hispeed_freq echo 1497600 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/hispeed_freq echo 80 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/hispeed_load @@ -2632,7 +2622,9 @@ case "$target" in ## enable governor for power cluster echo 1 > /sys/devices/system/cpu/cpu4/online echo "schedutil" > /sys/devices/system/cpu/cpu4/cpufreq/scaling_governor - echo 0 > /sys/devices/system/cpu/cpu4/cpufreq/schedutil/rate_limit_us + echo 0 > /sys/devices/system/cpu/cpu4/cpufreq/schedutil/up_rate_limit_us + echo 0 > /sys/devices/system/cpu/cpu4/cpufreq/schedutil/down_rate_limit_us + #set the hispeed_freq echo 998400 > /sys/devices/system/cpu/cpu4/cpufreq/schedutil/hispeed_freq echo 85 > /sys/devices/system/cpu/cpu4/cpufreq/schedutil/hispeed_load @@ -2682,7 +2674,9 @@ case "$target" in # configure schedutil governor settings echo 1 > /sys/devices/system/cpu/cpu0/online echo "schedutil" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor - echo 0 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/rate_limit_us + echo 0 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/up_rate_limit_us + echo 0 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/down_rate_limit_us + #set the hispeed_freq echo 1305600 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/hispeed_freq echo 80 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/hispeed_load @@ -2764,12 +2758,14 @@ case "$target" in panel=${panel:2:4} fi - if [ $panel -gt 1080 ]; then - echo 2 > /proc/sys/kernel/sched_window_stats_policy - echo 5 > /proc/sys/kernel/sched_ravg_hist_size - else - echo 3 > /proc/sys/kernel/sched_window_stats_policy - echo 3 > /proc/sys/kernel/sched_ravg_hist_size + if [ $KernelVersionA -ge 4 ] && [ $KernelVersionB -le 14 ]; then + if [ $panel -gt 1080 ]; then + echo 2 > /proc/sys/kernel/sched_window_stats_policy + echo 5 > /proc/sys/kernel/sched_ravg_hist_size + else + echo 3 > /proc/sys/kernel/sched_window_stats_policy + echo 3 > /proc/sys/kernel/sched_ravg_hist_size + fi fi #Apply settings for sdm660, sdm636,sda636 case "$soc_id" in @@ -2793,10 +2789,6 @@ case "$target" in echo 0-3 > /dev/cpuset/system-background/cpus #if the kernel version >=4.14,use the schedutil governor - KernelVersionStr=`cat /proc/sys/kernel/osrelease` - KernelVersionS=${KernelVersionStr:2:2} - KernelVersionA=${KernelVersionStr:0:1} - KernelVersionB=${KernelVersionS%.*} if [ $KernelVersionA -ge 4 ] && [ $KernelVersionB -ge 14 ]; then sdm660_sched_schedutil_dcvs else @@ -2831,6 +2823,9 @@ case "$target" in ;; esac + # Disable cdsprpcd daemon for sdm630 + setprop vendor.fastrpc.disable.cdsprpcd.daemon 1 + # Setting b.L scheduler parameters echo 85 > /proc/sys/kernel/sched_upmigrate echo 85 > /proc/sys/kernel/sched_downmigrate @@ -3498,7 +3493,7 @@ case "$target" in fi case "$soc_id" in - "400" | "440" ) + "400" | "440" | "476" ) # Core control parameters on silver echo 0 0 0 0 1 1 > /sys/devices/system/cpu/cpu0/core_ctl/not_preferred echo 4 > /sys/devices/system/cpu/cpu0/core_ctl/min_cpus @@ -3569,8 +3564,7 @@ case "$target" in # Set Memory parameters configure_memory_parameters - rev=`cat /sys/devices/soc0/revision` - if [ $rev == "2.0" ] || [ $rev == "2.0.2" ]; then + if [ `cat /sys/devices/soc0/revision` == "2.0" ]; then # r2.0 related changes echo "0:1075200" > /sys/devices/system/cpu/cpu_boost/input_boost_freq echo 610000 > /sys/devices/system/cpu/cpufreq/policy0/schedutil/rtg_boost_freq @@ -3785,7 +3779,6 @@ case "$target" in do echo 1 > /sys/devices/virtual/npu/msm_npu/pwr echo "bw_hwmon" > $npullccbw/governor - echo 40 > $npullccbw/polling_interval echo "2288 4577 7110 9155 12298 14236 16265" > $npullccbw/bw_hwmon/mbps_zones echo 4 > $npullccbw/bw_hwmon/sample_ms echo 100 > $npullccbw/bw_hwmon/io_percent @@ -3794,6 +3787,7 @@ case "$target" in echo 30 > $npullccbw/bw_hwmon/down_thres echo 0 > $npullccbw/bw_hwmon/guard_band_mbps echo 250 > $npullccbw/bw_hwmon/up_scale + echo 40 > $npullccbw/polling_interval echo 0 > /sys/devices/virtual/npu/msm_npu/pwr done done @@ -3824,7 +3818,7 @@ case "$target" in fi case "$soc_id" in - "417" | "420" | "444" | "445" ) + "417" | "420" | "444" | "445" | "469" | "470" ) # Core control is temporarily disabled till bring up echo 0 > /sys/devices/system/cpu/cpu0/core_ctl/enable @@ -3862,6 +3856,9 @@ case "$target" in echo 1056000 > /sys/devices/system/cpu/cpu4/cpufreq/scaling_min_freq echo 0 > /sys/devices/system/cpu/cpu4/cpufreq/schedutil/rtg_boost_freq + echo "0:1017600" > /sys/devices/system/cpu/cpu_boost/input_boost_freq + echo 80 > /sys/devices/system/cpu/cpu_boost/input_boost_ms + echo 1 > /proc/sys/kernel/sched_walt_rotate_big_tasks # sched_load_boost as -6 is equivalent to target load as 85. It is per cpu tunable. @@ -4004,7 +4001,7 @@ case "$target" in done # Disable low power modes. Enable it after LPM stable - echo 1 > /sys/module/lpm_levels/parameters/sleep_disabled + echo 0 > /sys/module/lpm_levels/parameters/sleep_disabled ;; esac @@ -4982,6 +4979,242 @@ case "$target" in ;; esac + +case "$target" in + "sdmshrike") + # Core control parameters for gold + echo 2 > /sys/devices/system/cpu/cpu4/core_ctl/min_cpus + echo 60 > /sys/devices/system/cpu/cpu4/core_ctl/busy_up_thres + echo 30 > /sys/devices/system/cpu/cpu4/core_ctl/busy_down_thres + echo 100 > /sys/devices/system/cpu/cpu4/core_ctl/offline_delay_ms + echo 3 > /sys/devices/system/cpu/cpu4/core_ctl/task_thres + + # Core control parameters for gold+ + echo 0 > /sys/devices/system/cpu/cpu7/core_ctl/min_cpus + echo 60 > /sys/devices/system/cpu/cpu7/core_ctl/busy_up_thres + echo 30 > /sys/devices/system/cpu/cpu7/core_ctl/busy_down_thres + echo 100 > /sys/devices/system/cpu/cpu7/core_ctl/offline_delay_ms + echo 1 > /sys/devices/system/cpu/cpu7/core_ctl/task_thres + # Controls how many more tasks should be eligible to run on gold CPUs + # w.r.t number of gold CPUs available to trigger assist (max number of + # tasks eligible to run on previous cluster minus number of CPUs in + # the previous cluster). + # + # Setting to 1 by default which means there should be at least + # 4 tasks eligible to run on gold cluster (tasks running on gold cores + # plus misfit tasks on silver cores) to trigger assitance from gold+. + echo 1 > /sys/devices/system/cpu/cpu7/core_ctl/nr_prev_assist_thresh + + # Disable Core control on silver + echo 0 > /sys/devices/system/cpu/cpu0/core_ctl/enable + + # Setting b.L scheduler parameters + echo 95 95 > /proc/sys/kernel/sched_upmigrate + echo 85 85 > /proc/sys/kernel/sched_downmigrate + echo 100 > /proc/sys/kernel/sched_group_upmigrate + echo 10 > /proc/sys/kernel/sched_group_downmigrate + echo 1 > /proc/sys/kernel/sched_walt_rotate_big_tasks + + # cpuset parameters + echo 0-3 > /dev/cpuset/background/cpus + echo 0-3 > /dev/cpuset/system-background/cpus + + # Turn off scheduler boost at the end + echo 0 > /proc/sys/kernel/sched_boost + + # configure governor settings for silver cluster + echo "schedutil" > /sys/devices/system/cpu/cpufreq/policy0/scaling_governor + echo 0 > /sys/devices/system/cpu/cpufreq/policy0/schedutil/up_rate_limit_us + echo 0 > /sys/devices/system/cpu/cpufreq/policy0/schedutil/down_rate_limit_us + echo 1209600 > /sys/devices/system/cpu/cpufreq/policy0/schedutil/hispeed_freq + echo 576000 > /sys/devices/system/cpu/cpufreq/policy0/scaling_min_freq + echo 1 > /sys/devices/system/cpu/cpufreq/policy0/schedutil/pl + + # configure governor settings for gold cluster + echo "schedutil" > /sys/devices/system/cpu/cpufreq/policy4/scaling_governor + echo 0 > /sys/devices/system/cpu/cpufreq/policy4/schedutil/up_rate_limit_us + echo 0 > /sys/devices/system/cpu/cpufreq/policy4/schedutil/down_rate_limit_us + echo 1612800 > /sys/devices/system/cpu/cpufreq/policy4/schedutil/hispeed_freq + echo 1 > /sys/devices/system/cpu/cpufreq/policy4/schedutil/pl + + # configure governor settings for gold+ cluster + echo "schedutil" > /sys/devices/system/cpu/cpufreq/policy7/scaling_governor + echo 0 > /sys/devices/system/cpu/cpufreq/policy7/schedutil/up_rate_limit_us + echo 0 > /sys/devices/system/cpu/cpufreq/policy7/schedutil/down_rate_limit_us + echo 1612800 > /sys/devices/system/cpu/cpufreq/policy7/schedutil/hispeed_freq + echo 1 > /sys/devices/system/cpu/cpufreq/policy7/schedutil/pl + + # configure input boost settings + echo "0:1324800" > /sys/module/cpu_boost/parameters/input_boost_freq + echo 120 > /sys/module/cpu_boost/parameters/input_boost_ms + + # Disable wsf, beacause we are using efk. + # wsf Range : 1..1000 So set to bare minimum value 1. + echo 1 > /proc/sys/vm/watermark_scale_factor + + echo 0-3 > /dev/cpuset/background/cpus + echo 0-3 > /dev/cpuset/system-background/cpus + + # Enable oom_reaper + if [ -f /sys/module/lowmemorykiller/parameters/oom_reaper ]; then + echo 1 > /sys/module/lowmemorykiller/parameters/oom_reaper + else + echo 1 > /proc/sys/vm/reap_mem_on_sigkill + fi + + # Enable bus-dcvs + for device in /sys/devices/platform/soc + do + for cpubw in $device/*cpu-cpu-llcc-bw/devfreq/*cpu-cpu-llcc-bw + do + echo "bw_hwmon" > $cpubw/governor + echo 40 > $cpubw/polling_interval + echo "2288 4577 7110 9155 12298 14236 15258" > $cpubw/bw_hwmon/mbps_zones + echo 4 > $cpubw/bw_hwmon/sample_ms + echo 50 > $cpubw/bw_hwmon/io_percent + echo 20 > $cpubw/bw_hwmon/hist_memory + echo 10 > $cpubw/bw_hwmon/hyst_length + echo 30 > $cpubw/bw_hwmon/down_thres + echo 0 > $cpubw/bw_hwmon/guard_band_mbps + echo 250 > $cpubw/bw_hwmon/up_scale + echo 1600 > $cpubw/bw_hwmon/idle_mbps + echo 14236 > $cpubw/max_freq + done + + for llccbw in $device/*cpu-llcc-ddr-bw/devfreq/*cpu-llcc-ddr-bw + do + echo "bw_hwmon" > $llccbw/governor + echo 40 > $llccbw/polling_interval + echo "1720 2929 3879 5931 6881 7980" > $llccbw/bw_hwmon/mbps_zones + echo 4 > $llccbw/bw_hwmon/sample_ms + echo 80 > $llccbw/bw_hwmon/io_percent + echo 20 > $llccbw/bw_hwmon/hist_memory + echo 10 > $llccbw/bw_hwmon/hyst_length + echo 30 > $llccbw/bw_hwmon/down_thres + echo 0 > $llccbw/bw_hwmon/guard_band_mbps + echo 250 > $llccbw/bw_hwmon/up_scale + echo 1600 > $llccbw/bw_hwmon/idle_mbps + echo 6881 > $llccbw/max_freq + done + + for npubw in $device/*npu-npu-ddr-bw/devfreq/*npu-npu-ddr-bw + do + echo 1 > /sys/devices/virtual/npu/msm_npu/pwr + echo "bw_hwmon" > $npubw/governor + echo 40 > $npubw/polling_interval + echo "1720 2929 3879 5931 6881 7980" > $npubw/bw_hwmon/mbps_zones + echo 4 > $npubw/bw_hwmon/sample_ms + echo 80 > $npubw/bw_hwmon/io_percent + echo 20 > $npubw/bw_hwmon/hist_memory + echo 6 > $npubw/bw_hwmon/hyst_length + echo 30 > $npubw/bw_hwmon/down_thres + echo 0 > $npubw/bw_hwmon/guard_band_mbps + echo 250 > $npubw/bw_hwmon/up_scale + echo 0 > $npubw/bw_hwmon/idle_mbps + echo 0 > /sys/devices/virtual/npu/msm_npu/pwr + done + + #Enable mem_latency governor for L3, LLCC, and DDR scaling + for memlat in $device/*cpu*-lat/devfreq/*cpu*-lat + do + echo "mem_latency" > $memlat/governor + echo 10 > $memlat/polling_interval + echo 400 > $memlat/mem_latency/ratio_ceil + done + + #Enable userspace governor for L3 cdsp nodes + for l3cdsp in $device/*cdsp-cdsp-l3-lat/devfreq/*cdsp-cdsp-l3-lat + do + echo "cdspl3" > $l3cdsp/governor + done + + #Enable compute governor for gold latfloor + for latfloor in $device/*cpu-ddr-latfloor*/devfreq/*cpu-ddr-latfloor* + do + echo "compute" > $latfloor/governor + echo 10 > $latfloor/polling_interval + done + + #Gold L3 ratio ceil + for l3gold in $device/*cpu4-cpu-l3-lat/devfreq/*cpu4-cpu-l3-lat + do + echo 4000 > $l3gold/mem_latency/ratio_ceil + done + + #Prime L3 ratio ceil + for l3prime in $device/*cpu7-cpu-l3-lat/devfreq/*cpu7-cpu-l3-lat + do + echo 20000 > $l3prime/mem_latency/ratio_ceil + done + done + + if [ -f /sys/devices/soc0/hw_platform ]; then + hw_platform=`cat /sys/devices/soc0/hw_platform` + else + hw_platform=`cat /sys/devices/system/soc/soc0/hw_platform` + fi + + if [ -f /sys/devices/soc0/platform_subtype_id ]; then + platform_subtype_id=`cat /sys/devices/soc0/platform_subtype_id` + fi + + case "$hw_platform" in + "MTP" | "Surf" | "RCM" ) + # Start Host based Touch processing + case "$platform_subtype_id" in + "0" | "1") + start_hbtp + ;; + esac + ;; + "HDK" ) + if [ -d /sys/kernel/hbtpsensor ] ; then + start_hbtp + fi + ;; + esac + + #Setting the min and max supported frequencies + reg_val=`cat /sys/devices/platform/soc/780130.qfprom/qfprom0/nvmem | od -An -t d4` + feature_id=$(((reg_val >> 20) & 0xFF)) + + #Setting the min supported frequencies + echo 1113600 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq + echo 1171200 > /sys/devices/system/cpu/cpu4/cpufreq/scaling_min_freq + echo 940800000 > /sys/class/devfreq/soc\:qcom,cpu0-cpu-l3-lat/min_freq + echo 940800000 > /sys/class/devfreq/soc\:qcom,cpu4-cpu-l3-lat/min_freq + echo 1651200000 > /sys/class/devfreq/soc\:qcom,cpu0-cpu-l3-lat/max_freq + echo 1651200000 > /sys/class/devfreq/soc\:qcom,cpu4-cpu-l3-lat/max_freq + #setting min gpu freq to 392 MHz + echo 4 > /sys/class/kgsl/kgsl-3d0/min_pwrlevel + if [ $feature_id == 0 ]; then + echo "feature_id is 0 for SA8195AA" + + #setting max cpu freq to 2.496GHz + echo 2496000 > /sys/devices/system/cpu/cpu4/cpufreq/scaling_max_freq + #setting max gpu freq to 530 MHz + echo 3 > /sys/class/kgsl/kgsl-3d0/max_pwrlevel + echo {class:ddr, res:capped, val: 1804} > /sys/kernel/debug/aop_send_message + elif [ $feature_id == 1 ] || [ $feature_id == 2 ]; then + echo "feature_id is 1 for external SA8195AB" + echo "feature_id is 2 for internal SA8195AB" + + #setting max cpu freq to 2.496GHz + echo 2496000 > /sys/devices/system/cpu/cpu4/cpufreq/scaling_max_freq + #setting max gpu freq to 670 MHz + echo 0 > /sys/class/kgsl/kgsl-3d0/max_pwrlevel + echo {class:ddr, res:capped, val: 2092} > /sys/kernel/debug/aop_send_message + elif [ $feature_id == 3 ]; then + echo "feature_id is 3 for external SA8195AC" + else + echo "unknown feature_id value" $feature_id + fi + + echo 0 > /sys/module/lpm_levels/parameters/sleep_disabled + configure_memory_parameters + ;; +esac + case "$target" in "kona") rev=`cat /sys/devices/soc0/revision` @@ -5027,8 +5260,6 @@ case "$target" in echo 0-3 > /dev/cpuset/background/cpus echo 0-3 > /dev/cpuset/system-background/cpus - echo 0-6 > /dev/cpuset/foreground/cpus - # Turn off scheduler boost at the end echo 0 > /proc/sys/kernel/sched_boost @@ -5066,11 +5297,6 @@ case "$target" in fi echo 1 > /sys/devices/system/cpu/cpufreq/policy7/schedutil/pl - # ifdef VENDOR_EDIT - # yankelong@BSP, 2019/5/8/, add for Enable ufs performance. - echo 0 > /sys/class/scsi_host/host0/../../../clkscale_enable - # endif VENDOR_EDIT - # Enable bus-dcvs for device in /sys/devices/platform/soc do @@ -5153,12 +5379,7 @@ case "$target" in setprop vendor.dcvs.prop 0 setprop vendor.dcvs.prop 1 echo N > /sys/module/lpm_levels/parameters/sleep_disabled - # Enable fsc. - echo 1 > /sys/module/fsc/parameters/enable configure_memory_parameters - - # bin.zhong@ASTI, 2019/10/12, add for memplus - memplus_post_config=1 ;; esac @@ -5457,7 +5678,7 @@ case "$target" in start mpdecision echo 512 > /sys/block/mmcblk0/bdi/read_ahead_kb ;; - "msm8909" | "msm8916" | "msm8937" | "msm8952" | "msm8953" | "msm8994" | "msm8992" | "msm8996" | "msm8998" | "sdm660" | "apq8098_latv" | "sdm845" | "sdm710" | "msmnile" | "msmsteppe" | "sm6150" | "kona" | "lito" | "trinket" | "atoll" | "bengal" | "lahaina" ) + "msm8909" | "msm8916" | "msm8937" | "msm8952" | "msm8953" | "msm8994" | "msm8992" | "msm8996" | "msm8998" | "sdm660" | "apq8098_latv" | "sdm845" | "sdm710" | "msmnile" | "msmsteppe" | "sm6150" | "kona" | "lito" | "trinket" | "atoll" | "bengal" | "sdmshrike") setprop vendor.post_boot.parsed 1 ;; "apq8084") @@ -5561,9 +5782,19 @@ case "$console_config" in ;; esac +##qcom arg relese. +#echo 80 > /sys/devices/system/cpu/cpu7/core_ctl/busy_up_thres +#echo 50 > /sys/devices/system/cpu/cpu7/core_ctl/busy_down_thres +#echo 90 99 > /proc/sys/kernel/sched_upmigrate +#echo 80 90 > /proc/sys/kernel/sched_downmigrate +#echo 0 > /sys/devices/system/cpu/cpu7/cpufreq/schedutil/pl +#echo 1420800 > /sys/devices/system/cpu/cpufreq/policy7/schedutil/hispeed_freq +##echo -10 > /sys/devices/system/cpu/cpu4/sched_load_boost +##echo -10 > /sys/devices/system/cpu/cpu5/sched_load_boost +##echo -10 > /sys/devices/system/cpu/cpu6/sched_load_boost +#echo -19 > /sys/devices/system/cpu/cpu7/sched_load_boost + # Parse misc partition path and set property misc_link=$(ls -l /dev/block/bootdevice/by-name/misc) real_path=${misc_link##*>} setprop persist.vendor.mmi.misc_dev_path $real_path -# bin.zhong@ASTI, 2019/10/12, add for memplus -configure_memplus_parameters diff --git a/rootdir/bin/init.qcom.sh b/rootdir/bin/init.qcom.sh index 02c0394..e5a4ae9 100755 --- a/rootdir/bin/init.qcom.sh +++ b/rootdir/bin/init.qcom.sh @@ -456,10 +456,10 @@ buildvariant=`getprop ro.build.type` case "$buildvariant" in "userdebug" | "eng") #set default loglevel to KERN_INFO - echo "6 6 1 7" > /proc/sys/kernel/printk + echo "3 6 1 7" > /proc/sys/kernel/printk ;; *) #set default loglevel to KERN_WARNING - echo "4 4 1 4" > /proc/sys/kernel/printk + echo "3 4 1 4" > /proc/sys/kernel/printk ;; esac diff --git a/rootdir/bin/init.qcom.usb.sh b/rootdir/bin/init.qcom.usb.sh index 43b2f30..5a0a351 100755 --- a/rootdir/bin/init.qcom.usb.sh +++ b/rootdir/bin/init.qcom.usb.sh @@ -51,10 +51,7 @@ if [ "$(getprop persist.vendor.usb.config)" == "" -a "$(getprop ro.build.type)" "$(getprop init.svc.vendor.usb-gadget-hal-1-0)" != "running" ]; then if [ "$esoc_name" != "" ]; then setprop persist.vendor.usb.config diag,diag_mdm,qdss,qdss_mdm,serial_cdev,dpl,rmnet,adb - #BSP add for 5G diag port config - setprop persist.vendor.sdx50m.online 1 else - setprop persist.vendor.sdx50m.online 0 case "$(getprop ro.baseband)" in "apq") setprop persist.vendor.usb.config diag,adb @@ -104,7 +101,7 @@ if [ "$(getprop persist.vendor.usb.config)" == "" -a "$(getprop ro.build.type)" "sdm845" | "sdm710") setprop persist.vendor.usb.config diag,serial_cdev,rmnet,dpl,adb ;; - "msmnile" | "sm6150" | "trinket" | "lito" | "atoll" | "bengal" | "lahaina") + "msmnile" | "sm6150" | "trinket" | "lito" | "atoll" | "bengal" | "lahaina" | "holi") setprop persist.vendor.usb.config diag,serial_cdev,rmnet,dpl,qdss,adb ;; *) @@ -146,17 +143,7 @@ if [ -d /config/usb_gadget ]; then msm_serial=`cat /sys/devices/soc0/serial_number`; msm_serial_hex=`printf %08X $msm_serial` machine_type=`cat /sys/devices/soc0/machine` -#ifdef VENDOR_EDIT -#Fix product name for Android Auto/Ubuntu - product_string=`getprop ro.product.model` - if [ "$product_string" == "" ]; then - product_string="OnePlus" - fi -#else - #product_string="$machine_type-$soc_hwplatform _SN:$msm_serial_hex" -#endif - echo "$product_string" > /config/usb_gadget/g1/strings/0x409/product - setprop vendor.usb.product_string "$product_string" + setprop vendor.usb.product_string "$machine_type-$soc_hwplatform _SN:$msm_serial_hex" # ADB requires valid iSerialNumber; if ro.serialno is missing, use dummy serialnumber=`cat /config/usb_gadget/g1/strings/0x409/serialnumber 2> /dev/null` @@ -238,13 +225,19 @@ if [ -d /config/usb_gadget/g1/functions/uvc.0 ]; then ln -s streaming/header/h streaming/class/hs/ ln -s streaming/header/h streaming/class/ss/ fi - #ifdef VENDOR_EDIT #Enable diag and adb for FTM boot_mode=`getprop ro.boot.ftm_mode` echo "boot_mode: $boot_mode" > /dev/kmsg case "$boot_mode" in - "ftm_at" | "ftm_rf" | "ftm_wlan" | "ftm_mos") + "ftm_rf" | "ftm_wlan" | "ftm_mos") + setprop sys.usb.config diag,adb + setprop persist.sys.usb.config diag,adb + echo "peripheral" > /sys/devices/platform/soc/a600000.ssusb/mode + echo "AFTER boot_mode: diag,adb" > /dev/kmsg +esac +case "$boot_mode" in + "ftm_at") setprop sys.usb.config diag,adb setprop persist.sys.usb.config diag,adb echo "AFTER boot_mode: diag,adb" > /dev/kmsg diff --git a/rootdir/bin/init.qti.chg_policy.sh b/rootdir/bin/init.qti.chg_policy.sh index 8d41744..0b6e566 100755 --- a/rootdir/bin/init.qti.chg_policy.sh +++ b/rootdir/bin/init.qti.chg_policy.sh @@ -12,27 +12,37 @@ export PATH=/vendor/bin soc_id=`getprop ro.vendor.qti.soc_id` if [ "$soc_id" -eq 415 ] || [ "$soc_id" -eq 439 ] || [ "$soc_id" -eq 450 ]; then - setprop persist.vendor.hvdcp_opti.start 0 - rm -rf /mnt/vendor/persist/hvdcp_opti + setprop persist.vendor.hvdcp_opti.start 2 exit 0 fi -prefix="/sys/class/" -#List of folder for ownership update -arr=( "power_supply/battery/" "power_supply/usb/" "power_supply/main/" "power_supply/charge_pump_master/" "power_supply/pc_port/" "power_supply/dc/" "power_supply/bms/" "power_supply/parallel/" "usbpd/usbpd0/" "qc-vdm/" "charge_pump/" "qcom-battery/" ) -for i in "${arr[@]}" -do - for j in `ls "$prefix""$i"` - do - #skip directories to prevent possible security issues. - if [[ -d "$prefix""$i""$j" ]] - then - continue - else - chown -h system.system "$prefix""$i""$j" - fi - done -done +if [ "$soc_id" -eq 441 ] || [ "$soc_id" -eq 471 ]; then + #Scuba does not support usb-pd or charge pumps + find /sys/class/power_supply/battery/ -type f -maxdepth 1 | xargs chown system.system + find /sys/class/power_supply/bms/ -type f -maxdepth 1 | xargs chown system.system + find /sys/class/power_supply/main/ -type f -maxdepth 1 | xargs chown system.system + find /sys/class/power_supply/usb/ -type f -maxdepth 1 | xargs chown system.system +else + find /sys/class/power_supply/battery/ -type f -maxdepth 1 | xargs chown system.system + find /sys/class/power_supply/bms/ -type f -maxdepth 1 | xargs chown system.system + find /sys/class/power_supply/main/ -type f -maxdepth 1 | xargs chown system.system + find /sys/class/power_supply/usb/ -type f -maxdepth 1 | xargs chown system.system + find /sys/class/power_supply/charge_pump_master/ -type f -maxdepth 1 | xargs chown system.system + find /sys/class/power_supply/pc_port/ -type f -maxdepth 1 | xargs chown system.system + find /sys/class/power_supply/dc/ -type f -maxdepth 1 | xargs chown system.system + find /sys/class/power_supply/parallel/ -type f -maxdepth 1 | xargs chown system.system + find /sys/class/usbpd/usbpd0/ -type f -maxdepth 1 | xargs chown system.system + find /sys/class/qc-vdm/ -type f -maxdepth 1 | xargs chown system.system + find /sys/class/charge_pump/ -type f -maxdepth 1 | xargs chown system.system + find /sys/class/qcom-battery/ -type f -maxdepth 1 | xargs chown system.system -#@bsp, 2020/05/11, remove hvdcp_opti service -#setprop persist.vendor.hvdcp_opti.start 1 + for i in 0 1 2 3 4 5 6 7 8 9 + do + devname=`cat /sys/bus/iio/devices/iio:device$i/name` + if [[ "$devname" == *smb* ]] || [[ "$devname" == *qg* ]] || [[ "$devname" == *div2_cp* ]]; then + find /sys/bus/iio/devices/iio:device$i/ -type f -maxdepth 1 | xargs chown system.system + fi + done +fi + +setprop persist.vendor.hvdcp_opti.start 1 diff --git a/rootdir/bin/init.qti.kernel.sh b/rootdir/bin/init.qti.kernel.sh new file mode 100755 index 0000000..642794d --- /dev/null +++ b/rootdir/bin/init.qti.kernel.sh @@ -0,0 +1,48 @@ +#! /vendor/bin/sh +#============================================================================= +# Copyright (c) 2019-2020 Qualcomm Technologies, Inc. +# All Rights Reserved. +# Confidential and Proprietary - Qualcomm Technologies, Inc. +# +# 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. +#============================================================================= + +verify_pasr_support() +{ + if [ -d /sys/kernel/mem-offline ]; then + setprop vendor.pasr.enabled true + fi +} + +start_msm_irqbalance() +{ + if [ -f /vendor/bin/msm_irqbalance ]; then + start vendor.msm_irqbalance + fi +} +start_msm_irqbalance +verify_pasr_support diff --git a/rootdir/bin/vendor_modprobe.sh b/rootdir/bin/vendor_modprobe.sh new file mode 100755 index 0000000..5586bbe --- /dev/null +++ b/rootdir/bin/vendor_modprobe.sh @@ -0,0 +1,43 @@ +#! /vendor/bin/sh +#============================================================================= +# Copyright (c) 2019-2020 Qualcomm Technologies, Inc. +# All Rights Reserved. +# Confidential and Proprietary - Qualcomm Technologies, Inc. +#============================================================================= + +#default to /vendor/lib/modules +MODULES_PATH="/vendor/lib/modules/" +GKI_MOD_PATH="/vendor/lib/modules/5.4-gki" + +MODPROBE="/vendor/bin/modprobe" +MODULES=`${MODPROBE} -d ${MODULES_PATH} -l` + +# insmod op_cmdline before other modules +CMD_LINE=`cat /proc/cmdline` +${MODPROBE} -a -b -d ${MODULES_PATH} op_cmdline.ko op_cmdline="\"${CMD_LINE}\"" +${MODPROBE} -a -b -d ${GKI_MOD_PATH} op_cmdline.ko op_cmdline="\"${CMD_LINE}\"" + +# Find the first non-blacklisted module and try +# inserting it. If insertion fails the module is not +# compatible with the current kernel. Change the modules +# directory to gki. +for MODULE in ${MODULES}; do + cat ${MODULES_PATH}/modules.blocklist | grep $MODULE + if [ $? -ne 0 ]; then + break + fi +done + +${MODPROBE} -a -b -d ${MODULES_PATH} ${MODULE} +if [ $? -ne 0 ];then + MODULES_PATH=$GKI_MOD_PATH + MODULES=`${MODPROBE} -d ${MODULES_PATH} -l` +fi + +# Iterate over module list and modprobe them in background. +for MODULE in ${MODULES}; do + ${MODPROBE} -a -b -d ${MODULES_PATH} ${MODULE} & +done + +# Wait until all the modprobes are finished +wait diff --git a/rootdir/etc/ftm_power_config.sh b/rootdir/etc/ftm_power_config.sh index 2c229f1..2e24393 100644 --- a/rootdir/etc/ftm_power_config.sh +++ b/rootdir/etc/ftm_power_config.sh @@ -1,6 +1,7 @@ #!/system/bin/sh echo "ftm_power_config start" >> /dev/kmsg bootmode=`getprop ro.vendor.factory.mode` +target=`getprop ro.board.platform` /vendor/bin/sh /vendor/bin/init.qcom.post_boot.sh sleep 5 echo 0 > /sys/devices/system/cpu/cpu4/online @@ -11,8 +12,14 @@ echo 0 > /sys/devices/system/cpu/cpu7/online sleep 10 echo 0 > /sys/devices/system/cpu/cpu3/online echo 0 > /sys/devices/system/cpu/cpu2/online -echo 518400 > /sys/devices/system/cpu/cpufreq/policy0/scaling_min_freq -echo 883200 > /sys/devices/system/cpu/cpufreq/policy0/scaling_max_freq + +if [ "$target" == "lito" ]; then + echo 614400 > /sys/devices/system/cpu/cpufreq/policy0/scaling_min_freq + echo 1075200 > /sys/devices/system/cpu/cpufreq/policy0/scaling_max_freq +else + echo 518400 > /sys/devices/system/cpu/cpufreq/policy0/scaling_min_freq + echo 883200 > /sys/devices/system/cpu/cpufreq/policy0/scaling_max_freq +fi echo "ftm_power_config ftrace config start" >> /dev/kmsg echo 0 > /sys/kernel/debug/tracing/tracing_on diff --git a/rootdir/etc/init.cust.rc b/rootdir/etc/init.cust.rc index 87e8480..cedf2c4 100644 --- a/rootdir/etc/init.cust.rc +++ b/rootdir/etc/init.cust.rc @@ -19,3 +19,6 @@ on post-fs-data && property:ro.boot.cust=9 mount overlay overlay /system_ext/priv-app lowerdir=/oem/system_ext/priv-app:/system_ext/priv-app,context=u:object_r:system_file:s0 mount overlay overlay /system_ext/etc/permissions lowerdir=/oem/system_ext/etc/permissions:/system_ext/etc/permissions,context=u:object_r:system_file:s0 mount overlay overlay /system_ext/etc/sysconfig lowerdir=/oem/system_ext/etc/sysconfig:/system_ext/etc/sysconfig,context=u:object_r:system_file:s0 + +on property:ro.boot.product.hardware.sku=9 + setprop persist.radio.multisim.config ssss diff --git a/rootdir/etc/init.oem.debug.rc b/rootdir/etc/init.oem.debug.rc index ee2905c..875cc27 100644 --- a/rootdir/etc/init.oem.debug.rc +++ b/rootdir/etc/init.oem.debug.rc @@ -40,7 +40,6 @@ on property:persist.vendor.oem.dump=1 && property:persist.vendor.oem.ssrdump=0 write /proc/restart_level_all 1 write /proc/sys/kernel/printk "4 6 1 7" setprop persist.vendor.oem.pmsg.enable 1 - write /sys/class/sdx5x_rf_cable/rf_cable/oem_dump 1 on property:persist.vendor.oem.dump=0 && property:persist.vendor.oem.ssrdump=0 write /sys/module/msm_poweroff/parameters/download_mode 1 @@ -50,7 +49,6 @@ on property:persist.vendor.oem.dump=0 && property:persist.vendor.oem.ssrdump=0 write /proc/restart_level_all 0 write /proc/sys/kernel/printk "1 6 1 7" setprop persist.vendor.oem.pmsg.enable 0 - write /sys/class/sdx5x_rf_cable/rf_cable/oem_dump 0 on property:persist.vendor.oem.dump=0 && property:persist.vendor.oem.ssrdump=1 write /sys/module/msm_poweroff/parameters/download_mode 1 @@ -60,7 +58,6 @@ on property:persist.vendor.oem.dump=0 && property:persist.vendor.oem.ssrdump=1 write /proc/restart_level_all 0 write /proc/sys/kernel/printk "4 6 1 7" setprop persist.vendor.oem.pmsg.enable 0 - write /sys/class/sdx5x_rf_cable/rf_cable/oem_dump 0 on property:persist.vendor.oem.twice.modemdump=1 diff --git a/rootdir/etc/init.oem.minidump.sdx55m.rc b/rootdir/etc/init.oem.minidump.sdx55m.rc deleted file mode 100644 index ca7a3db..0000000 --- a/rootdir/etc/init.oem.minidump.sdx55m.rc +++ /dev/null @@ -1,73 +0,0 @@ -################################################################################## -### VENDOR_EDIT, OEM All rights reserved. -### -### File: - init.oem.minidump.sdx55m.rc -### -### ------------------------------- Revision History: ---------------------------- -### -### kimmy.yang@oneplus.com 2020/04/22 v1 provide the permission -### kimmy.yang@oneplus.com 2020/08/05 v1.2 Add new ELF for CR upgraded -### ------------------------------------------------------------------------------ -################################################################################## - - -################################## Trigger Point Begin ########################################### - -on fs - mkdir /mnt/vendor/modemdump 0771 system system - wait /dev/block/bootdevice/by-name/modemdump - mount ext4 /dev/block/bootdevice/by-name/modemdump /mnt/vendor/modemdump noatime nosuid nodev barrier=1 - chown root system /mnt/vendor/modemdump - chmod 0771 /mnt/vendor/modemdump - mkdir /mnt/vendor/modemdump/SDX55M 0770 - chown root system /mnt/vendor/modemdump/SDX55M - restorecon_recursive /mnt/vendor/modemdump - -on property:vendor.sys.mount.modemdump=1 - mount ext4 /dev/block/bootdevice/by-name/modemdump /mnt/vendor/modemdump noatime nosuid nodev barrier=1 - -on property:vendor.sys.mount.modemdump=0 - umount /mnt/vendor/modemdump - exec /system/bin/e2fsck -y /dev/block/bootdevice/by-name/modemdump - write /dev/kmsg "umount modemdump success" - write /sys/module/esoc_mdm_4x/parameters/mdm_umount_state 1 - -on property:persist.sys.oem.minidump_chmod=1 - chmod 0770 /mnt/vendor/modemdump/SDX55M - chmod 0660 /mnt/vendor/modemdump/SDX55M/load.cmm - chmod 0660 /mnt/vendor/modemdump/SDX55M/md_AMSS_HEAP_0.BIN - chmod 0660 /mnt/vendor/modemdump/SDX55M/md_GEN_DUMP_0.BIN - chmod 0660 /mnt/vendor/modemdump/SDX55M/md_GEN_DUMP_1.BIN - chmod 0660 /mnt/vendor/modemdump/SDX55M/md_GEN_DUMP_10.BIN - chmod 0660 /mnt/vendor/modemdump/SDX55M/md_GEN_DUMP_11.BIN - chmod 0660 /mnt/vendor/modemdump/SDX55M/md_GEN_DUMP_12.BIN - chmod 0660 /mnt/vendor/modemdump/SDX55M/md_GEN_DUMP_2.BIN - chmod 0660 /mnt/vendor/modemdump/SDX55M/md_GEN_DUMP_3.BIN - chmod 0660 /mnt/vendor/modemdump/SDX55M/md_GEN_DUMP_4.BIN - chmod 0660 /mnt/vendor/modemdump/SDX55M/md_GEN_DUMP_5.BIN - chmod 0660 /mnt/vendor/modemdump/SDX55M/md_GEN_DUMP_6.BIN - chmod 0660 /mnt/vendor/modemdump/SDX55M/md_GEN_DUMP_7.BIN - chmod 0660 /mnt/vendor/modemdump/SDX55M/md_GEN_DUMP_8.BIN - chmod 0660 /mnt/vendor/modemdump/SDX55M/md_GEN_DUMP_9.BIN - chmod 0660 /mnt/vendor/modemdump/SDX55M/md_INT_HEAP_0.BIN - chmod 0660 /mnt/vendor/modemdump/SDX55M/md_INT_HEAP_1.BIN - chmod 0660 /mnt/vendor/modemdump/SDX55M/md_MDMP_LOG.BIN - chmod 0660 /mnt/vendor/modemdump/SDX55M/md_MDMP_LOG1.BIN - chmod 0660 /mnt/vendor/modemdump/SDX55M/md_MPSS_HEAP_0.BIN - chmod 0660 /mnt/vendor/modemdump/SDX55M/md_MPSS_HEAP_1.BIN - chmod 0660 /mnt/vendor/modemdump/SDX55M/md_MPSS_INT_HEA.BIN - chmod 0660 /mnt/vendor/modemdump/SDX55M/md_MPSS_VAR_TAB.BIN - chmod 0660 /mnt/vendor/modemdump/SDX55M/md_mss_key_aes.BIN - chmod 0660 /mnt/vendor/modemdump/SDX55M/md_mss_key_iv.BIN - chmod 0660 /mnt/vendor/modemdump/SDX55M/md_mss_key_mac.BIN - chmod 0660 /mnt/vendor/modemdump/SDX55M/md_PBUS_LOG.BIN - chmod 0660 /mnt/vendor/modemdump/SDX55M/md_PMIC_PON.BIN - chmod 0660 /mnt/vendor/modemdump/SDX55M/md_PMON_HIS.BIN - chmod 0660 /mnt/vendor/modemdump/SDX55M/md_QSH_MDUMP.BIN - chmod 0660 /mnt/vendor/modemdump/SDX55M/md_RST_STAT.BIN - chmod 0660 /mnt/vendor/modemdump/SDX55M/md_SHRDIMEM.BIN - chmod 0660 /mnt/vendor/modemdump/SDX55M/md_SMEM_VER.BIN - chmod 0660 /mnt/vendor/modemdump/SDX55M/md_SMEMINFO.BIN - chmod 0660 /mnt/vendor/modemdump/SDX55M/md_TZ_DIAG.BIN - chmod 0660 /mnt/vendor/modemdump/SDX55M/md_mss_compr_ar.BIN - setprop persist.sys.oem.minidump_chmod 0 diff --git a/rootdir/etc/init.oem.rc b/rootdir/etc/init.oem.rc index 0b90d99..51b3185 100644 --- a/rootdir/etc/init.oem.rc +++ b/rootdir/etc/init.oem.rc @@ -12,6 +12,8 @@ #Load WLAN driver import /vendor/etc/init/hw/init.cust.rc +#ethan.peng@Connectivity,2020/12/29,close uicc since orange +import /vendor/etc/init/hw/init.uicc.rc on property:wlan.driver.status=ok start load_wlan_driver @@ -29,7 +31,6 @@ on charger #@bsp, 2019/08/22 Add dash charging service dashd /vendor/bin/dashd class core - critical seclabel u:r:dashd:s0 group root system @@ -42,8 +43,6 @@ service wlchgd /vendor/bin/wlchgd on fs mount ext4 /dev/block/bootdevice/by-name/op1 /mnt/vendor/op1 ro barrier=1 discard context=u:object_r:op1_file:s0 - mount ext4 /dev/block/bootdevice/by-name/op2 /mnt/vendor/op2 noatime nosuid nodev barrier=1 - chown system system /mnt/vendor/op2 #yankelong add chown system system /sys/class/leds/vibrator/haptic_audio_ai_input chown system system /sys/class/leds/vibrator/haptic_audio_tp_input @@ -108,8 +107,10 @@ on fs write /sys/devices/platform/soc/a94000.i2c/i2c-4/4-0048/tp_fw_update 0 write /sys/devices/platform/soc/984000.i2c/i2c-4/4-005d/tp_fw_update 0 write /sys/devices/platform/soc/984000.i2c/i2c-4/4-0048/tp_fw_update 0 + write /sys/devices/platform/soc/a94000.i2c/i2c-4/4-005d/tp_fw_update 0 + write /sys/devices/platform/soc/880000.spi/spi_master/spi0/spi0.0/tp_fw_update 0 -#add for tp debug log +#add for tp debug log & to set node gesture_enable chown system system /proc/touchpanel/tp_debug_log chown system system /proc/touchpanel/gesture_enable chown system system /proc/touchpanel/gesture_switch @@ -117,6 +118,8 @@ on fs chown system system /proc/touchpanel/tp_switch_dead_zone chown system system /proc/touchpanel/tp_switch_corner_dead_l_zone chown system system /proc/touchpanel/tp_switch_corner_dead_p_zone + chown system system /proc/touchpanel/touch_apk + chown system system /proc/touchpanel/get_device_temperature # /* add for wireless charge */ chown system system /proc/wireless/enable_tx chown system system /proc/wireless/enable_rx @@ -129,7 +132,12 @@ on fs chown system system /proc/wireless/fast_skin_threld chown system system /proc/enhance_dash -#ifdef VENDOR_EDIT + +# rayboo.lin@bsp, 2020/09/09 add for simCard holder detect + chmod 0666 /proc/simholder/sim_holder_detect + chown system system /proc/simholder/sim_holder_detect + + #uma.mahesh@Imaging 2020/4/8 add for factory item chown system system /sys/class/leds/led:torch_0/brightness chmod 666 /sys/class/leds/led:torch_0/brightness @@ -159,24 +167,40 @@ on fs chmod 666 /sys/kernel/tof_control/app0/app0_get_distance chown system system /sys/kernel/tof_control/app0/app0_read_peak_crosstalk chmod 666 /sys/kernel/tof_control/app0/app0_read_peak_crosstalk + chown system system /sys/kernel/tof_control/app0/period + chmod 666 /sys/kernel/tof_control/app0/period + chown system system /sys/kernel/tof_control/app0/iterations + chmod 666 /sys/kernel/tof_control/app0/iterations + chown system system /sys/kernel/tof_control/app0/alg_setting + chmod 666 /sys/kernel/tof_control/app0/alg_setting + chown system system /sys/kernel/tof_control/app0/app0_clk_iterations + chmod 666 /sys/kernel/tof_control/app0/app0_clk_iterations + chown system system /sys/kernel/tof_control/chip_enable + chmod 666 /sys/kernel/tof_control/chip_enable + chown system system /sys/kernel/tof_control/app0/app0_clk_trim_set + chmod 666 /sys/kernel/tof_control/app0/app0_clk_trim_set + chown system system /sys/kernel/tof_control/app0/app0_apply_fac_calib + chmod 666 /sys/kernel/tof_control/app0/app0_apply_fac_calib + chown system system /sys/kernel/tof_control/driver_debug + chmod 666 /sys/kernel/tof_control/driver_debug #add for ois debug chown system system /sys/kernel/ois_control/dump_registers chmod 666 /sys/kernel/ois_control/dump_registers -#endif + # Power@bsp, 2020/2/27, add for thermal chown system system /dev/msm_thermal chown system system /dev/skin_thermal - chown system system /dev/modem_skin_thermal - chown system system /dev/mmw0_thermal - chown system system /dev/mmw1_thermal - chown system system /dev/mmw2_thermal + chown system system /dev/modem_skin_therm + chown system system /dev/mmw0_therm + chown system system /dev/mmw1_therm + chown system system /dev/mmw2_therm chmod 0664 /dev/msm_thermal chmod 0664 /dev/skin_thermal - chmod 0664 /dev/modem_skin_thermal - chmod 0664 /dev/mmw0_thermal - chmod 0664 /dev/mmw1_thermal - chmod 0664 /dev/mmw2_thermal + chmod 0664 /dev/modem_skin_therm + chmod 0664 /dev/mmw0_therm + chmod 0664 /dev/mmw1_therm + chmod 0664 /dev/mmw2_therm #ifdef VENDOR_EDIT #if OP_FEATURE_MM_ADSP_MINIDUMP == 1 @@ -190,6 +214,30 @@ on fs chmod 0666 /sys/class/drm/card0-DSI-1/hbm_brightness chmod 0666 /sys/class/backlight/panel0-backlight/brightness #endif +# display add 2018/10/19 @lichao_display + chmod 0666 /sys/class/drm/card0-DSI-1/SRGB + chmod 0666 /sys/class/drm/card0-DSI-1/DCI_P3 + chmod 0666 /sys/class/drm/card0-DSI-1/aod + chmod 0666 /sys/class/drm/card0-DSI-1/night_mode + chmod 0666 /sys/class/drm/card0-DSI-1/panel_serial_number + chmod 0666 /sys/class/drm/card0-DSI-1/oneplus_mode + chmod 0666 /sys/class/drm/card0-DSI-1/adaption_mode + chmod 0666 /sys/class/drm/card0-DSI-1/notify_fppress + chmod 0666 /sys/class/drm/card0-DSI-1/dim_alpha + chmod 0666 /sys/class/drm/card0-DSI-1/notify_dim + chmod 0666 /sys/class/drm/card0-DSI-1/force_screenfp + chmod 0666 /sys/class/drm/card0-DSI-1/native_display_p3_mode + chmod 0666 /sys/class/drm/card0-DSI-1/native_display_wide_color_mode + chmod 0666 /sys/class/drm/card0-DSI-1/native_display_srgb_color_mode + chmod 0666 /sys/devices/platform/soc/soc:qcom,dsi-display-primary/dynamic_dsi_clock + chown radio radio /sys/devices/platform/soc/soc:qcom,dsi-display-primary/dynamic_dsi_clock + chown radio radio /proc/force_reset + chmod 0666 /sys/class/drm/card0-DSI-1/native_display_loading_effect_mode + chmod 0666 /sys/class/drm/card0-DSI-1/native_display_customer_srgb_mode + chmod 0666 /sys/class/drm/card0-DSI-1/native_display_customer_p3_mode + chmod 0666 /sys/class/drm/card0-DSI-1/dimlayer_bl_en + chmod 0666 /sys/class/drm/card0-DSI-1/dither_en + chmod 0666 /sys/class/drm/card0-DSI-1/oplus_msd_aod # ken.lin@ASTI, 2019/6/21, add for fsc chown system system /sys/module/fsc/parameters/enable @@ -206,15 +254,17 @@ on boot chown system system sys/devices/platform/soc/soc:goodix_fp/screen_state chmod 0666 /dev/qseecom #endif + setprop ro.nfc.port "I2C" + chmod 0666 /dev/pn553 + chown nfc nfc /dev/pn553 + chmod 0666 /dev/p73 + chown secure_element secure_element /dev/p73 #Leo@BSP 2020/04/17 add for qsee_log tz_log chmod 0666 /proc/tzdbg/qsee_log - chmod 0666 /proc/tzdbg/tz_log + chmod 0666 /proc/tzdbg/log #Norman@Connectivity 2020/04/24 add for default country code setprop ro.boot.wificountrycode 00 -#Brandon@Conn 2020/07/24 add for default uicc support - setprop persist.vendor.radio.uicc_se_enabled true - #martin.li@BSP, 2019/12/03,support for EngineeringMode tool start chown system system /proc/rf_cable_config chown system system /proc/rf_factory_mode @@ -224,6 +274,19 @@ on boot write /proc/sys/net/ipv4/tcp_mtu_probing 1 #endif /*VENDOR_EDIT*/ +#ifdef VENDOR_EDIT +#tempest.chen@BSP 2020/12/07 add for light sensor and ultrasound proximity + chmod 666 /dev/input/event1 + chmod 666 /dev/input/event2 + chmod 666 /dev/input/event8 + chmod 666 /dev/input/event10 +#endif /*VENDOR_EDIT*/ + +#ifdef VENDOR_EDIT +#niku.huang@SYSTEM, 2020/12/30, Add for enable round corner + setprop vendor.display.disable_rounded_corner 0 +#endif /*VENDOR_EDIT*/ + on init setprop vendor.boot.verifiedbootstate ${ro.boot.verifiedbootstate} setprop vendor.boot.hw_version ${ro.boot.hw_version} @@ -257,22 +320,14 @@ on post-fs chown system system /proc/skin_temp_thrd/fastchg_lcdoff_thd chown system system /proc/skin_temp_thrd/norchg_thd chown system system /proc/skin_temp_thrd/norchg_lcdoff_thd - chmod 0444 /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_cur_freq - chmod 0444 /sys/devices/system/cpu/cpu1/cpufreq/cpuinfo_cur_freq - chmod 0444 /sys/devices/system/cpu/cpu2/cpufreq/cpuinfo_cur_freq - chmod 0444 /sys/devices/system/cpu/cpu3/cpufreq/cpuinfo_cur_freq - chmod 0444 /sys/devices/system/cpu/cpu4/cpufreq/cpuinfo_cur_freq - chmod 0444 /sys/devices/system/cpu/cpu5/cpufreq/cpuinfo_cur_freq - chmod 0444 /sys/devices/system/cpu/cpu6/cpufreq/cpuinfo_cur_freq - chmod 0444 /sys/devices/system/cpu/cpu7/cpufreq/cpuinfo_cur_freq #ifdef VENDOR_EDIT #brandon.zeng@Conn,2020/05/08. add for nfc pnscr tool - chown system system /system/xbin/nfc_trasmit_start.sh - chmod 0777 /system/xbin/nfc_trasmit_start.sh - chown system system /system/xbin/nfc_trasmit_stop.sh - chmod 0777 /system/xbin/nfc_trasmit_stop.sh - chown system system system/xbin/pnscr - chmod 0777 system/xbin/pnscr + chown system system /vendor/bin/nfc_trasmit_start.sh + chmod 0777 /vendor/bin/nfc_trasmit_start.sh + chown system system /vendor/bin/nfc_trasmit_stop.sh + chmod 0777 /vendor/bin/nfc_trasmit_stop.sh + chown system system vendor/bin/pnscr + chmod 0777 vendor/bin/pnscr #endif #ifdef VENDOR_EDIT @@ -282,6 +337,8 @@ on post-fs chown wifi wifi /mnt/vendor/persist/qca6390/wlan_mac.bin copy /vendor/etc/wifi/qca6390/WCNSS_qcom_cfg.ini /mnt/vendor/persist/qca6390/WCNSS_qcom_cfg.ini chown wifi wifi /mnt/vendor/persist/qca6390/WCNSS_qcom_cfg.ini +# /*create a empty file for wifi single point calibration*/ + mkdir /mnt/vendor/persist/copy 0770 wifi wifi # /* create a empty file for wifi hal to write qca6490 mac address */ write /mnt/vendor/persist/wlan_mac.bin "" chown wifi wifi /mnt/vendor/persist/wlan_mac.bin @@ -352,17 +409,31 @@ on post-fs-data chown system system /sys/module/tpd/parameters/tpd_dynamic chown system system /sys/module/fuse/parameters/shortcircuit chown system system /sys/module/fuse/parameters/sct_mode + # Jacky.Ho@OPTI 2020/09/23 add for [OSP-8617] + chown system system /sys/module/houston/parameters/game_fps_pid + chown system system /sys/module/houston/parameters/game_info # fps stabilizer chown system system /sys/module/houston/parameters/efps_max chown system system /sys/module/houston/parameters/fps_boost_strategy chown system system /sys/module/houston/parameters/egl_buf chown system system /sys/module/houston/parameters/ht_online_config_update + # Jacky.Ho@OPTI 2020/09/30 add for [OPTI-85] + chown system system /sys/module/tpp/parameters/tpp_on + chown system system /sys/module/tpp/parameters/strategy -# Ted.Lin@ASTI 2019/06/12 add for CONFIG_CONTROL_CENTER + # rock.lin@OPTI [OPTI-191] for power consumption + chown system system /sys/module/cpufreq_bouncing/parameters/enable + chown system system /sys/module/cpufreq_bouncing/parameters/config + + # Ted.Lin@ASTI 2019/06/12 add for CONFIG_CONTROL_CENTER chown system system /dev/cc_ctl chown system system /proc/cc_ctl #endif /* VENDOR_EDIT */ + +# rock.lin@OPTI 2020/06/11 add for CONFIG_RATP + chown system system /sys/module/ratp/parameters/ratp_enable + #ifdef VENDOR_EDIT # TomCheng@Core ,2020/06/22, HDCP provision key feature mkdir /mnt/vendor/persist/hdcp/media_dump 0770 mediaex mediadrm @@ -384,6 +455,28 @@ on post-fs-data mkdir /data/vendor/ramdump/adsp 0770 system system # endif + # kimmy.yang@NETWORK, 20201223, add for SM8350 (SoC) + mkdir /data/vendor/ramdump/modem 0770 system system + +#ifdef VENDOR_EDIT online ISP tuning + mkdir /data/vendor/camera_update 0777 camera camera + write /data/vendor/camera_update/reservetuningbin0 "" + write /data/vendor/camera_update/reservetuningbin1 "" + write /data/vendor/camera_update/reservetuningbin2 "" + write /data/vendor/camera_update/reservetuningbin3 "" + write /data/vendor/camera_update/reservetuningbin4 "" + write /data/vendor/camera_update/reservetuningbin5 "" + write /data/vendor/camera_update/reservetuningbin6 "" + + chmod 0666 /data/vendor/camera_update/reservetuningbin0 + chmod 0666 /data/vendor/camera_update/reservetuningbin1 + chmod 0666 /data/vendor/camera_update/reservetuningbin2 + chmod 0666 /data/vendor/camera_update/reservetuningbin3 + chmod 0666 /data/vendor/camera_update/reservetuningbin4 + chmod 0666 /data/vendor/camera_update/reservetuningbin5 + chmod 0666 /data/vendor/camera_update/reservetuningbin6 +#endif + # add for SMT test enters WLAN FTM test in non-signaling service wififtmserver /vendor/bin/sh vendor/bin/wifi_ftm class late_start @@ -392,20 +485,32 @@ service wififtmserver /vendor/bin/sh vendor/bin/wifi_ftm disabled oneshot +# ted.lin@OPTU [OPTI-191] add for qcom boost config +on property:vendor.post_boot.parsed=1 + chown system system /sys/devices/system/cpu/cpu0/cpufreq/schedutil/target_loads + chown system system /sys/devices/system/cpu/cpu4/cpufreq/schedutil/target_loads + chown system system /sys/devices/system/cpu/cpu7/cpufreq/schedutil/target_loads + chown system system /sys/devices/system/cpu/cpu7/core_ctl/busy_up_thres + chown system system /sys/devices/system/cpu/cpu7/core_ctl/busy_down_thres + on property:vendor.wlan.ftm.up=1 start wififtmserver on property:persist.vendor.oem.wifi.chain=1 copy /vendor/etc/wifi/WCNSS_qcom_cfg_setchain.ini /mnt/vendor/persist/qca6390/WCNSS_qcom_cfg.ini + copy /vendor/etc/wifi/WCNSS_qcom_cfg_setchain.ini /mnt/vendor/persist/WCNSS_qcom_cfg.ini start service_setChain on property:persist.vendor.oem.wifi.chain=2 copy /vendor/etc/wifi/WCNSS_qcom_cfg_setchain.ini /mnt/vendor/persist/qca6390/WCNSS_qcom_cfg.ini + copy /vendor/etc/wifi/WCNSS_qcom_cfg_setchain.ini /mnt/vendor/persist/WCNSS_qcom_cfg.ini start service_setChain on property:persist.vendor.oem.wifi.chain=0 copy /vendor/etc/wifi/qca6390/WCNSS_qcom_cfg.ini /mnt/vendor/persist/qca6390/WCNSS_qcom_cfg.ini + copy /vendor/etc/wifi/WCNSS_qcom_cfg.ini /mnt/vendor/persist/WCNSS_qcom_cfg.ini start service_setChain on property:persist.vendor.oem.wifi.chain=3 copy /vendor/etc/wifi/WCNSS_qcom_cfg_roam.ini /mnt/vendor/persist/qca6390/WCNSS_qcom_cfg.ini + copy /vendor/etc/wifi/WCNSS_qcom_cfg_roam.ini /mnt/vendor/persist/WCNSS_qcom_cfg.ini service service_setChain /vendor/bin/sh /vendor/bin/wifi_setChain ${persist.vendor.oem.wifi.chain} class main user root @@ -435,13 +540,6 @@ on init # alex.huang@Connectivity, 2020/04/29, Porting *#8019# function #ifdef VENDOR_EDIT -service wifisocket /system_ext/bin/diag_system_socket_log -a 181.157.1.200 -p 2500 -r 10000 -c 1 - user root - group root system oem_2901 - disabled - oneshot - seclabel u:r:logserver:s0 - service wifisocket-mdm /system_ext/bin/diag_system_socket_log -a 181.157.1.200 -p 2500 -r 10000 -c 2 user root group root system oem_2901 @@ -449,13 +547,6 @@ service wifisocket-mdm /system_ext/bin/diag_system_socket_log -a 181.157.1.200 - oneshot seclabel u:r:logserver:s0 -service wifisocket-stop /system_ext/bin/diag_system_socket_log -k - user root - group root system oem_2901 - disabled - oneshot - seclabel u:r:logserver:s0 - service wifisocket-mdm-stop /system_ext/bin/diag_system_socket_log -k user root group root system oem_2901 @@ -470,14 +561,6 @@ service oemsysd /vendor/bin/oem-system-daemon disabled seclabel u:r:ftmdaemon:s0 -on property:vendor.service.wifi.socket.enable=1 - start oemsysd - start wifisocket - -on property:vendor.service.wifi.socket.enable=0 - stop oemsysd - start wifisocket-stop - on property:vendor.service.wifi.socket.mdm.enable=1 start oemsysd start wifisocket-mdm @@ -485,6 +568,43 @@ on property:vendor.service.wifi.socket.mdm.enable=1 on property:vendor.service.wifi.socket.mdm.enable=0 stop oemsysd start wifisocket-mdm-stop + +service wifisocket /vendor/bin/diag_socket_log -a 181.157.1.200 -p 2500 -r 10000 -c 1 + user root + group root system oem_2901 + disabled + oneshot + +service wifisocket-stop /vendor/bin/diag_socket_log -k + user root + group root system oem_2901 + disabled + oneshot + +on property:vendor.service.wifi.socket.enable=1 + start oemsysd + +on property:vendor.service.wifi.socket.enable=0 + stop oemsysd + +service wifisocket-lahaina /vendor/bin/diag_socket_log -a 181.157.1.200 -p 2500 -r 10000 -c 1 + user root + group root system oem_2901 + disabled + oneshot + +service wifisocket-lahaina-stop /vendor/bin/diag_socket_log -k + user root + group root system oem_2901 + disabled + oneshot + +on property:vendor.service.wifi.socket.lahaina.enable=0 + stop oemsysd + +on property:vendor.service.wifi.socket.lahaina.enable=1 + start oemsysd + #endif service ftmdaemon /system/vendor/bin/ftmdaemon -n @@ -554,6 +674,19 @@ service rmalikey /system/bin/rm -r /mnt/vendor/op2/.lii disabled oneshot seclabel u:r:vold:s0 + +service chownalikey /system/bin/chown -R system.system /mnt/vendor/op2/.lii + class core + user root + group root + disabled + oneshot + seclabel u:r:vold:s0 + +#len.nie@bsp, 2020/11/04. add for dump fingerprint data +on property:gf.debug.dump_path=* + mkdir /sdcard/Android/data/gf_file 0755 system ext_data_rw + #endif # ken.lin@ASTI, 2019/6/21, add for memplus @@ -573,30 +706,30 @@ on property:persist.sys.memplus.direct_swappiness=* #ifdef VENDOR_EDIT #brandon.zeng@Conn,2020/05/08. add for nfc pnscr tool -service nfctransmitstart /system/bin/sh /system/xbin/nfc_trasmit_start.sh +service nfctransmitstart /vendor/bin/sh /vendor/bin/nfc_trasmit_start.sh class late_start user nfc group nfc disabled oneshot -service nfctransmitstop /system/bin/sh /system/xbin/nfc_trasmit_stop.sh +service nfctransmitstop /vendor/bin/sh /vendor/bin/nfc_trasmit_stop.sh class late_start user nfc group nfc disabled oneshot -on property:nfc.transmit.start=1 +on property:vendor.nfc.transmit.start=1 start nfctransmitstart -on property:nfc.transmit.start=0 +on property:vendor.nfc.transmit.start=0 stop nfctransmitstart -on property:nfc.transmit.stop=1 +on property:vendor.nfc.transmit.stop=1 start nfctransmitstop -on property:nfc.transmit.stop=0 +on property:vendor.nfc.transmit.stop=0 stop nfctransmitstop #endif @@ -651,8 +784,10 @@ on property:sys.boot_completed=1 #@bsp Add OTG switch on property:persist.sys.oem.otg_support=true write /sys/class/power_supply/usb/otg_switch 1 + write /sys/class/oplus_chg/usb/otg_switch 1 on property:persist.sys.oem.otg_support=false write /sys/class/power_supply/usb/otg_switch 0 + write /sys/class/oplus_chg/usb/otg_switch 0 #endif on property:vendor.sys.op.game=1 @@ -683,31 +818,6 @@ service terminate_sniffer /vendor/bin/sh /vendor/bin/terminate_sniffer.sh group root disabled oneshot - -#v-krishna.rao@Connectivity, 2020/12/21 , servce to set iwpriv contention for btwifi coex debugging -on property:persist.vendor.oem.btwificoex.debug=1 - start startiwprivcontention - -on property:persist.vendor.oem.btwificoex.debug=0 - start stopiwprivcontention - -on property:wlan.driver.status=ok && property:persist.vendor.oem.btwificoex.debug=1 - start startiwprivcontention - -service startiwprivcontention /vendor/bin/sh /vendor/bin/startcontention.sh 1 - class main - user root - group root - disabled - oneshot - -service stopiwprivcontention /vendor/bin/sh /vendor/bin/startcontention.sh 0 - class main - user root - group root - disabled - oneshot - #endif #ifdef VENDOR_EDIT @@ -787,6 +897,12 @@ service rmdpshdcp2 /system/bin/rm /mnt/vendor/op2/DPS_hdcp2 seclabel u:r:vold:s0 #endif +on property:vendor.sys.op.disable_ufstw=1 + write /sys/devices/platform/soc/1d84000.ufshc/ufstw_lu0/tw_enable 0 + +on property:vendor.sys.op.disable_ufstw=0 + write /sys/devices/platform/soc/1d84000.ufshc/ufstw_lu0/tw_enable 1 + service filebuilderd /system_ext/bin/filebuilderd class core user root @@ -823,6 +939,78 @@ service KmInstallKeybox20809 /vendor/bin/KmInstallKeybox /mnt/vendor/op2/.lii/ke oneshot seclabel u:r:keybox_oem:s0 +# ifdef VENDOR_EDIT +# yanamadala.ragini@SYSTEM, 2018/7/23, [AVICII-2558] Add for keymaster key +service KmInstallKeybox20801 /vendor/bin/KmInstallKeybox /mnt/vendor/op2/.lii/keyboxes_ciphered.xml Nord_Key_Attest_00 true + class core + setenv LD_LIBRARY_PATH /vendor/lib64/hw + user system + group root + disabled + oneshot + seclabel u:r:keybox_oem:s0 + +# yanamadala.ragini@SYSTEM, 2020/11/30, [AN-977] Add for keymaster key +service KmInstallKeybox20828 /vendor/bin/KmInstallKeybox /mnt/vendor/op2/.lii/keyboxes_ciphered.xml OnePlus9G_Key_Attest_0 true + class core + setenv LD_LIBRARY_PATH /vendor/lib64/hw + user system + group root + disabled + oneshot + seclabel u:r:keybox_oem:s0 +# endif + +# v-huanouyang@SYSTEM, 2020/10/22 [TFS-20170] Update Google key box for check on Lemonadev +service KmInstallKeyboxLemonadev /vendor/bin/KmInstallKeybox /mnt/vendor/op2/.lii/keyboxes_ciphered.xml OnePlus9VZW_Key_Attest_0 true + class core + setenv LD_LIBRARY_PATH /vendor/lib64/hw + user system + group root + disabled + oneshot + seclabel u:r:keybox_oem:s0 + +# v-huanouyang@SYSTEM, 2020/10/22 [TFS-20170] Update Google key box for check on Lemonadet +service KmInstallKeyboxLemonadet /vendor/bin/KmInstallKeybox /mnt/vendor/op2/.lii/keyboxes_ciphered.xml OnePlus9TMO_Key_Attest_0 true + class core + setenv LD_LIBRARY_PATH /vendor/lib64/hw + user system + group root + disabled + oneshot + seclabel u:r:keybox_oem:s0 + +# v-huanouyang@SYSTEM, 2020/10/22 [TFS-20170] Update Google key box for check on Lemonade +service KmInstallKeyboxLemonade /vendor/bin/KmInstallKeybox /mnt/vendor/op2/.lii/keyboxes_ciphered.xml OnePlus9_Key_Attest_0 true + class core + setenv LD_LIBRARY_PATH /vendor/lib64/hw + user system + group root + disabled + oneshot + seclabel u:r:keybox_oem:s0 + +# v-huanouyang@SYSTEM, 2020/10/22 [TFS-20170] Update Google key box for check on Lemonadep +service KmInstallKeyboxLemonadep /vendor/bin/KmInstallKeybox /mnt/vendor/op2/.lii/keyboxes_ciphered.xml OnePlus9Pro_Key_Attest_0 true + class core + setenv LD_LIBRARY_PATH /vendor/lib64/hw + user system + group root + disabled + oneshot + seclabel u:r:keybox_oem:s0 + +# v-huanouyang@SYSTEM, 2020/10/22 [TFS-20170] Update Google key box for check on Lemonadept +service KmInstallKeyboxLemonadept /vendor/bin/KmInstallKeybox /mnt/vendor/op2/.lii/keyboxes_ciphered.xml OnePlus9ProTMO_Key_Attest_0 true + class core + setenv LD_LIBRARY_PATH /vendor/lib64/hw + user system + group root + disabled + oneshot + seclabel u:r:keybox_oem:s0 + service keyboxxml /system/bin/mv /sdcard/.lii /mnt/vendor/op2/ class core user root @@ -851,13 +1039,20 @@ service chmodkeyboxxmldir /system/bin/chmod 777 -R /mnt/vendor/op2/.lii #alden.zhang@OPTI, 2020/7/18. [OSP-8064], add for IOLIMIT on property:persist.sys.iolimiter.enable=true write /proc/iolimit_enable 1 - write /sys/module/oneplus_healthinfo/parameters/ohm_action_ctrl Y - chown system system /sys/module/oneplus_healthinfo - chown system system /sys/module/oneplus_healthinfo/parameters - chown system system /sys/module/oneplus_healthinfo/parameters/ohm_iowait_h_ms - chown system system /sys/module/oneplus_healthinfo/parameters/ohm_iowait_l_ms - chown system system /sys/module/oneplus_healthinfo/parameters/ohm_read_thresh - chown system system /sys/module/oneplus_healthinfo/parameters/ohm_write_thresh - chown system system /sys/module/oneplus_healthinfo/parameters/ohm_sample_time - chown system system /sys/module/oneplus_healthinfo/parameters/ohm_action_ctrl - chown system system /proc/iolimit_enable + write /sys/module/oneplus_healthinfo/parameters/ohm_action_ctrl Y + chown system system /sys/module/oneplus_healthinfo + chown system system /sys/module/oneplus_healthinfo/parameters + chown system system /sys/module/oneplus_healthinfo/parameters/ohm_iowait_h_ms + chown system system /sys/module/oneplus_healthinfo/parameters/ohm_iowait_l_ms + chown system system /sys/module/oneplus_healthinfo/parameters/ohm_read_thresh + chown system system /sys/module/oneplus_healthinfo/parameters/ohm_write_thresh + chown system system /sys/module/oneplus_healthinfo/parameters/ohm_sample_time + chown system system /sys/module/oneplus_healthinfo/parameters/ohm_action_ctrl + chown system system /proc/iolimit_enable + +#huangwen.chen#OPTI, 2020/9/16, [OPTI-43], add for zram writeback +on property:persist.vendor.oem.dump=0 + setprop persist.vendor.zwriteback.backup 0 + +on property:persist.vendor.oem.dump=1 + setprop persist.vendor.zwriteback.backup 1 diff --git a/rootdir/etc/init.oem.sec.rc b/rootdir/etc/init.oem.sec.rc deleted file mode 100644 index c1c4aa9..0000000 --- a/rootdir/etc/init.oem.sec.rc +++ /dev/null @@ -1,37 +0,0 @@ -################################################################################## -### VENDOR_EDIT, OEM All rights reserved. -### -### File: - init.oem.sec.rc -### Author: tomcheng -### all oem sec triger & init are here -### ------------------------------- Revision History: ---------------------------- -### -### ------------------------------------------------------------------------------ -### tomcheng@core 2020-08-17 Workaround for ISTRACKING-73861 -################################################################################## - -on post-fs - rm /mnt/vendor/op2/sec/enroll/1/dmesg.txt - rm /mnt/vendor/op2/sec/enroll/2/dmesg.txt - rm /mnt/vendor/op2/sec/enroll/3/dmesg.txt - rm /mnt/vendor/op2/sec/enroll/4/dmesg.txt - rm /mnt/vendor/op2/sec/enroll/1/logcat.txt - rm /mnt/vendor/op2/sec/enroll/2/logcat.txt - rm /mnt/vendor/op2/sec/enroll/3/logcat.txt - rm /mnt/vendor/op2/sec/enroll/4/logcat.txt - rm /mnt/vendor/op2/sec/pass/1/dmesg.txt - rm /mnt/vendor/op2/sec/pass/2/dmesg.txt - rm /mnt/vendor/op2/sec/pass/3/dmesg.txt - rm /mnt/vendor/op2/sec/pass/4/dmesg.txt - rm /mnt/vendor/op2/sec/pass/1/logcat.txt - rm /mnt/vendor/op2/sec/pass/2/logcat.txt - rm /mnt/vendor/op2/sec/pass/3/logcat.txt - rm /mnt/vendor/op2/sec/pass/4/logcat.txt - rm /mnt/vendor/op2/sec/fail/1/dmesg.txt - rm /mnt/vendor/op2/sec/fail/2/dmesg.txt - rm /mnt/vendor/op2/sec/fail/3/dmesg.txt - rm /mnt/vendor/op2/sec/fail/4/dmesg.txt - rm /mnt/vendor/op2/sec/fail/1/logcat.txt - rm /mnt/vendor/op2/sec/fail/2/logcat.txt - rm /mnt/vendor/op2/sec/fail/3/logcat.txt - rm /mnt/vendor/op2/sec/fail/4/logcat.txt diff --git a/rootdir/etc/init.oem_rf.rc b/rootdir/etc/init.oem_rf.rc new file mode 100644 index 0000000..681b11f --- /dev/null +++ b/rootdir/etc/init.oem_rf.rc @@ -0,0 +1,11 @@ +#add for SMT test enters WLAN FTM test in non-signaling +service wififtmserver /vendor/bin/sh vendor/bin/wifi_ftm + class late_start + user root + group root + disabled + oneshot + +on property:vendor.wlan.ftm.up=1 + start wififtmserver + diff --git a/rootdir/etc/init.qcom.rc b/rootdir/etc/init.qcom.rc index 09515d5..42ef47b 100644 --- a/rootdir/etc/init.qcom.rc +++ b/rootdir/etc/init.qcom.rc @@ -24,11 +24,14 @@ # OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. # + #ifdef VENDOR_EDIT import /vendor/etc/init/hw/init.oem.rc import /vendor/etc/init/hw/init.oem.debug.rc -import /vendor/etc/init/hw/init.oem.minidump.sdx55m.rc -import /vendor/etc/init/hw/init.oem.sec.rc +#endif VENDOR_EDIT + +#ifdef VENDOR_EDIT +import /vendor/etc/init/hw/init.oem.entry.rc #endif VENDOR_EDIT import /vendor/etc/init/hw/init.qcom.usb.rc @@ -60,6 +63,9 @@ on early-init chown system graphics /sys/kernel/debug/sync/sw_sync chmod 0666 /sys/kernel/debug/sync/sw_sync + #Disable UFS clock scaling + write /sys/bus/platform/devices/1d84000.ufshc/clkscale_enable 0 + chown root system /dev/kmsg chmod 0620 /dev/kmsg # Load WIGIG platform driver @@ -94,6 +100,16 @@ on early-boot chown system system /mnt/vendor/persist/data/pfm/licenses chmod 0775 /mnt/vendor/persist/data/pfm/licenses + chown system system /mnt/vendor/persist/data/pfm/licenses/store_0 + chmod 0664 /mnt/vendor/persist/data/pfm/licenses/store_0 + chown system system /mnt/vendor/persist/data/pfm/licenses/store_1 + chmod 0664 /mnt/vendor/persist/data/pfm/licenses/store_1 + chown system system /mnt/vendor/persist/data/pfm/licenses/store_2 + chmod 0664 /mnt/vendor/persist/data/pfm/licenses/store_2 + chown system system /mnt/vendor/persist/data/pfm/licenses/store_3 + chmod 0664 /mnt/vendor/persist/data/pfm/licenses/store_3 + chown system system /mnt/vendor/persist/data/pfm/licenses/store_4 + chmod 0664 /mnt/vendor/persist/data/pfm/licenses/store_4 on boot chown bluetooth bluetooth /sys/module/bluetooth_power/parameters/power @@ -150,9 +166,6 @@ on boot 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 @@ -169,9 +182,9 @@ on boot # 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 console loglevel to < KERN_WARN # Set the default message loglevel to KERN_INFO - write /proc/sys/kernel/printk "6 6 1 7" + write /proc/sys/kernel/printk "3 6 1 7" # Allow access for CCID command/response timeout configuration chown system system /sys/module/ccid_bridge/parameters/bulk_msg_timeout @@ -230,7 +243,7 @@ on boot #QDSS chown root oem_2902 /sys/devices/platform/soc/6048000.tmc/coresight-tmc-etr/block_size chmod 660 /sys/devices/platform/soc/6048000.tmc/coresight-tmc-etr/block_size - + #enable coresight for diag_mdlog_system over qdss write /sys/bus/coresight/devices/coresight-tmc-etr/buffer_size 0x2000000 write /sys/bus/coresight/devices/coresight-tmc-etr/enable_sink 1 @@ -433,6 +446,7 @@ service vendor.ss_ramdump /system/vendor/bin/subsystem_ramdump class main user system group system + ioprio rt 4 disabled on property:ro.vendor.iocgrp.config=1 @@ -462,7 +476,7 @@ on property:persist.sys.pil_proxy_timeout=* on property:persist.vendor.ssr.restart_level=* start vendor.ssr_setup -on property:persist.vendor.ssr.enable_ramdumps=1 +on property:persist.vendor.ssr.enable_ramdumps=1 && property:ro.boot.mode=normal write /sys/module/subsystem_restart/parameters/enable_ramdumps 1 mkdir /data/vendor/ramdump_ssr 770 system system start vendor.ss_ramdump @@ -478,6 +492,8 @@ on property:persist.vendor.sys.rawdump_copy=0 on property:sys.boot_completed=1 write /dev/kmsg "Boot completed " + #Enable UFS clock scaling back + write /sys/bus/platform/devices/1d84000.ufshc/clkscale_enable 1 #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 @@ -498,9 +514,6 @@ 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.media.target.version=* setprop vendor.sys.media.target.version ${vendor.media.target.version} @@ -516,15 +529,13 @@ service qcom-c_core-sh /vendor/bin/init.qcom.class_core.sh service qcom-c_main-sh /vendor/bin/init.class_main.sh class main user root + group root system oneshot on property:vold.decrypt=trigger_restart_framework start qcom-c_main-sh start wcnss-service -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 @@ -574,6 +585,7 @@ service vendor.move_wifi_data /system/bin/move_wifi_data.sh oneshot service wigignpt /vendor/bin/wigignpt + interface vendor.qti.hardware.wigig.netperftuner@1.0::INetPerfTuner default class hal socket wigig/wigignpt stream 660 system wifi user system @@ -691,18 +703,6 @@ service loc_launcher /system/vendor/bin/loc_launcher user gps group gps -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 @@ -741,14 +741,6 @@ service hostapd_fst /vendor/bin/hw/hostapd -dd -g /data/vendor/wifi/hostapd/glob disabled oneshot -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 @@ -791,37 +783,11 @@ service vendor.ssr_diag /system/vendor/bin/ssr_diag group system disabled -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 - # VENDOR_EDIT BruceChenYC, 2020/06/09, need to add -c to clean mask before start command -service diag_mdlog_start /system/vendor/bin/diag_mdlog -c -u +service diag_mdlog_start /system/vendor/bin/diag_mdlog -q 2 -j 1 -c -u -d -i class late_start user shell - group system oem_2901 sdcard_rw sdcard_r media_rw + group system oem_2901 oem_2902 sdcard_rw sdcard_r media_rw disabled oneshot @@ -833,38 +799,22 @@ service diag_mdlog_stop /system/vendor/bin/diag_mdlog -k oneshot # VENDOR_EDIT JamesChang, 2020/02/22, KBA-180917030333 -# VENDOR_EDIT BruceChenYC, 2020/08/04, need to add -c to clean mask before start command -i add ADPL -service diag_mdlog_system_start /system/system_ext/bin/diag_mdlog_system -q 2 -c -u -i +# VENDOR_EDIT BruceChenYC, 2020/06/09, need to add -c to clean mask before start command +# VENDOR_EDIT BruceChenYC, 2020/07/01, In 8350R Kernel 5.4 delete Diag driver Need to use /system/vendor/bin/diag_mdlog. +#service diag_mdlog_system_start /system/bin/diag_mdlog_system -c -u +service diag_mdlog_system_start /system/vendor/bin/diag_mdlog -q 2 -j 1 -c -u -d -i class late_start user shell group system oem_2901 oem_2902 sdcard_rw sdcard_r media_rw - writepid /dev/cpuset/system-background/tasks disabled oneshot -service diag_mdlog_system_stop /system/system_ext/bin/diag_mdlog_system -k +# VENDOR_EDIT BruceChenYC, 2020/07/01, In 8350R Kernel 5.4 delete Diag driver Need to use /system/vendor/bin/diag_mdlog. +#service diag_mdlog_system_stop /system/bin/diag_mdlog_system -k +service diag_mdlog_system_stop /system/vendor/bin/diag_mdlog -k class late_start user shell group system oem_2901 sdcard_rw sdcard_r media_rw - writepid /dev/cpuset/system-background/tasks - disabled - oneshot - -# VENDOR_EDIT yuquan.fei@connectivity, 2019/10/10, add for wlan log -service diag_mdlog_wifi_start /system/system_ext/bin/diag_mdlog_system -j 5 -s 100 -n 20 - class late_start - user shell - group system oem_2901 sdcard_rw sdcard_r media_rw - writepid /dev/cpuset/system-background/tasks - disabled - oneshot - -# VENDOR_EDIT yuquan.fei@connectivity, 2019/11/15, Fix diag_mdlog can't be killed -service diag_mdlog_wifi_stop /system/system_ext/bin/diag_mdlog_system -k -j 5 - class late_start - user shell - group system oem_2901 sdcard_rw sdcard_r media_rw - writepid /dev/cpuset/system-background/tasks disabled oneshot @@ -938,17 +888,6 @@ service poweroffhandler /system/vendor/bin/poweroffhandler disabled oneshot -# 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 - seclabel u:r:logdumpd:s0 - disabled - -# Logdumpd is enabled only for userdebug non-perf build -on property:ro.logdumpd.enabled=1 - start logdumpd - service time_daemon /vendor/bin/time_daemon class main user system diff --git a/rootdir/etc/init.qcom.usb.rc b/rootdir/etc/init.qcom.usb.rc index 44c7e06..f4c3370 100644 --- a/rootdir/etc/init.qcom.usb.rc +++ b/rootdir/etc/init.qcom.usb.rc @@ -48,7 +48,6 @@ on charger exec u:r:vendor_qti_init_shell:s0 -- /vendor/bin/init.qcom.usb.sh write /config/usb_gadget/g1/strings/0x409/product ${vendor.usb.product_string} setprop sys.usb.configfs 1 - start dashd on charger && property:ro.boot.type=debug write /dev/kmsg "debug version, ready to trigger post-fs-data" @@ -95,15 +94,6 @@ on charger && property:ro.boot.type=auto symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f1 write /config/usb_gadget/g1/UDC ${sys.usb.controller} -on init && property:ro.boot.project_name=19811 - setprop vendor.wireless_charge.enable true - -on boot && property:vendor.wireless_charge.enable=true - start wlchgd - -on charger && property:vendor.wireless_charge.enable=true - start wlchgd - on boot write /sys/class/android_usb/android0/iSerial ${ro.serialno} mount configfs none /config @@ -186,10 +176,6 @@ on boot && property:vendor.usb.use_ffs_mtp=1 #on property:persist.vendor.usb.config=* # setprop persist.sys.usb.config ${persist.vendor.usb.config} -#BSP add for 5G diag port -on property:persist.vendor.sdx50m.online=* - setprop persist.sys.sdx50m.online ${persist.vendor.sdx50m.online} - on boot && property:ro.boot.usbconfigfs=true setprop sys.usb.configfs 1 @@ -224,7 +210,7 @@ on property:sys.usb.config=mass_storage && property:sys.usb.configfs=1 rm /config/usb_gadget/g1/configs/b.1/f9 write /config/usb_gadget/g1/idVendor 0x05C6 write /config/usb_gadget/g1/idProduct 0xF000 - symlink /config/usb_gadget/g1/functions/mtp.gs0 /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/ffs.mtp /config/usb_gadget/g1/configs/b.1/f1 symlink /config/usb_gadget/g1/functions/mass_storage.0 /config/usb_gadget/g1/configs/b.1/f2 write /config/usb_gadget/g1/functions/mass_storage.0/lun.0/file "/vendor/etc/usb_drivers.iso" write /config/usb_gadget/g1/UDC ${sys.usb.controller} @@ -246,7 +232,7 @@ on property:sys.usb.ffs.ready=1 && property:sys.usb.config=mass_storage,adb && p rm /config/usb_gadget/g1/configs/b.1/f9 write /config/usb_gadget/g1/idVendor 0x05C6 write /config/usb_gadget/g1/idProduct 0x9015 - symlink /config/usb_gadget/g1/functions/mtp.gs0 /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/ffs.mtp /config/usb_gadget/g1/configs/b.1/f1 symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f2 symlink /config/usb_gadget/g1/functions/mass_storage.0 /config/usb_gadget/g1/configs/b.1/f3 write /config/usb_gadget/g1/functions/mass_storage.0/lun.0/file "/vendor/etc/usb_drivers.iso" @@ -257,7 +243,7 @@ on property:sys.usb.config=diag,adb && property:sys.usb.configfs=1 start adbd on property:sys.usb.ffs.ready=1 && property:sys.usb.config=diag,adb && property:sys.usb.configfs=1 - write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "diag_mdm_diag_adb" + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "diag_adb" rm /config/usb_gadget/g1/configs/b.1/f1 rm /config/usb_gadget/g1/configs/b.1/f2 rm /config/usb_gadget/g1/configs/b.1/f3 @@ -267,11 +253,13 @@ on property:sys.usb.ffs.ready=1 && property:sys.usb.config=diag,adb && property: rm /config/usb_gadget/g1/configs/b.1/f7 rm /config/usb_gadget/g1/configs/b.1/f8 rm /config/usb_gadget/g1/configs/b.1/f9 - write /config/usb_gadget/g1/idVendor 0x05C6 - write /config/usb_gadget/g1/idProduct 0x676D #VENDOR_EDIT PID for 5G - symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag_mdm /config/usb_gadget/g1/configs/b.1/f1 - symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag /config/usb_gadget/g1/configs/b.1/f2 - symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f3 + #write /config/usb_gadget/g1/idVendor 0x05C6 + #write /config/usb_gadget/g1/idProduct 0x901D + #write /config/usb_gadget/g1/functions/diag.diag/pid 0x901d + write /config/usb_gadget/g1/idVendor 0x22D9 + write /config/usb_gadget/g1/idProduct 0x276C + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f2 write /config/usb_gadget/g1/UDC ${sys.usb.controller} setprop sys.usb.state ${sys.usb.config} @@ -337,6 +325,30 @@ on property:sys.usb.config=diag,serial_cdev,rmnet && property:sys.usb.configfs=1 write /config/usb_gadget/g1/UDC ${sys.usb.controller} setprop sys.usb.state ${sys.usb.config} +on property:sys.usb.config=diag,serial_cdev,serial_cdev_nmea,adb && property:sys.usb.configfs=1 + start adbd + +on property:sys.usb.ffs.ready=1 && property:sys.usb.config=diag,serial_cdev,serial_cdev_nmea,adb && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "diag_dun_nmea_adb" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + write /config/usb_gadget/g1/idVendor 0x05C6 + write /config/usb_gadget/g1/idProduct 0x9020 + write /config/usb_gadget/g1/functions/diag.diag/pid 0x9020 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/cser.dun.0 /config/usb_gadget/g1/configs/b.1/f3 + symlink /config/usb_gadget/g1/functions/cser.nmea.1 /config/usb_gadget/g1/configs/b.1/f4 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + on property:vendor.usb.tethering=true write /sys/class/net/rndis0/queues/rx-0/rps_cpus ${vendor.usb.rps_mask} @@ -530,7 +542,7 @@ on property:sys.usb.config=mtp,diag && property:vendor.usb.use_ffs_mtp=0 && prop rm /config/usb_gadget/g1/configs/b.1/f9 write /config/usb_gadget/g1/idVendor 0x05C6 write /config/usb_gadget/g1/idProduct 0x901B - symlink /config/usb_gadget/g1/functions/mtp.gs0 /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/ffs.mtp /config/usb_gadget/g1/configs/b.1/f1 symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag /config/usb_gadget/g1/configs/b.1/f2 write /config/usb_gadget/g1/UDC ${sys.usb.controller} setprop sys.usb.state ${sys.usb.config} @@ -569,7 +581,7 @@ on property:sys.usb.ffs.ready=1 && property:sys.usb.config=mtp,diag,adb && prope rm /config/usb_gadget/g1/configs/b.1/f9 write /config/usb_gadget/g1/idVendor 0x05C6 write /config/usb_gadget/g1/idProduct 0x903A - symlink /config/usb_gadget/g1/functions/mtp.gs0 /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/ffs.mtp /config/usb_gadget/g1/configs/b.1/f1 symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag /config/usb_gadget/g1/configs/b.1/f2 symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f3 write /config/usb_gadget/g1/UDC ${sys.usb.controller} @@ -1404,6 +1416,52 @@ on property:sys.usb.ffs.ready=1 && property:sys.usb.config=rndis,diag,diag_mdm,q write /config/usb_gadget/g1/UDC ${sys.usb.controller} setprop sys.usb.state rndis,adb +on property:sys.usb.ffs.ready=1 && property:sys.usb.config=rndis,diag,qdss,serial_cdev,dpl && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "rndis_diag_qdss_dun_dpl" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + write /config/usb_gadget/g1/idVendor 0x05C6 + write /config/usb_gadget/g1/idProduct 0x90E8 + symlink /config/usb_gadget/g1/functions/${vendor.usb.rndis.func.name}.rndis /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/qdss.${vendor.usb.qdss.inst.name} /config/usb_gadget/g1/configs/b.1/f3 + symlink /config/usb_gadget/g1/functions/cser.dun.0 /config/usb_gadget/g1/configs/b.1/f4 + symlink /config/usb_gadget/g1/functions/${vendor.usb.rmnet.func.name}.${vendor.usb.dpl.inst.name} /config/usb_gadget/g1/configs/b.1/f5 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state rndis + +on property:sys.usb.config=rndis,diag,qdss,serial_cdev,dpl,adb && property:sys.usb.configfs=1 + start adbd + +on property:sys.usb.ffs.ready=1 && property:sys.usb.config=rndis,diag,qdss,serial_cdev,dpl,adb && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "rndis_diag_qdss_dun_dpl_adb" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + write /config/usb_gadget/g1/idVendor 0x05C6 + write /config/usb_gadget/g1/idProduct 0x90E9 + symlink /config/usb_gadget/g1/functions/${vendor.usb.rndis.func.name}.rndis /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/qdss.${vendor.usb.qdss.inst.name} /config/usb_gadget/g1/configs/b.1/f3 + symlink /config/usb_gadget/g1/functions/cser.dun.0 /config/usb_gadget/g1/configs/b.1/f4 + symlink /config/usb_gadget/g1/functions/${vendor.usb.rmnet.func.name}.${vendor.usb.dpl.inst.name} /config/usb_gadget/g1/configs/b.1/f5 + symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f6 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state rndis,adb + on property:sys.usb.config=diag,diag_mdm,adb && property:sys.usb.configfs=1 start adbd @@ -1704,3 +1762,23 @@ on property:vendor.usb.eud=0 write /sys/kernel/debug/pmic-votable/USB_ICL/force_val 0 write /config/usb_gadget/g1/configs/b.1/MaxPower 0 write /sys/module/eud/parameters/enable 0 + +#bsp, 2020/07/07 Add for op chg +service oplus_chg_init_sh /vendor/bin/init.oplus_chg.sh + class core + user root + oneshot + disabled + +on boot + start oplus_chg_init_sh + +on charger + start oplus_chg_init_sh + +on property:sys.fastcharger=true + write /sys/class/oplus_chg/usb/chg_enable 1 + +on property:sys.fastcharger=false + write /sys/class/oplus_chg/usb/chg_enable 0 + diff --git a/rootdir/etc/init.qti.kernel.rc b/rootdir/etc/init.qti.kernel.rc new file mode 100644 index 0000000..4e46e47 --- /dev/null +++ b/rootdir/etc/init.qti.kernel.rc @@ -0,0 +1,172 @@ +#============================================================================= +# Copyright (c) 2019-2020 Qualcomm Technologies, Inc. +# All Rights Reserved. +# Confidential and Proprietary - Qualcomm Technologies, Inc. +# +# 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.qti.kernel.test.rc + +on early-init + mount debugfs debugfs /sys/kernel/debug + chmod 0755 /sys/kernel/debug + + # Mount tracefs in /sys/kernel/tracing as CONFIG_DEBUG_FS might be + # disabled and /sys/kernel/debug/tracing might not be available + mount tracefs tracefs /sys/kernel/tracing + chmod 0755 /sys/kernel/tracing + + chown root system /dev/kmsg + chmod 0620 /dev/kmsg + + write /proc/sys/kernel/sched_boost 1 + +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 + + # update scheduler tunables + write /dev/cpuctl/foreground/cpu.uclamp.sched_boost_no_override 1 + write /dev/cpuctl/top-app/cpu.uclamp.sched_boost_no_override 1 + write /dev/cpuctl/background/cpu.uclamp.colocate 0 + write /dev/cpuctl/foreground/cpu.uclamp.colocate 0 + write /dev/cpuctl/top-app/cpu.uclamp.colocate 1 + +on post-fs + chmod 0755 /sys/kernel/debug/tracing + + # 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 + +on early-boot + # 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 + write /sys/devices/virtual/cvp/cvp/boot 1 + +on boot + # Set the console loglevel to < KERN_WARN + # Set the default message loglevel to KERN_INFO + write /proc/sys/kernel/printk "3 6 1 7" + + # 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 + + # set the io-scheduler to bfq on all mq support devices + write /sys/block/sda/queue/scheduler bfq + write /sys/block/sdb/queue/scheduler bfq + write /sys/block/sdc/queue/scheduler bfq + write /sys/block/sdd/queue/scheduler bfq + write /sys/block/sde/queue/scheduler bfq + write /sys/block/sdf/queue/scheduler bfq + write /sys/block/sdg/queue/scheduler bfq + write /sys/block/sdh/queue/scheduler bfq + write /sys/class/block/mmcblk0/queue/scheduler bfq + write /sys/class/block/mmcblk1/queue/scheduler bfq + + # update io-scheduler tunables + write /sys/block/sda/queue/iosched/slice_idle 0 + write /sys/block/sdb/queue/iosched/slice_idle 0 + write /sys/block/sdc/queue/iosched/slice_idle 0 + write /sys/block/sdd/queue/iosched/slice_idle 0 + write /sys/block/sde/queue/iosched/slice_idle 0 + write /sys/block/sdf/queue/iosched/slice_idle 0 + write /sys/block/sdg/queue/iosched/slice_idle 0 + write /sys/block/sdh/queue/iosched/slice_idle 0 + write /sys/class/block/mmcblk0/queue/iosched/slice_idle 0 + write /sys/class/block/mmcblk1/queue/iosched/slice_idle 0 + +on post-fs-data + # Create directory used for dump collection + mkdir /data/vendor/ssrdump 0770 root system + +on property:persist.sys.ssr.enable_debug=* + write /sys/module/subsys_pil_tz/parameters/enable_debug ${persist.sys.ssr.enable_debug} + +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.ssr.enable_ramdumps=1 + write /sys/module/subsystem_restart/parameters/enable_ramdumps 1 + +on property:persist.vendor.ssr.enable_ramdumps=0 + write /sys/module/subsystem_restart/parameters/enable_ramdumps 0 + +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 + +service kernel-boot /vendor/bin/sh /vendor/bin/init.qti.kernel.sh + class core + user root + group root + disabled + oneshot + +service kernel-post-boot /vendor/bin/sh /vendor/bin/init.kernel.post_boot.sh + class core + user root + group root system wakelock graphics + disabled + oneshot + +on property:sys.boot_completed=1 + write /dev/kmsg "Boot completed " + #Reset read ahead for dm-0, dm-1 and dm-2 to 512kb + write /sys/block/dm-0/queue/read_ahead_kb 512 + write /sys/block/dm-1/queue/read_ahead_kb 512 + write /sys/block/dm-2/queue/read_ahead_kb 512 + start kernel-boot + start kernel-post-boot + +service vendor.msm_irqbalance /vendor/bin/msm_irqbalance -f /system/vendor/etc/msm_irqbalance.conf + class core + user root + group root + disabled diff --git a/rootdir/etc/init.qti.qcv.rc b/rootdir/etc/init.qti.qcv.rc new file mode 100644 index 0000000..cd19f40 --- /dev/null +++ b/rootdir/etc/init.qti.qcv.rc @@ -0,0 +1,11 @@ +#! /vendor/etc/init +#============================================================================= +# Copyright (c) 2020 Qualcomm Technologies, Inc. +# All Rights Reserved. +# Confidential and Proprietary - Qualcomm Technologies, Inc. +#============================================================================= + +on early-init + # Set ro.boot.product.vendor.sku to soc_name + exec u:r:vendor_qti_init_shell:s0 -- /vendor/bin/init.qti.qcv.sh + setprop ro.boot.product.vendor.sku ${ro.vendor.qti.soc_name} diff --git a/rootdir/etc/init.target.rc b/rootdir/etc/init.target.rc index 31f8cd7..8639727 100644 --- a/rootdir/etc/init.target.rc +++ b/rootdir/etc/init.target.rc @@ -1,5 +1,5 @@ -# Copyright (c) 2018-2020, The Linux Foundation. All rights reserved. +# Copyright (c) 2019-2020, 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 @@ -27,21 +27,43 @@ # IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. # # -# kevin@system, 2019/06/08, add carrier rc + +import /vendor/etc/init/hw/init.qti.kernel.rc +# kevin@system, 2020/09/03, add carrier rc import /vendor/etc/init/hw/init.oem.carrier.rc on early-init - exec u:r:vendor_modprobe:s0 -- /vendor/bin/modprobe -a -d /vendor/lib/modules audio_q6_pdr audio_q6_notifier audio_snd_event audio_apr audio_adsp_loader audio_q6 audio_native audio_usf audio_pinctrl_wcd audio_pinctrl_lpi audio_swr audio_platform audio_hdmi audio_stub audio_wcd_core audio_wsa881x audio_bolero_cdc audio_wsa_macro audio_va_macro audio_rx_macro audio_tx_macro audio_wcd938x audio_wcd938x_slave audio_tfa9894 audio_machine_kona + exec u:r:vendor_modprobe:s0 -- /vendor/bin/vendor_modprobe.sh + exec u:r:vendor_modprobe:s0 -- /vendor/bin/modprobe -a -d /vendor/lib/modules q6_pdr_dlkm q6_notifier_dlkm snd_event_dlkm apr_dlkm adsp_loader_dlkm q6_dlkm native_dlkm pinctrl_wcd_dlkm pinctrl_lpi_dlkm swr_dlkm platform_dlkm hdmi_dlkm stub_dlkm wcd_core_dlkm wsa883x_dlkm bolero_cdc_dlkm wsa_macro_dlkm va_macro_dlkm rx_macro_dlkm tx_macro_dlkm bt_fm_slim wcd938x_dlkm wcd938x_slave_dlkm swr_dmic_dlkm tfa9894_dlkm swr_haptics_dlkm machine_dlkm radio-i2c-rtc6226-qca mmc_core mmc_block sdhci sdhci-pltfm sdhci-msm cdsprm write /proc/sys/kernel/sched_boost 1 + wait /sys/devices/soc0/soc_id on init - write /dev/stune/foreground/schedtune.sched_boost_no_override 1 - write /dev/stune/top-app/schedtune.sched_boost_no_override 1 - write /dev/stune/schedtune.colocate 0 - write /dev/stune/background/schedtune.colocate 0 - write /dev/stune/system-background/schedtune.colocate 0 - write /dev/stune/foreground/schedtune.colocate 0 - write /dev/stune/top-app/schedtune.colocate 1 + # Scheduler uclamp + mkdir /dev/cpuctl/foreground + mkdir /dev/cpuctl/background + mkdir /dev/cpuctl/top-app + mkdir /dev/cpuctl/rt + chown system system /dev/cpuctl + chown system system /dev/cpuctl/foreground + chown system system /dev/cpuctl/background + chown system system /dev/cpuctl/top-app + chown system system /dev/cpuctl/rt + chown system system /dev/cpuctl/tasks + chown system system /dev/cpuctl/foreground/tasks + chown system system /dev/cpuctl/background/tasks + chown system system /dev/cpuctl/top-app/tasks + chown system system /dev/cpuctl/rt/tasks + chmod 0664 /dev/cpuctl/tasks + chmod 0664 /dev/cpuctl/foreground/tasks + chmod 0664 /dev/cpuctl/background/tasks + chmod 0664 /dev/cpuctl/top-app/tasks + chmod 0664 /dev/cpuctl/rt/tasks + write /dev/cpuctl/foreground/cpu.rt_runtime_us 950000 + write /dev/cpuctl/background/cpu.rt_runtime_us 950000 + write /dev/cpuctl/top-app/cpu.rt_runtime_us 950000 + write /dev/cpuctl/rt/cpu.rt_runtime_us 950000 + write /proc/restart_level_all 0 wait /dev/block/platform/soc/1d84000.ufshc symlink /dev/block/platform/soc/1d84000.ufshc /dev/block/bootdevice @@ -55,47 +77,50 @@ on early-fs on fs start hwservicemanager mkdir /mnt/vendor/spunvm 0660 system system +#ifdef VENDOR_EDIT mkdir /mnt/vendor/op1 0660 system system mkdir /mnt/vendor/op2 0660 system system - mkdir /mnt/vendor/cust1 0660 system system - mkdir /mnt/vendor/cust2 0660 system system - mkdir /mnt/vendor/my_cota 0660 system system - mount_all /vendor/etc/fstab.qcom --early +#endif /* VENDOR_EDIT */ #ifdef VENDOR_EDIT + mount_all /vendor/etc/fstab.qcom --early # ajinath@SYSTEM, 2020/01/16, [OSP-2080] Recovery boot reason wait /mnt/vendor/op2 chown system system /mnt/vendor/op2 mkdir /mnt/vendor/op2/rbr_log 0770 system system - setprop vendor.oem.rbr.log.clean 1 + setprop oem.rbr.log.clean 1 #endif /* VENDOR_EDIT */ chown root system /mnt/vendor/persist chmod 0771 /mnt/vendor/persist restorecon_recursive /mnt/vendor/persist mkdir /mnt/vendor/persist/data 0700 system system + mkdir /mnt/vendor/my_cota 0660 system system + +#ifdef VENDOR_EDIT +#on fs && property:ro.boot.product.vendor.sku=lahaina +# mkdir /mnt/vendor/spunvm 0660 system system +# wait /dev/block/bootdevice/by-name/spunvm +# mount vfat /dev/block/bootdevice/by-name/spunvm /mnt/vendor/spunvm rw noatime shortname=lower,uid=1000,gid=1000,dmask=007,fmask=007,context=u:object_r:vendor_spunvm_file:s0 +#endif /* VENDOR_EDIT */ on post-fs # set RLIMIT_MEMLOCK to 64MB setrlimit 8 67108864 67108864 - write /dev/ipa 1 mkdir /mnt/vendor/op2/recovery 0770 root system on late-fs wait_for_prop hwservicemanager.ready true - exec_start wait_for_keymaster + #exec_start wait_for_keymaster + start console mount_all /vendor/etc/fstab.qcom --late #ifdef VENDOR_EDIT # sam.li@SYSTEM,add for mountting reserve.img - #mount_reserve ext4 loop@/data/reserve/reserve.img /system/reserve ro context=u:object_r:system_file:s0 + mount_reserve ext4 loop@/data/reserve/reserve.img /system/reserve ro context=u:object_r:system_file:s0 #endif /*VENDOR_EDIT*/ on post-fs-data mkdir /vendor/data/tombstones 0771 system system # Enable WLAN cold boot calibration - write /sys/devices/platform/soc/b0000000.qcom,cnss-qca6390/fs_ready 1 - #ifdef VENDOR_EDIT - # sam.li@SYSTEM,add for creatting /data/reserve-lib - mkdir /data/reserve-lib 0775 system system - #endif /*VENDOR_EDIT*/ + write /sys/devices/platform/soc/b0000000.qcom,cnss-qca6490/fs_ready 1 on early-boot start vendor.sensors @@ -110,56 +135,34 @@ on boot chown cameraserver cameraserver /dev/cpuset/camera-daemon chown cameraserver cameraserver /dev/cpuset/camera-daemon/tasks chmod 0660 /dev/cpuset/camera-daemon/tasks + chown system /sys/devices/platform/soc/990000.i2c/i2c-0/0-0049/trusted_touch_enable + chmod 0660 /sys/devices/platform/soc/990000.i2c/i2c-0/0-0049/trusted_touch_enable + chown system /sys/devices/platform/soc/990000.i2c/i2c-0/0-0038/trusted_touch_enable + chmod 0660 /sys/devices/platform/soc/990000.i2c/i2c-0/0-0038/trusted_touch_enable + chown system /sys/devices/platform/soc/988000.i2c/i2c-1/1-0038/trusted_touch_enable + chmod 0660 /sys/devices/platform/soc/988000.i2c/i2c-1/1-0038/trusted_touch_enable + chown system /sys/devices/platform/soc/990000.i2c/i2c-0/0-0049/trusted_touch_event + chmod 0660 /sys/devices/platform/soc/990000.i2c/i2c-0/0-0049/trusted_touch_event + chown system /sys/devices/platform/soc/990000.i2c/i2c-0/0-0038/trusted_touch_event + chmod 0660 /sys/devices/platform/soc/990000.i2c/i2c-0/0-0038/trusted_touch_event + chown system /sys/devices/platform/soc/988000.i2c/i2c-1/1-0038/trusted_touch_event + chmod 0660 /sys/devices/platform/soc/988000.i2c/i2c-1/1-0038/trusted_touch_event + chown system /sys/devices/system/cpu/hyp_core_ctl/enable + chown system /sys/devices/system/cpu/hyp_core_ctl/hcc_min_freq #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.qdss.inst.name "qdss" + setprop vendor.usb.qdss.inst.name "qdss_mdm" setprop vendor.usb.controller a600000.dwc3 #ifdef VENDOR_EDIT #Load WLAN driver - #exec_background u:r:vendor_modprobe:s0 -- /vendor/bin/modprobe -a -d /vendor/lib/modules/ qca_cld3_qca6390 qca_cld3_qca6490 + #exec_background u:r:vendor_modprobe:s0 -- /vendor/bin/modprobe -a -d /vendor/lib/modules/ qca_cld3_wlan + #exec_background u:r:vendor_modprobe:s0 -- /vendor/bin/modprobe -a -d /vendor/lib/modules/5.4-gki qca_cld3_wlan #endif -#liuhaituo@MM.Audio, 2019/6/17, add for dump audio related codec - chmod 0644 /d/regmap/0-0034/registers - chmod 0644 /d/regmap/0-0035/registers - chmod 0644 /d/regmap/0-0042/registers -#display add 2018/10/19 @lichao_display - chmod 0666 /sys/class/drm/card0-DSI-1/SRGB - chmod 0666 /sys/class/drm/card0-DSI-1/DCI_P3 - chmod 0666 /sys/class/drm/card0-DSI-1/hbm - chmod 0666 /sys/class/drm/card0-DSI-1/aod - chmod 0666 /sys/class/drm/card0-DSI-1/night_mode - chmod 0666 /sys/class/drm/card0-DSI-1/panel_serial_number - chmod 0666 /sys/class/drm/card0-DSI-1/oneplus_mode - chmod 0666 /sys/class/drm/card0-DSI-1/adaption_mode - chmod 0666 /sys/class/drm/card0-DSI-1/notify_fppress - chmod 0666 /sys/class/drm/card0-DSI-1/dim_alpha - chmod 0666 /sys/class/drm/card0-DSI-1/notify_dim - chmod 0666 /sys/class/drm/card0-DSI-1/notify_aod - chmod 0666 /sys/class/drm/card0-DSI-1/force_screenfp - chmod 0666 /sys/class/drm/card0-DSI-1/native_display_p3_mode - chmod 0666 /sys/class/drm/card0-DSI-1/native_display_wide_color_mode - chmod 0666 /sys/class/drm/card0-DSI-1/native_display_srgb_color_mode - chmod 0666 /sys/class/drm/card0-DSI-1/hbm_brightness - chmod 0666 /sys/devices/platform/soc/soc:qcom,dsi-display-primary/dynamic_dsi_clock - chown radio radio /sys/devices/platform/soc/soc:qcom,dsi-display-primary/dynamic_dsi_clock - chown radio radio /proc/force_reset - chmod 0666 /sys/class/drm/card0-DSI-1/native_display_loading_effect_mode - chmod 0666 /sys/class/drm/card0-DSI-1/native_display_customer_srgb_mode - chmod 0666 /sys/class/drm/card0-DSI-1/native_display_customer_p3_mode - chmod 0666 /sys/class/drm/card0-DSI-1/dimlayer_bl_en - chmod 0666 /sys/class/drm/card0-DSI-1/dither_en - -# v-takey.zheng@SYSTEM, 2020/06/03 Add for oemlogkit camera log - chmod 0666 /sys/module/cam_debug_util/parameters/debug_mdl - -# ifdef VENDOR_EDIT -# travis.oyang@OPTI, 2020/9/5, Add server for modem sleep info service. -chown system system /proc/rpmh_modem/sleepinfo -chmod 0660 /proc/rpmh_modem/sleepinfo -# endif /* VENDOR_EDIT */ + #Allow access to memory hotplug device attributes + chown system system /sys/kernel/mem-offline/anon_migrate # Reduce default vibrator gain from 0x80 to 0x55, # also allow gain customization via persistent property @@ -177,15 +180,39 @@ on boot && property:persist.vendor.usb.controller.default=* on property:vendor.usb.controller=* setprop sys.usb.controller ${vendor.usb.controller} +#jack.liz@MM.audio, 2020/10/20, add for widvine licenses +#ifdef/* VENDOR_EDIT */ +on property:sys.boot_completed=1 + copy /vendor/etc/OnePlus_Widevine_2020_10_12.pfm /mnt/vendor/persist/data/pfm/licenses/OnePlus_Widevine_2020_10_12.pfm + chmod 0600 /mnt/vendor/persist/data/pfm/licenses/OnePlus_Widevine_2020_10_12.pfm + chown system system /mnt/vendor/persist/data/pfm/licenses/OnePlus_Widevine_2020_10_12.pfm +#endif /* VENDOR_EDIT */ + +on init && property:ro.boot.mode=charger + mount_all /vendor/etc/charger_fw_fstab.qti --early + write /sys/kernel/boot_adsp/boot 1 + wait /sys/class/power_supply/battery + on charger - trigger fs - start vendor.per_mgr - start vendor.mdm_launcher + start qcom-post-boot + write /sys/devices/system/cpu/cpufreq/policy0/scaling_governor schedutil + write /sys/devices/system/cpu/cpufreq/policy4/scaling_governor schedutil + write /sys/devices/system/cpu/cpufreq/policy0/scaling_max_freq 1286400 + 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/cpu6/online 0 + write /sys/devices/system/cpu/cpu7/online 0 + write /sys/module/lpm_levels/parameters/sleep_disabled 0 + stop oemlogkit + stop vendor.ipacm start vendor.power_off_alarm setprop sys.usb.controller a600000.dwc3 setprop sys.usb.configfs 1 -service vendor.lowi /vendor/bin/sscrpcd +service vendor.lowi /vendor/bin/lowirpcd class core user system group system wakelock @@ -210,43 +237,18 @@ service vendor.per_proxy /vendor/bin/pm-proxy group system disabled -service vendor.mdm_helper /vendor/bin/mdm_helper - class core - group system wakelock - disabled - -# ifdef VENDOR_EDIT -# travis.oyang@OPTI, 2020/9/3, Add server for modem sleep info service. -service qmi_master_stats_service /vendor/bin/qmi-framework-tests/qmi_master_stats_service - class main - user system - group system - disabled - oneshot -# endif /* VENDOR_EDIT */ - on property:init.svc.vendor.per_mgr=running start vendor.per_proxy on property:sys.shutdown.requested=* stop vendor.per_proxy -#rowan.jia@MM.Display, 2020/02/11, add for ltm licenses -#ifdef/* VENDOR_EDIT */ -on property:sys.boot_completed=1 - copy /vendor/etc/OnePlus_QC_LTM_Commercial_SM8250_2020_02_07.pfm /mnt/vendor/persist/data/pfm/licenses/1000-1000-no-exp-2013248336.pfm - chmod 0600 /mnt/vendor/persist/data/pfm/licenses/1000-1000-no-exp-2013248336.pfm - chown system system /mnt/vendor/persist/data/pfm/licenses/1000-1000-no-exp-2013248336.pfm -#endif /* VENDOR_EDIT */ - #yuquan.fei@yuquan.fei, 2020/07/29, use cnss_diag to grab WiFi log -#ifdef/* VENDOR_EDIT */ #on property:vold.decrypt=trigger_restart_framework # start vendor.cnss_diag #endif /* VENDOR_EDIT */ - -service vendor.cnss_diag /system/vendor/bin/cnss_diag -q -f -b 128 -t HELIUM +service vendor.cnss_diag /system/vendor/bin/cnss_diag -q -f -t HELIUM class main user system group system wifi inet sdcard_rw media_rw diag @@ -255,28 +257,26 @@ service vendor.cnss_diag /system/vendor/bin/cnss_diag -q -f -b 128 -t HELIUM #ifdef VENDOR_EDIT # ajinath@SYSTEM, 2020/01/16, [OSP-2080] Recovery boot reason -on property:vendor.oem.rbr.log.clean=1 - rm /mnt/vendor/op2/rbr_log/.last_init_boot_failed.log.busy - rm /mnt/vendor/op2/rbr_log/.last_init_boot_failed.log.done - rm /mnt/vendor/op2/rbr_log/last_init_boot_failed.log - rm /mnt/vendor/op2/rbr_log/last_init_boot_failed.1.log - rm /mnt/vendor/op2/rbr_log/last_system_boot_failed.log - rm /mnt/vendor/op2/rbr_log/crash_recovery_log.txt - setprop vendor.oem.rbr.log.clean 0 +on property:oem.rbr.log.clean=1 + rm /op2/rbr_log/.last_init_boot_failed.log.busy + rm /op2/rbr_log/.last_init_boot_failed.log.done + rm /op2/rbr_log/last_init_boot_failed.log + rm /op2/rbr_log/last_init_boot_failed.1.log + rm /op2/rbr_log/last_system_boot_failed.log + setprop oem.rbr.log.clean 0 #endif /* VENDOR_EDIT */ -service dcvs-sh /vendor/bin/init.qti.dcvs.sh - class late_start - user root - group root system - disabled - oneshot +# ifdef VENDOR_EDIT +# george.yi, 2020/3/24, [OSP-4664] add for oemlogkit pull xlog to sdcard +on property:persist.sys.oemlog.pullxlog=true + exec u:r:installd:s0 -- /system_ext/bin/pull_xlog.sh + setprop persist.sys.oemlog.pullxlog false +# endif /* VENDOR_EDIT */ -on property:vendor.dcvs.prop=1 - start dcvs-sh - -on property:ro.boot.project_codename=lemonade - setprop persist.radio.multisim.config dsds - -on property:ro.boot.project_codename=lemonadep - setprop persist.radio.multisim.config dsds +# steven.guo@display add LTM license +#ifdef/* VENDOR_EDIT */ +on property:sys.boot_completed=1 + copy /vendor/etc/OnePlus_QC_LTM_Commercial_SM8350_2021_01_19.pfm /mnt/vendor/persist/data/pfm/licenses/OnePlus_QC_LTM_Commercial_SM8350_2021_01_19.pfm + chmod 0600 /mnt/vendor/persist/data/pfm/licenses/OnePlus_QC_LTM_Commercial_SM8350_2021_01_19.pfm + chown system system /mnt/vendor/persist/data/pfm/licenses/OnePlus_QC_LTM_Commercial_SM8350_2021_01_19.pfm +#endif /* VENDOR_EDIT */ diff --git a/rootdir/etc/init.uicc.rc b/rootdir/etc/init.uicc.rc new file mode 100644 index 0000000..32c0322 --- /dev/null +++ b/rootdir/etc/init.uicc.rc @@ -0,0 +1,3 @@ +#nfc uicc control +on init + setprop persist.vendor.radio.uicc_se_enabled false diff --git a/rootdir/etc/vendor.oem_ftm_svc_disable.rc b/rootdir/etc/vendor.oem_ftm_svc_disable.rc index a352c99..970b43d 100644 --- a/rootdir/etc/vendor.oem_ftm_svc_disable.rc +++ b/rootdir/etc/vendor.oem_ftm_svc_disable.rc @@ -54,6 +54,12 @@ service feature_enabler_client /vendor/bin/xxx user system disabled +service vendor.vppservice /vendor/bin/XXX + class hal + user media + group camera system + disabled + service biometrics_face_service /vendor/bin/hw/xxx class hal user system @@ -72,3 +78,13 @@ service vendor.oneplus.cwb-1-0 /vendor/bin/hw/xxx service vendor.qti.hardware.display.composer /vendor/bin/hw/xxx oneshot disabled + +service vendor.light-hal-2-0 /vendor/bin/hw/xxx + oneshot + disabled + +service vendor.imsdaemon /vendor/bin/imsdaemon + class main + user radio + group radio wifi inet vendor_qti_diag log + disabled diff --git a/rootdir/ueventd.rc b/rootdir/ueventd.rc index 0385844..1943a55 100644 --- a/rootdir/ueventd.rc +++ b/rootdir/ueventd.rc @@ -28,7 +28,12 @@ # Firmware directory Path # Below macro will be read by uevent and path will # be added to search path for firmware loading -firmware_directories /vendor/firmware_mnt/image/ +# ifndef VENDOR_EDIT +# Richy.li@CONNECTIVITY, 2020/08/20, [8350] Wifi one point cal +#firmware_directories /vendor/firmware_mnt/image/ +# else +firmware_directories /mnt/vendor/persist/copy/ /vendor/firmware_mnt/image/ +# endif /* VENDOR_EDIT * # the DIAG device node is not world writable/readable. /dev/diag 0660 system oem_2901 @@ -41,6 +46,7 @@ firmware_directories /vendor/firmware_mnt/image/ /dev/kgsl-2d0 0666 root root /dev/kgsl-2d1 0666 root root /dev/ion 0664 system system +/dev/membuf 0664 system system /dev/rtc0 0660 system system /dev/smd0 0660 system system /dev/smd4 0660 system system @@ -58,6 +64,7 @@ firmware_directories /vendor/firmware_mnt/image/ /dev/ipa_adpl 0660 system oem_2905 /dev/synx_device 0660 root camera /dev/hab 0666 system system +/dev/iio:device* 0664 system system #permissions for UFS RPMB BSG device node /dev/0:0:0:49476 0600 system system @@ -143,6 +150,7 @@ firmware_directories /vendor/firmware_mnt/image/ /dev/sp_nvm 0660 system system /dev/sp_ssr 0660 system system /dev/sp_keymaster 0660 system system +/dev/sp_keymaster_ssr 0660 system system /dev/sec_nvm_* 0660 system system /dev/cryptoapp 0660 system system /dev/spdaemon_ssr 0660 system system @@ -158,13 +166,10 @@ firmware_directories /vendor/firmware_mnt/image/ /dev/system_health_monitor 0644 radio system /dev/mdss_rotator 0664 system system -# liochen@BSP, 2016/12/13, Revise the permissions for FRP and Param -/dev/block/by-name/config 0600 system system +#ifdef VENDOR_EDIT +#Revise the permissions for Param /dev/block/by-name/param 0660 root system - -# narci.gu@SYSTEM, 2020/05/13, add for serial number writing by wifi adb -/dev/block/sde72 0600 system system -/dev/block/bootdevice/by-name/reserve1 0600 system system +#endif VENDOR_EDIT #QDSS /dev/byte-cntr 0660 system oem_2902 @@ -184,6 +189,8 @@ firmware_directories /vendor/firmware_mnt/image/ /dev/wcnss_ctrl 0660 system system /sys/devices/soc/a000000.qcom,wcnss-wlan/net/wlan0/queues/rx-* rps_cpus 0660 system system /sys/devices/soc/a000000.qcom,wcnss-wlan/net/p2p0/queues/rx-* rps_cpus 0660 system system +/sys/devices/platform/soc/18800000.qcom,icnss/net/wlan*/queues/rx-* rps_cpus 0660 system system +/sys/devices/platform/soc/1c00000.qcom,pcie/pci0000:00/0000:00:00.0/0000:01:00.0/net/wlan*/queues/rx-* rps_cpus 0660 system system /dev/spidev0.0 0660 system audio /dev/i2c-7 0660 system audio /dev/msm_camera/* 0660 system camera @@ -238,6 +245,7 @@ firmware_directories /vendor/firmware_mnt/image/ /dev/i2c-5 0660 media media /dev/avtimer 0660 system audio /dev/spidev2.0 0660 system audio +/dev/spidev22.0 0660 system audio # DVB devices /dev/dvb/adapter0/demux* 0440 media media @@ -411,3 +419,67 @@ firmware_directories /vendor/firmware_mnt/image/ /sys/class/graphics/fb0 modes 0664 system graphics /sys/class/graphics/fb0 mode 0664 system graphics /sys/class/graphics/fb0 msm_cmd_autorefresh_en 0664 system graphics +*/ + +/sys/devices/platform/soc/ae00000.qcom,mdss_mdp power/control 0664 system graphics + +#asm330 sensor +#common sensors files +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* buffer/enable 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* buffer/length 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* buffer/watermark 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* discharded_samples 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* current_timestamp_clock 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* hwfifo_flush 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* hwfifo_watermark 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* hwfifo_watermark_max 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* mount_matrix 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* name 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* sampling_frequency 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* sampling_frequency_available 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* scan_elements/in_timestamp_en 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* scan_elements/in_timestamp_index 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* scan_elements/in_timestamp_type 0664 system system + +# standard iio accel attributes +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* in_accel_scale_available 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* in_accel_x_raw 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* in_accel_x_scale 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* in_accel_y_raw 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* in_accel_y_scale 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* in_accel_z_raw 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* in_accel_z_scale 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* scan_elements/in_accel_x_en 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* scan_elements/in_accel_x_index 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* scan_elements/in_accel_x_type 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* scan_elements/in_accel_y_en 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* scan_elements/in_accel_y_index 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* scan_elements/in_accel_y_type 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* scan_elements/in_accel_z_en 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* scan_elements/in_accel_z_index 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* scan_elements/in_accel_z_type 0664 system system + +# standard iio gyro attributes +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* in_anglvel_scale_available 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* in_anglvel_x_raw 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* in_anglvel_x_scale 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* in_anglvel_y_raw 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* in_anglvel_y_scale 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* in_anglvel_z_raw 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* in_anglvel_z_scale 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* scan_elements/in_anglvel_x_en 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* scan_elements/in_anglvel_x_index 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* scan_elements/in_anglvel_x_type 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* scan_elements/in_anglvel_y_en 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* scan_elements/in_anglvel_y_index 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* scan_elements/in_anglvel_y_type 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* scan_elements/in_anglvel_z_en 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* scan_elements/in_anglvel_z_index 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* scan_elements/in_anglvel_z_type 0664 system system + + +# standard iio temp attributes +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* in_temp_offset 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* in_temp_raw 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* in_temp_scale 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* in_temp_scale_available 0664 system system