Commit e81b87d2 authored by Krzysztof Kozlowski's avatar Krzysztof Kozlowski Committed by Stephen Boyd

clk: Provide notifier stubs when !COMMON_CLK

The clk notifier symbols are hidden by COMMON_CLK.  However on some
platforms HAVE_CLK might be set while COMMON_CLK not which leads to
compile test build errors like:

$ make.cross ARCH=sh
   drivers/devfreq/tegra-devfreq.c: In function 'tegra_actmon_rate_notify_cb':
>> drivers/devfreq/tegra-devfreq.c:391:16: error: 'POST_RATE_CHANGE' undeclared (first use in this function)
     if (action != POST_RATE_CHANGE)
                   ^
   drivers/devfreq/tegra-devfreq.c: In function 'tegra_devfreq_probe':
>> drivers/devfreq/tegra-devfreq.c:654:8: error: implicit declaration of function 'clk_notifier_register' [-Werror=implicit-function-declaration]
     err = clk_notifier_register(tegra->emc_clock, &tegra->rate_change_nb);
           ^

Export the macros and data type declarations outside of COMMON_CLK ifdef
and provide stubs to fix the compile testing.
Reported-by: default avatarkbuild test robot <lkp@intel.com>
Signed-off-by: default avatarKrzysztof Kozlowski <k.kozlowski@samsung.com>
Tested-by: default avatarBartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
Signed-off-by: default avatarStephen Boyd <sboyd@codeaurora.org>
parent 1a695a90
...@@ -20,8 +20,6 @@ struct device; ...@@ -20,8 +20,6 @@ struct device;
struct clk; struct clk;
#ifdef CONFIG_COMMON_CLK
/** /**
* DOC: clk notifier callback types * DOC: clk notifier callback types
* *
...@@ -78,6 +76,8 @@ struct clk_notifier_data { ...@@ -78,6 +76,8 @@ struct clk_notifier_data {
unsigned long new_rate; unsigned long new_rate;
}; };
#ifdef CONFIG_COMMON_CLK
/** /**
* clk_notifier_register: register a clock rate-change notifier callback * clk_notifier_register: register a clock rate-change notifier callback
* @clk: clock whose rate we are interested in * @clk: clock whose rate we are interested in
...@@ -140,6 +140,18 @@ bool clk_is_match(const struct clk *p, const struct clk *q); ...@@ -140,6 +140,18 @@ bool clk_is_match(const struct clk *p, const struct clk *q);
#else #else
static inline int clk_notifier_register(struct clk *clk,
struct notifier_block *nb)
{
return -ENOTSUPP;
}
static inline int clk_notifier_unregister(struct clk *clk,
struct notifier_block *nb)
{
return -ENOTSUPP;
}
static inline long clk_get_accuracy(struct clk *clk) static inline long clk_get_accuracy(struct clk *clk)
{ {
return -ENOTSUPP; return -ENOTSUPP;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment