[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20230908132402.GH19320@noisy.programming.kicks-ass.net>
Date: Fri, 8 Sep 2023 15:24:02 +0200
From: Peter Zijlstra <peterz@...radead.org>
To: Meng Li <li.meng@....com>
Cc: "Rafael J . Wysocki" <rafael.j.wysocki@...el.com>,
Huang Rui <ray.huang@....com>, linux-pm@...r.kernel.org,
linux-kernel@...r.kernel.org, x86@...nel.org,
linux-acpi@...r.kernel.org, Shuah Khan <skhan@...uxfoundation.org>,
linux-kselftest@...r.kernel.org,
Nathan Fontenot <nathan.fontenot@....com>,
Deepak Sharma <deepak.sharma@....com>,
Alex Deucher <alexander.deucher@....com>,
Mario Limonciello <mario.limonciello@....com>,
Shimmer Huang <shimmer.huang@....com>,
Perry Yuan <Perry.Yuan@....com>,
Xiaojian Du <Xiaojian.Du@....com>,
Viresh Kumar <viresh.kumar@...aro.org>,
Borislav Petkov <bp@...en8.de>
Subject: Re: [PATCH V5 4/7] cpufreq: Add a notification message that the
highest perf has changed
On Tue, Sep 05, 2023 at 09:51:13AM +0800, Meng Li wrote:
> ACPI 6.5 section 8.4.6.1.1.1 specifies that Notify event 0x85 can be
> emmitted to cause the the OSPM to re-evaluate the highest performance
> register. Add support for this event.
>
> Signed-off-by: Meng Li <li.meng@....com>
> Link: https://uefi.org/specs/ACPI/6.5/08_Processor_Configuration_and_Control.html?highlight=cppc#cpc-continuous-performance-control
> ---
> drivers/acpi/processor_driver.c | 6 ++++++
> drivers/cpufreq/cpufreq.c | 13 +++++++++++++
> include/linux/cpufreq.h | 5 +++++
> 3 files changed, 24 insertions(+)
>
> diff --git a/drivers/acpi/processor_driver.c b/drivers/acpi/processor_driver.c
> index 4bd16b3f0781..29b2fb68a35d 100644
> --- a/drivers/acpi/processor_driver.c
> +++ b/drivers/acpi/processor_driver.c
> @@ -27,6 +27,7 @@
> #define ACPI_PROCESSOR_NOTIFY_PERFORMANCE 0x80
> #define ACPI_PROCESSOR_NOTIFY_POWER 0x81
> #define ACPI_PROCESSOR_NOTIFY_THROTTLING 0x82
> +#define ACPI_PROCESSOR_NOTIFY_HIGEST_PERF_CHANGED 0x85
>
> MODULE_AUTHOR("Paul Diefenbaugh");
> MODULE_DESCRIPTION("ACPI Processor Driver");
> @@ -83,6 +84,11 @@ static void acpi_processor_notify(acpi_handle handle, u32 event, void *data)
> acpi_bus_generate_netlink_event(device->pnp.device_class,
> dev_name(&device->dev), event, 0);
> break;
> + case ACPI_PROCESSOR_NOTIFY_HIGEST_PERF_CHANGED:
> + cpufreq_update_highest_perf(pr->id);
> + acpi_bus_generate_netlink_event(device->pnp.device_class,
> + dev_name(&device->dev), event, 0);
> + break;
> default:
> acpi_handle_debug(handle, "Unsupported event [0x%x]\n", event);
> break;
I've obviously not read the link, but the above seems to suggest that
every CPU that has its limits changed gets the 'interrupt' ?
Powered by blists - more mailing lists