diff --git a/src/hardware.cpp b/src/hardware.cpp index ef1ba23..c56aa32 100644 --- a/src/hardware.cpp +++ b/src/hardware.cpp @@ -474,7 +474,7 @@ cpufreq_type HardwareInfo::checkCurrentCPUFreqPolicy() { if (cpuFreq) { if (!gov.isNull()) { kdDebug() << "got CPU Freq gov: " << gov << endl; - if ((gov == "ondemand") || (gov == "userspace") || (gov == "conservative")) { + if ((gov == "schedutil") || (gov == "ondemand") || (gov == "userspace") || (gov == "conservative")) { _current = DYNAMIC; } else if (gov == "powersave") { _current = POWERSAVE; @@ -1026,9 +1026,15 @@ bool HardwareInfo::setCPUFreq ( cpufreq_type cpufreq, int limit ) { TQStringList dynamic; if (checkCurrentCPUFreqPolicy() == cpufreq) { +#if LINUX_VERSION_CODE < KERNEL_VERSION(4,9,5) if (cpufreq == DYNAMIC && !cpuFreqGovernor.startsWith("ondemand")) { kdDebug() << "CPU Freq Policy is already DYNAMIC, but not governor is currently " << "not 'ondemand'. Try to set ondemand governor." << endl; +#else + if (cpufreq == DYNAMIC && !cpuFreqGovernor.startsWith("schedutil")) { + kdDebug() << "CPU Freq Policy is already DYNAMIC, but not governor is currently " + << "not 'schedutil'. Try to set schedutil governor." << endl; +#endif } else { kdDebug() << "Didn't change Policy, was already set." << endl; return true; @@ -1043,7 +1049,7 @@ bool HardwareInfo::setCPUFreq ( cpufreq_type cpufreq, int limit ) { } break; case DYNAMIC: - dynamic << "ondemand" << "userspace" << "conservative"; + dynamic << "schedutil" << "ondemand" << "userspace" << "conservative"; for (TQStringList::Iterator it = dynamic.begin(); it != dynamic.end(); it++){ kdDebug() << "Try to set dynamic CPUFreq to: " << *it << endl;