[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <YpYv8islaEySOEtg@dev-arch.thelio-3990X>
Date: Tue, 31 May 2022 08:10:42 -0700
From: Nathan Chancellor <nathan@...nel.org>
To: Javier Martinez Canillas <javierm@...hat.com>
Cc: linux-kernel@...r.kernel.org,
Geert Uytterhoeven <geert@...ux-m68k.org>,
kernel test robot <lkp@...el.com>,
Daniel Vetter <daniel@...ll.ch>,
David Airlie <airlied@...ux.ie>,
Geert Uytterhoeven <geert+renesas@...der.be>,
Mark Brown <broonie@...nel.org>,
dri-devel@...ts.freedesktop.org
Subject: Re: [PATCH] drm/ssd130x: Only define a SPI device ID table when
built as a module
On Mon, May 30, 2022 at 04:02:46PM +0200, Javier Martinez Canillas wrote:
> The kernel test robot reports a compile warning due the ssd130x_spi_table
> variable being defined but not used. This happen when ssd130x-spi driver
> is built-in instead of being built as a module, i.e:
>
> CC drivers/gpu/drm/solomon/ssd130x-spi.o
> AR drivers/base/firmware_loader/built-in.a
> AR drivers/base/built-in.a
> CC kernel/trace/trace.o
> drivers/gpu/drm/solomon/ssd130x-spi.c:155:35: warning: ‘ssd130x_spi_table’ defined but not used [-Wunused-const-variable=]
> 155 | static const struct spi_device_id ssd130x_spi_table[] = {
> | ^~~~~~~~~~~~~~~~~
>
> The driver shouldn't need a SPI device ID table and only have an OF device
> ID table, but the former is needed to workaround an issue in the SPI core.
> This always reports a MODALIAS of the form "spi:<device>" even for devices
> registered through Device Trees.
>
> But the table is only needed when the driver built as a module to populate
> the .ko alias info. It's not needed when the driver is built-in the kernel.
>
> Fixes: 74373977d2ca ("drm/solomon: Add SSD130x OLED displays SPI support")
> Reported-by: kernel test robot <lkp@...el.com>
> Signed-off-by: Javier Martinez Canillas <javierm@...hat.com>
Reviewed-by: Nathan Chancellor <nathan@...nel.org>
> ---
>
> drivers/gpu/drm/solomon/ssd130x-spi.c | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/drivers/gpu/drm/solomon/ssd130x-spi.c b/drivers/gpu/drm/solomon/ssd130x-spi.c
> index 43722adab1f8..07802907e39a 100644
> --- a/drivers/gpu/drm/solomon/ssd130x-spi.c
> +++ b/drivers/gpu/drm/solomon/ssd130x-spi.c
> @@ -143,6 +143,7 @@ static const struct of_device_id ssd130x_of_match[] = {
> };
> MODULE_DEVICE_TABLE(of, ssd130x_of_match);
>
> +#if IS_MODULE(CONFIG_DRM_SSD130X_SPI)
> /*
> * The SPI core always reports a MODALIAS uevent of the form "spi:<dev>", even
> * if the device was registered via OF. This means that the module will not be
> @@ -160,6 +161,7 @@ static const struct spi_device_id ssd130x_spi_table[] = {
> { /* sentinel */ }
> };
> MODULE_DEVICE_TABLE(spi, ssd130x_spi_table);
> +#endif
>
> static struct spi_driver ssd130x_spi_driver = {
> .driver = {
> --
> 2.36.1
>
Powered by blists - more mailing lists