linux-pm.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Huang Rui <ray.huang@amd.com>
To: "Yuan, Perry" <Perry.Yuan@amd.com>
Cc: "rafael.j.wysocki@intel.com" <rafael.j.wysocki@intel.com>,
	"Limonciello, Mario" <Mario.Limonciello@amd.com>,
	"viresh.kumar@linaro.org" <viresh.kumar@linaro.org>,
	"Shenoy, Gautham Ranjal" <gautham.shenoy@amd.com>,
	"Petkov, Borislav" <Borislav.Petkov@amd.com>,
	"Deucher, Alexander" <Alexander.Deucher@amd.com>,
	"Huang, Shimmer" <Shimmer.Huang@amd.com>,
	"oleksandr@natalenko.name" <oleksandr@natalenko.name>,
	"Du, Xiaojian" <Xiaojian.Du@amd.com>,
	"Meng, Li (Jassmine)" <Li.Meng@amd.com>,
	"linux-pm@vger.kernel.org" <linux-pm@vger.kernel.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH v11 0/8] AMD Pstate Fixes And Enhancements
Date: Tue, 23 Apr 2024 18:39:51 +0800	[thread overview]
Message-ID: <ZieP98CqLI48r58z@amd.com> (raw)
In-Reply-To: <cover.1713858800.git.perry.yuan@amd.com>

On Tue, Apr 23, 2024 at 03:58:16PM +0800, Yuan, Perry wrote:
> The patch series adds some fixes and enhancements to the AMD pstate
> driver.
> 
> It enables CPPC v2 for certain processors in the family 17H, as
> requested by TR40 processor users who expect improved performance and lower system
> temperature.
> 
> changes latency and delay values to be read from platform firmware
> firstly
> for more accurate timing.
> 
> A new quirk is introduced for supporting amd-pstate on legacy processors which either lack CPPC capability,
> or only only have CPPC v2 capability
> 
> Testing done with one APU system while cpb boost on:
> 
> amd_pstate_lowest_nonlinear_freq:1701000
> amd_pstate_max_freq:3501000
> cpuinfo_max_freq:3501000
> cpuinfo_min_freq:400000
> scaling_cur_freq:3084836
> scaling_max_freq:3501000
> scaling_min_freq:400000
> 
> analyzing CPU 6:
>   driver: amd-pstate-epp
>   CPUs which run at the same hardware frequency: 6
>   CPUs which need to have their frequency coordinated by software: 6
>   maximum transition latency:  Cannot determine or is not supported.
>   hardware limits: 400 MHz - 3.50 GHz
>   available cpufreq governors: performance powersave
>   current policy: frequency should be within 400 MHz and 3.50 GHz.
>                   The governor "powersave" may decide which speed to use
>                   within this range.
>   current CPU frequency: Unable to call hardware
>   current CPU frequency: 3.50 GHz (asserted by call to kernel)
>   boost state support:
>     Supported: yes
>     Active: yes
>     AMD PSTATE Highest Performance: 255. Maximum Frequency: 3.50 GHz.
>     AMD PSTATE Nominal Performance: 204. Nominal Frequency: 2.80 GHz.
>     AMD PSTATE Lowest Non-linear Performance: 124. Lowest Non-linear Frequency: 1.70 GHz.
>     AMD PSTATE Lowest Performance: 30. Lowest Frequency: 400 MHz.
> 
> 
> I would greatly appreciate any feedbacks.
> Thank you!
> Perry.
> 

These series look good for me, thanks!

Only a minor comment in patch 1, I would prefer not to use short case in
the comment.

Acked-by: Huang Rui <ray.huang@amd.com>

> Changes from v10:
>  * pick ack-by flags from huang ray for all patches.
>  * run testing on AMD Ryzen 5 7640U without regression issue.
> 
> Changes from v9:
>  * pick review by flag from Meng Li
>  * pick test by flag from Ugwekar Dhananjay
>  * picl review by flag from Gautham R. Shenoy
> 
> Changes from v8:
>  * add commit log for patch 1 and patch 2 (Rafael)
>  * add missing Perry signed-off-by for new patches #1,#2,#4 (Rafael)
>  * rebased to latest linux-pm/bleeding-edge
> 
> Changes from v7:
>  * Gautham helped to invole some new improved patches into the patchset.
>  * Adds comments for cpudata->{min,max}_limit_{perf,freq}, variables [New Patch].
>  * Clarifies that the units for cpudata->*_freq is in khz via comments [New Patch].
>  * Implements the unified computation of all cpudata->*_freq
>  * v7 Patch 2/6 was dropped which is not needed any more
>  * moved the quirk check to the amd_pstate_get_freq() function
>  * pick up RB flags from Gautham
>  * After the cleanup in patch 3, we don't need the helpers
>    amd_get_{min,max,nominal,lowest_nonlinear}_freq(). This
>    patch removes it [New Patch].
>  * testing done on APU system as well, no regression found.
> 
> Changes from v6:
>  * add one new patch to initialize capabilities in
>    amd_pstate_init_perf which can avoid duplicate cppc capabilities read
>    the change has been tested on APU system.
>  * pick up RB flags from Gautham
>  * drop the patch 1/6 which has been merged by Rafael
> 
> Changes from v5:
>  * rebased to linux-pm v6.8
>  * pick up RB flag from for patch 6(Mario)
> 
> Changes from v4:
>  * improve the dmi matching rule with zen2 flag only
> 
> Changes from v3:
>  * change quirk matching broken BIOS with family/model ID and Zen2
>    flag to fix the CPPC definition issue
>  * fix typo in quirk
> 
> Changes from v2:
>  * change quirk matching to BIOS version and release (Mario)
>  * pick up RB flag from Mario
> 
> Changes from v1:
>  * pick up the RB flags from Mario
>  * address review comment of patch #6 for amd_get_nominal_freq()
>  * rebased the series to linux-pm/bleeding-edge v6.8.0-rc2
>  * update debug log for patch #5 as Mario suggested.
>  * fix some typos and format problems
>  * tested on 7950X platform
> 
> 
> V1: https://lore.kernel.org/lkml/63c2b3d7-083a-4daa-ba40-629b3223a92d@mailbox.org/
> V2: https://lore.kernel.org/all/cover.1706863981.git.perry.yuan@amd.com/
> v3: https://lore.kernel.org/lkml/cover.1707016927.git.perry.yuan@amd.com/
> v4: https://lore.kernel.org/lkml/cover.1707193566.git.perry.yuan@amd.com/
> v5: https://lore.kernel.org/lkml/cover.1707273526.git.perry.yuan@amd.com/
> v6: https://lore.kernel.org/lkml/cover.1707363758.git.perry.yuan@amd.com/
> v7: https://lore.kernel.org/lkml/cover.1710323410.git.perry.yuan@amd.com/
> v8: https://lore.kernel.org/lkml/cover.1710754409.git.perry.yuan@amd.com/
> v9: https://lore.kernel.org/lkml/cover.1710836407.git.perry.yuan@amd.com/
> v10: https://lore.kernel.org/lkml/cover.1711335714.git.perry.yuan@amd.com/
> 
> Gautham R. Shenoy (3):
>   cpufreq: amd-pstate: Document *_limit_* fields in struct amd_cpudata
>   cpufreq: amd-pstate: Document the units for freq variables in
>     amd_cpudata
>   cpufreq: amd-pstate: Remove
>     amd_get_{min,max,nominal,lowest_nonlinear}_freq()
> 
> Perry Yuan (5):
>   cpufreq: amd-pstate: Unify computation of
>     {max,min,nominal,lowest_nonlinear}_freq
>   cpufreq: amd-pstate: Bail out if min/max/nominal_freq is 0
>   cpufreq: amd-pstate: get transition delay and latency value from ACPI
>     tables
>   cppc_acpi: print error message if CPPC is unsupported
>   cpufreq: amd-pstate: Add quirk for the pstate CPPC capabilities
>     missing
> 
>  drivers/acpi/cppc_acpi.c     |   4 +-
>  drivers/cpufreq/amd-pstate.c | 257 +++++++++++++++++++++--------------
>  include/linux/amd-pstate.h   |  20 ++-
>  3 files changed, 174 insertions(+), 107 deletions(-)
> 
> -- 
> 2.34.1
> 

      parent reply	other threads:[~2024-04-23 10:40 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-04-23  7:58 [PATCH v11 0/8] AMD Pstate Fixes And Enhancements Perry Yuan
2024-04-23  7:58 ` [PATCH v11 1/8] cpufreq: amd-pstate: Document *_limit_* fields in struct amd_cpudata Perry Yuan
2024-04-23 10:22   ` Huang Rui
2024-04-24  3:04     ` Yuan, Perry
2024-04-23  7:58 ` [PATCH v11 2/8] cpufreq: amd-pstate: Document the units for freq variables in amd_cpudata Perry Yuan
2024-04-23  7:58 ` [PATCH v11 3/8] cpufreq: amd-pstate: Unify computation of {max,min,nominal,lowest_nonlinear}_freq Perry Yuan
2024-04-23  7:58 ` [PATCH v11 4/8] cpufreq: amd-pstate: Remove amd_get_{min,max,nominal,lowest_nonlinear}_freq() Perry Yuan
2024-04-23  7:58 ` [PATCH v11 5/8] cpufreq: amd-pstate: Bail out if min/max/nominal_freq is 0 Perry Yuan
2024-04-23  7:58 ` [PATCH v11 6/8] cpufreq: amd-pstate: get transition delay and latency value from ACPI tables Perry Yuan
2024-04-23  7:58 ` [PATCH v11 7/8] cppc_acpi: print error message if CPPC is unsupported Perry Yuan
2024-04-23  7:58 ` [PATCH v11 8/8] cpufreq: amd-pstate: Add quirk for the pstate CPPC capabilities missing Perry Yuan
2024-04-23 10:39 ` Huang Rui [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=ZieP98CqLI48r58z@amd.com \
    --to=ray.huang@amd.com \
    --cc=Alexander.Deucher@amd.com \
    --cc=Borislav.Petkov@amd.com \
    --cc=Li.Meng@amd.com \
    --cc=Mario.Limonciello@amd.com \
    --cc=Perry.Yuan@amd.com \
    --cc=Shimmer.Huang@amd.com \
    --cc=Xiaojian.Du@amd.com \
    --cc=gautham.shenoy@amd.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pm@vger.kernel.org \
    --cc=oleksandr@natalenko.name \
    --cc=rafael.j.wysocki@intel.com \
    --cc=viresh.kumar@linaro.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).