diff --git a/common.mk b/common.mk index 11444ff..8e41773 100644 --- a/common.mk +++ b/common.mk @@ -190,6 +190,7 @@ PRODUCT_PACKAGES += \ PRODUCT_PACKAGES += \ ftm_power_config.sh \ init.class_main.sh \ + init.cust.rc \ init.oem.debug.rc \ init.oem.minidump.sdx55m.rc \ init.oem.rc \ diff --git a/rootdir/Android.mk b/rootdir/Android.mk index e44d6da..3b2d524 100644 --- a/rootdir/Android.mk +++ b/rootdir/Android.mk @@ -88,6 +88,14 @@ LOCAL_SRC_FILES := etc/ftm_power_config.sh LOCAL_MODULE_PATH := $(TARGET_OUT_VENDOR_ETC)/init/hw include $(BUILD_PREBUILT) +include $(CLEAR_VARS) +LOCAL_MODULE := init.cust.rc +LOCAL_MODULE_TAGS := optional +LOCAL_MODULE_CLASS := ETC +LOCAL_SRC_FILES := etc/init.cust.rc +LOCAL_MODULE_PATH := $(TARGET_OUT_VENDOR_ETC)/init/hw +include $(BUILD_PREBUILT) + include $(CLEAR_VARS) LOCAL_MODULE := init.oem.debug.rc LOCAL_MODULE_TAGS := optional @@ -104,14 +112,6 @@ LOCAL_SRC_FILES := etc/init.oem_ftm.rc LOCAL_MODULE_PATH := $(TARGET_OUT_VENDOR_ETC)/init/hw include $(BUILD_PREBUILT) -include $(CLEAR_VARS) -LOCAL_MODULE := init.oem.minidump.sdx55m.rc -LOCAL_MODULE_TAGS := optional -LOCAL_MODULE_CLASS := ETC -LOCAL_SRC_FILES := etc/init.oem.minidump.sdx55m.rc -LOCAL_MODULE_PATH := $(TARGET_OUT_VENDOR_ETC)/init/hw -include $(BUILD_PREBUILT) - include $(CLEAR_VARS) LOCAL_MODULE := init.oem.rc LOCAL_MODULE_TAGS := optional @@ -120,14 +120,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 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.qcom.early_boot.sh b/rootdir/bin/init.qcom.early_boot.sh index 2dce395..570622a 100755 --- a/rootdir/bin/init.qcom.early_boot.sh +++ b/rootdir/bin/init.qcom.early_boot.sh @@ -343,6 +343,10 @@ case "$target" in setprop vendor.fastrpc.disable.cdsprpcd.daemon 1 setprop vendor.gralloc.disable_ubwc 1 ;; + 471) + #scuba APQ + setprop vendor.gralloc.disable_ubwc 1 + ;; esac ;; "sdm710" | "msmpeafowl") @@ -390,6 +394,25 @@ case "$target" in ;; esac ;; + "lahaina") + case "$soc_hwid" in + 450) + setprop vendor.media.target_variant "_shima_v3" + sku_ver=`cat /sys/devices/platform/soc/aa00000.qcom,vidc/sku_version` 2> /dev/null + if [ $sku_ver -eq 1 ]; then + setprop vendor.media.target_variant "_shima_v1" + elif [ $sku_ver -eq 2 ]; then + setprop vendor.media.target_variant "_shima_v2" + fi + ;; + *) + setprop vendor.media.target_variant "_lahaina" + ;; + 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..7c42a19 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,25 +554,43 @@ 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() { + 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} @@ -547,12 +599,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 +624,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,6 +693,60 @@ function enable_swap() { fi } +# 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) + 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` @@ -650,6 +754,7 @@ function configure_memplus_parameters() { return fi if [ ! $memplus_post_config ];then + setprop vendor.sys.memplus.postboot "disable" return fi setprop vendor.sys.memplus.postboot 1 @@ -658,33 +763,116 @@ function configure_memplus_parameters() { "0") # diable swapspace rm /data/vendor/swap/swapfile - swapoff /dev/block/zram0 + 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 - swapoff /dev/block/zram0 + # 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 2202009600 > /sys/block/zram0/disksize - echo 0 > /sys/block/zram0/mem_limit + + # huangwen.chen@OPTI, 2020/05/21 set zram disksize by property + disksize=$(getprop persist.vendor.zwriteback.disksize) + 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) + 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 - swapoff /dev/block/zram0 + # 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 - echo 2202009600 > /sys/block/zram0/disksize - echo 0 > /sys/block/zram0/mem_limit + + # huangwen.chen@OPTI, 2020/05/21 set zram disksize by property + disksize=$(getprop persist.vendor.zwriteback.disksize) + 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) + 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 + echo "memplus swapon done" > /dev/kmsg if [ $? -eq 0 ]; then echo 0 > /sys/module/memplus_core/parameters/memory_plus_enabled fi @@ -716,7 +904,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 +912,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 +972,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 +1001,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 @@ -2155,10 +2351,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 +2473,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 +2487,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 +2635,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 +2716,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 +2804,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 +2820,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 +2872,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 +2956,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 +2987,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 @@ -3498,7 +3688,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 +3759,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 +3974,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 +3982,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 @@ -4004,7 +4193,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 +5171,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` @@ -5457,7 +5882,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") @@ -5566,4 +5991,9 @@ 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 + +# 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 diff --git a/rootdir/bin/init.qcom.usb.sh b/rootdir/bin/init.qcom.usb.sh index 43b2f30..31b5f41 100755 --- a/rootdir/bin/init.qcom.usb.sh +++ b/rootdir/bin/init.qcom.usb.sh @@ -104,7 +104,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 ;; *) @@ -250,3 +250,10 @@ case "$boot_mode" in echo "AFTER boot_mode: diag,adb" > /dev/kmsg esac #endif + +boot_mode=`getprop ro.vendor.factory_mode` +if [ "$boot_mode" == "1" ]; then + echo "boot_mode: factory_mode" > /dev/kmsg + setprop persist.vendor.usb.config diag,adb + echo "AFTER boot_mode: diag,adb" > /dev/kmsg +fi 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.dcvs.sh b/rootdir/bin/init.qti.dcvs.sh index 0f3309b..b3ce7be 100755 --- a/rootdir/bin/init.qti.dcvs.sh +++ b/rootdir/bin/init.qti.dcvs.sh @@ -29,49 +29,60 @@ # for device in /sys/devices/platform/soc do - for memlat in $device/*qcom,devfreq-l3/*cpu*-lat/devfreq/*cpu*-lat - do - echo "mem_latency" > $memlat/governor - echo 8 > $memlat/polling_interval + #Enable mem_latency governor for L3, LLCC, and DDR scaling + for memlat in $device/*qcom,devfreq-l3/*cpu*-lat/devfreq/*cpu*-lat + do + echo "mem_latency" > $memlat/governor + echo 8 > $memlat/polling_interval + echo 400 > $memlat/mem_latency/ratio_ceil + done + + #Enable cdspl3 governor for L3 cdsp nodes + for l3cdsp in $device/*qcom,devfreq-l3/*cdsp-l3-lat/devfreq/*cdsp-l3-lat + do + echo "cdspl3" > $l3cdsp/governor + done + + #Enable mem_latency governor for LLCC and DDR scaling + for memlat in $device/*cpu*-lat/devfreq/*cpu*-lat + do + echo "mem_latency" > $memlat/governor + echo 8 > $memlat/polling_interval echo 400 > $memlat/mem_latency/ratio_ceil - done + done - #Enable mem_latency governor for LLCC and DDR scaling - for memlat in $device/*cpu*-lat/devfreq/*cpu*-lat - do - echo "mem_latency" > $memlat/governor - echo 8 > $memlat/polling_interval - echo 400 > $memlat/mem_latency/ratio_ceil - done + #Gold L3 ratio ceil + for l3gold in $device/*qcom,devfreq-l3/*cpu6-cpu-l3-lat/devfreq/*cpu6-cpu-l3-lat + do + echo 4000 > $l3gold/mem_latency/ratio_ceil + done - #Enable compute governor for gold latfloor - for latfloor in $device/*cpu-ddr-latfloor*/devfreq/*cpu-ddr-latfloor* - do - echo "compute" > $latfloor/governor - echo 8 > $latfloor/polling_interval - done + #Prime L3 ratio ceil + for l3prime in $device/*qcom,devfreq-l3/*cpu7-cpu-l3-lat/devfreq/*cpu7-cpu-l3-lat + do + echo 4000 > $l3prime/mem_latency/ratio_ceil + done - for qoslat in $device/*qoslat/devfreq/*qoslat - do - echo "mem_latency" > $qoslat/governor - echo 10 > $qoslat/polling_interval - echo 50 > $qoslat/mem_latency/ratio_ceil - done - - for l3cdsp in $device/*qcom,devfreq-l3/*cdsp-l3-lat/devfreq/*cdsp-l3-lat - do - echo "cdspl3" > $l3cdsp/governor - done - - #Gold L3 ratio ceil - for l3gold in $device/*qcom,devfreq-l3/*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/*qcom,devfreq-l3/*cpu7-cpu-l3-lat/devfreq/*cpu7-cpu-l3-lat - do - echo 20000 > $l3prime/mem_latency/ratio_ceil - done + #Enable compute governor for gold latfloor + for latfloor in $device/*cpu*-ddr-latfloor*/devfreq/*cpu-ddr-latfloor* + do + echo "compute" > $latfloor/governor + echo 8 > $latfloor/polling_interval + done done; + + if [ -f /sys/devices/soc0/soc_id ]; then + soc_id=`cat /sys/devices/soc0/soc_id` + else + soc_id=`cat /sys/devices/system/soc/soc0/id` + fi + + case "$soc_id" in + "434" | "459" ) + for gold_memlat in $device/*qcom,devfreq-l3/*cpu6*-lat/devfreq/*cpu6*-lat + do + echo 25000 > $gold_memlat/mem_latency/wb_filter_ratio + echo 60 > $gold_memlat/mem_latency/wb_pct_thres + done; + ;; + esac diff --git a/rootdir/etc/ftm_power_config.sh b/rootdir/etc/ftm_power_config.sh index 2c229f1..45230b4 100644 --- a/rootdir/etc/ftm_power_config.sh +++ b/rootdir/etc/ftm_power_config.sh @@ -1,7 +1,11 @@ #!/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 + +echo s2idle > /sys/power/mem_sleep + sleep 5 echo 0 > /sys/devices/system/cpu/cpu4/online echo 0 > /sys/devices/system/cpu/cpu5/online @@ -11,8 +15,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 @@ -41,4 +51,3 @@ echo 0 > /sys/kernel/debug/tracing/tracing_on && cat /sys/kernel/debug/tracing/t echo 0 > /sys/module/lpm_levels/parameters/sleep_disabled baseband=`getprop ro.baseband` echo "ftm_power_config done baseband=$baseband" >> /dev/kmsg - diff --git a/rootdir/etc/init.cust.rc b/rootdir/etc/init.cust.rc new file mode 100644 index 0000000..c0a12a1 --- /dev/null +++ b/rootdir/etc/init.cust.rc @@ -0,0 +1,2 @@ +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 ea47f91..e12b326 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,13 @@ 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.i2c/i2c-0/0-0038/tp_fw_update 0 + write /sys/devices/platform/soc/880000.spi/spi_master/spi0/spi0.0/tp_fw_update 0 +#add for n200 + write /sys/devices/platform/soc/4a80000.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 +121,9 @@ 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 + chown system system /proc/touchpanel/get_ic_firmware_version # /* add for wireless charge */ chown system system /proc/wireless/enable_tx chown system system /proc/wireless/enable_rx @@ -129,7 +136,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 +171,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 +218,35 @@ 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/cabc + chmod 0666 /sys/class/drm/card0-DSI-1/oplus_shutdownflag + 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 + + chmod 0666 /sys/class/drm/card0-DSI-1/osc_mode + chown radio radio /sys/class/drm/card0-DSI-1/osc_mode # ken.lin@ASTI, 2019/6/21, add for fsc chown system system /sys/module/fsc/parameters/enable @@ -205,16 +262,27 @@ on boot chmod 0664 sys/devices/platform/soc/soc:goodix_fp/screen_state chown system system sys/devices/platform/soc/soc:goodix_fp/screen_state chmod 0666 /dev/qseecom + + # access permission for egis + chown system system /dev/esfp0 + chmod 0666 /dev/esfp0 + # access permission for egis navigation + chmod 0666 /sys/devices/platform/egis_input/navigation_event + chmod 0666 /sys/devices/platform/egis_input/navigation_enable + chown system system /sys/devices/platform/egis_input/navigation_event + chown system system /sys/devices/platform/egis_input/navigation_enable #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 +292,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 +338,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 +355,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 @@ -357,17 +432,32 @@ 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 + # 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 + + # 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 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 @@ -389,6 +479,35 @@ 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 + +# for battery charging off is call_state_change +# jinguozhi@wt.network,20210207,add for battery charging off is call_state_change +on property:persist.sys.chgdisabled=1 + write /sys/class/power_supply/battery/call_mode 1 +on property:persist.sys.chgdisabled=0 + write /sys/class/power_supply/battery/call_mode 0 + # add for SMT test enters WLAN FTM test in non-signaling service wififtmserver /vendor/bin/sh vendor/bin/wifi_ftm class late_start @@ -397,20 +516,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 @@ -440,13 +571,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 @@ -454,13 +578,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 @@ -475,14 +592,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 @@ -490,6 +599,64 @@ 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 + +service wifisocket-nord /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-nord-stop /system_ext/bin/diag_system_socket_log -k + user root + group root system oem_2901 + disabled + oneshot + seclabel u:r:logserver:s0 + +on property:vendor.service.wifi.socket.nord.enable=1 + start oemsysd + start wifisocket-nord + +on property:vendor.service.wifi.socket.nord.enable=0 + stop oemsysd + start wifisocket-nord-stop #endif service ftmdaemon /system/vendor/bin/ftmdaemon -n @@ -559,6 +726,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 @@ -578,30 +758,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 @@ -656,8 +836,17 @@ 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 + +#ifdef VENDOR_EDIT +on property:persist.vendor.oem.wechat_cameraon=1 + write /sys/class/oplus_chg/common/camera_on 1 +on property:persist.vendor.oem.wechat_cameraon=0 + write /sys/class/oplus_chg/common/camera_on 0 #endif on property:vendor.sys.op.game=1 @@ -792,6 +981,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 @@ -828,6 +1023,118 @@ 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 OnePlus9R_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 + +# braden.liu@SYSTEM, 2021/01/05 Update Google key box for check on Dre +service KmInstallKeyboxDre8t /vendor/bin/KmInstallKeybox /mnt/vendor/op2/.lii/keyboxes_ciphered.xml OnePlusN200TMO_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 + +# braden.liu@SYSTEM, 2021/01/05 Update Google key box for check on Dre +service KmInstallKeyboxDre8m /vendor/bin/KmInstallKeybox /mnt/vendor/op2/.lii/keyboxes_ciphered.xml OnePlusN200METRO_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 + +# braden.liu@SYSTEM, 2021/01/05 Update Google key box for check on Dre +service KmInstallKeyboxDre9 /vendor/bin/KmInstallKeybox /mnt/vendor/op2/.lii/keyboxes_ciphered.xml OnePlusN200_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 + +# dongbin@WT_ODM_SYSTEM, 2021/01/27 Update Google key box for check on ebba +service KmInstallKeybox20813 /vendor/bin/KmInstallKeybox /mnt/vendor/op2/.lii/keyboxes_ciphered.xml OnePlusNordCE_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 + service keyboxxml /system/bin/mv /sdcard/.lii /mnt/vendor/op2/ class core user root @@ -856,13 +1163,27 @@ 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 + +#ifdef ODM_WT_EDIT Kai.Cao@ODM_WT.NW.SIM,BILLIE8-6704, 2020/07/13,Support single and dual card solutions +on property:ro.boot.rf_version=0 && property:ro.boot.project_codename=billie8 + setprop persist.radio.multisim.config "ssss" +on property:ro.boot.rf_version=0 && property:ro.boot.project_codename=billie8t + setprop persist.radio.multisim.config "ssss" +#endif 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.qcom.rc b/rootdir/etc/init.qcom.rc index 09515d5..df1727c 100644 --- a/rootdir/etc/init.qcom.rc +++ b/rootdir/etc/init.qcom.rc @@ -34,6 +34,7 @@ import /vendor/etc/init/hw/init.oem.sec.rc import /vendor/etc/init/hw/init.qcom.usb.rc import /vendor/etc/init/hw/init.target.rc import /vendor/etc/init/hw/init.qcom.factory.rc +import /vendor/etc/init/hw/init.qcom.test.rc on early-init mount debugfs debugfs /sys/kernel/debug @@ -60,6 +61,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 @@ -90,11 +94,28 @@ on early-boot write /sys/devices/virtual/npu/msm_npu/boot 1 write /sys/devices/virtual/cvp/cvp/boot 1 exec u:r:vendor_qti_init_shell:s0 -- /vendor/bin/init.qcom.early_boot.sh + exec u:r:vendor_qti_init_shell:s0 -- /vendor/bin/init.qti.can.sh setprop ro.sf.lcd_density ${vendor.display.lcd_density} chown system system /mnt/vendor/persist/data/pfm/licenses chmod 0775 /mnt/vendor/persist/data/pfm/licenses + +on property:sys.boot_completed=1 + copy /vendor/etc/OnePlus_QC_LTM_Commercial_SM7225_2021_03_24.pfm /mnt/vendor/persist/data/pfm/licenses/OnePlus_QC_LTM_Commercial_SM7225_2021_03_24.pfm + chmod 0600 /mnt/vendor/persist/data/pfm/licenses/OnePlus_QC_LTM_Commercial_SM7225_2021_03_24.pfm + chown system system /mnt/vendor/persist/data/pfm/licenses/OnePlus_QC_LTM_Commercial_SM7225_2021_03_24.pfm + 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 chown bluetooth net_bt /sys/class/rfkill/rfkill0/type @@ -150,9 +171,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 @@ -478,6 +496,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 +518,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 +533,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 @@ -550,6 +565,20 @@ on property:ro.data.large_tcp_window_size=true on property:sys.sysctl.tcp_adv_win_scale=* write /proc/sys/net/ipv4/tcp_adv_win_scale ${sys.sysctl.tcp_adv_win_scale} +service wpa_supplicant /vendor/bin/hw/wpa_supplicant \ + -O/data/vendor/wifi/wpa/sockets -puse_p2p_group_interface=1 -dd \ + -g@android:vendor_wpa_wlan0 +# we will start as root and wpa_supplicant will switch to user wifi +# after setting up the capabilities required for WEXT +# user wifi +# group wifi inet keystore + interface android.hardware.wifi.supplicant@1.0::ISupplicant default + interface android.hardware.wifi.supplicant@1.1::ISupplicant default + class main + socket vendor_wpa_wlan0 dgram 660 wifi wifi + disabled + oneshot + service vendor.wigig_supplicant /vendor/bin/hw/wpa_supplicant \ -iwigig0 -Dnl80211 -c/data/vendor/wifi/wigig_supplicant.conf \ -m/data/vendor/wifi/wigig_p2p_supplicant.conf \ @@ -574,6 +603,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,23 +721,16 @@ 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 group root system radio oneshot +# Remove since is deprecated but throws AVC denial. +# service crashdata-sh /vendor/bin/init.qcom.crashdata.sh +# class late_start +# user root +# oneshot service qcom-post-boot /vendor/bin/init.qcom.post_boot.sh class late_start @@ -716,6 +739,27 @@ service qcom-post-boot /vendor/bin/init.qcom.post_boot.sh disabled oneshot +#zhangyanbin@ODM_WT.AD.system,20210127,remove the 'qti-testscripts', it's just for test start. +#service qti-testscripts /system/bin/sh /product/etc/init.qcom.testscripts.sh +# class late_start +# user root +# disabled +# oneshot +# seclabel u:r:qti-testscripts:s0 +#zhangyanbin@ODM_WT.AD.system,20210127,remove the 'qti-testscripts', it's just for test end. + +service wifi-sdio-on /vendor/bin/init.qcom.sdio.sh + class late_start + group wifi inet + disabled + oneshot + +service wifi-crda /vendor/bin/init.crda.sh + class late_start + user root + disabled + oneshot + on property:sys.boot_completed=1 start qcom-post-boot start qti-testscripts @@ -741,14 +785,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,32 +827,6 @@ 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 class late_start @@ -938,17 +948,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..5862700 100644 --- a/rootdir/etc/init.qcom.usb.rc +++ b/rootdir/etc/init.qcom.usb.rc @@ -104,6 +104,12 @@ on boot && property:vendor.wireless_charge.enable=true on charger && property:vendor.wireless_charge.enable=true start wlchgd +on init && property:ro.build.type=userdebug + exec u:r:vendor-qti-testscripts:s0 -- /vendor/bin/sh /vendor/bin/init.qti.usb.debug.sh + +on init && property:ro.build.type=eng + exec u:r:vendor-qti-testscripts:s0 -- /vendor/bin/sh /vendor/bin/init.qti.usb.debug.sh + on boot write /sys/class/android_usb/android0/iSerial ${ro.serialno} mount configfs none /config @@ -174,6 +180,11 @@ on boot write /config/usb_gadget/g2/strings/0x409/product ${vendor.usb.product_string} #setprop sys.usb.config ${persist.vendor.usb.config} setprop sys.usb.configfs 1 + trigger set_serialnumber + +on set_serialnumber && property:ro.vendor.factory_mode=1 + write /config/usb_gadget/g1/strings/0x409/serialnumber "0123456789ABCDEF" + write /config/usb_gadget/g2/strings/0x409/serialnumber "0123456789ABCDEF" on boot && property:vendor.usb.use_ffs_mtp=1 mkdir /config/usb_gadget/g1/functions/ffs.mtp @@ -183,8 +194,8 @@ on boot && property:vendor.usb.use_ffs_mtp=1 mkdir /dev/usb-ffs/ptp 0770 mtp mtp mount functionfs ptp /dev/usb-ffs/ptp rmode=0770,fmode=0660,uid=1024,gid=1024,no_disconnect=1 -#on property:persist.vendor.usb.config=* -# setprop persist.sys.usb.config ${persist.vendor.usb.config} +on property:persist.vendor.usb.config=* && property:ro.vendor.factory_mode=1 + setprop persist.sys.usb.config ${persist.vendor.usb.config} #BSP add for 5G diag port on property:persist.vendor.sdx50m.online=* @@ -257,7 +268,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 @@ -268,10 +279,9 @@ on property:sys.usb.ffs.ready=1 && property:sys.usb.config=diag,adb && property: 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/idProduct 0x676C + 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 +347,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} @@ -702,7 +736,7 @@ on property:sys.usb.config=rndis,diag,qdss && property:sys.usb.configfs=1 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 write /config/usb_gadget/g1/UDC ${sys.usb.controller} - setprop sys.usb.state ${sys.usb.config} + setprop sys.usb.state rndis on property:sys.usb.config=rndis,diag,qdss,adb && property:sys.usb.configfs=1 start adbd @@ -726,7 +760,7 @@ on property:sys.usb.ffs.ready=1 && property:sys.usb.config=rndis,diag,qdss,adb & 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/ffs.adb /config/usb_gadget/g1/configs/b.1/f4 write /config/usb_gadget/g1/UDC ${sys.usb.controller} - setprop sys.usb.state ${sys.usb.config} + setprop sys.usb.state rndis,adb on property:sys.usb.config=ncm && property:sys.usb.configfs=1 write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "ncm" diff --git a/rootdir/etc/init.target.rc b/rootdir/etc/init.target.rc index b66d5bd..0fda6cc 100644 --- a/rootdir/etc/init.target.rc +++ b/rootdir/etc/init.target.rc @@ -1,4 +1,3 @@ - # Copyright (c) 2018-2020, The Linux Foundation. All rights reserved. # # Redistribution and use in source and binary forms, with or without @@ -27,13 +26,14 @@ # IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. # # -# kevin@system, 2019/06/08, add carrier 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/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_lpi audio_swr audio_platform audio_hdmi audio_stub audio_wcd_core audio_wsa881x audio_wsa883x audio_bolero_cdc audio_wsa_macro audio_va_macro audio_rx_macro audio_tx_macro audio_wcd938x audio_wcd938x_slave audio_wcd937x audio_wcd937x_slave audio_machine_lito write /proc/sys/kernel/sched_boost 1 - +on early-init + exec u:r:vendor_modprobe:s0 -- /vendor/bin/modprobe -a -d /vendor/lib/modules audio_tfa9894 on init write /dev/stune/foreground/schedtune.sched_boost_no_override 1 write /dev/stune/top-app/schedtune.sched_boost_no_override 1 @@ -42,60 +42,50 @@ on init write /dev/stune/system-background/schedtune.colocate 0 write /dev/stune/foreground/schedtune.colocate 0 write /dev/stune/top-app/schedtune.colocate 1 - write /proc/restart_level_all 0 - wait /dev/block/platform/soc/1d84000.ufshc - symlink /dev/block/platform/soc/1d84000.ufshc /dev/block/bootdevice - chown system system /sys/devices/platform/soc/1d84000.ufshc/auto_hibern8 - chmod 0660 /sys/devices/platform/soc/1d84000.ufshc/auto_hibern8 - start logd + #Moving to init as this is needed for qseecomd + wait /dev/block/platform/soc/${ro.boot.bootdevice} + symlink /dev/block/platform/soc/${ro.boot.bootdevice} /dev/block/bootdevice + start vendor.qseecomd + start keymaster-4-0 on early-fs start vold on fs start hwservicemanager - mkdir /mnt/vendor/spunvm 0660 system system - mkdir /mnt/vendor/op1 0660 system system + #RuiLi@ODM_WT.ENGINEERINGMODE, 2021/01/27 *#911# can't creat file in op2 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 -#ifdef VENDOR_EDIT + mount_all --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 #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 + #RuiLi@ODM_WT.ENGINEERINGMODE, 2021/01/27 *#911# can't creat file in op2 + wait /mnt/vendor/op2 + chown system system /mnt/vendor/op2 + #sam.li@SYSTEM,add for cota + mkdir /mnt/vendor/my_cota 0660 system system on post-fs # set RLIMIT_MEMLOCK to 64MB setrlimit 8 67108864 67108864 - write /dev/ipa 1 +# yanbin.zhang@ODM_WT.AD.Aging 2020/12/21, add for engineeringmode app. mkdir /mnt/vendor/op2/recovery 0770 root system on late-fs wait_for_prop hwservicemanager.ready true exec_start wait_for_keymaster - 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 - #endif /*VENDOR_EDIT*/ + mount_all --late + # dongbin@ODM_WT_SYSTEM, 20210106 Mount reserve.img + mount_reserve ext4 loop@/data/reserve/reserve.img /system/reserve ro context=u:object_r:system_file:s0 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*/ on early-boot start vendor.sensors @@ -110,60 +100,16 @@ on boot chown cameraserver cameraserver /dev/cpuset/camera-daemon chown cameraserver cameraserver /dev/cpuset/camera-daemon/tasks chmod 0660 /dev/cpuset/camera-daemon/tasks - #USB controller configuration +#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 -#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 */ - - # Reduce default vibrator gain from 0x80 to 0x55, - # also allow gain customization via persistent property - write /sys/class/leds/vibrator/gain ${persist.vendor.vib.gain:-0x55} +#Load WLAN driver +#Fanghua.Zhu@ODM_WT.BSP.CONN.WIFI.107968, 2020/12/26, Remove for AT OPEN_WIFI fail in FTM mode. +# insmod /vendor/lib/modules/qca_cld3_wlan.ko on property:vendor.display.lcd_density=560 setprop dalvik.vm.heapgrowthlimit 256m @@ -178,19 +124,10 @@ on property:vendor.usb.controller=* setprop sys.usb.controller ${vendor.usb.controller} on charger - trigger fs - start vendor.per_mgr - start vendor.mdm_launcher start vendor.power_off_alarm - setprop sys.usb.controller a600000.dwc3 + setprop vendor.usb.controller a600000.dwc3 setprop sys.usb.configfs 1 -service vendor.lowi /vendor/bin/sscrpcd - class core - user system - group system wakelock - capabilities BLOCK_SUSPEND - #pd-mapper service vendor.pd_mapper /vendor/bin/pd-mapper class core @@ -215,15 +152,9 @@ service vendor.mdm_helper /vendor/bin/mdm_helper 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 +service vendor.mdm_launcher /vendor/bin/sh /vendor/bin/init.mdm.sh + class core oneshot -# endif /* VENDOR_EDIT */ on property:init.svc.vendor.per_mgr=running start vendor.per_proxy @@ -231,40 +162,15 @@ on property:init.svc.vendor.per_mgr=running 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 */ +on property:vold.decrypt=trigger_restart_framework + start vendor.cnss_diag -#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 - disabled oneshot -#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 -#endif /* VENDOR_EDIT */ - service dcvs-sh /vendor/bin/init.qti.dcvs.sh class late_start user root @@ -274,12 +180,3 @@ service dcvs-sh /vendor/bin/init.qti.dcvs.sh on property:vendor.dcvs.prop=1 start dcvs-sh - -on property:ro.boot.project_codename=instantnoodle - setprop persist.radio.multisim.config dsds - -on property:ro.boot.project_codename=instantnoodlep - setprop persist.radio.multisim.config dsds - -on property:ro.boot.project_codename=kebab - setprop persist.radio.multisim.config dsds diff --git a/rootdir/etc/vendor.oem_ftm_svc_disable.rc b/rootdir/etc/vendor.oem_ftm_svc_disable.rc index a352c99..a53bee9 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 \ No newline at end of file diff --git a/rootdir/ueventd.rc b/rootdir/ueventd.rc index 0385844..10345eb 100644 --- a/rootdir/ueventd.rc +++ b/rootdir/ueventd.rc @@ -41,6 +41,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 +59,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 +145,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 @@ -179,11 +182,16 @@ firmware_directories /vendor/firmware_mnt/image/ /dev/qvr_external_sensor_ioctl 0660 system system /sys/kernel/qvr_external_sensor/fd 0660 system system +# bug 550748,zhanghaibin1@wt,20200509,Add hardware_info +/dev/hardwareinfo 0660 root system + # wlan /dev/wcnss_wlan 0660 system system /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 @@ -411,3 +419,65 @@ 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 +*/ + +#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