[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20230316173741.4f572068@xps-13>
Date: Thu, 16 Mar 2023 17:37:41 +0100
From: Miquel Raynal <miquel.raynal@...tlin.com>
To: Rafał Miłecki <rafal@...ecki.pl>
Cc: Srinivas Kandagatla <srinivas.kandagatla@...aro.org>,
Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
linux-kernel@...r.kernel.org, Michael Walle <michael@...le.cc>,
Robert Marko <robert.marko@...tura.hr>,
Luka Perkov <luka.perkov@...tura.hr>,
Thomas Petazzoni <thomas.petazzoni@...tlin.com>
Subject: Re: [PATCH 1/4] nvmem: Add macro to register nvmem layout drivers
Hi Rafał,
rafal@...ecki.pl wrote on Thu, 16 Mar 2023 17:28:04 +0100:
> On 2023-03-15 11:00, Miquel Raynal wrote:
> > Provide a module_nvmem_layout_driver() macro at the end of the
> > nvmem-provider.h header to reduce the boilerplate when registering > nvmem
> > layout drivers.
>
> I think you should take care of including <linux/device/driver.h>
> instead of depending on module_nvmem_layout_driver() *callers* to do
> that.
Right, I'll do that.
>
> That would help avoiding errors like:
>
> In file included from drivers/nvmem/layouts/fixed.c:5:
> ./include/linux/nvmem-provider.h:252:2: warning: data definition has no type or storage class
> 252 | module_driver(__layout_driver, nvmem_layout_register, \
> | ^~~~~~~~~~~~~
> ./include/linux/nvmem-provider.h:252:2: error: type defaults to 'int' in declaration of 'module_driver' [-Werror=implicit-int]
> 252 | module_driver(__layout_driver, nvmem_layout_register, \
> | ^~~~~~~~~~~~~
>
>
> > Suggested-by: Srinivas Kandagatla <srinivas.kandagatla@...aro.org>
> > Signed-off-by: Miquel Raynal <miquel.raynal@...tlin.com>
> > ---
> > include/linux/nvmem-provider.h | 5 +++++
> > 1 file changed, 5 insertions(+)
> >
> > diff --git a/include/linux/nvmem-provider.h > b/include/linux/nvmem-provider.h
> > index 0cf9f9490514..a1c668018894 100644
> > --- a/include/linux/nvmem-provider.h
> > +++ b/include/linux/nvmem-provider.h
> > @@ -240,4 +240,9 @@ nvmem_layout_get_match_data(struct nvmem_device > *nvmem,
> > }
> >
> > #endif /* CONFIG_NVMEM */
> > +
> > +#define module_nvmem_layout_driver(__layout_driver) \
> > + module_driver(__layout_driver, nvmem_layout_register, \
> > + nvmem_layout_unregister)
> > +
> > #endif /* ifndef _LINUX_NVMEM_PROVIDER_H */
Thanks,
Miquèl
Powered by blists - more mailing lists