aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGautham R. Shenoy <ego@linux.vnet.ibm.com>2014-04-01 03:13:27 -0400
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>2014-04-07 08:35:28 -0400
commit0692c69138355fdbf32ecf70a2cde9c1fc3d7bb2 (patch)
treeef6725bf8c0868795a8e8583953684cfc76d95af
parentb3d627a5f2bf1a9a486f65af6f7c2ce0e09b3d12 (diff)
cpufreq: powernv: Use cpufreq_frequency_table.driver_data to store pstate ids
The .driver_data field in the cpufreq_frequency_table was supposed to be private to the drivers. However at some later point, it was being used to indicate if the particular frequency in the table is the BOOST_FREQUENCY. After patches [1] and [2], the .driver_data is once again private to the driver. Thus we can safely use cpufreq_frequency_table.driver_data to store pstate_ids instead of having to maintain a separate array powernv_pstate_ids[] for this purpose. [1]: Subject: cpufreq: don't print value of .driver_data from core From : Viresh Kumar <viresh.kumar@ linaro.org> url : http://marc.info/?l=linux-pm&m=139601421504709&w=2 [2]: Subject: cpufreq: create another field .flags in cpufreq_frequency_table From : Viresh Kumar <viresh.kumar@linaro.org> url : http://marc.info/?l=linux-pm&m=139601416804702&w=2 Signed-off-by: Gautham R. Shenoy <ego@linux.vnet.ibm.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
-rw-r--r--drivers/cpufreq/powernv-cpufreq.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/drivers/cpufreq/powernv-cpufreq.c b/drivers/cpufreq/powernv-cpufreq.c
index e1e519703dfe..9edccc63245d 100644
--- a/drivers/cpufreq/powernv-cpufreq.c
+++ b/drivers/cpufreq/powernv-cpufreq.c
@@ -33,7 +33,6 @@
33#define POWERNV_MAX_PSTATES 256 33#define POWERNV_MAX_PSTATES 256
34 34
35static struct cpufreq_frequency_table powernv_freqs[POWERNV_MAX_PSTATES+1]; 35static struct cpufreq_frequency_table powernv_freqs[POWERNV_MAX_PSTATES+1];
36static int powernv_pstate_ids[POWERNV_MAX_PSTATES+1];
37 36
38/* 37/*
39 * Note: The set of pstates consists of contiguous integers, the 38 * Note: The set of pstates consists of contiguous integers, the
@@ -112,7 +111,7 @@ static int init_powernv_pstates(void)
112 111
113 pr_debug("PState id %d freq %d MHz\n", id, freq); 112 pr_debug("PState id %d freq %d MHz\n", id, freq);
114 powernv_freqs[i].frequency = freq * 1000; /* kHz */ 113 powernv_freqs[i].frequency = freq * 1000; /* kHz */
115 powernv_pstate_ids[i] = id; 114 powernv_freqs[i].driver_data = id;
116 } 115 }
117 /* End of list marker entry */ 116 /* End of list marker entry */
118 powernv_freqs[i].frequency = CPUFREQ_TABLE_END; 117 powernv_freqs[i].frequency = CPUFREQ_TABLE_END;
@@ -283,7 +282,7 @@ static int powernv_cpufreq_target_index(struct cpufreq_policy *policy,
283{ 282{
284 struct powernv_smp_call_data freq_data; 283 struct powernv_smp_call_data freq_data;
285 284
286 freq_data.pstate_id = powernv_pstate_ids[new_index]; 285 freq_data.pstate_id = powernv_freqs[new_index].driver_data;
287 286
288 /* 287 /*
289 * Use smp_call_function to send IPI and execute the 288 * Use smp_call_function to send IPI and execute the