From: "zhenglifeng (A)" <zhenglifeng1@huawei.com>
To: Viresh Kumar <viresh.kumar@linaro.org>, Sumit Gupta <sumitg@nvidia.com>
Cc: <rafael@kernel.org>, <lenb@kernel.org>, <robert.moore@intel.com>,
<corbet@lwn.net>, <linux-pm@vger.kernel.org>,
<linux-acpi@vger.kernel.org>, <linux-doc@vger.kernel.org>,
<acpica-devel@lists.linux.dev>, <linux-kernel@vger.kernel.org>,
<linux-tegra@vger.kernel.org>, <treding@nvidia.com>,
<jonathanh@nvidia.com>, <sashal@nvidia.com>, <vsethi@nvidia.com>,
<ksitaraman@nvidia.com>, <sanjayc@nvidia.com>, <bbasu@nvidia.com>
Subject: Re: [Patch 0/5] Support Autonomous Selection mode in cppc_cpufreq
Date: Tue, 11 Feb 2025 20:01:11 +0800 [thread overview]
Message-ID: <b45d0d81-e4f7-474e-a146-0075a6145cc2@huawei.com> (raw)
In-Reply-To: <20250211104428.dibsnxmkiluzixvz@vireshk-i7>
On 2025/2/11 18:44, Viresh Kumar wrote:
> On 11-02-25, 16:07, Sumit Gupta wrote:
>> This patchset supports the Autonomous Performance Level Selection mode
>> in the cppc_cpufreq driver. The feature is part of the existing CPPC
>> specification and already present in Intel and AMD specific pstate
>> cpufreq drivers. The patchset adds the support in generic acpi cppc
>> cpufreq driver.
>
> Is there an overlap with:
>
> https://lore.kernel.org/all/20250206131428.3261578-1-zhenglifeng1@huawei.com/
>
> ?
Ha, it looks like we're doing something very similar.
>
>> It adds a new 'cppc_cpufreq_epp' instance of the 'cppc_cpufreq' driver
>> for supporting the Autonomous Performance Level Selection and Energy
>> Performance Preference (EPP).
>> Autonomous selection will get enabled during boot if 'cppc_auto_sel'
>> boot argument is passed or the 'Autonomous Selection Enable' register
>> is already set before kernel boot. When enabled, the hardware is
>> allowed to autonomously select the CPU frequency within the min and
>> max perf boundaries using the Engergy Performance Preference hints.
>> The EPP values range from '0x0'(performance preference) to '0xFF'
>> (energy efficiency preference).
>>
>> It also exposes the acpi_cppc sysfs nodes to update the epp, auto_sel
>> and {min|max_perf} registers for changing the hints to hardware for
>> Autonomous selection.
>>
>> In a followup patch, plan to add support to dynamically switch the
>> cpufreq driver instance from 'cppc_cpufreq_epp' to 'cppc_cpufreq' and
>> vice-versa without reboot.
>>
>> The patches are divided into below groups:
>> - Patch [1-2]: Improvements. Can be applied independently.
>> - Patch [3-4]: sysfs store nodes for Auto mode. Depend on Patch [1-2].
>> - Patch [5]: Support for 'cppc_cpufreq_epp'. Uses a macro from [3].
>>
>> Sumit Gupta (5):
>> ACPI: CPPC: add read perf ctrls api and rename few existing
>> ACPI: CPPC: expand macro to create store acpi_cppc sysfs node
>> ACPI: CPPC: support updating epp, auto_sel and {min|max_perf} from
>> sysfs
>> Documentation: ACPI: add autonomous mode ctrls info in cppc_sysfs.txt
>> cpufreq: CPPC: Add cppc_cpufreq_epp instance for Autonomous mode
>>
>> Documentation/admin-guide/acpi/cppc_sysfs.rst | 28 ++
>> .../admin-guide/kernel-parameters.txt | 11 +
>> drivers/acpi/cppc_acpi.c | 311 ++++++++++++++++--
>> drivers/cpufreq/cppc_cpufreq.c | 260 ++++++++++++++-
>> include/acpi/cppc_acpi.h | 19 +-
>> 5 files changed, 572 insertions(+), 57 deletions(-)
>
next prev parent reply other threads:[~2025-02-11 12:01 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-02-11 10:37 [Patch 0/5] Support Autonomous Selection mode in cppc_cpufreq Sumit Gupta
2025-02-11 10:37 ` [Patch 1/5] ACPI: CPPC: add read perf ctrls api and rename few existing Sumit Gupta
2025-02-12 8:03 ` kernel test robot
2025-02-12 8:25 ` kernel test robot
2025-02-11 10:37 ` [Patch 2/5] ACPI: CPPC: expand macro to create store acpi_cppc sysfs node Sumit Gupta
2025-02-11 10:37 ` [Patch 3/5] ACPI: CPPC: support updating epp, auto_sel and {min|max_perf} from sysfs Sumit Gupta
2025-02-24 10:24 ` Pierre Gondois
2025-03-14 13:11 ` Sumit Gupta
2025-02-11 10:37 ` [Patch 4/5] Documentation: ACPI: add autonomous mode ctrls info in cppc_sysfs.txt Sumit Gupta
2025-02-11 10:37 ` [Patch 5/5] cpufreq: CPPC: Add cppc_cpufreq_epp instance for Autonomous mode Sumit Gupta
2025-02-12 9:27 ` kernel test robot
2025-02-11 10:44 ` [Patch 0/5] Support Autonomous Selection mode in cppc_cpufreq Viresh Kumar
2025-02-11 12:01 ` zhenglifeng (A) [this message]
2025-02-11 14:08 ` Sumit Gupta
2025-02-12 10:52 ` zhenglifeng (A)
2025-02-14 7:08 ` Sumit Gupta
2025-02-18 19:23 ` Rafael J. Wysocki
2025-02-21 13:14 ` Sumit Gupta
2025-02-22 10:06 ` zhenglifeng (A)
2025-02-26 10:22 ` zhenglifeng (A)
2025-03-14 12:48 ` Sumit Gupta
2025-04-01 13:56 ` zhenglifeng (A)
2025-04-19 7:44 ` zhenglifeng (A)
2025-04-27 6:23 ` zhenglifeng (A)
2025-04-30 15:00 ` Sumit Gupta
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=b45d0d81-e4f7-474e-a146-0075a6145cc2@huawei.com \
--to=zhenglifeng1@huawei.com \
--cc=acpica-devel@lists.linux.dev \
--cc=bbasu@nvidia.com \
--cc=corbet@lwn.net \
--cc=jonathanh@nvidia.com \
--cc=ksitaraman@nvidia.com \
--cc=lenb@kernel.org \
--cc=linux-acpi@vger.kernel.org \
--cc=linux-doc@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pm@vger.kernel.org \
--cc=linux-tegra@vger.kernel.org \
--cc=rafael@kernel.org \
--cc=robert.moore@intel.com \
--cc=sanjayc@nvidia.com \
--cc=sashal@nvidia.com \
--cc=sumitg@nvidia.com \
--cc=treding@nvidia.com \
--cc=viresh.kumar@linaro.org \
--cc=vsethi@nvidia.com \
/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