Hi, David Hunt,
Kindly ping. Could you please take a look at this patch?
Thanks,
Jie Hai
On 2023/1/31 10:58, Jie Hai wrote:
Currently the l3fwd-power only supports ACPI cpufreq and Pstate
cpufreq, This patch adds CPPC cpufreq.
Signed-off-by: Jie Hai <haij...@huawei.com>
---
examples/l3fwd-power/main.c | 9 ++++++---
1 file changed, 6 insertions(+), 3 deletions(-)
diff --git a/examples/l3fwd-power/main.c b/examples/l3fwd-power/main.c
index fd3ade330f82..5090d5598172 100644
--- a/examples/l3fwd-power/main.c
+++ b/examples/l3fwd-power/main.c
@@ -2453,9 +2453,10 @@ init_power_library(void)
/* we're not supporting the VM channel mode */
env = rte_power_get_env();
if (env != PM_ENV_ACPI_CPUFREQ &&
- env != PM_ENV_PSTATE_CPUFREQ) {
+ env != PM_ENV_PSTATE_CPUFREQ &&
+ env != PM_ENV_CPPC_CPUFREQ) {
RTE_LOG(ERR, POWER,
- "Only ACPI and PSTATE mode are supported\n");
+ "Only ACPI, PSTATE and CPPC mode are
supported\n");
return -1;
}
}
@@ -2639,12 +2640,14 @@ autodetect_mode(void)
/*
* Empty poll and telemetry modes have to be specifically requested to
* be enabled, but we can auto-detect between interrupt mode with or
- * without frequency scaling. Both ACPI and pstate can be used.
+ * without frequency scaling. Any of ACPI, pstate and CPPC can be used.
*/
if (rte_power_check_env_supported(PM_ENV_ACPI_CPUFREQ))
return APP_MODE_LEGACY;
if (rte_power_check_env_supported(PM_ENV_PSTATE_CPUFREQ))
return APP_MODE_LEGACY;
+ if (rte_power_check_env_supported(PM_ENV_CPPC_CPUFREQ))
+ return APP_MODE_LEGACY;
RTE_LOG(NOTICE, L3FWD_POWER, "Frequency scaling not supported, selecting interrupt-only mode\n");