diff --git a/proprietary-files.txt b/proprietary-files.txt index ee49db3..adcef7d 100644 --- a/proprietary-files.txt +++ b/proprietary-files.txt @@ -145,6 +145,7 @@ vendor/lib64/libmdsprpc.so # Charger vendor/bin/charge_only_mode vendor/bin/hvdcp_opti +vendor/bin/init.qti.chg_policy.sh vendor/etc/charger_fstab.qti vendor/etc/charger_fw_fstab.qti vendor/etc/init/vendor.qti.hardware.charger_monitor@1.0-service.rc @@ -483,6 +484,14 @@ vendor/lib64/vendor.qti.hardware.iop@2.0.so vendor/bin/msm_irqbalance vendor/etc/msm_irqbalance.conf +# Kernel +vendor/bin/init.kernel.post_boot-blair.sh +vendor/bin/init.kernel.post_boot-holi.sh +vendor/bin/init.kernel.post_boot.sh +vendor/bin/init.qti.kernel.sh +vendor/bin/vendor_modprobe.sh +vendor/etc/init/hw/init.qti.kernel.rc + # Keymaster vendor/bin/hw/android.hardware.keymaster@4.1-service-qti vendor/etc/init/android.hardware.keymaster@4.1-service-qti.rc @@ -627,6 +636,10 @@ vendor/lib64/vendor.qti.hardware.alarm@1.0.so|8956937951c6f99727ace3380f46275e62 # QCC vendor/lib64/vendor.qti.hardware.qccsyshal@1.0.so +# QCV +vendor/bin/init.qti.qcv.sh +vendor/etc/init/init.qti.qcv.rc + # QMI system/etc/permissions/privapp-permissions-qti.xml system/etc/sysconfig/qti_whitelist.xml @@ -954,6 +967,7 @@ vendor/lib64/vendor.qti.imsrtpservice@3.0.so;MODULE_SUFFIX=_vendor # Sensors vendor/bin/hw/vendor.qti.hardware.sensorscalibrate@1.0-service +vendor/bin/init.qcom.sensors.sh vendor/bin/sensors.qti vendor/bin/sscrpcd vendor/etc/init/init.vendor.sensors.rc diff --git a/rootdir/bin/init.kernel.post_boot-lahaina.sh b/rootdir/bin/init.kernel.post_boot-lahaina.sh deleted file mode 100755 index 6dc5724..0000000 --- a/rootdir/bin/init.kernel.post_boot-lahaina.sh +++ /dev/null @@ -1,369 +0,0 @@ -#============================================================================= -# Copyright (c) 2020-2021 Qualcomm Technologies, Inc. -# All Rights Reserved. -# Confidential and Proprietary - Qualcomm Technologies, Inc. -# -# Copyright (c) 2009-2012, 2014-2019, The Linux Foundation. All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions are met: -# * Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# * Redistributions in binary form must reproduce the above copyright -# notice, this list of conditions and the following disclaimer in the -# documentation and/or other materials provided with the distribution. -# * Neither the name of The Linux Foundation nor -# the names of its contributors may be used to endorse or promote -# products derived from this software without specific prior written -# permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -# IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -# NON-INFRINGEMENT ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR -# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, -# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, -# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; -# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, -# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR -# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF -# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -#============================================================================= - -function configure_zram_parameters() { - # Moto yangbq2: Skip this if we are using zram from fstab. - using_zram_from_fstab=`getprop ro.boot.using_zram_from_fstab` - if [ "$using_zram_from_fstab" == "true" ]; then - return - fi - MemTotalStr=`cat /proc/meminfo | grep MemTotal` - MemTotal=${MemTotalStr:16:8} - - low_ram=`getprop ro.config.low_ram` - - # Zram disk - 75% for Go and < 2GB devices . - # For >2GB Non-Go devices, size = 50% of RAM size. Limit the size to 4GB. - # And enable lz4 zram compression for Go targets. - - let RamSizeGB="( $MemTotal / 1048576 ) + 1" - diskSizeUnit=M - if [ $RamSizeGB -le 2 ]; then - let zRamSizeMB="( $RamSizeGB * 1024 ) * 3 / 4" - else - let zRamSizeMB="( $RamSizeGB * 1024 ) / 2" - fi - - # use MB avoid 32 bit overflow - if [ $zRamSizeMB -gt 4096 ]; then - let zRamSizeMB=4096 - fi - - if [ "$low_ram" == "true" ]; then - echo lz4 > /sys/block/zram0/comp_algorithm - fi - - if [ -f /sys/block/zram0/disksize ]; then - if [ -f /sys/block/zram0/use_dedup ]; then - echo 1 > /sys/block/zram0/use_dedup - fi - echo "$zRamSizeMB""$diskSizeUnit" > /sys/block/zram0/disksize - - # ZRAM may use more memory than it saves if SLAB_STORE_USER - # debug option is enabled. - if [ -e /sys/kernel/slab/zs_handle ]; then - echo 0 > /sys/kernel/slab/zs_handle/store_user - fi - if [ -e /sys/kernel/slab/zspage ]; then - echo 0 > /sys/kernel/slab/zspage/store_user - fi - - mkswap /dev/block/zram0 - swapon /dev/block/zram0 -p 32758 - fi -} - -function configure_read_ahead_kb_values() { - MemTotalStr=`cat /proc/meminfo | grep MemTotal` - MemTotal=${MemTotalStr:16:8} - - dmpts=$(ls /sys/block/*/queue/read_ahead_kb | grep -e dm -e mmc) - - # Set 128 for <= 3GB & - # set 512 for >= 4GB targets. - if [ $MemTotal -le 3145728 ]; then - ra_kb=128 - else - ra_kb=512 - fi - if [ -f /sys/block/mmcblk0/bdi/read_ahead_kb ]; then - echo $ra_kb > /sys/block/mmcblk0/bdi/read_ahead_kb - fi - if [ -f /sys/block/mmcblk0rpmb/bdi/read_ahead_kb ]; then - echo $ra_kb > /sys/block/mmcblk0rpmb/bdi/read_ahead_kb - fi - for dm in $dmpts; do - echo $ra_kb > $dm - done -} - -function configure_memory_parameters() { - # Set Memory parameters. - # - # Set per_process_reclaim tuning parameters - # All targets will use vmpressure range 50-70, - # All targets will use 512 pages swap size. - # - # Set Low memory killer minfree parameters - # 32 bit Non-Go, all memory configurations will use 15K series - # 32 bit Go, all memory configurations will use uLMK + Memcg - # 64 bit will use Google default LMK series. - # - # Set ALMK parameters (usually above the highest minfree values) - # vmpressure_file_min threshold is always set slightly higher - # than LMK minfree's last bin value for all targets. It is calculated as - # vmpressure_file_min = (last bin - second last bin ) + last bin - # - # Set allocstall_threshold to 0 for all targets. - # - - configure_zram_parameters - configure_read_ahead_kb_values - echo 100 > /proc/sys/vm/swappiness -} - -rev=`cat /sys/devices/soc0/revision` -ddr_type=`od -An -tx /proc/device-tree/memory/ddr_device_type` -ddr_type4="07" -ddr_type5="08" - -# Core control parameters for gold -echo 2 > /sys/devices/system/cpu/cpu4/core_ctl/min_cpus -echo 60 > /sys/devices/system/cpu/cpu4/core_ctl/busy_up_thres -echo 30 > /sys/devices/system/cpu/cpu4/core_ctl/busy_down_thres -echo 100 > /sys/devices/system/cpu/cpu4/core_ctl/offline_delay_ms -echo 3 > /sys/devices/system/cpu/cpu4/core_ctl/task_thres - -# Core control parameters for gold+ -echo 0 > /sys/devices/system/cpu/cpu7/core_ctl/min_cpus -echo 60 > /sys/devices/system/cpu/cpu7/core_ctl/busy_up_thres -echo 30 > /sys/devices/system/cpu/cpu7/core_ctl/busy_down_thres -echo 100 > /sys/devices/system/cpu/cpu7/core_ctl/offline_delay_ms -echo 1 > /sys/devices/system/cpu/cpu7/core_ctl/task_thres - -# Controls how many more tasks should be eligible to run on gold CPUs -# w.r.t number of gold CPUs available to trigger assist (max number of -# tasks eligible to run on previous cluster minus number of CPUs in -# the previous cluster). -# -# Setting to 1 by default which means there should be at least -# 4 tasks eligible to run on gold cluster (tasks running on gold cores -# plus misfit tasks on silver cores) to trigger assitance from gold+. -echo 1 > /sys/devices/system/cpu/cpu7/core_ctl/nr_prev_assist_thresh - -# Disable Core control on silver -echo 0 > /sys/devices/system/cpu/cpu0/core_ctl/enable - -# Setting b.L scheduler parameters -echo 95 95 > /proc/sys/kernel/sched_upmigrate -echo 85 85 > /proc/sys/kernel/sched_downmigrate -echo 100 > /proc/sys/kernel/sched_group_upmigrate -echo 85 > /proc/sys/kernel/sched_group_downmigrate -echo 1 > /proc/sys/kernel/sched_walt_rotate_big_tasks -echo 400000000 > /proc/sys/kernel/sched_coloc_downmigrate_ns -echo 39000000 39000000 39000000 39000000 39000000 39000000 39000000 5000000 > /proc/sys/kernel/sched_coloc_busy_hyst_cpu_ns -echo 240 > /proc/sys/kernel/sched_coloc_busy_hysteresis_enable_cpus -echo 10 10 10 10 10 10 10 95 > /proc/sys/kernel/sched_coloc_busy_hyst_cpu_busy_pct - -# set the threshold for low latency task boost feature which prioritize -# binder activity tasks -echo 325 > /proc/sys/kernel/walt_low_latency_task_threshold - -# cpuset parameters -echo 0-3 > /dev/cpuset/background/cpus -echo 0-3 > /dev/cpuset/system-background/cpus - -# Turn off scheduler boost at the end -echo 0 > /proc/sys/kernel/sched_boost - -# configure governor settings for silver cluster -echo "schedutil" > /sys/devices/system/cpu/cpufreq/policy0/scaling_governor -echo 0 > /sys/devices/system/cpu/cpufreq/policy0/schedutil/down_rate_limit_us -echo 0 > /sys/devices/system/cpu/cpufreq/policy0/schedutil/up_rate_limit_us -if [ $rev == "1.0" ]; then - echo 1190400 > /sys/devices/system/cpu/cpufreq/policy0/schedutil/hispeed_freq -else - echo 1209600 > /sys/devices/system/cpu/cpufreq/policy0/schedutil/hispeed_freq -fi -echo 691200 > /sys/devices/system/cpu/cpufreq/policy0/scaling_min_freq -echo 1 > /sys/devices/system/cpu/cpufreq/policy0/schedutil/pl - -# configure input boost settings -if [ $rev == "1.0" ]; then - echo "0:1382800" > /sys/devices/system/cpu/cpu_boost/input_boost_freq -else - echo "0:1305600" > /sys/devices/system/cpu/cpu_boost/input_boost_freq -fi -echo 120 > /sys/devices/system/cpu/cpu_boost/input_boost_ms - -# configure governor settings for gold cluster -echo "schedutil" > /sys/devices/system/cpu/cpufreq/policy4/scaling_governor -echo 0 > /sys/devices/system/cpu/cpufreq/policy4/schedutil/down_rate_limit_us -echo 0 > /sys/devices/system/cpu/cpufreq/policy4/schedutil/up_rate_limit_us -if [ $rev == "1.0" ]; then - echo 1497600 > /sys/devices/system/cpu/cpufreq/policy4/schedutil/hispeed_freq -else - echo 1555200 > /sys/devices/system/cpu/cpufreq/policy4/schedutil/hispeed_freq -fi -echo 1 > /sys/devices/system/cpu/cpufreq/policy4/schedutil/pl - -# configure governor settings for gold+ cluster -echo "schedutil" > /sys/devices/system/cpu/cpufreq/policy7/scaling_governor -echo 0 > /sys/devices/system/cpu/cpufreq/policy7/schedutil/down_rate_limit_us -echo 0 > /sys/devices/system/cpu/cpufreq/policy7/schedutil/up_rate_limit_us -if [ $rev == "1.0" ]; then - echo 1536000 > /sys/devices/system/cpu/cpufreq/policy7/schedutil/hispeed_freq -else - echo 1670400 > /sys/devices/system/cpu/cpufreq/policy7/schedutil/hispeed_freq -fi -echo 1 > /sys/devices/system/cpu/cpufreq/policy7/schedutil/pl - -# configure bus-dcvs -for device in /sys/devices/platform/soc -do - for cpubw in $device/*cpu-cpu-llcc-bw/devfreq/*cpu-cpu-llcc-bw - do - cat $cpubw/available_frequencies | cut -d " " -f 1 > $cpubw/min_freq - echo "4577 7110 9155 12298 14236 15258" > $cpubw/bw_hwmon/mbps_zones - echo 4 > $cpubw/bw_hwmon/sample_ms - echo 80 > $cpubw/bw_hwmon/io_percent - echo 20 > $cpubw/bw_hwmon/hist_memory - echo 10 > $cpubw/bw_hwmon/hyst_length - echo 30 > $cpubw/bw_hwmon/down_thres - echo 0 > $cpubw/bw_hwmon/guard_band_mbps - echo 250 > $cpubw/bw_hwmon/up_scale - echo 1600 > $cpubw/bw_hwmon/idle_mbps - echo 12298 > $cpubw/max_freq - echo 40 > $cpubw/polling_interval - done - - for llccbw in $device/*cpu-llcc-ddr-bw/devfreq/*cpu-llcc-ddr-bw - do - cat $llccbw/available_frequencies | cut -d " " -f 1 > $llccbw/min_freq - if [ ${ddr_type:4:2} == $ddr_type4 ]; then - echo "1720 2086 2929 3879 5931 6515 8136" > $llccbw/bw_hwmon/mbps_zones - elif [ ${ddr_type:4:2} == $ddr_type5 ]; then - echo "1720 2086 2929 3879 6515 7980 12191" > $llccbw/bw_hwmon/mbps_zones - fi - echo 4 > $llccbw/bw_hwmon/sample_ms - echo 80 > $llccbw/bw_hwmon/io_percent - echo 20 > $llccbw/bw_hwmon/hist_memory - echo 10 > $llccbw/bw_hwmon/hyst_length - echo 30 > $llccbw/bw_hwmon/down_thres - echo 0 > $llccbw/bw_hwmon/guard_band_mbps - echo 250 > $llccbw/bw_hwmon/up_scale - echo 1600 > $llccbw/bw_hwmon/idle_mbps - echo 6515 > $llccbw/max_freq - echo 40 > $llccbw/polling_interval - done - - for l3bw in $device/*snoop-l3-bw/devfreq/*snoop-l3-bw - do - cat $l3bw/available_frequencies | cut -d " " -f 1 > $l3bw/min_freq - echo 4 > $l3bw/bw_hwmon/sample_ms - echo 10 > $l3bw/bw_hwmon/io_percent - echo 20 > $l3bw/bw_hwmon/hist_memory - echo 10 > $l3bw/bw_hwmon/hyst_length - echo 0 > $l3bw/bw_hwmon/down_thres - echo 0 > $l3bw/bw_hwmon/guard_band_mbps - echo 0 > $l3bw/bw_hwmon/up_scale - echo 1600 > $l3bw/bw_hwmon/idle_mbps - echo 9155 > $l3bw/max_freq - echo 40 > $l3bw/polling_interval - done - - # configure mem_latency settings for LLCC and DDR scaling and qoslat - for memlat in $device/*lat/devfreq/*lat - do - cat $memlat/available_frequencies | cut -d " " -f 1 > $memlat/min_freq - echo 8 > $memlat/polling_interval - echo 400 > $memlat/mem_latency/ratio_ceil - done - - # configure compute settings for gold latfloor - for latfloor in $device/*cpu4-cpu*latfloor/devfreq/*cpu4-cpu*latfloor - do - cat $latfloor/available_frequencies | cut -d " " -f 1 > $latfloor/min_freq - echo 8 > $latfloor/polling_interval - done - - # configure mem_latency settings for prime latfloor - for latfloor in $device/*cpu7-cpu*latfloor/devfreq/*cpu7-cpu*latfloor - do - cat $latfloor/available_frequencies | cut -d " " -f 1 > $latfloor/min_freq - echo 8 > $latfloor/polling_interval - echo 25000 > $latfloor/mem_latency/ratio_ceil - done - - # CPU4 L3 ratio ceil - for l3gold in $device/*cpu4-cpu-l3-lat/devfreq/*cpu4-cpu-l3-lat - do - echo 4000 > $l3gold/mem_latency/ratio_ceil - done - - # CPU5 L3 ratio ceil - for l3gold in $device/*cpu5-cpu-l3-lat/devfreq/*cpu5-cpu-l3-lat - do - echo 4000 > $l3gold/mem_latency/ratio_ceil - done - - # CPU6 L3 ratio ceil - for l3gold in $device/*cpu6-cpu-l3-lat/devfreq/*cpu6-cpu-l3-lat - do - echo 4000 > $l3gold/mem_latency/ratio_ceil - done - - # prime L3 ratio ceil - for l3prime in $device/*cpu7-cpu-l3-lat/devfreq/*cpu7-cpu-l3-lat - do - echo 20000 > $l3prime/mem_latency/ratio_ceil - done - - # qoslat ratio ceil - for qoslat in $device/*qoslat/devfreq/*qoslat - do - echo 50 > $qoslat/mem_latency/ratio_ceil - done -done -echo N > /sys/module/lpm_levels/parameters/sleep_disabled -echo s2idle > /sys/power/mem_sleep -configure_memory_parameters - -# Let kernel know our image version/variant/crm_version -if [ -f /sys/devices/soc0/select_image ]; then - image_version="10:" - image_version+=`getprop ro.build.id` - image_version+=":" - image_version+=`getprop ro.build.version.incremental` - image_variant=`getprop ro.product.name` - image_variant+="-" - image_variant+=`getprop ro.build.type` - oem_version=`getprop ro.build.version.codename` - echo 10 > /sys/devices/soc0/select_image - echo $image_version > /sys/devices/soc0/image_version - echo $image_variant > /sys/devices/soc0/image_variant - echo $oem_version > /sys/devices/soc0/image_crm_version -fi - -# Change console log level as per console config property -console_config=`getprop persist.vendor.console.silent.config` -case "$console_config" in - "1") - echo "Enable console config to $console_config" - echo 0 > /proc/sys/kernel/printk - ;; - *) - echo "Enable console config to $console_config" - ;; -esac - -setprop vendor.post_boot.parsed 1 diff --git a/rootdir/bin/init.kernel.post_boot-shima.sh b/rootdir/bin/init.kernel.post_boot-shima.sh deleted file mode 100755 index 59eb877..0000000 --- a/rootdir/bin/init.kernel.post_boot-shima.sh +++ /dev/null @@ -1,387 +0,0 @@ -#============================================================================= -# Copyright (c) 2020-2021 Qualcomm Technologies, Inc. -# All Rights Reserved. -# Confidential and Proprietary - Qualcomm Technologies, Inc. -# -# Copyright (c) 2009-2012, 2014-2019, The Linux Foundation. All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions are met: -# * Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# * Redistributions in binary form must reproduce the above copyright -# notice, this list of conditions and the following disclaimer in the -# documentation and/or other materials provided with the distribution. -# * Neither the name of The Linux Foundation nor -# the names of its contributors may be used to endorse or promote -# products derived from this software without specific prior written -# permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -# IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -# NON-INFRINGEMENT ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR -# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, -# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, -# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; -# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, -# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR -# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF -# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -#============================================================================= - -function configure_zram_parameters() { - MemTotalStr=`cat /proc/meminfo | grep MemTotal` - MemTotal=${MemTotalStr:16:8} - - low_ram=`getprop ro.config.low_ram` - - # Zram disk - 75% for Go and < 2GB devices . - # For >2GB Non-Go devices, size = 50% of RAM size. Limit the size to 4GB. - # And enable lz4 zram compression for Go targets. - - let RamSizeGB="( $MemTotal / 1048576 ) + 1" - diskSizeUnit=M - if [ $RamSizeGB -le 2 ]; then - let zRamSizeMB="( $RamSizeGB * 1024 ) * 3 / 4" - else - let zRamSizeMB="( $RamSizeGB * 1024 ) / 2" - fi - - # use MB avoid 32 bit overflow - if [ $zRamSizeMB -gt 4096 ]; then - let zRamSizeMB=4096 - fi - - if [ "$low_ram" == "true" ]; then - echo lz4 > /sys/block/zram0/comp_algorithm - fi - - if [ -f /sys/block/zram0/disksize ]; then - if [ -f /sys/block/zram0/use_dedup ]; then - echo 1 > /sys/block/zram0/use_dedup - fi - echo "$zRamSizeMB""$diskSizeUnit" > /sys/block/zram0/disksize - - # ZRAM may use more memory than it saves if SLAB_STORE_USER - # debug option is enabled. - if [ -e /sys/kernel/slab/zs_handle ]; then - echo 0 > /sys/kernel/slab/zs_handle/store_user - fi - if [ -e /sys/kernel/slab/zspage ]; then - echo 0 > /sys/kernel/slab/zspage/store_user - fi - - mkswap /dev/block/zram0 - swapon /dev/block/zram0 -p 32758 - fi -} - -function configure_read_ahead_kb_values() { - MemTotalStr=`cat /proc/meminfo | grep MemTotal` - MemTotal=${MemTotalStr:16:8} - - dmpts=$(ls /sys/block/*/queue/read_ahead_kb | grep -e dm -e mmc) - - # Set 128 for <= 3GB & - # set 512 for >= 4GB targets. - if [ $MemTotal -le 3145728 ]; then - ra_kb=128 - else - ra_kb=512 - fi - if [ -f /sys/block/mmcblk0/bdi/read_ahead_kb ]; then - echo $ra_kb > /sys/block/mmcblk0/bdi/read_ahead_kb - fi - if [ -f /sys/block/mmcblk0rpmb/bdi/read_ahead_kb ]; then - echo $ra_kb > /sys/block/mmcblk0rpmb/bdi/read_ahead_kb - fi - for dm in $dmpts; do - echo $ra_kb > $dm - done -} - -function configure_memory_parameters() { - # Set Memory parameters. - # - # Set per_process_reclaim tuning parameters - # All targets will use vmpressure range 50-70, - # All targets will use 512 pages swap size. - # - # Set Low memory killer minfree parameters - # 32 bit Non-Go, all memory configurations will use 15K series - # 32 bit Go, all memory configurations will use uLMK + Memcg - # 64 bit will use Google default LMK series. - # - # Set ALMK parameters (usually above the highest minfree values) - # vmpressure_file_min threshold is always set slightly higher - # than LMK minfree's last bin value for all targets. It is calculated as - # vmpressure_file_min = (last bin - second last bin ) + last bin - # - # Set allocstall_threshold to 0 for all targets. - # - - ProductName=`getprop ro.product.name` - - configure_zram_parameters - configure_read_ahead_kb_values - echo 100 > /proc/sys/vm/swappiness - - # 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 - - #Spawn 2 kswapd threads which can help in fast reclaiming of pages - echo 2 > /proc/sys/vm/kswapd_threads -} - -rev=`cat /sys/devices/soc0/revision` -ddr_type=`od -An -tx /proc/device-tree/memory/ddr_device_type` -ddr_type4="07" -ddr_type5="08" - -# Core control parameters for gold -echo 2 > /sys/devices/system/cpu/cpu4/core_ctl/min_cpus -echo 60 > /sys/devices/system/cpu/cpu4/core_ctl/busy_up_thres -echo 30 > /sys/devices/system/cpu/cpu4/core_ctl/busy_down_thres -echo 100 > /sys/devices/system/cpu/cpu4/core_ctl/offline_delay_ms -echo 3 > /sys/devices/system/cpu/cpu4/core_ctl/task_thres - -# Core control parameters for gold+ -echo 0 > /sys/devices/system/cpu/cpu7/core_ctl/min_cpus -echo 60 > /sys/devices/system/cpu/cpu7/core_ctl/busy_up_thres -echo 30 > /sys/devices/system/cpu/cpu7/core_ctl/busy_down_thres -echo 100 > /sys/devices/system/cpu/cpu7/core_ctl/offline_delay_ms -echo 1 > /sys/devices/system/cpu/cpu7/core_ctl/task_thres - -# Controls how many more tasks should be eligible to run on gold CPUs -# w.r.t number of gold CPUs available to trigger assist (max number of -# tasks eligible to run on previous cluster minus number of CPUs in -# the previous cluster). -# -# Setting to 1 by default which means there should be at least -# 4 tasks eligible to run on gold cluster (tasks running on gold cores -# plus misfit tasks on silver cores) to trigger assitance from gold+. -echo 1 > /sys/devices/system/cpu/cpu7/core_ctl/nr_prev_assist_thresh - -# Disable Core control on silver -echo 0 > /sys/devices/system/cpu/cpu0/core_ctl/enable - -# Setting b.L scheduler parameters -echo 71 95 > /proc/sys/kernel/sched_upmigrate -echo 65 85 > /proc/sys/kernel/sched_downmigrate -echo 100 > /proc/sys/kernel/sched_group_upmigrate -echo 85 > /proc/sys/kernel/sched_group_downmigrate -echo 1 > /proc/sys/kernel/sched_walt_rotate_big_tasks - - -echo 0 > /proc/sys/kernel/sched_coloc_busy_hysteresis_enable_cpus - -# 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/down_rate_limit_us -echo 0 > /sys/devices/system/cpu/cpufreq/policy0/schedutil/up_rate_limit_us -echo 1171200 > /sys/devices/system/cpu/cpufreq/policy0/schedutil/hispeed_freq -echo 691200 > /sys/devices/system/cpu/cpufreq/policy0/scaling_min_freq -echo 0 > /sys/devices/system/cpu/cpufreq/policy0/schedutil/pl - -# configure input boost settings -echo "0:1171200" > /sys/devices/system/cpu/cpu_boost/input_boost_freq -echo 120 > /sys/devices/system/cpu/cpu_boost/input_boost_ms - -# configure governor settings for gold cluster -echo "schedutil" > /sys/devices/system/cpu/cpufreq/policy4/scaling_governor -echo 0 > /sys/devices/system/cpu/cpufreq/policy4/schedutil/down_rate_limit_us -echo 0 > /sys/devices/system/cpu/cpufreq/policy4/schedutil/up_rate_limit_us -echo 1209000 > /sys/devices/system/cpu/cpufreq/policy4/schedutil/hispeed_freq -echo 691200 > /sys/devices/system/cpu/cpufreq/policy4/scaling_min_freq -echo 85 > /sys/devices/system/cpu/cpufreq/policy4/schedutil/hispeed_load -echo -6 > /sys/devices/system/cpu/cpu4/sched_load_boost -echo -6 > /sys/devices/system/cpu/cpu5/sched_load_boost -echo -6 > /sys/devices/system/cpu/cpu6/sched_load_boost -echo 0 > /sys/devices/system/cpu/cpufreq/policy4/schedutil/rtg_boost_freq -echo 0 > /sys/devices/system/cpu/cpufreq/policy4/schedutil/pl - -# configure governor settings for gold+ cluster -echo "schedutil" > /sys/devices/system/cpu/cpufreq/policy7/scaling_governor -echo 0 > /sys/devices/system/cpu/cpufreq/policy7/schedutil/down_rate_limit_us -echo 0 > /sys/devices/system/cpu/cpufreq/policy7/schedutil/up_rate_limit_us -echo 1267000 > /sys/devices/system/cpu/cpufreq/policy7/schedutil/hispeed_freq -echo 806400 > /sys/devices/system/cpu/cpufreq/policy7/scaling_min_freq -echo 85 > /sys/devices/system/cpu/cpufreq/policy7/schedutil/hispeed_load -echo -6 > /sys/devices/system/cpu/cpu7/sched_load_boost -echo 0 > /sys/devices/system/cpu/cpufreq/policy7/schedutil/rtg_boost_freq -echo 0 > /sys/devices/system/cpu/cpufreq/policy7/schedutil/pl - -# colocation V3 settings -echo 691200 > /sys/devices/system/cpu/cpufreq/policy0/schedutil/rtg_boost_freq -echo 51 > /proc/sys/kernel/sched_min_task_util_for_boost -echo 35 > /proc/sys/kernel/sched_min_task_util_for_colocation -echo 20000000 > /proc/sys/kernel/sched_task_unfilter_period - -# Enable conservative pl -echo 1 > /proc/sys/kernel/sched_conservative_pl - -# configure bus-dcvs -for device in /sys/devices/platform/soc -do - for cpubw in $device/*cpu-cpu-llcc-bw/devfreq/*cpu-cpu-llcc-bw - do - cat $cpubw/available_frequencies | cut -d " " -f 1 > $cpubw/min_freq - echo "2288 4577 7110 9155 12298 14236 15258" > $cpubw/bw_hwmon/mbps_zones - echo 4 > $cpubw/bw_hwmon/sample_ms - echo 68 > $cpubw/bw_hwmon/io_percent - echo 20 > $cpubw/bw_hwmon/hist_memory - echo 0 > $cpubw/bw_hwmon/hyst_length - echo 80 > $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 40 > $cpubw/polling_interval - done - - for llccbw in $device/*cpu-llcc-ddr-bw/devfreq/*cpu-llcc-ddr-bw - do - cat $llccbw/available_frequencies | cut -d " " -f 1 > $llccbw/min_freq - if [ ${ddr_type:4:2} == $ddr_type4 ]; then - echo "1144 1720 2086 2929 3879 5931 6515 8136" > $llccbw/bw_hwmon/mbps_zones - elif [ ${ddr_type:4:2} == $ddr_type5 ]; then - echo "1144 1720 2086 2929 3879 5931 6515 7980 12191" > $llccbw/bw_hwmon/mbps_zones - fi - echo 4 > $llccbw/bw_hwmon/sample_ms - echo 68 > $llccbw/bw_hwmon/io_percent - echo 20 > $llccbw/bw_hwmon/hist_memory - echo 0 > $llccbw/bw_hwmon/hyst_length - echo 80 > $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 48 > $llccbw/polling_interval - done - - for l3bw in $device/*snoop-l3-bw/devfreq/*snoop-l3-bw - do - cat $l3bw/available_frequencies | cut -d " " -f 1 > $l3bw/min_freq - echo 4 > $l3bw/bw_hwmon/sample_ms - echo 10 > $l3bw/bw_hwmon/io_percent - echo 20 > $l3bw/bw_hwmon/hist_memory - echo 10 > $l3bw/bw_hwmon/hyst_length - echo 0 > $l3bw/bw_hwmon/down_thres - echo 0 > $l3bw/bw_hwmon/guard_band_mbps - echo 0 > $l3bw/bw_hwmon/up_scale - echo 1600 > $l3bw/bw_hwmon/idle_mbps - echo 9155 > $l3bw/max_freq - echo 40 > $l3bw/polling_interval - done - - # configure mem_latency settings for LLCC and DDR scaling and qoslat - for memlat in $device/*lat/devfreq/*lat - do - cat $memlat/available_frequencies | cut -d " " -f 1 > $memlat/min_freq - echo 8 > $memlat/polling_interval - echo 400 > $memlat/mem_latency/ratio_ceil - done - - # configure compute settings for silver latfloor - for latfloor in $device/*cpu0-cpu*latfloor/devfreq/*cpu0-cpu*latfloor - do - cat $latfloor/available_frequencies | cut -d " " -f 1 > $latfloor/min_freq - echo 8 > $latfloor/polling_interval - done - - # configure compute settings for gold latfloor - for latfloor in $device/*cpu4-cpu*latfloor/devfreq/*cpu4-cpu*latfloor - do - cat $latfloor/available_frequencies | cut -d " " -f 1 > $latfloor/min_freq - echo 8 > $latfloor/polling_interval - done - - # configure mem_latency settings for prime latfloor - for latfloor in $device/*cpu7-cpu*latfloor/devfreq/*cpu7-cpu*latfloor - do - cat $latfloor/available_frequencies | cut -d " " -f 1 > $latfloor/min_freq - echo 8 > $latfloor/polling_interval - echo 25000 > $latfloor/mem_latency/ratio_ceil - done - - # CPU4 L3 ratio ceil - for l3gold in $device/*cpu4-cpu-l3-lat/devfreq/*cpu4-cpu-l3-lat - do - echo 4000 > $l3gold/mem_latency/ratio_ceil - echo 25000 > $l3gold/mem_latency/wb_filter_ratio - echo 60 > $l3gold/mem_latency/wb_pct_thres - done - - # CPU5 L3 ratio ceil - for l3gold in $device/*cpu5-cpu-l3-lat/devfreq/*cpu5-cpu-l3-lat - do - echo 4000 > $l3gold/mem_latency/ratio_ceil - echo 25000 > $l3gold/mem_latency/wb_filter_ratio - echo 60 > $l3gold/mem_latency/wb_pct_thres - done - - # CPU6 L3 ratio ceil - for l3gold in $device/*cpu6-cpu-l3-lat/devfreq/*cpu6-cpu-l3-lat - do - echo 4000 > $l3gold/mem_latency/ratio_ceil - echo 25000 > $l3gold/mem_latency/wb_filter_ratio - echo 60 > $l3gold/mem_latency/wb_pct_thres - 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 - echo 25000 > $l3prime/mem_latency/wb_filter_ratio - echo 60 > $l3prime/mem_latency/wb_pct_thres - done - - # qoslat ratio ceil - for qoslat in $device/*qoslat/devfreq/*qoslat - do - echo 50 > $qoslat/mem_latency/ratio_ceil - done -done - -#Enable sleep and set s2idle as default suspend mode -echo N > /sys/module/lpm_levels/parameters/sleep_disabled -echo s2idle > /sys/power/mem_sleep - -configure_memory_parameters - -# Let kernel know our image version/variant/crm_version -if [ -f /sys/devices/soc0/select_image ]; then - image_version="10:" - image_version+=`getprop ro.build.id` - image_version+=":" - image_version+=`getprop ro.build.version.incremental` - image_variant=`getprop ro.product.name` - image_variant+="-" - image_variant+=`getprop ro.build.type` - oem_version=`getprop ro.build.version.codename` - echo 10 > /sys/devices/soc0/select_image - echo $image_version > /sys/devices/soc0/image_version - echo $image_variant > /sys/devices/soc0/image_variant - echo $oem_version > /sys/devices/soc0/image_crm_version -fi - -# Change console log level as per console config property -console_config=`getprop persist.console.silent.config` -case "$console_config" in - "1") - echo "Enable console config to $console_config" - echo 0 > /proc/sys/kernel/printk - ;; - *) - echo "Enable console config to $console_config" - ;; -esac - -setprop vendor.post_boot.parsed 1 diff --git a/rootdir/bin/init.kernel.post_boot-yupik.sh b/rootdir/bin/init.kernel.post_boot-yupik.sh deleted file mode 100755 index 13dc640..0000000 --- a/rootdir/bin/init.kernel.post_boot-yupik.sh +++ /dev/null @@ -1,364 +0,0 @@ -#============================================================================= -# Copyright (c) 2020-2021 Qualcomm Technologies, Inc. -# All Rights Reserved. -# Confidential and Proprietary - Qualcomm Technologies, Inc. -# -# Copyright (c) 2009-2012, 2014-2019, The Linux Foundation. All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions are met: -# * Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# * Redistributions in binary form must reproduce the above copyright -# notice, this list of conditions and the following disclaimer in the -# documentation and/or other materials provided with the distribution. -# * Neither the name of The Linux Foundation nor -# the names of its contributors may be used to endorse or promote -# products derived from this software without specific prior written -# permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -# IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -# NON-INFRINGEMENT ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR -# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, -# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, -# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; -# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, -# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR -# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF -# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -#============================================================================= - -function configure_zram_parameters() { - # Moto yangbq2: Skip this if we are using zram from fstab. - using_zram_from_fstab=`getprop ro.boot.using_zram_from_fstab` - if [ "$using_zram_from_fstab" == "true" ]; then - return - fi - MemTotalStr=`cat /proc/meminfo | grep MemTotal` - MemTotal=${MemTotalStr:16:8} - - low_ram=`getprop ro.config.low_ram` - - # Zram disk - 75% for Go and < 2GB devices . - # For >2GB Non-Go devices, size = 50% of RAM size. Limit the size to 4GB. - # And enable lz4 zram compression for Go targets. - - let RamSizeGB="( $MemTotal / 1048576 ) + 1" - diskSizeUnit=M - if [ $RamSizeGB -le 2 ]; then - let zRamSizeMB="( $RamSizeGB * 1024 ) * 3 / 4" - else - let zRamSizeMB="( $RamSizeGB * 1024 ) / 2" - fi - - # use MB avoid 32 bit overflow - if [ $zRamSizeMB -gt 4096 ]; then - let zRamSizeMB=4096 - fi - - if [ "$low_ram" == "true" ]; then - echo lz4 > /sys/block/zram0/comp_algorithm - fi - - if [ -f /sys/block/zram0/disksize ]; then - if [ -f /sys/block/zram0/use_dedup ]; then - echo 1 > /sys/block/zram0/use_dedup - fi - echo "$zRamSizeMB""$diskSizeUnit" > /sys/block/zram0/disksize - - # ZRAM may use more memory than it saves if SLAB_STORE_USER - # debug option is enabled. - if [ -e /sys/kernel/slab/zs_handle ]; then - echo 0 > /sys/kernel/slab/zs_handle/store_user - fi - if [ -e /sys/kernel/slab/zspage ]; then - echo 0 > /sys/kernel/slab/zspage/store_user - fi - - mkswap /dev/block/zram0 - swapon /dev/block/zram0 -p 32758 - fi -} - -function configure_read_ahead_kb_values() { - MemTotalStr=`cat /proc/meminfo | grep MemTotal` - MemTotal=${MemTotalStr:16:8} - - dmpts=$(ls /sys/block/*/queue/read_ahead_kb | grep -e dm -e mmc) - - # Set 128 for <= 3GB & - # set 512 for >= 4GB targets. - if [ $MemTotal -le 3145728 ]; then - ra_kb=128 - else - ra_kb=512 - fi - if [ -f /sys/block/mmcblk0/bdi/read_ahead_kb ]; then - echo $ra_kb > /sys/block/mmcblk0/bdi/read_ahead_kb - fi - if [ -f /sys/block/mmcblk0rpmb/bdi/read_ahead_kb ]; then - echo $ra_kb > /sys/block/mmcblk0rpmb/bdi/read_ahead_kb - fi - for dm in $dmpts; do - echo $ra_kb > $dm - done -} - -function configure_memory_parameters() { - # Set Memory parameters. - # - # Set per_process_reclaim tuning parameters - # All targets will use vmpressure range 50-70, - # All targets will use 512 pages swap size. - # - # Set Low memory killer minfree parameters - # 32 bit Non-Go, all memory configurations will use 15K series - # 32 bit Go, all memory configurations will use uLMK + Memcg - # 64 bit will use Google default LMK series. - # - # Set ALMK parameters (usually above the highest minfree values) - # vmpressure_file_min threshold is always set slightly higher - # than LMK minfree's last bin value for all targets. It is calculated as - # vmpressure_file_min = (last bin - second last bin ) + last bin - # - # Set allocstall_threshold to 0 for all targets. - # - - ProductName=`getprop ro.product.name` - - configure_zram_parameters - configure_read_ahead_kb_values - echo 100 > /proc/sys/vm/swappiness - - # 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 - - #Spawn 2 kswapd threads which can help in fast reclaiming of pages - #yangbq2 change kswapd threads to one thread - echo 1 > /proc/sys/vm/kswapd_threads - #yangbq2 disable watermark boost - echo 0 > /proc/sys/vm/watermark_boost_factor -} - -rev=`cat /sys/devices/soc0/revision` -ddr_type=`od -An -tx /proc/device-tree/memory/ddr_device_type` -ddr_type4="07" -ddr_type5="08" - -# Core control parameters for gold -# Prefer CPU4 for isolation based on the thermal characteristics. -echo 1 0 0 > /sys/devices/system/cpu/cpu4/core_ctl/not_preferred -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 71 95 > /proc/sys/kernel/sched_upmigrate -echo 65 85 > /proc/sys/kernel/sched_downmigrate -echo 100 > /proc/sys/kernel/sched_group_upmigrate -echo 85 > /proc/sys/kernel/sched_group_downmigrate -echo 1 > /proc/sys/kernel/sched_walt_rotate_big_tasks - - -echo 0 > /proc/sys/kernel/sched_coloc_busy_hysteresis_enable_cpus - -# 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/down_rate_limit_us -echo 0 > /sys/devices/system/cpu/cpufreq/policy0/schedutil/up_rate_limit_us -echo 1152000 > /sys/devices/system/cpu/cpufreq/policy0/schedutil/hispeed_freq -echo 691200 > /sys/devices/system/cpu/cpufreq/policy0/scaling_min_freq -echo 0 > /sys/devices/system/cpu/cpufreq/policy0/schedutil/pl - -# configure input boost settings -echo "0:1152000" > /sys/devices/system/cpu/cpu_boost/input_boost_freq -echo 120 > /sys/devices/system/cpu/cpu_boost/input_boost_ms - -# configure governor settings for gold cluster -echo "schedutil" > /sys/devices/system/cpu/cpufreq/policy4/scaling_governor -echo 0 > /sys/devices/system/cpu/cpufreq/policy4/schedutil/down_rate_limit_us -echo 0 > /sys/devices/system/cpu/cpufreq/policy4/schedutil/up_rate_limit_us -echo 1228800 > /sys/devices/system/cpu/cpufreq/policy4/schedutil/hispeed_freq -echo 691200 > /sys/devices/system/cpu/cpufreq/policy4/scaling_min_freq -echo 85 > /sys/devices/system/cpu/cpufreq/policy4/schedutil/hispeed_load -echo -6 > /sys/devices/system/cpu/cpu4/sched_load_boost -echo -6 > /sys/devices/system/cpu/cpu5/sched_load_boost -echo -6 > /sys/devices/system/cpu/cpu6/sched_load_boost -echo 0 > /sys/devices/system/cpu/cpufreq/policy4/schedutil/rtg_boost_freq -echo 0 > /sys/devices/system/cpu/cpufreq/policy4/schedutil/pl - -# configure governor settings for gold+ cluster -echo "schedutil" > /sys/devices/system/cpu/cpufreq/policy7/scaling_governor -echo 0 > /sys/devices/system/cpu/cpufreq/policy7/schedutil/down_rate_limit_us -echo 0 > /sys/devices/system/cpu/cpufreq/policy7/schedutil/up_rate_limit_us -echo 1324800 > /sys/devices/system/cpu/cpufreq/policy7/schedutil/hispeed_freq -echo 806400 > /sys/devices/system/cpu/cpufreq/policy7/scaling_min_freq -echo 85 > /sys/devices/system/cpu/cpufreq/policy7/schedutil/hispeed_load -echo -6 > /sys/devices/system/cpu/cpu7/sched_load_boost -echo 0 > /sys/devices/system/cpu/cpufreq/policy7/schedutil/rtg_boost_freq -echo 0 > /sys/devices/system/cpu/cpufreq/policy7/schedutil/pl - -# colocation V3 settings -echo 691200 > /sys/devices/system/cpu/cpufreq/policy0/schedutil/rtg_boost_freq -echo 51 > /proc/sys/kernel/sched_min_task_util_for_boost -echo 35 > /proc/sys/kernel/sched_min_task_util_for_colocation -echo 20000000 > /proc/sys/kernel/sched_task_unfilter_period - -# Enable conservative pl -echo 1 > /proc/sys/kernel/sched_conservative_pl - -# configure RIMPS for L3 DCVS -for c0_rimps_l3 in /sys/devices/system/cpu/memlat/c0_memlat/cpu0-cpu-l3-lat -do - cat $c0_rimps_l3/available_frequencies | cut -d " " -f 1 > $c0_rimps_l3/min_freq - echo 400 > $c0_rimps_l3/ratio_ceil - echo 3 > $c0_rimps_l3/sample_ms -done - -for c4_rimps_l3 in /sys/devices/system/cpu/memlat/c4_memlat/cpu4-cpu-l3-lat -do - cat $c4_rimps_l3/available_frequencies | cut -d " " -f 1 > $c4_rimps_l3/min_freq - echo 4000 > $c4_rimps_l3/ratio_ceil - echo 3 > $c4_rimps_l3/sample_ms - echo 60 > $c4_rimps_l3/l2wb_pct - echo 25000 > $c4_rimps_l3/l2wb_filter -done - -for c7_rimps_l3 in /sys/devices/system/cpu/memlat/c7_memlat/cpu7-cpu-l3-lat -do - cat $c7_rimps_l3/available_frequencies | cut -d " " -f 1 > $c7_rimps_l3/min_freq - echo 20000 > $c7_rimps_l3/ratio_ceil - echo 3 > $c7_rimps_l3/sample_ms - echo 60 > $c7_rimps_l3/l2wb_pct - echo 25000 > $c7_rimps_l3/l2wb_filter -done - - -# configure bus-dcvs -for device in /sys/devices/platform/soc -do - for cpubw in $device/*cpu-cpu-llcc-bw/devfreq/*cpu-cpu-llcc-bw - do - cat $cpubw/available_frequencies | cut -d " " -f 1 > $cpubw/min_freq - echo "2288 4577 7110 9155 12298 14236 15258" > $cpubw/bw_hwmon/mbps_zones - echo 4 > $cpubw/bw_hwmon/sample_ms - echo 68 > $cpubw/bw_hwmon/io_percent - echo 20 > $cpubw/bw_hwmon/hist_memory - echo 0 > $cpubw/bw_hwmon/hyst_length - echo 80 > $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 40 > $cpubw/polling_interval - done - - for llccbw in $device/*cpu-llcc-ddr-bw/devfreq/*cpu-llcc-ddr-bw - do - cat $llccbw/available_frequencies | cut -d " " -f 1 > $llccbw/min_freq - if [ ${ddr_type:4:2} == $ddr_type4 ]; then - echo "1144 1720 2086 2929 3879 5931 6515 8136" > $llccbw/bw_hwmon/mbps_zones - elif [ ${ddr_type:4:2} == $ddr_type5 ]; then - echo "1144 1720 2086 2929 3879 5931 6515 7980 12191" > $llccbw/bw_hwmon/mbps_zones - fi - echo 4 > $llccbw/bw_hwmon/sample_ms - echo 68 > $llccbw/bw_hwmon/io_percent - echo 20 > $llccbw/bw_hwmon/hist_memory - echo 0 > $llccbw/bw_hwmon/hyst_length - echo 80 > $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 48 > $llccbw/polling_interval - done - - for l3bw in $device/*snoop-l3-bw/devfreq/*snoop-l3-bw - do - cat $l3bw/available_frequencies | cut -d " " -f 1 > $l3bw/min_freq - echo 4 > $l3bw/bw_hwmon/sample_ms - echo 10 > $l3bw/bw_hwmon/io_percent - echo 20 > $l3bw/bw_hwmon/hist_memory - echo 10 > $l3bw/bw_hwmon/hyst_length - echo 0 > $l3bw/bw_hwmon/down_thres - echo 0 > $l3bw/bw_hwmon/guard_band_mbps - echo 0 > $l3bw/bw_hwmon/up_scale - echo 1600 > $l3bw/bw_hwmon/idle_mbps - echo 9155 > $l3bw/max_freq - echo 40 > $l3bw/polling_interval - done - - # configure mem_latency settings for LLCC and DDR scaling and qoslat - for memlat in $device/*lat/devfreq/*lat - do - cat $memlat/available_frequencies | cut -d " " -f 1 > $memlat/min_freq - echo 8 > $memlat/polling_interval - echo 400 > $memlat/mem_latency/ratio_ceil - done - - # configure compute settings for silver latfloor - for latfloor in $device/*cpu0-cpu*latfloor/devfreq/*cpu0-cpu*latfloor - do - cat $latfloor/available_frequencies | cut -d " " -f 1 > $latfloor/min_freq - echo 8 > $latfloor/polling_interval - done - - # configure compute settings for gold latfloor - for latfloor in $device/*cpu4-cpu*latfloor/devfreq/*cpu4-cpu*latfloor - do - cat $latfloor/available_frequencies | cut -d " " -f 1 > $latfloor/min_freq - echo 8 > $latfloor/polling_interval - done - - # configure mem_latency settings for prime latfloor - for latfloor in $device/*cpu7-cpu*latfloor/devfreq/*cpu7-cpu*latfloor - do - cat $latfloor/available_frequencies | cut -d " " -f 1 > $latfloor/min_freq - echo 8 > $latfloor/polling_interval - echo 25000 > $latfloor/mem_latency/ratio_ceil - done - - # qoslat ratio ceil - for qoslat in $device/*qoslat/devfreq/*qoslat - do - echo 50 > $qoslat/mem_latency/ratio_ceil - done -done - -#Enable sleep and set s2idle as default suspend mode -echo N > /sys/module/lpm_levels/parameters/sleep_disabled -echo s2idle > /sys/power/mem_sleep - -configure_memory_parameters - -setprop vendor.post_boot.parsed 1 diff --git a/rootdir/bin/init.kernel.post_boot.sh b/rootdir/bin/init.kernel.post_boot.sh deleted file mode 100755 index b855bfe..0000000 --- a/rootdir/bin/init.kernel.post_boot.sh +++ /dev/null @@ -1,52 +0,0 @@ -#============================================================================= -# Copyright (c) 2019-2021 Qualcomm Technologies, Inc. -# All Rights Reserved. -# Confidential and Proprietary - Qualcomm Technologies, Inc. -# -# Copyright (c) 2009-2012, 2014-2019, The Linux Foundation. All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions are met: -# * Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# * Redistributions in binary form must reproduce the above copyright -# notice, this list of conditions and the following disclaimer in the -# documentation and/or other materials provided with the distribution. -# * Neither the name of The Linux Foundation nor -# the names of its contributors may be used to endorse or promote -# products derived from this software without specific prior written -# permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -# IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -# NON-INFRINGEMENT ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR -# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, -# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, -# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; -# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, -# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR -# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF -# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -#============================================================================= - -if [ -f /sys/devices/soc0/soc_id ]; then - platformid=`cat /sys/devices/soc0/soc_id` -fi - -case "$platformid" in - "415"|"439"|"456"|"501"|"502") - /vendor/bin/sh /vendor/bin/init.kernel.post_boot-lahaina.sh - ;; - - "450") - /vendor/bin/sh /vendor/bin/init.kernel.post_boot-shima.sh - ;; - "475"|"499"|"487"|"488"|"498"|"497"|"515") - /vendor/bin/sh /vendor/bin/init.kernel.post_boot-yupik.sh - ;; - *) - echo "***WARNING***: Invalid SoC ID\n\t No postboot settings applied!!\n" - ;; -esac - diff --git a/rootdir/bin/init.qcom.sensors.sh b/rootdir/bin/init.qcom.sensors.sh deleted file mode 100755 index dcc0556..0000000 --- a/rootdir/bin/init.qcom.sensors.sh +++ /dev/null @@ -1,33 +0,0 @@ -#!/vendor/bin/sh -# Copyright (c) 2020 The Linux Foundation. All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions are met: -# * Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# * Redistributions in binary form must reproduce the above copyright -# notice, this list of conditions and the following disclaimer in the -# documentation and/or other materials provided with the distribution. -# * Neither the name of The Linux Foundation nor -# the names of its contributors may be used to endorse or promote -# products derived from this software without specific prior written -# permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -# IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -# NON-INFRINGEMENT ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR -# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, -# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, -# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; -# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, -# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR -# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF -# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -# - -# -# Function to start sensors for SSC enabled platforms -# -cp /vendor/etc/sensors/scripts/* /data/vendor/sensors/scripts/ -chmod a+rw /data/vendor/sensors/scripts/* diff --git a/rootdir/bin/init.qti.chg_policy.sh b/rootdir/bin/init.qti.chg_policy.sh deleted file mode 100755 index fe679b3..0000000 --- a/rootdir/bin/init.qti.chg_policy.sh +++ /dev/null @@ -1,48 +0,0 @@ -#! /vendor/bin/sh - -# -# Copyright (c) 2019-2021 Qualcomm Technologies, Inc. -# All Rights Reserved. -# Confidential and Proprietary - Qualcomm Technologies, Inc. -# -# Copyright (c) 2019 The Linux Foundation. All rights reserved. -# - -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 ] || [ "$soc_id" -eq 475 ] || [ "$soc_id" -eq 497 ] || [ "$soc_id" -eq 498 ] || [ "$soc_id" -eq 499 ] || [ "$soc_id" -eq 515 ]; then - setprop persist.vendor.hvdcp_opti.start 2 - exit 0 -fi - -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 - - 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* ]] || [[ "$devname" == *div2-cp* ]]; then - find /sys/bus/iio/devices/iio:device$i/ -type f -maxdepth 1 | xargs chown system.system - fi - done -fi - -setprop persist.vendor.hvdcp_opti.start 1 diff --git a/rootdir/bin/init.qti.kernel.sh b/rootdir/bin/init.qti.kernel.sh deleted file mode 100755 index 404e27b..0000000 --- a/rootdir/bin/init.qti.kernel.sh +++ /dev/null @@ -1,56 +0,0 @@ -#! /vendor/bin/sh -#============================================================================= -# Copyright (c) 2019-2020 Qualcomm Technologies, Inc. -# All Rights Reserved. -# Confidential and Proprietary - Qualcomm Technologies, Inc. -# -# Copyright (c) 2009-2012, 2014-2019, The Linux Foundation. All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions are met: -# * Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# * Redistributions in binary form must reproduce the above copyright -# notice, this list of conditions and the following disclaimer in the -# documentation and/or other materials provided with the distribution. -# * Neither the name of The Linux Foundation nor -# the names of its contributors may be used to endorse or promote -# products derived from this software without specific prior written -# permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -# IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -# NON-INFRINGEMENT ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR -# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, -# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, -# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; -# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, -# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR -# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF -# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -#============================================================================= - -verify_pasr_support() -{ - ddr_type=`od -An -tx /proc/device-tree/memory/ddr_device_type` - ddr_type5="08" - - if [ -d /sys/kernel/mem-offline ]; then - #only LPDDR5 supports PAAR - if [ ${ddr_type:4:2} != $ddr_type5 ]; then - setprop vendor.pasr.activemode.enabled false - fi - - setprop vendor.pasr.enabled true - fi -} - -start_msm_irqbalance() -{ - if [ -f /vendor/bin/msm_irqbalance ]; then - start vendor.msm_irqbalance - fi -} -start_msm_irqbalance -verify_pasr_support diff --git a/rootdir/bin/init.qti.qcv.sh b/rootdir/bin/init.qti.qcv.sh deleted file mode 100755 index b6891e3..0000000 --- a/rootdir/bin/init.qti.qcv.sh +++ /dev/null @@ -1,27 +0,0 @@ -#! /vendor/bin/sh -#============================================================================= -# Copyright (c) 2020-21 Qualcomm Technologies, Inc. -# All Rights Reserved. -# Confidential and Proprietary - Qualcomm Technologies, Inc. -#============================================================================= - -soc_id=`cat /sys/devices/soc0/soc_id` 2> /dev/null - -# Store soc_id in ro.vendor.qti.soc_id -setprop ro.vendor.qti.soc_id $soc_id - -# For chipsets in QCV family, convert soc_id to soc_name -# and store it in ro.vendor.qti.soc_name. -if [ "$soc_id" -eq 415 ] || [ "$soc_id" -eq 439 ] || [ "$soc_id" -eq 456 ] || - [ "$soc_id" -eq 501 ] || [ "$soc_id" -eq 502 ]; then - setprop ro.vendor.qti.soc_name lahaina - setprop ro.vendor.qti.soc_model SM8350 -elif [ "$soc_id" -eq 450 ]; then - setprop ro.vendor.qti.soc_name shima - setprop ro.vendor.qti.soc_model SM7350 -elif [ "$soc_id" -eq 475 ] || [ "$soc_id" -eq 499 ] || - [ "$soc_id" -eq 497 ] || [ "$soc_id" -eq 498 ] || - [ "$soc_id" -eq 515 ]; then - setprop ro.vendor.qti.soc_name yupik - setprop ro.vendor.qti.soc_model SM7325 -fi diff --git a/rootdir/bin/vendor_modprobe.sh b/rootdir/bin/vendor_modprobe.sh deleted file mode 100755 index cb54050..0000000 --- a/rootdir/bin/vendor_modprobe.sh +++ /dev/null @@ -1,38 +0,0 @@ -#! /vendor/bin/sh -#============================================================================= -# Copyright (c) 2019-2020 Qualcomm Technologies, Inc. -# All Rights Reserved. -# Confidential and Proprietary - Qualcomm Technologies, Inc. -#============================================================================= - -#default to /vendor/lib/modules -MODULES_PATH="/vendor/lib/modules/" -GKI_MOD_PATH="/vendor/lib/modules/5.4-gki" - -MODPROBE="/vendor/bin/modprobe" -MODULES=`${MODPROBE} -d ${MODULES_PATH} -l` - -# Find the first non-blacklisted module and try -# inserting it. If insertion fails the module is not -# compatible with the current kernel. Change the modules -# directory to gki. -for MODULE in ${MODULES}; do - cat ${MODULES_PATH}/modules.blocklist | grep $MODULE - if [ $? -ne 0 ]; then - break - fi -done - -${MODPROBE} -a -b -d ${MODULES_PATH} ${MODULE} -if [ $? -ne 0 ];then - MODULES_PATH=$GKI_MOD_PATH - MODULES=`${MODPROBE} -d ${MODULES_PATH} -l` -fi - -# Iterate over module list and modprobe them in background. -for MODULE in ${MODULES}; do - ${MODPROBE} -a -b -d ${MODULES_PATH} ${MODULE} & -done - -# Wait until all the modprobes are finished -wait diff --git a/rootdir/etc/init/hw/init.qti.kernel.rc b/rootdir/etc/init/hw/init.qti.kernel.rc deleted file mode 100644 index d81da2e..0000000 --- a/rootdir/etc/init/hw/init.qti.kernel.rc +++ /dev/null @@ -1,174 +0,0 @@ -#============================================================================= -# Copyright (c) 2019-2021 Qualcomm Technologies, Inc. -# All Rights Reserved. -# Confidential and Proprietary - Qualcomm Technologies, Inc. -# -# Copyright (c) 2009-2012, 2014-2019, The Linux Foundation. All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions are met: -# * Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# * Redistributions in binary form must reproduce the above copyright -# notice, this list of conditions and the following disclaimer in the -# documentation and/or other materials provided with the distribution. -# * Neither the name of The Linux Foundation nor -# the names of its contributors may be used to endorse or promote -# products derived from this software without specific prior written -# permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -# IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -# NON-INFRINGEMENT ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR -# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, -# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, -# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; -# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, -# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR -# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF -# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -#============================================================================= - -on early-init - mount debugfs debugfs /sys/kernel/debug - chmod 0755 /sys/kernel/debug - - # Mount tracefs in /sys/kernel/tracing as CONFIG_DEBUG_FS might be - # disabled and /sys/kernel/debug/tracing might not be available - mount tracefs tracefs /sys/kernel/tracing - chmod 0755 /sys/kernel/tracing - - chown root system /dev/kmsg - chmod 0620 /dev/kmsg - - write /proc/sys/kernel/sched_boost 1 - - write /proc/sys/kernel/firmware_config/force_sysfs_fallback 1 - -on init - # Create cgroup mount point for memory - mkdir /sys/fs/cgroup/memory/bg 0750 root system - write /sys/fs/cgroup/memory/bg/memory.swappiness 140 - write /sys/fs/cgroup/memory/bg/memory.move_charge_at_immigrate 1 - chown root system /sys/fs/cgroup/memory/bg/tasks - chmod 0660 /sys/fs/cgroup/memory/bg/tasks - - # update scheduler tunables - write /dev/cpuctl/foreground/cpu.uclamp.sched_boost_no_override 1 - write /dev/cpuctl/top-app/cpu.uclamp.sched_boost_no_override 1 - write /dev/cpuctl/background/cpu.uclamp.colocate 0 - write /dev/cpuctl/foreground/cpu.uclamp.colocate 0 - write /dev/cpuctl/top-app/cpu.uclamp.colocate 1 - -on post-fs - chmod 0755 /sys/kernel/debug/tracing - - # set aggressive read ahead for dm-0 and dm-1 during boot up - write /sys/block/dm-0/queue/read_ahead_kb 2048 - write /sys/block/dm-1/queue/read_ahead_kb 2048 - write /sys/block/dm-2/queue/read_ahead_kb 2048 - -on early-boot - # Allow subsystem (modem etc) debugging - write /sys/kernel/boot_adsp/boot 1 - write /sys/kernel/boot_cdsp/boot 1 - write /sys/kernel/boot_slpi/boot 1 - write /sys/devices/virtual/cvp/cvp/boot 1 - -on boot - # Set the console loglevel to < KERN_WARN - # Set the default message loglevel to KERN_INFO - write /proc/sys/kernel/printk "4 6 1 7" - - # Allow access to emmc rawdump block partition and dload sysfs node - chown root system /dev/block/bootdevice/by-name/rawdump - chmod 0660 /dev/block/bootdevice/by-name/rawdump - chown root system /sys/kernel/dload/emmc_dload - chmod 0660 /sys/kernel/dload/emmc_dload - chown root system /dev/block/bootdevice/by-name/ramdump - chmod 0660 /dev/block/bootdevice/by-name/ramdump - chown root system /sys/kernel/dload/dload_mode - chmod 0660 /sys/kernel/dload/dload_mode - - # set the io-scheduler to bfq on all mq support devices - write /sys/block/sda/queue/scheduler bfq - write /sys/block/sdb/queue/scheduler bfq - write /sys/block/sdc/queue/scheduler bfq - write /sys/block/sdd/queue/scheduler bfq - write /sys/block/sde/queue/scheduler bfq - write /sys/block/sdf/queue/scheduler bfq - write /sys/block/sdg/queue/scheduler bfq - write /sys/block/sdh/queue/scheduler bfq - write /sys/class/block/mmcblk0/queue/scheduler bfq - write /sys/class/block/mmcblk1/queue/scheduler bfq - - # update io-scheduler tunables - write /sys/block/sda/queue/iosched/slice_idle 0 - write /sys/block/sdb/queue/iosched/slice_idle 0 - write /sys/block/sdc/queue/iosched/slice_idle 0 - write /sys/block/sdd/queue/iosched/slice_idle 0 - write /sys/block/sde/queue/iosched/slice_idle 0 - write /sys/block/sdf/queue/iosched/slice_idle 0 - write /sys/block/sdg/queue/iosched/slice_idle 0 - write /sys/block/sdh/queue/iosched/slice_idle 0 - write /sys/class/block/mmcblk0/queue/iosched/slice_idle 0 - write /sys/class/block/mmcblk1/queue/iosched/slice_idle 0 - -on post-fs-data - # Create directory used for dump collection - mkdir /data/vendor/ssrdump 0770 root system - -on property:persist.sys.ssr.enable_debug=* - write /sys/module/subsys_pil_tz/parameters/enable_debug ${persist.sys.ssr.enable_debug} - -on property:persist.sys.mba_boot_timeout=* - write /sys/module/pil_msa/parameters/pbl_mba_boot_timeout_ms ${persist.sys.mba_boot_timeout} - -on property:persist.sys.modem_auth_timeout=* - write /sys/module/pil_msa/parameters/modem_auth_timeout_ms ${persist.sys.modem_auth_timeout} - -on property:persist.sys.pil_proxy_timeout=* - write /sys/module/peripheral_loader/parameters/proxy_timeout_ms ${persist.sys.pil_proxy_timeout} - -on property:persist.vendor.ssr.enable_ramdumps=1 - write /sys/module/subsystem_restart/parameters/enable_ramdumps 1 - -on property:persist.vendor.ssr.enable_ramdumps=0 - write /sys/module/subsystem_restart/parameters/enable_ramdumps 0 - -on property:persist.vendor.sys.rawdump_copy=1 - write /sys/kernel/dload/emmc_dload 1 - -on property:persist.vendor.sys.rawdump_copy=0 - write /sys/kernel/dload/emmc_dload 0 - -service kernel-boot /vendor/bin/sh /vendor/bin/init.qti.kernel.sh - class core - user root - group root - disabled - oneshot - -service kernel-post-boot /vendor/bin/sh /vendor/bin/init.kernel.post_boot.sh - class core - user root - group root system wakelock graphics - disabled - oneshot - -on property:sys.boot_completed=1 - write /dev/kmsg "Boot completed " - #Reset read ahead for dm-0, dm-1 and dm-2 to 512kb - write /sys/block/dm-0/queue/read_ahead_kb 512 - write /sys/block/dm-1/queue/read_ahead_kb 512 - write /sys/block/dm-2/queue/read_ahead_kb 512 - write /proc/sys/vm/page-cluster 0 - start kernel-boot - start kernel-post-boot - -service vendor.msm_irqbalance /vendor/bin/msm_irqbalance -f /system/vendor/etc/msm_irqbalance.conf - class core - user root - group root - disabled diff --git a/rootdir/etc/init/init.qti.qcv.rc b/rootdir/etc/init/init.qti.qcv.rc deleted file mode 100644 index 1904162..0000000 --- a/rootdir/etc/init/init.qti.qcv.rc +++ /dev/null @@ -1,12 +0,0 @@ -#! /vendor/etc/init -#============================================================================= -# Copyright (c) 2020 Qualcomm Technologies, Inc. -# All Rights Reserved. -# Confidential and Proprietary - Qualcomm Technologies, Inc. -#============================================================================= - -on early-init - # Set ro.boot.product.vendor.sku to soc_name - exec u:r:vendor_qti_init_shell:s0 -- /vendor/bin/init.qti.qcv.sh - setprop ro.boot.product.vendor.sku ${ro.vendor.qti.soc_name} - setprop ro.soc.model ${ro.vendor.qti.soc_model} \ No newline at end of file