* [PATCH v3 1/2] power: enable CPPC support in power library [not found] <20240906210637.630356> @ 2024-10-10 14:17 ` Wathsala Vithanage 2024-10-10 14:17 ` [PATCH v3 2/2] power: detect supported driver Wathsala Vithanage 2024-10-10 21:44 ` [PATCH v3 1/2] power: enable CPPC support in power library Thomas Monjalon 0 siblings, 2 replies; 4+ messages in thread From: Wathsala Vithanage @ 2024-10-10 14:17 UTC (permalink / raw) To: dev, Anatoly Burakov, David Hunt, Sivaprasad Tummala Cc: stable, Wathsala Vithanage, Dhruv Tripathi Power library already supports Linux CPPC driver. Enable its use and fix the name of the CPPC driver name. Signed-off-by: Wathsala Vithanage <wathsala.vithanage@arm.com> Reviewed-by: Dhruv Tripathi <dhruv.tripathi@arm.com> --- lib/power/power_cppc_cpufreq.c | 2 +- lib/power/rte_power_pmd_mgmt.c | 11 ++++++----- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/lib/power/power_cppc_cpufreq.c b/lib/power/power_cppc_cpufreq.c index 32aaacb948..e68b39b424 100644 --- a/lib/power/power_cppc_cpufreq.c +++ b/lib/power/power_cppc_cpufreq.c @@ -36,7 +36,7 @@ #define POWER_SYSFILE_SYS_MAX \ "/sys/devices/system/cpu/cpu%u/cpufreq/cpuinfo_max_freq" -#define POWER_CPPC_DRIVER "cppc-cpufreq" +#define POWER_CPPC_DRIVER "cppc_cpufreq" #define BUS_FREQ 100000 enum power_state { diff --git a/lib/power/rte_power_pmd_mgmt.c b/lib/power/rte_power_pmd_mgmt.c index b1c18a5f56..830a6c7a97 100644 --- a/lib/power/rte_power_pmd_mgmt.c +++ b/lib/power/rte_power_pmd_mgmt.c @@ -419,11 +419,12 @@ check_scale(unsigned int lcore) { enum power_management_env env; - /* only PSTATE and ACPI modes are supported */ + /* only PSTATE, AMD-PSTATE, ACPI and CPPC modes are supported */ if (!rte_power_check_env_supported(PM_ENV_ACPI_CPUFREQ) && !rte_power_check_env_supported(PM_ENV_PSTATE_CPUFREQ) && - !rte_power_check_env_supported(PM_ENV_AMD_PSTATE_CPUFREQ)) { - POWER_LOG(DEBUG, "Neither ACPI nor PSTATE modes are supported"); + !rte_power_check_env_supported(PM_ENV_AMD_PSTATE_CPUFREQ) && + !rte_power_check_env_supported(PM_ENV_CPPC_CPUFREQ)) { + POWER_LOG(DEBUG, "Only ACPI, PSTATE, AMD-PSTATE, or CPPC modes are supported"); return -ENOTSUP; } /* ensure we could initialize the power library */ @@ -433,8 +434,8 @@ check_scale(unsigned int lcore) /* ensure we initialized the correct env */ env = rte_power_get_env(); if (env != PM_ENV_ACPI_CPUFREQ && env != PM_ENV_PSTATE_CPUFREQ && - env != PM_ENV_AMD_PSTATE_CPUFREQ) { - POWER_LOG(DEBUG, "Neither ACPI nor PSTATE modes were initialized"); + env != PM_ENV_AMD_PSTATE_CPUFREQ && env != PM_ENV_CPPC_CPUFREQ) { + POWER_LOG(DEBUG, "Unable to initialize ACPI, PSTATE, AMD-PSTATE, or CPPC modes"); return -ENOTSUP; } -- 2.34.1 ^ permalink raw reply [flat|nested] 4+ messages in thread
* [PATCH v3 2/2] power: detect supported driver 2024-10-10 14:17 ` [PATCH v3 1/2] power: enable CPPC support in power library Wathsala Vithanage @ 2024-10-10 14:17 ` Wathsala Vithanage 2024-10-10 21:44 ` [PATCH v3 1/2] power: enable CPPC support in power library Thomas Monjalon 1 sibling, 0 replies; 4+ messages in thread From: Wathsala Vithanage @ 2024-10-10 14:17 UTC (permalink / raw) To: dev, Anatoly Burakov, David Hunt, Sivaprasad Tummala Cc: stable, Wathsala Vithanage, Dhruv Tripathi Check if the frequency scaling driver is supported before attempting to initialize. Signed-off-by: Wathsala Vithanage <wathsala.vithanage@arm.com> Reviewed-by: Dhruv Tripathi <dhruv.tripathi@arm.com> --- lib/power/power_acpi_cpufreq.c | 6 ++++++ lib/power/power_amd_pstate_cpufreq.c | 6 ++++++ lib/power/power_cppc_cpufreq.c | 6 ++++++ lib/power/power_pstate_cpufreq.c | 6 ++++++ 4 files changed, 24 insertions(+) diff --git a/lib/power/power_acpi_cpufreq.c b/lib/power/power_acpi_cpufreq.c index 81996e1c13..abad53bef1 100644 --- a/lib/power/power_acpi_cpufreq.c +++ b/lib/power/power_acpi_cpufreq.c @@ -236,6 +236,12 @@ power_acpi_cpufreq_init(unsigned int lcore_id) struct acpi_power_info *pi; uint32_t exp_state; + if (!power_acpi_cpufreq_check_supported()) { + POWER_LOG(ERR, "%s driver is not supported", + POWER_ACPI_DRIVER); + return -1; + } + if (lcore_id >= RTE_MAX_LCORE) { POWER_LOG(ERR, "Lcore id %u can not exceeds %u", lcore_id, RTE_MAX_LCORE - 1U); diff --git a/lib/power/power_amd_pstate_cpufreq.c b/lib/power/power_amd_pstate_cpufreq.c index 090a0d96cb..4809d45a22 100644 --- a/lib/power/power_amd_pstate_cpufreq.c +++ b/lib/power/power_amd_pstate_cpufreq.c @@ -354,6 +354,12 @@ power_amd_pstate_cpufreq_init(unsigned int lcore_id) struct amd_pstate_power_info *pi; uint32_t exp_state; + if (!power_amd_pstate_cpufreq_check_supported()) { + POWER_LOG(ERR, "%s driver is not supported", + POWER_AMD_PSTATE_DRIVER); + return -1; + } + if (lcore_id >= RTE_MAX_LCORE) { POWER_LOG(ERR, "Lcore id %u can not exceeds %u", lcore_id, RTE_MAX_LCORE - 1U); diff --git a/lib/power/power_cppc_cpufreq.c b/lib/power/power_cppc_cpufreq.c index e68b39b424..e73f4520d0 100644 --- a/lib/power/power_cppc_cpufreq.c +++ b/lib/power/power_cppc_cpufreq.c @@ -340,6 +340,12 @@ power_cppc_cpufreq_init(unsigned int lcore_id) struct cppc_power_info *pi; uint32_t exp_state; + if (!power_cppc_cpufreq_check_supported()) { + POWER_LOG(ERR, "%s driver is not supported", + POWER_CPPC_DRIVER); + return -1; + } + if (lcore_id >= RTE_MAX_LCORE) { POWER_LOG(ERR, "Lcore id %u can not exceeds %u", lcore_id, RTE_MAX_LCORE - 1U); diff --git a/lib/power/power_pstate_cpufreq.c b/lib/power/power_pstate_cpufreq.c index 2343121621..1c2a91a178 100644 --- a/lib/power/power_pstate_cpufreq.c +++ b/lib/power/power_pstate_cpufreq.c @@ -542,6 +542,12 @@ power_pstate_cpufreq_init(unsigned int lcore_id) struct pstate_power_info *pi; uint32_t exp_state; + if (!power_pstate_cpufreq_check_supported()) { + POWER_LOG(ERR, "%s driver is not supported", + POWER_PSTATE_DRIVER); + return -1; + } + if (lcore_id >= RTE_MAX_LCORE) { POWER_LOG(ERR, "Lcore id %u can not exceed %u", lcore_id, RTE_MAX_LCORE - 1U); -- 2.34.1 ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH v3 1/2] power: enable CPPC support in power library 2024-10-10 14:17 ` [PATCH v3 1/2] power: enable CPPC support in power library Wathsala Vithanage 2024-10-10 14:17 ` [PATCH v3 2/2] power: detect supported driver Wathsala Vithanage @ 2024-10-10 21:44 ` Thomas Monjalon 2024-10-10 21:51 ` Wathsala Wathawana Vithanage 1 sibling, 1 reply; 4+ messages in thread From: Thomas Monjalon @ 2024-10-10 21:44 UTC (permalink / raw) To: Wathsala Vithanage Cc: dev, Anatoly Burakov, David Hunt, Sivaprasad Tummala, stable, Dhruv Tripathi 10/10/2024 16:17, Wathsala Vithanage: > Power library already supports Linux CPPC driver. Enable its use > and fix the name of the CPPC driver name. > > Signed-off-by: Wathsala Vithanage <wathsala.vithanage@arm.com> > Reviewed-by: Dhruv Tripathi <dhruv.tripathi@arm.com> Series applied with a little more details about being a real fix. ^ permalink raw reply [flat|nested] 4+ messages in thread
* RE: [PATCH v3 1/2] power: enable CPPC support in power library 2024-10-10 21:44 ` [PATCH v3 1/2] power: enable CPPC support in power library Thomas Monjalon @ 2024-10-10 21:51 ` Wathsala Wathawana Vithanage 0 siblings, 0 replies; 4+ messages in thread From: Wathsala Wathawana Vithanage @ 2024-10-10 21:51 UTC (permalink / raw) To: thomas Cc: dev, Anatoly Burakov, David Hunt, Sivaprasad Tummala, stable, Dhruv Tripathi, nd > > fix the name of the CPPC driver name. > > > > Signed-off-by: Wathsala Vithanage <wathsala.vithanage@arm.com> > > Reviewed-by: Dhruv Tripathi <dhruv.tripathi@arm.com> > > Series applied with a little more details about being a real fix. > > Thanks you Thomas. ^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2024-10-10 21:51 UTC | newest] Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- [not found] <20240906210637.630356> 2024-10-10 14:17 ` [PATCH v3 1/2] power: enable CPPC support in power library Wathsala Vithanage 2024-10-10 14:17 ` [PATCH v3 2/2] power: detect supported driver Wathsala Vithanage 2024-10-10 21:44 ` [PATCH v3 1/2] power: enable CPPC support in power library Thomas Monjalon 2024-10-10 21:51 ` Wathsala Wathawana Vithanage
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).