Skip to contentSkip to conversation

cpufreq: exynos: Use cpufreq_for_each_entry macro for iteration

PATCH Superseded Stratos Karafotis 2 participants 2 messages Apr 14, 2014 – Apr 15, 2014

Subsystems (2)

v1 of 5 Superseded Latest is v5 →

lore
Share & tools
lore
#0 lore raw

PATCH 7/20 cpufreq: exynos: Use cpufreq_for_each_entry macro for iteration

The cpufreq core supports the cpufreq_for_each_entry macro helper for iteration over the cpufreq_frequency_table, so use it.

It should have no functional changes.

---
 drivers/cpufreq/exynos-cpufreq.c | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)
drivers/cpufreq/exynos-cpufreq.c +7 -7
index f99cfe2..0e19bce 100644
@@ -28,18 +28,18 @@ static unsigned int locking_frequency;
 
 static int exynos_cpufreq_get_index(unsigned int freq)
 {
-	struct cpufreq_frequency_table *freq_table = exynos_info->freq_table;
-	int index;
+	struct cpufreq_frequency_table *pos, *freq_table;
 
-	for (index = 0;
-		freq_table[index].frequency != CPUFREQ_TABLE_END; index++)
-		if (freq_table[index].frequency == freq)
+	freq_table = exynos_info->freq_table;
+	cpufreq_for_each_entry(pos, freq_table) {
+		if (pos->frequency == freq)
 			break;
+	}
 
-	if (freq_table[index].frequency == CPUFREQ_TABLE_END)
+	if (pos->frequency == CPUFREQ_TABLE_END)
 		return -EINVAL;
 
-	return index;
+	return pos - freq_table;
 }
 
 static int exynos_cpufreq_scale(unsigned int target_freq)
Signature · 1 line
1.9.0
maintainer
#1 lore raw
Quoted 16 lines · Stratos Karafotis

The cpufreq core supports the cpufreq_for_each_entry macro helper for iteration over the cpufreq_frequency_table, so use it.

It should have no functional changes.

---
 drivers/cpufreq/exynos-cpufreq.c | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)
drivers/cpufreq/exynos-cpufreq.c +0 -0
index f99cfe2..0e19bce 100644
@@ -28,18 +28,18 @@ static unsigned int locking_frequency;
 

drivers/cpufreq/exynos-cpufreq.c static unsigned int locking_frequency; · line 33

Quoted 10 lines
drivers/cpufreq/exynos-cpufreq.c +2 -5
 static int exynos_cpufreq_get_index(unsigned int freq)
 {
-       struct cpufreq_frequency_table *freq_table = exynos_info->freq_table;
-       int index;
+       struct cpufreq_frequency_table *pos, *freq_table;
 
-       for (index = 0;
-               freq_table[index].frequency != CPUFREQ_TABLE_END; index++)
-               if (freq_table[index].frequency == freq)
+       freq_table = exynos_info->freq_table;

Keep it as it was, i.e. fill freq_table during its definition. If with addition of
pos it is crossing 80 columns, then define pos in a separate line.

Quoted 16 lines
drivers/cpufreq/exynos-cpufreq.c +5 -3
+       cpufreq_for_each_entry(pos, freq_table) {
+               if (pos->frequency == freq)
                        break;
+       }
 
-       if (freq_table[index].frequency == CPUFREQ_TABLE_END)
+       if (pos->frequency == CPUFREQ_TABLE_END)
                return -EINVAL;
 
-       return index;
+       return pos - freq_table;
 }
 
 static int exynos_cpufreq_scale(unsigned int target_freq)
--

1.9.0