public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Mario Limonciello <superm1@kernel.org>
To: Borislav Petkov <bp@alien8.de>,
	"Gautham R . Shenoy" <gautham.shenoy@amd.com>,
	Perry Yuan <perry.yuan@amd.com>
Cc: x86@kernel.org (maintainer:X86 ARCHITECTURE (32-BIT AND 64-BIT)),
	"Rafael J . Wysocki" <rafael@kernel.org>,
	linux-kernel@vger.kernel.org (open list:X86 ARCHITECTURE (32-BIT
	AND 64-BIT)), linux-acpi@vger.kernel.org (open list:ACPI),
	linux-pm@vger.kernel.org (open list:CPU FREQUENCY SCALING
	FRAMEWORK), Mario Limonciello <mario.limonciello@amd.com>
Subject: [PATCH v2 00/11] Adjustments for preferred core detection
Date: Tue,  3 Sep 2024 15:36:50 -0500	[thread overview]
Message-ID: <20240903203701.2695040-1-superm1@kernel.org> (raw)

From: Mario Limonciello <mario.limonciello@amd.com>

Preferred core detection is fragile in that any CPU that reports
less than 255 for any core is assumed to be a preferred core design.
This might not always be true, so it's better to check all CPUs and
see that varying values are actually reported.

Furthermore, preferred core detection isn't used by acpi-cpufreq. So
incorrect frequencies are used unless amd-pstate is active.

This series moves preferred core detection out of amd-pstate in a more
robust fashion.  It also removes some tech debt of hardcoded values for
platforms that are actually preferred core platforms.

This branch is based off v6.11-rc6.

v1->v2:
 * Add patches for documentation
 * Add patch for existing wrong return code in header
 * Individual changes described in individual patches

Mario Limonciello (10):
  x86/amd: Move amd_get_highest_perf() from amd.c to cppc.c
  x86/amd: Rename amd_get_highest_perf() to
    amd_get_boost_ratio_numerator()
  ACPI: CPPC: Drop check for non zero perf ratio
  ACPI: CPPC: Adjust debug messages in amd_set_max_freq_ratio() to warn
  x86/amd: Move amd_get_highest_perf() out of amd-pstate
  x86/amd: Detect preferred cores in amd_get_boost_ratio_numerator()
  cpufreq: amd-pstate: Merge amd_pstate_highest_perf_set() into
    amd_get_boost_ratio_numerator()
  cpufreq: amd-pstate: Optimize amd_pstate_update_limits()
  cpufreq: amd-pstate: Add documentation for `amd_pstate_hw_prefcore`
  amd-pstate: Add missing documentation for
    `amd_pstate_prefcore_ranking`

 Documentation/admin-guide/pm/amd-pstate.rst |  15 +-
 arch/x86/include/asm/processor.h            |   3 -
 arch/x86/kernel/acpi/cppc.c                 | 172 ++++++++++++++++++--
 arch/x86/kernel/cpu/amd.c                   |  16 --
 drivers/cpufreq/acpi-cpufreq.c              |  12 +-
 drivers/cpufreq/amd-pstate.c                | 128 ++++-----------
 include/acpi/cppc_acpi.h                    |  17 ++
 7 files changed, 230 insertions(+), 133 deletions(-)

-- 
2.43.0


             reply	other threads:[~2024-09-03 20:37 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-09-03 20:36 Mario Limonciello [this message]
2024-09-03 20:36 ` [PATCH v2 01/11] x86/amd: Move amd_get_highest_perf() from amd.c to cppc.c Mario Limonciello
2024-09-03 20:36 ` [PATCH v2 02/11] ACPI: CPPC: Adjust return code for inline functions in !CONFIG_ACPI_CPPC_LIB Mario Limonciello
2024-09-05 14:37   ` Gautham R. Shenoy
2024-09-03 20:36 ` [PATCH v2 03/11] x86/amd: Rename amd_get_highest_perf() to amd_get_boost_ratio_numerator() Mario Limonciello
2024-09-05 14:42   ` Gautham R. Shenoy
2024-09-03 20:36 ` [PATCH v2 04/11] ACPI: CPPC: Drop check for non zero perf ratio Mario Limonciello
2024-09-05 15:00   ` Gautham R. Shenoy
2024-09-03 20:36 ` [PATCH v2 05/11] ACPI: CPPC: Adjust debug messages in amd_set_max_freq_ratio() to warn Mario Limonciello
2024-09-03 20:36 ` [PATCH v2 06/11] x86/amd: Move amd_get_highest_perf() out of amd-pstate Mario Limonciello
2024-09-03 20:36 ` [PATCH v2 07/11] x86/amd: Detect preferred cores in amd_get_boost_ratio_numerator() Mario Limonciello
2024-09-04 21:18   ` kernel test robot
2024-09-03 20:36 ` [PATCH v2 08/11] cpufreq: amd-pstate: Merge amd_pstate_highest_perf_set() into amd_get_boost_ratio_numerator() Mario Limonciello
2024-09-05 15:59   ` Gautham R. Shenoy
2024-09-03 20:36 ` [PATCH v2 09/11] cpufreq: amd-pstate: Optimize amd_pstate_update_limits() Mario Limonciello
2024-09-03 20:37 ` [PATCH v2 10/11] cpufreq: amd-pstate: Add documentation for `amd_pstate_hw_prefcore` Mario Limonciello
2024-09-05 16:09   ` Gautham R. Shenoy
2024-09-03 20:37 ` [PATCH v2 11/11] amd-pstate: Add missing documentation for `amd_pstate_prefcore_ranking` Mario Limonciello
2024-09-05 16:11   ` Gautham R. Shenoy

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=20240903203701.2695040-1-superm1@kernel.org \
    --to=superm1@kernel.org \
    --cc=bp@alien8.de \
    --cc=gautham.shenoy@amd.com \
    --cc=linux-acpi@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pm@vger.kernel.org \
    --cc=mario.limonciello@amd.com \
    --cc=perry.yuan@amd.com \
    --cc=rafael@kernel.org \
    --cc=x86@kernel.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