summaryrefslogtreecommitdiff
path: root/include/linux
diff options
context:
space:
mode:
authorUlf Hansson <ulf.hansson@linaro.org>2025-03-14 13:00:58 +0300
committerUlf Hansson <ulf.hansson@linaro.org>2025-04-23 11:08:34 +0300
commit0a8a888167ddaaec7a292e5045782b8a240e6f3e (patch)
treed9ea6f8c083ed79b4854f287fdd1aab0474a0d75 /include/linux
parentd0252ba821a3076615b34c1107854f8ff31ecd2e (diff)
downloadlinux-0a8a888167ddaaec7a292e5045782b8a240e6f3e.tar.xz
pmdomain: core: Add residency reflection for domain-idlestates to debugfs
For regular cpuidle states we are reflecting over the selected/entered state to see if the sleep-duration meets the residency for the state. The output from the reflection is an "above" value to indicate the number of times the state was too deep and a "below" value for the number of times it was too shallow. Let's implement the similar thing for genpd's domain-idlestates along with genpd's governor and put the information in the genpd's debugfs. Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org> Link: https://lore.kernel.org/r/20250314100103.1294715-5-ulf.hansson@linaro.org
Diffstat (limited to 'include/linux')
-rw-r--r--include/linux/pm_domain.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/include/linux/pm_domain.h b/include/linux/pm_domain.h
index 6e808aeecbcb..0b18160901a2 100644
--- a/include/linux/pm_domain.h
+++ b/include/linux/pm_domain.h
@@ -142,6 +142,8 @@ struct genpd_governor_data {
bool max_off_time_changed;
ktime_t next_wakeup;
ktime_t next_hrtimer;
+ ktime_t last_enter;
+ bool reflect_residency;
bool cached_power_down_ok;
bool cached_power_down_state_idx;
};
@@ -153,6 +155,8 @@ struct genpd_power_state {
s64 residency_ns;
u64 usage;
u64 rejected;
+ u64 above;
+ u64 below;
struct fwnode_handle *fwnode;
u64 idle_time;
void *data;