Message ID | 20250306034402.50478-1-superm1@kernel.org (mailing list archive) |
---|---|
State | Accepted, archived |
Headers | show |
Series | platform/x86/amd: pmf: Fix missing hidden options for Smart PC | expand |
On 3/6/2025 09:14, Mario Limonciello wrote: > From: Mario Limonciello <mario.limonciello@amd.com> > > amd_pmf_get_slider_info() checks the current profile to report correct > value to the TA inputs. If hidden options are in use then the wrong > values will be reported to TA. > > Add the two compat options PLATFORM_PROFILE_BALANCED_PERFORMANCE and > PLATFORM_PROFILE_QUIET for this use. > > Reported-by: Yijun Shen <Yijun.Shen@dell.com> > Fixes: 9a43102daf64d ("platform/x86/amd: pmf: Add balanced-performance to hidden choices") > Fixes: 44e94fece5170 ("platform/x86/amd: pmf: Add 'quiet' to hidden choices") > Signed-off-by: Mario Limonciello <mario.limonciello@amd.com> Acked-by: Shyam Sundar S K <Shyam-sundar.S-k@amd.com> > --- > drivers/platform/x86/amd/pmf/spc.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/drivers/platform/x86/amd/pmf/spc.c b/drivers/platform/x86/amd/pmf/spc.c > index f34f3130c3307..1d90f9382024b 100644 > --- a/drivers/platform/x86/amd/pmf/spc.c > +++ b/drivers/platform/x86/amd/pmf/spc.c > @@ -219,12 +219,14 @@ static int amd_pmf_get_slider_info(struct amd_pmf_dev *dev, struct ta_pmf_enact_ > > switch (dev->current_profile) { > case PLATFORM_PROFILE_PERFORMANCE: > + case PLATFORM_PROFILE_BALANCED_PERFORMANCE: > val = TA_BEST_PERFORMANCE; > break; > case PLATFORM_PROFILE_BALANCED: > val = TA_BETTER_PERFORMANCE; > break; > case PLATFORM_PROFILE_LOW_POWER: > + case PLATFORM_PROFILE_QUIET: > val = TA_BEST_BATTERY; > break; > default:
On Wed, 5 Mar 2025, Mario Limonciello wrote: > From: Mario Limonciello <mario.limonciello@amd.com> > > amd_pmf_get_slider_info() checks the current profile to report correct > value to the TA inputs. If hidden options are in use then the wrong > values will be reported to TA. > > Add the two compat options PLATFORM_PROFILE_BALANCED_PERFORMANCE and > PLATFORM_PROFILE_QUIET for this use. > > Reported-by: Yijun Shen <Yijun.Shen@dell.com> > Fixes: 9a43102daf64d ("platform/x86/amd: pmf: Add balanced-performance to hidden choices") > Fixes: 44e94fece5170 ("platform/x86/amd: pmf: Add 'quiet' to hidden choices") > Signed-off-by: Mario Limonciello <mario.limonciello@amd.com> > --- > drivers/platform/x86/amd/pmf/spc.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/drivers/platform/x86/amd/pmf/spc.c b/drivers/platform/x86/amd/pmf/spc.c > index f34f3130c3307..1d90f9382024b 100644 > --- a/drivers/platform/x86/amd/pmf/spc.c > +++ b/drivers/platform/x86/amd/pmf/spc.c > @@ -219,12 +219,14 @@ static int amd_pmf_get_slider_info(struct amd_pmf_dev *dev, struct ta_pmf_enact_ > > switch (dev->current_profile) { > case PLATFORM_PROFILE_PERFORMANCE: > + case PLATFORM_PROFILE_BALANCED_PERFORMANCE: > val = TA_BEST_PERFORMANCE; > break; > case PLATFORM_PROFILE_BALANCED: > val = TA_BETTER_PERFORMANCE; > break; > case PLATFORM_PROFILE_LOW_POWER: > + case PLATFORM_PROFILE_QUIET: > val = TA_BEST_BATTERY; > break; > default: Hi Mario, Just for me to be sure what I'm supposed to do with all these patches related to this platform profile legacy handling... :-) So this fix is necessary in addition to the 3 patches that got already merged through Rafaels tree? What about this patch from Luke: https://patchwork.kernel.org/project/platform-driver-x86/patch/20250224223551.16918-1-luke@ljones.dev/ Is that also needed? Thanks in advance.
On 3/10/25 12:19, Ilpo Järvinen wrote: > On Wed, 5 Mar 2025, Mario Limonciello wrote: > >> From: Mario Limonciello <mario.limonciello@amd.com> >> >> amd_pmf_get_slider_info() checks the current profile to report correct >> value to the TA inputs. If hidden options are in use then the wrong >> values will be reported to TA. >> >> Add the two compat options PLATFORM_PROFILE_BALANCED_PERFORMANCE and >> PLATFORM_PROFILE_QUIET for this use. >> >> Reported-by: Yijun Shen <Yijun.Shen@dell.com> >> Fixes: 9a43102daf64d ("platform/x86/amd: pmf: Add balanced-performance to hidden choices") >> Fixes: 44e94fece5170 ("platform/x86/amd: pmf: Add 'quiet' to hidden choices") >> Signed-off-by: Mario Limonciello <mario.limonciello@amd.com> >> --- >> drivers/platform/x86/amd/pmf/spc.c | 2 ++ >> 1 file changed, 2 insertions(+) >> >> diff --git a/drivers/platform/x86/amd/pmf/spc.c b/drivers/platform/x86/amd/pmf/spc.c >> index f34f3130c3307..1d90f9382024b 100644 >> --- a/drivers/platform/x86/amd/pmf/spc.c >> +++ b/drivers/platform/x86/amd/pmf/spc.c >> @@ -219,12 +219,14 @@ static int amd_pmf_get_slider_info(struct amd_pmf_dev *dev, struct ta_pmf_enact_ >> >> switch (dev->current_profile) { >> case PLATFORM_PROFILE_PERFORMANCE: >> + case PLATFORM_PROFILE_BALANCED_PERFORMANCE: >> val = TA_BEST_PERFORMANCE; >> break; >> case PLATFORM_PROFILE_BALANCED: >> val = TA_BETTER_PERFORMANCE; >> break; >> case PLATFORM_PROFILE_LOW_POWER: >> + case PLATFORM_PROFILE_QUIET: >> val = TA_BEST_BATTERY; >> break; >> default: > > Hi Mario, > > Just for me to be sure what I'm supposed to do with all these patches > related to this platform profile legacy handling... :-) > > So this fix is necessary in addition to the 3 patches that got already > merged through Rafaels tree? > > What about this patch from Luke: > > https://patchwork.kernel.org/project/platform-driver-x86/patch/20250224223551.16918-1-luke@ljones.dev/ > > Is that also needed? > > Thanks in advance. > Yes; this was another finding that Yijun discovered missing as part of testing Rafael's tree. It can go through your tree or Rafael's. It doesn't really matter. Luke's patch isn't needed anymore.
On Wed, 12 Mar 2025, Mario Limonciello wrote: > > > On 3/10/25 12:19, Ilpo Järvinen wrote: > > On Wed, 5 Mar 2025, Mario Limonciello wrote: > > > > > From: Mario Limonciello <mario.limonciello@amd.com> > > > > > > amd_pmf_get_slider_info() checks the current profile to report correct > > > value to the TA inputs. If hidden options are in use then the wrong > > > values will be reported to TA. > > > > > > Add the two compat options PLATFORM_PROFILE_BALANCED_PERFORMANCE and > > > PLATFORM_PROFILE_QUIET for this use. > > > > > > Reported-by: Yijun Shen <Yijun.Shen@dell.com> > > > Fixes: 9a43102daf64d ("platform/x86/amd: pmf: Add balanced-performance to > > > hidden choices") > > > Fixes: 44e94fece5170 ("platform/x86/amd: pmf: Add 'quiet' to hidden > > > choices") > > > Signed-off-by: Mario Limonciello <mario.limonciello@amd.com> > > > --- > > > drivers/platform/x86/amd/pmf/spc.c | 2 ++ > > > 1 file changed, 2 insertions(+) > > > > > > diff --git a/drivers/platform/x86/amd/pmf/spc.c > > > b/drivers/platform/x86/amd/pmf/spc.c > > > index f34f3130c3307..1d90f9382024b 100644 > > > --- a/drivers/platform/x86/amd/pmf/spc.c > > > +++ b/drivers/platform/x86/amd/pmf/spc.c > > > @@ -219,12 +219,14 @@ static int amd_pmf_get_slider_info(struct > > > amd_pmf_dev *dev, struct ta_pmf_enact_ > > > switch (dev->current_profile) { > > > case PLATFORM_PROFILE_PERFORMANCE: > > > + case PLATFORM_PROFILE_BALANCED_PERFORMANCE: > > > val = TA_BEST_PERFORMANCE; > > > break; > > > case PLATFORM_PROFILE_BALANCED: > > > val = TA_BETTER_PERFORMANCE; > > > break; > > > case PLATFORM_PROFILE_LOW_POWER: > > > + case PLATFORM_PROFILE_QUIET: > > > val = TA_BEST_BATTERY; > > > break; > > > default: > > > > Hi Mario, > > > > Just for me to be sure what I'm supposed to do with all these patches > > related to this platform profile legacy handling... :-) > > > > So this fix is necessary in addition to the 3 patches that got already > > merged through Rafaels tree? > > > > What about this patch from Luke: > > > > https://patchwork.kernel.org/project/platform-driver-x86/patch/20250224223551.16918-1-luke@ljones.dev/ > > > > Is that also needed? > > > > Thanks in advance. > > > > Yes; this was another finding that Yijun discovered missing as part of testing > Rafael's tree. It can go through your tree or Rafael's. It doesn't really > matter. I took this into fixes branch. > Luke's patch isn't needed anymore. Okay, thanks.
diff --git a/drivers/platform/x86/amd/pmf/spc.c b/drivers/platform/x86/amd/pmf/spc.c index f34f3130c3307..1d90f9382024b 100644 --- a/drivers/platform/x86/amd/pmf/spc.c +++ b/drivers/platform/x86/amd/pmf/spc.c @@ -219,12 +219,14 @@ static int amd_pmf_get_slider_info(struct amd_pmf_dev *dev, struct ta_pmf_enact_ switch (dev->current_profile) { case PLATFORM_PROFILE_PERFORMANCE: + case PLATFORM_PROFILE_BALANCED_PERFORMANCE: val = TA_BEST_PERFORMANCE; break; case PLATFORM_PROFILE_BALANCED: val = TA_BETTER_PERFORMANCE; break; case PLATFORM_PROFILE_LOW_POWER: + case PLATFORM_PROFILE_QUIET: val = TA_BEST_BATTERY; break; default: