Hi all, On Tue, 2 Jul 2019 12:03:50 +1000 Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx> wrote: > > This at least passes my (few) build tests (this will be in linux-next > today): > > From: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx> > Date: Tue, 2 Jul 2019 11:53:07 +1000 > Subject: [PATCH] clk: consoldiate the __clk_get_hw() declarations > > Without this we were getting errors like: > > In file included from drivers/clk/clkdev.c:22:0: > drivers/clk/clk.h:36:23: error: static declaration of '__clk_get_hw' follows non-static declaration > include/linux/clk-provider.h:808:16: note: previous declaration of '__clk_get_hw' was here > > Fixes: 59fcdce425b7 ("clk: Remove ifdef for COMMON_CLK in clk-provider.h") > fixes: 73e0e496afda ("clkdev: Always allocate a struct clk and call __clk_get() w/ CCF") > Signed-off-by: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx> > --- > drivers/clk/clk.h | 4 ---- > drivers/clk/imx/clk-imx6q.c | 1 + > drivers/clk/imx/clk-imx6sll.c | 1 + > drivers/clk/imx/clk-imx6sx.c | 1 + > drivers/clk/imx/clk-imx6ul.c | 1 + > drivers/clk/imx/clk-imx7d.c | 1 + > drivers/clk/imx/clk.c | 1 + > include/linux/clk-provider.h | 7 +++++++ > 8 files changed, 13 insertions(+), 4 deletions(-) > > diff --git a/drivers/clk/clk.h b/drivers/clk/clk.h > index d8400d623b34..2d801900cad5 100644 > --- a/drivers/clk/clk.h > +++ b/drivers/clk/clk.h > @@ -33,10 +33,6 @@ clk_hw_create_clk(struct device *dev, struct clk_hw *hw, const char *dev_id, > { > return (struct clk *)hw; > } > -static struct clk_hw *__clk_get_hw(struct clk *clk) > -{ > - return (struct clk_hw *)clk; > -} > static inline void __clk_put(struct clk *clk) { } > > #endif > diff --git a/drivers/clk/imx/clk-imx6q.c b/drivers/clk/imx/clk-imx6q.c > index 4e61f5189a1f..466561fb8925 100644 > --- a/drivers/clk/imx/clk-imx6q.c > +++ b/drivers/clk/imx/clk-imx6q.c > @@ -14,6 +14,7 @@ > #include <linux/types.h> > #include <linux/clk.h> > #include <linux/clkdev.h> > +#include <linux/clk-provider.h> > #include <linux/err.h> > #include <linux/io.h> > #include <linux/of.h> > diff --git a/drivers/clk/imx/clk-imx6sll.c b/drivers/clk/imx/clk-imx6sll.c > index 342dcc58ac16..5f3e92c09a5e 100644 > --- a/drivers/clk/imx/clk-imx6sll.c > +++ b/drivers/clk/imx/clk-imx6sll.c > @@ -7,6 +7,7 @@ > #include <dt-bindings/clock/imx6sll-clock.h> > #include <linux/clk.h> > #include <linux/clkdev.h> > +#include <linux/clk-provider.h> > #include <linux/err.h> > #include <linux/init.h> > #include <linux/io.h> > diff --git a/drivers/clk/imx/clk-imx6sx.c b/drivers/clk/imx/clk-imx6sx.c > index fb58479eaa68..2ada63e6ba16 100644 > --- a/drivers/clk/imx/clk-imx6sx.c > +++ b/drivers/clk/imx/clk-imx6sx.c > @@ -12,6 +12,7 @@ > #include <dt-bindings/clock/imx6sx-clock.h> > #include <linux/clk.h> > #include <linux/clkdev.h> > +#include <linux/clk-provider.h> > #include <linux/err.h> > #include <linux/init.h> > #include <linux/io.h> > diff --git a/drivers/clk/imx/clk-imx6ul.c b/drivers/clk/imx/clk-imx6ul.c > index 95ca895c8776..d860a244363a 100644 > --- a/drivers/clk/imx/clk-imx6ul.c > +++ b/drivers/clk/imx/clk-imx6ul.c > @@ -12,6 +12,7 @@ > #include <dt-bindings/clock/imx6ul-clock.h> > #include <linux/clk.h> > #include <linux/clkdev.h> > +#include <linux/clk-provider.h> > #include <linux/err.h> > #include <linux/init.h> > #include <linux/io.h> > diff --git a/drivers/clk/imx/clk-imx7d.c b/drivers/clk/imx/clk-imx7d.c > index c6d86700a080..c1efb061d237 100644 > --- a/drivers/clk/imx/clk-imx7d.c > +++ b/drivers/clk/imx/clk-imx7d.c > @@ -12,6 +12,7 @@ > #include <dt-bindings/clock/imx7d-clock.h> > #include <linux/clk.h> > #include <linux/clkdev.h> > +#include <linux/clk-provider.h> > #include <linux/err.h> > #include <linux/init.h> > #include <linux/io.h> > diff --git a/drivers/clk/imx/clk.c b/drivers/clk/imx/clk.c > index 76457b2bd7f0..f628071f6605 100644 > --- a/drivers/clk/imx/clk.c > +++ b/drivers/clk/imx/clk.c > @@ -1,5 +1,6 @@ > // SPDX-License-Identifier: GPL-2.0 > #include <linux/clk.h> > +#include <linux/clk-provider.h> > #include <linux/err.h> > #include <linux/io.h> > #include <linux/of.h> > diff --git a/include/linux/clk-provider.h b/include/linux/clk-provider.h > index 0fbf3ccad849..2ae7604783dd 100644 > --- a/include/linux/clk-provider.h > +++ b/include/linux/clk-provider.h > @@ -805,7 +805,14 @@ void devm_clk_hw_unregister(struct device *dev, struct clk_hw *hw); > /* helper functions */ > const char *__clk_get_name(const struct clk *clk); > const char *clk_hw_get_name(const struct clk_hw *hw); > +#ifdef CONFIG_COMMON_CLK > struct clk_hw *__clk_get_hw(struct clk *clk); > +#else > +static inline struct clk_hw *__clk_get_hw(struct clk *clk) > +{ > + return (struct clk_hw *)clk; > +} > +#endif > unsigned int clk_hw_get_num_parents(const struct clk_hw *hw); > struct clk_hw *clk_hw_get_parent(const struct clk_hw *hw); > struct clk_hw *clk_hw_get_parent_by_index(const struct clk_hw *hw, I am still applying this ... -- Cheers, Stephen Rothwell
Attachment:
pgpgG4gpld8mi.pgp
Description: OpenPGP digital signature