diff options
Diffstat (limited to 'drivers/sh/clk/core.c')
| -rw-r--r-- | drivers/sh/clk/core.c | 20 | 
1 files changed, 5 insertions, 15 deletions
diff --git a/drivers/sh/clk/core.c b/drivers/sh/clk/core.c index 74727851820..be56b22ca94 100644 --- a/drivers/sh/clk/core.c +++ b/drivers/sh/clk/core.c @@ -196,17 +196,11 @@ int clk_rate_table_find(struct clk *clk,  			struct cpufreq_frequency_table *freq_table,  			unsigned long rate)  { -	int i; - -	for (i = 0; freq_table[i].frequency != CPUFREQ_TABLE_END; i++) { -		unsigned long freq = freq_table[i].frequency; +	struct cpufreq_frequency_table *pos; -		if (freq == CPUFREQ_ENTRY_INVALID) -			continue; - -		if (freq == rate) -			return i; -	} +	cpufreq_for_each_valid_entry(pos, freq_table) +		if (pos->frequency == rate) +			return pos - freq_table;  	return -ENOENT;  } @@ -575,11 +569,7 @@ long clk_round_parent(struct clk *clk, unsigned long target,  		return abs(target - *best_freq);  	} -	for (freq = parent->freq_table; freq->frequency != CPUFREQ_TABLE_END; -	     freq++) { -		if (freq->frequency == CPUFREQ_ENTRY_INVALID) -			continue; - +	cpufreq_for_each_valid_entry(freq, parent->freq_table) {  		if (unlikely(freq->frequency / target <= div_min - 1)) {  			unsigned long freq_max;  | 
