cpufreq: stats: Enable stats for fast-switch as well
authorViresh Kumar <viresh.kumar@linaro.org>
Mon, 5 Oct 2020 07:56:04 +0000 (13:26 +0530)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>
Mon, 5 Oct 2020 13:13:43 +0000 (15:13 +0200)
Now that all the blockers are gone for enabling stats in fast-switching
case, enable it.

Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
drivers/cpufreq/cpufreq.c
drivers/cpufreq/cpufreq_stats.c

index 2ea245a..2d0e2e4 100644 (file)
@@ -2072,8 +2072,12 @@ unsigned int cpufreq_driver_fast_switch(struct cpufreq_policy *policy,
        target_freq = clamp_val(target_freq, policy->min, policy->max);
        freq = cpufreq_driver->fast_switch(policy, target_freq);
 
+       if (!freq)
+               return 0;
+
        arch_set_freq_scale(policy->related_cpus, freq,
                            policy->cpuinfo.max_freq);
+       cpufreq_stats_record_transition(policy, freq);
 
        return freq;
 }
index bba04da..8e7d64f 100644 (file)
@@ -69,9 +69,6 @@ static ssize_t show_time_in_state(struct cpufreq_policy *policy, char *buf)
        ssize_t len = 0;
        int i;
 
-       if (policy->fast_switch_enabled)
-               return 0;
-
        for (i = 0; i < stats->state_num; i++) {
                if (pending) {
                        if (i == stats->last_index)
@@ -115,9 +112,6 @@ static ssize_t show_trans_table(struct cpufreq_policy *policy, char *buf)
        ssize_t len = 0;
        int i, j, count;
 
-       if (policy->fast_switch_enabled)
-               return 0;
-
        len += scnprintf(buf + len, PAGE_SIZE - len, "   From  :    To\n");
        len += scnprintf(buf + len, PAGE_SIZE - len, "         : ");
        for (i = 0; i < stats->state_num; i++) {