cpufreq: ondemand: Rearrange od_dbs_timer() to avoid updating delay
authorViresh Kumar <viresh.kumar@linaro.org>
Thu, 11 Feb 2016 12:01:16 +0000 (17:31 +0530)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>
Wed, 9 Mar 2016 13:41:02 +0000 (14:41 +0100)
Avoid extra checks in od_dbs_timer() by rearranging updates to the
local delay variable in it.

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

index 12213823cc93ed442d2382446df8fa428a955354..0b79f1488be43262bfa06433b5b77681b2734c23 100644 (file)
@@ -194,7 +194,7 @@ static unsigned int od_dbs_timer(struct cpufreq_policy *policy)
        struct policy_dbs_info *policy_dbs = policy->governor_data;
        struct dbs_data *dbs_data = policy_dbs->dbs_data;
        struct od_cpu_dbs_info_s *dbs_info = &per_cpu(od_cpu_dbs_info, policy->cpu);
-       int delay = 0, sample_type = dbs_info->sample_type;
+       int delay, sample_type = dbs_info->sample_type;
 
        /* Common NORMAL_SAMPLE setup */
        dbs_info->sample_type = OD_NORMAL_SAMPLE;
@@ -208,13 +208,12 @@ static unsigned int od_dbs_timer(struct cpufreq_policy *policy)
                        /* Setup timer for SUB_SAMPLE */
                        dbs_info->sample_type = OD_SUB_SAMPLE;
                        delay = dbs_info->freq_hi_jiffies;
+               } else {
+                       delay = delay_for_sampling_rate(dbs_data->sampling_rate
+                                                       * dbs_info->rate_mult);
                }
        }
 
-       if (!delay)
-               delay = delay_for_sampling_rate(dbs_data->sampling_rate
-                               * dbs_info->rate_mult);
-
        return delay;
 }