Message ID | 536A605D.6030009@semaphore.gr (mailing list archive) |
---|---|
State | Accepted, archived |
Headers | show |
On 7 May 2014 22:03, Stratos Karafotis <stratosk@semaphore.gr> wrote: > On platforms that use cpufreq_for_each_* macros, build fails if > CONFIG_CPU_FREQ=n, e.g. ARM/shmobile/koelsch/non-multiplatform: > > drivers/built-in.o: In function `clk_round_parent': > clkdev.c:(.text+0xcf168): undefined reference to `cpufreq_next_valid' > drivers/built-in.o: In function `clk_rate_table_find': > clkdev.c:(.text+0xcf820): undefined reference to `cpufreq_next_valid' > make[3]: *** [vmlinux] Error 1 > > Fix this making cpufreq_next_valid function inline and move it to > cpufreq.h. > > Reported-by: Geert Uytterhoeven <geert@linux-m68k.org> > Signed-off-by: Stratos Karafotis <stratosk@semaphore.gr> > --- > drivers/cpufreq/cpufreq.c | 11 ----------- > include/linux/cpufreq.h | 11 +++++++++-- > 2 files changed, 9 insertions(+), 13 deletions(-) Acked-by: Viresh Kumar <viresh.kumar@linaro.org> -- To unsubscribe from this list: send the line "unsubscribe linux-pm" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Hi Stratos, On Wed, May 7, 2014 at 6:33 PM, Stratos Karafotis <stratosk@semaphore.gr> wrote: > On platforms that use cpufreq_for_each_* macros, build fails if > CONFIG_CPU_FREQ=n, e.g. ARM/shmobile/koelsch/non-multiplatform: > > drivers/built-in.o: In function `clk_round_parent': > clkdev.c:(.text+0xcf168): undefined reference to `cpufreq_next_valid' > drivers/built-in.o: In function `clk_rate_table_find': > clkdev.c:(.text+0xcf820): undefined reference to `cpufreq_next_valid' > make[3]: *** [vmlinux] Error 1 > > Fix this making cpufreq_next_valid function inline and move it to > cpufreq.h. Thanks! > Reported-by: Geert Uytterhoeven <geert@linux-m68k.org> > Signed-off-by: Stratos Karafotis <stratosk@semaphore.gr> Tested-by: Geert Uytterhoeven <geert@linux-m68k.org> Gr{oetje,eeting}s, Geert -- Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org In personal conversations with technical people, I call myself a hacker. But when I'm talking to journalists I just say "programmer" or something like that. -- Linus Torvalds -- To unsubscribe from this list: send the line "unsubscribe linux-pm" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Thursday, May 08, 2014 10:27:15 AM Geert Uytterhoeven wrote: > Hi Stratos, > > On Wed, May 7, 2014 at 6:33 PM, Stratos Karafotis <stratosk@semaphore.gr> wrote: > > On platforms that use cpufreq_for_each_* macros, build fails if > > CONFIG_CPU_FREQ=n, e.g. ARM/shmobile/koelsch/non-multiplatform: > > > > drivers/built-in.o: In function `clk_round_parent': > > clkdev.c:(.text+0xcf168): undefined reference to `cpufreq_next_valid' > > drivers/built-in.o: In function `clk_rate_table_find': > > clkdev.c:(.text+0xcf820): undefined reference to `cpufreq_next_valid' > > make[3]: *** [vmlinux] Error 1 > > > > Fix this making cpufreq_next_valid function inline and move it to > > cpufreq.h. > > Thanks! > > > Reported-by: Geert Uytterhoeven <geert@linux-m68k.org> > > Signed-off-by: Stratos Karafotis <stratosk@semaphore.gr> > > Tested-by: Geert Uytterhoeven <geert@linux-m68k.org> > Applied, thanks!
diff --git a/drivers/cpufreq/cpufreq.c b/drivers/cpufreq/cpufreq.c index bfe82b6..a05c921 100644 --- a/drivers/cpufreq/cpufreq.c +++ b/drivers/cpufreq/cpufreq.c @@ -237,17 +237,6 @@ void cpufreq_cpu_put(struct cpufreq_policy *policy) } EXPORT_SYMBOL_GPL(cpufreq_cpu_put); -bool cpufreq_next_valid(struct cpufreq_frequency_table **pos) -{ - while ((*pos)->frequency != CPUFREQ_TABLE_END) - if ((*pos)->frequency != CPUFREQ_ENTRY_INVALID) - return true; - else - (*pos)++; - return false; -} -EXPORT_SYMBOL_GPL(cpufreq_next_valid); - /********************************************************************* * EXTERNALLY AFFECTING FREQUENCY CHANGES * *********************************************************************/ diff --git a/include/linux/cpufreq.h b/include/linux/cpufreq.h index 9d803b5..3f45889 100644 --- a/include/linux/cpufreq.h +++ b/include/linux/cpufreq.h @@ -489,8 +489,15 @@ static inline void dev_pm_opp_free_cpufreq_table(struct device *dev, } #endif - -bool cpufreq_next_valid(struct cpufreq_frequency_table **pos); +static inline bool cpufreq_next_valid(struct cpufreq_frequency_table **pos) +{ + while ((*pos)->frequency != CPUFREQ_TABLE_END) + if ((*pos)->frequency != CPUFREQ_ENTRY_INVALID) + return true; + else + (*pos)++; + return false; +} /* * cpufreq_for_each_entry - iterate over a cpufreq_frequency_table
On platforms that use cpufreq_for_each_* macros, build fails if CONFIG_CPU_FREQ=n, e.g. ARM/shmobile/koelsch/non-multiplatform: drivers/built-in.o: In function `clk_round_parent': clkdev.c:(.text+0xcf168): undefined reference to `cpufreq_next_valid' drivers/built-in.o: In function `clk_rate_table_find': clkdev.c:(.text+0xcf820): undefined reference to `cpufreq_next_valid' make[3]: *** [vmlinux] Error 1 Fix this making cpufreq_next_valid function inline and move it to cpufreq.h. Reported-by: Geert Uytterhoeven <geert@linux-m68k.org> Signed-off-by: Stratos Karafotis <stratosk@semaphore.gr> --- drivers/cpufreq/cpufreq.c | 11 ----------- include/linux/cpufreq.h | 11 +++++++++-- 2 files changed, 9 insertions(+), 13 deletions(-)