Message ID | 20181116145937.27660-4-phil.edworthy@renesas.com (mailing list archive) |
---|---|
State | Not Applicable, archived |
Headers | show |
Series | clk: Add functions to get optional clocks | expand |
Hi Phil, On 17/11/18 12:59 am, Phil Edworthy wrote: > clk_get_optional() returns NULL if not found instead of -ENOENT, > otherwise the behaviour is the same as clk_get(). > > Signed-off-by: Phil Edworthy <phil.edworthy@renesas.com> Acked-by: Greg Ungerer <gerg@@linux-m68k.org> Looks good. Do you want me to take this in the m68knommu git tree? Or is the whole series going through some other tree? Regards Greg > --- > arch/m68k/coldfire/clk.c | 11 +++++++++++ > 1 file changed, 11 insertions(+) > > diff --git a/arch/m68k/coldfire/clk.c b/arch/m68k/coldfire/clk.c > index 7bc666e482eb..b221cabc7f54 100644 > --- a/arch/m68k/coldfire/clk.c > +++ b/arch/m68k/coldfire/clk.c > @@ -87,6 +87,17 @@ struct clk *clk_get(struct device *dev, const char *id) > } > EXPORT_SYMBOL(clk_get); > > +struct clk *clk_get_optional(struct device *dev, const char *id) > +{ > + struct clk *clk = clk_get(dev, id); > + > + if (clk == ERR_PTR(-ENOENT)) > + clk = NULL; > + > + return clk; > +} > +EXPORT_SYMBOL(clk_get_optional); > + > int clk_enable(struct clk *clk) > { > unsigned long flags; >
Hi Greq, On 29 November 2018 11:55, Greg Ungerer wrote: > On 17/11/18 12:59 am, Phil Edworthy wrote: > > clk_get_optional() returns NULL if not found instead of -ENOENT, > > otherwise the behaviour is the same as clk_get(). > > > > Signed-off-by: Phil Edworthy <phil.edworthy@renesas.com> > > Acked-by: Greg Ungerer <gerg@@linux-m68k.org> > > Looks good. Do you want me to take this in the m68knommu git tree? > Or is the whole series going through some other tree? This patch is no longer needed as I found a better way to implement this: [PATCH v8] clk: Add (devm_)clk_get_optional() functions https://patchwork.kernel.org/patch/10690437/ Apologies for any confusion, Phil > Regards > Greg > > > > > --- > > arch/m68k/coldfire/clk.c | 11 +++++++++++ > > 1 file changed, 11 insertions(+) > > > > diff --git a/arch/m68k/coldfire/clk.c b/arch/m68k/coldfire/clk.c index > > 7bc666e482eb..b221cabc7f54 100644 > > --- a/arch/m68k/coldfire/clk.c > > +++ b/arch/m68k/coldfire/clk.c > > @@ -87,6 +87,17 @@ struct clk *clk_get(struct device *dev, const char *id) > > } > > EXPORT_SYMBOL(clk_get); > > > > +struct clk *clk_get_optional(struct device *dev, const char *id) { > > + struct clk *clk = clk_get(dev, id); > > + > > + if (clk == ERR_PTR(-ENOENT)) > > + clk = NULL; > > + > > + return clk; > > +} > > +EXPORT_SYMBOL(clk_get_optional); > > + > > int clk_enable(struct clk *clk) > > { > > unsigned long flags; > >
Hi Phil, On 29/11/18 10:02 pm, Phil Edworthy wrote: > On 29 November 2018 11:55, Greg Ungerer wrote: >> On 17/11/18 12:59 am, Phil Edworthy wrote: >>> clk_get_optional() returns NULL if not found instead of -ENOENT, >>> otherwise the behaviour is the same as clk_get(). >>> >>> Signed-off-by: Phil Edworthy <phil.edworthy@renesas.com> >> >> Acked-by: Greg Ungerer <gerg@@linux-m68k.org> >> >> Looks good. Do you want me to take this in the m68knommu git tree? >> Or is the whole series going through some other tree? > This patch is no longer needed as I found a better way to implement this: > [PATCH v8] clk: Add (devm_)clk_get_optional() functions > https://patchwork.kernel.org/patch/10690437/ > > Apologies for any confusion, No problem, I'll just drop it then. Regards Greg >>> --- >>> arch/m68k/coldfire/clk.c | 11 +++++++++++ >>> 1 file changed, 11 insertions(+) >>> >>> diff --git a/arch/m68k/coldfire/clk.c b/arch/m68k/coldfire/clk.c index >>> 7bc666e482eb..b221cabc7f54 100644 >>> --- a/arch/m68k/coldfire/clk.c >>> +++ b/arch/m68k/coldfire/clk.c >>> @@ -87,6 +87,17 @@ struct clk *clk_get(struct device *dev, const char *id) >>> } >>> EXPORT_SYMBOL(clk_get); >>> >>> +struct clk *clk_get_optional(struct device *dev, const char *id) { >>> + struct clk *clk = clk_get(dev, id); >>> + >>> + if (clk == ERR_PTR(-ENOENT)) >>> + clk = NULL; >>> + >>> + return clk; >>> +} >>> +EXPORT_SYMBOL(clk_get_optional); >>> + >>> int clk_enable(struct clk *clk) >>> { >>> unsigned long flags; >>>
On Thu, Nov 29, 2018 at 09:54:37PM +1000, Greg Ungerer wrote: > Hi Phil, > > On 17/11/18 12:59 am, Phil Edworthy wrote: > > clk_get_optional() returns NULL if not found instead of -ENOENT, > > otherwise the behaviour is the same as clk_get(). > > > > Signed-off-by: Phil Edworthy <phil.edworthy@renesas.com> > > Acked-by: Greg Ungerer <gerg@@linux-m68k.org> > > Looks good. Do you want me to take this in the m68knommu git tree? > Or is the whole series going through some other tree? Any chance we could just get coldfire moved over to the common clock framework?
Hi Christoph, On 30/11/18 2:32 am, Christoph Hellwig wrote: > On Thu, Nov 29, 2018 at 09:54:37PM +1000, Greg Ungerer wrote: >> Hi Phil, >> >> On 17/11/18 12:59 am, Phil Edworthy wrote: >>> clk_get_optional() returns NULL if not found instead of -ENOENT, >>> otherwise the behaviour is the same as clk_get(). >>> >>> Signed-off-by: Phil Edworthy <phil.edworthy@renesas.com> >> >> Acked-by: Greg Ungerer <gerg@@linux-m68k.org> >> >> Looks good. Do you want me to take this in the m68knommu git tree? >> Or is the whole series going through some other tree? > > Any chance we could just get coldfire moved over to the common clock > framework? Sure, I will have a look at it. Regards Greg
diff --git a/arch/m68k/coldfire/clk.c b/arch/m68k/coldfire/clk.c index 7bc666e482eb..b221cabc7f54 100644 --- a/arch/m68k/coldfire/clk.c +++ b/arch/m68k/coldfire/clk.c @@ -87,6 +87,17 @@ struct clk *clk_get(struct device *dev, const char *id) } EXPORT_SYMBOL(clk_get); +struct clk *clk_get_optional(struct device *dev, const char *id) +{ + struct clk *clk = clk_get(dev, id); + + if (clk == ERR_PTR(-ENOENT)) + clk = NULL; + + return clk; +} +EXPORT_SYMBOL(clk_get_optional); + int clk_enable(struct clk *clk) { unsigned long flags;
clk_get_optional() returns NULL if not found instead of -ENOENT, otherwise the behaviour is the same as clk_get(). Signed-off-by: Phil Edworthy <phil.edworthy@renesas.com> --- arch/m68k/coldfire/clk.c | 11 +++++++++++ 1 file changed, 11 insertions(+)