[<prev] [next>] [day] [month] [year] [list]
Message-ID: <20260120092445.5711-1-TonyWWang-oc@zhaoxin.com>
Date: Tue, 20 Jan 2026 17:24:45 +0800
From: Tony W Wang-oc <TonyWWang-oc@...oxin.com>
To: <rafael@...nel.org>, <viresh.kumar@...aro.org>,
<linux-pm@...r.kernel.org>, <linux-kernel@...r.kernel.org>
CC: <CobeChen@...oxin.com>, <TimGuo@...oxin.com>, <LeoLiu-oc@...oxin.com>,
<LindaChai@...oxin.com>
Subject: [PATCH] cpufreq: Add CPU frequency policy change notification support
Implemented CPUFREQ_CHANGE_POLICY notification in cpufreq subsystem.
This enhancement allows kernel modules to be notified when a CPU frequency
policy is modified, facilitating more integrated system management.
The notification is dispatched after a successful governor switch during
policy updates.
Signed-off-by: Tony W Wang-oc <TonyWWang-oc@...oxin.com>
---
drivers/cpufreq/cpufreq.c | 2 ++
include/linux/cpufreq.h | 1 +
2 files changed, 3 insertions(+)
diff --git a/drivers/cpufreq/cpufreq.c b/drivers/cpufreq/cpufreq.c
index a7a69f4d7675..b35fed93bca4 100644
--- a/drivers/cpufreq/cpufreq.c
+++ b/drivers/cpufreq/cpufreq.c
@@ -2707,6 +2707,8 @@ static int cpufreq_set_policy(struct cpufreq_policy *policy,
ret = cpufreq_start_governor(policy);
if (!ret) {
pr_debug("governor change\n");
+ blocking_notifier_call_chain(&cpufreq_policy_notifier_list,
+ CPUFREQ_CHANGE_POLICY, policy);
return 0;
}
cpufreq_exit_governor(policy);
diff --git a/include/linux/cpufreq.h b/include/linux/cpufreq.h
index cc894fc38971..b1cc9138e801 100644
--- a/include/linux/cpufreq.h
+++ b/include/linux/cpufreq.h
@@ -528,6 +528,7 @@ static inline void cpufreq_resume(void) {}
/* Policy Notifiers */
#define CPUFREQ_CREATE_POLICY (0)
#define CPUFREQ_REMOVE_POLICY (1)
+#define CPUFREQ_CHANGE_POLICY (2)
#ifdef CONFIG_CPU_FREQ
int cpufreq_register_notifier(struct notifier_block *nb, unsigned int list);
--
2.25.1
Powered by blists - more mailing lists