Re: [PATCH 5/5] mfd: axp20x-i2c: Do not define 'struct acpi_device_id' when !CONFIG_ACPI

Lee Jones
2020-07-06T07:31:17Z

On Mon, 29 Jun 2020, Chen-Yu Tsai wrote:

> Adding Hans to the list as he's the one that deals with all the x86
> platforms that use this series of chips.
>
> On Mon, Jun 29, 2020 at 8:32 PM Lee Jones <lee.jones@linaro.org> wrote:
> >
> > Since ACPI_PTR() is used to NULLify the value when !CONFIG_ACPI,
> > struct axp20x_i2c_acpi_match becomes defined by unused.
> >
> > This squashes the current W=1 kernel builds warning:
> >
> > drivers/mfd/axp20x-i2c.c:82:36: warning: ‘axp20x_i2c_acpi_match’ defined but not used [-Wunused-const-variable=]
> >
> > Cc: Chen-Yu Tsai <wens@csie.org>
> > Cc: Carlo Caione <carlo@caione.org>
> > Signed-off-by: Lee Jones <lee.jones@linaro.org>
> > ---
> > drivers/mfd/axp20x-i2c.c | 2 ++
> > 1 file changed, 2 insertions(+)
> >
> > diff --git a/drivers/mfd/axp20x-i2c.c b/drivers/mfd/axp20x-i2c.c
> > index 14f9df74f855c..3dd650125c239 100644
> > --- a/drivers/mfd/axp20x-i2c.c
> > +++ b/drivers/mfd/axp20x-i2c.c
> > @@ -79,6 +79,7 @@ static const struct i2c_device_id axp20x_i2c_id[] = {
> > };
> > MODULE_DEVICE_TABLE(i2c, axp20x_i2c_id);
> >
> > +#if IS_ENABLED(CONFIG_ACPI)
> > static const struct acpi_device_id axp20x_i2c_acpi_match[] = {
>
> I'd rather use "__maybe_unused" if possible to at least get a compile
> check, and also because "ACPI_PTR NULLifies the value" might not be
> well known to people not working on ACPI-based platforms.

FYI, I've gone back to this patch, as it seems to be the common
census across the rest of the kernel, due to the extra space saving.

The code will get compile checks when compiled with different
architectures, and I'm not sure I understand the last point you made.

> Either way,
>
> Acked-by: Chen-Yu Tsai <wens@csie.org>

I've applied this to the patch. Thanks.

> > {
> > .id = "INT33F4",
> > @@ -87,6 +88,7 @@ static const struct acpi_device_id axp20x_i2c_acpi_match[] = {
> > { },
> > };
> > MODULE_DEVICE_TABLE(acpi, axp20x_i2c_acpi_match);
> > +#endif
> >
> > static struct i2c_driver axp20x_i2c_driver = {
> > .driver = {
> >

--
Lee Jones [李琼斯]
Senior Technical Lead - Developer Services
Linaro.org │ Open source software for Arm SoCs
Follow Linaro: Facebook | Twitter | Blog