From 7c6983624ecc456dccea3059ad1ec46738aab125 Mon Sep 17 00:00:00 2001 From: chewitt Date: Mon, 2 Dec 2019 04:57:15 +0000 Subject: [PATCH] amlogic: fix cpufreq for SoCs with multiple cpu clusters --- .../Amlogic/packages/systemd/scripts/cpufreq | 20 ++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) diff --git a/projects/Amlogic/packages/systemd/scripts/cpufreq b/projects/Amlogic/packages/systemd/scripts/cpufreq index 8fb2b3976a..940e090a58 100755 --- a/projects/Amlogic/packages/systemd/scripts/cpufreq +++ b/projects/Amlogic/packages/systemd/scripts/cpufreq @@ -4,15 +4,21 @@ # Copyright (C) 2009-2015 Stephan Raue (stephan@openelec.tv) # Copyright (C) 2019-present Team LibreELEC (https://libreelec.tv) -SYS_CPUFREQ_GOV=$( cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor ) -SYS_ONDEMAND_DIR="/sys/devices/system/cpu/cpufreq/ondemand/" +SYS_CPUFREQ_GOV=$(cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor) -# Configure frequency scaling properties if [ "${SYS_CPUFREQ_GOV}" = "ondemand" ]; then - echo 1 > "${SYS_ONDEMAND_DIR}/io_is_busy" - echo 50 > "${SYS_ONDEMAND_DIR}/up_threshold" - echo 100000 > "${SYS_ONDEMAND_DIR}/sampling_rate" - echo 50 > "${SYS_ONDEMAND_DIR}/sampling_down_factor" + for io_is_busy in $(find /sys/devices/system/cpu -name io_is_busy); do + echo 1 > "${io_is_busy}" + done + for up_threshold in $(find /sys/devices/system/cpu -name up_threshold); do + echo 50 > "${up_threshold}" + done + for sampling_rate in $(find /sys/devices/system/cpu -name sampling_rate); do + echo 100000 > "${sampling_rate}" + done + for sampling_down_factor in $(find /sys/devices/system/cpu -name sampling_down_factor); do + echo 50 > "${sampling_down_factor}" + done else echo "cpufreq: settings not found for current cpu governor." | systemd-cat -p info fi