Message ID | 20230918090400.13264-1-tzimmermann@suse.de (mailing list archive) |
---|---|
State | Handled Elsewhere |
Headers | show |
Series | fbdev/sh7760fb: Depend on FB=y | expand |
Thomas Zimmermann <tzimmermann@suse.de> writes: Hello Thomas, > Fix linker error if FB=m about missing fb_io_read and fb_io_write. The > linker's error message suggests that this config setting has already > been broken for other symbols. > > All errors (new ones prefixed by >>): > > sh4-linux-ld: drivers/video/fbdev/sh7760fb.o: in function `sh7760fb_probe': > sh7760fb.c:(.text+0x374): undefined reference to `framebuffer_alloc' > sh4-linux-ld: sh7760fb.c:(.text+0x394): undefined reference to `fb_videomode_to_var' > sh4-linux-ld: sh7760fb.c:(.text+0x39c): undefined reference to `fb_alloc_cmap' > sh4-linux-ld: sh7760fb.c:(.text+0x3a4): undefined reference to `register_framebuffer' > sh4-linux-ld: sh7760fb.c:(.text+0x3ac): undefined reference to `fb_dealloc_cmap' > sh4-linux-ld: sh7760fb.c:(.text+0x434): undefined reference to `framebuffer_release' > sh4-linux-ld: drivers/video/fbdev/sh7760fb.o: in function `sh7760fb_remove': > sh7760fb.c:(.text+0x800): undefined reference to `unregister_framebuffer' > sh4-linux-ld: sh7760fb.c:(.text+0x804): undefined reference to `fb_dealloc_cmap' > sh4-linux-ld: sh7760fb.c:(.text+0x814): undefined reference to `framebuffer_release' > >> sh4-linux-ld: drivers/video/fbdev/sh7760fb.o:(.rodata+0xc): undefined reference to `fb_io_read' > >> sh4-linux-ld: drivers/video/fbdev/sh7760fb.o:(.rodata+0x10): undefined reference to `fb_io_write' > sh4-linux-ld: drivers/video/fbdev/sh7760fb.o:(.rodata+0x2c): undefined reference to `cfb_fillrect' > sh4-linux-ld: drivers/video/fbdev/sh7760fb.o:(.rodata+0x30): undefined reference to `cfb_copyarea' > sh4-linux-ld: drivers/video/fbdev/sh7760fb.o:(.rodata+0x34): undefined reference to `cfb_imageblit' > > Suggested-by: Randy Dunlap <rdunlap@infradead.org> > Reported-by: kernel test robot <lkp@intel.com> > Closes: https://lore.kernel.org/oe-kbuild-all/202309130632.LS04CPWu-lkp@intel.com/ > Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de> > --- Agreed with your change. Reviewed-by: Javier Martinez Canillas <javierm@redhat.com>
On Mon, 2023-09-18 at 11:03 +0200, Thomas Zimmermann wrote: > Fix linker error if FB=m about missing fb_io_read and fb_io_write. The > linker's error message suggests that this config setting has already > been broken for other symbols. > > All errors (new ones prefixed by >>): > > sh4-linux-ld: drivers/video/fbdev/sh7760fb.o: in function `sh7760fb_probe': > sh7760fb.c:(.text+0x374): undefined reference to `framebuffer_alloc' > sh4-linux-ld: sh7760fb.c:(.text+0x394): undefined reference to `fb_videomode_to_var' > sh4-linux-ld: sh7760fb.c:(.text+0x39c): undefined reference to `fb_alloc_cmap' > sh4-linux-ld: sh7760fb.c:(.text+0x3a4): undefined reference to `register_framebuffer' > sh4-linux-ld: sh7760fb.c:(.text+0x3ac): undefined reference to `fb_dealloc_cmap' > sh4-linux-ld: sh7760fb.c:(.text+0x434): undefined reference to `framebuffer_release' > sh4-linux-ld: drivers/video/fbdev/sh7760fb.o: in function `sh7760fb_remove': > sh7760fb.c:(.text+0x800): undefined reference to `unregister_framebuffer' > sh4-linux-ld: sh7760fb.c:(.text+0x804): undefined reference to `fb_dealloc_cmap' > sh4-linux-ld: sh7760fb.c:(.text+0x814): undefined reference to `framebuffer_release' > >> sh4-linux-ld: drivers/video/fbdev/sh7760fb.o:(.rodata+0xc): undefined reference to `fb_io_read' > >> sh4-linux-ld: drivers/video/fbdev/sh7760fb.o:(.rodata+0x10): undefined reference to `fb_io_write' > sh4-linux-ld: drivers/video/fbdev/sh7760fb.o:(.rodata+0x2c): undefined reference to `cfb_fillrect' > sh4-linux-ld: drivers/video/fbdev/sh7760fb.o:(.rodata+0x30): undefined reference to `cfb_copyarea' > sh4-linux-ld: drivers/video/fbdev/sh7760fb.o:(.rodata+0x34): undefined reference to `cfb_imageblit' > > Suggested-by: Randy Dunlap <rdunlap@infradead.org> > Reported-by: kernel test robot <lkp@intel.com> > Closes: https://lore.kernel.org/oe-kbuild-all/202309130632.LS04CPWu-lkp@intel.com/ > Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de> > --- > drivers/video/fbdev/Kconfig | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/video/fbdev/Kconfig b/drivers/video/fbdev/Kconfig > index 4455bfd57f0ec..64ccb34d882dd 100644 > --- a/drivers/video/fbdev/Kconfig > +++ b/drivers/video/fbdev/Kconfig > @@ -1756,7 +1756,7 @@ config FB_COBALT > > config FB_SH7760 > bool "SH7760/SH7763/SH7720/SH7721 LCDC support" > - depends on FB && (CPU_SUBTYPE_SH7760 || CPU_SUBTYPE_SH7763 \ > + depends on FB=y && (CPU_SUBTYPE_SH7760 || CPU_SUBTYPE_SH7763 \ > || CPU_SUBTYPE_SH7720 || CPU_SUBTYPE_SH7721) > select FB_IOMEM_HELPERS > help Acked-by: John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>
On Mon, 2023-09-18 at 11:03 +0200, Thomas Zimmermann wrote: > Fix linker error if FB=m about missing fb_io_read and fb_io_write. The > linker's error message suggests that this config setting has already > been broken for other symbols. > > All errors (new ones prefixed by >>): > > sh4-linux-ld: drivers/video/fbdev/sh7760fb.o: in function `sh7760fb_probe': > sh7760fb.c:(.text+0x374): undefined reference to `framebuffer_alloc' > sh4-linux-ld: sh7760fb.c:(.text+0x394): undefined reference to `fb_videomode_to_var' > sh4-linux-ld: sh7760fb.c:(.text+0x39c): undefined reference to `fb_alloc_cmap' > sh4-linux-ld: sh7760fb.c:(.text+0x3a4): undefined reference to `register_framebuffer' > sh4-linux-ld: sh7760fb.c:(.text+0x3ac): undefined reference to `fb_dealloc_cmap' > sh4-linux-ld: sh7760fb.c:(.text+0x434): undefined reference to `framebuffer_release' > sh4-linux-ld: drivers/video/fbdev/sh7760fb.o: in function `sh7760fb_remove': > sh7760fb.c:(.text+0x800): undefined reference to `unregister_framebuffer' > sh4-linux-ld: sh7760fb.c:(.text+0x804): undefined reference to `fb_dealloc_cmap' > sh4-linux-ld: sh7760fb.c:(.text+0x814): undefined reference to `framebuffer_release' > >> sh4-linux-ld: drivers/video/fbdev/sh7760fb.o:(.rodata+0xc): undefined reference to `fb_io_read' > >> sh4-linux-ld: drivers/video/fbdev/sh7760fb.o:(.rodata+0x10): undefined reference to `fb_io_write' > sh4-linux-ld: drivers/video/fbdev/sh7760fb.o:(.rodata+0x2c): undefined reference to `cfb_fillrect' > sh4-linux-ld: drivers/video/fbdev/sh7760fb.o:(.rodata+0x30): undefined reference to `cfb_copyarea' > sh4-linux-ld: drivers/video/fbdev/sh7760fb.o:(.rodata+0x34): undefined reference to `cfb_imageblit' > > Suggested-by: Randy Dunlap <rdunlap@infradead.org> > Reported-by: kernel test robot <lkp@intel.com> > Closes: https://lore.kernel.org/oe-kbuild-all/202309130632.LS04CPWu-lkp@intel.com/ > Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de> > --- > drivers/video/fbdev/Kconfig | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/video/fbdev/Kconfig b/drivers/video/fbdev/Kconfig > index 4455bfd57f0ec..64ccb34d882dd 100644 > --- a/drivers/video/fbdev/Kconfig > +++ b/drivers/video/fbdev/Kconfig > @@ -1756,7 +1756,7 @@ config FB_COBALT > > config FB_SH7760 > bool "SH7760/SH7763/SH7720/SH7721 LCDC support" > - depends on FB && (CPU_SUBTYPE_SH7760 || CPU_SUBTYPE_SH7763 \ > + depends on FB=y && (CPU_SUBTYPE_SH7760 || CPU_SUBTYPE_SH7763 \ > || CPU_SUBTYPE_SH7720 || CPU_SUBTYPE_SH7721) > select FB_IOMEM_HELPERS > help Acked-by: John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>
Hi Thomas, On Mon, Sep 18, 2023 at 11:45 AM Thomas Zimmermann <tzimmermann@suse.de> wrote: > Fix linker error if FB=m about missing fb_io_read and fb_io_write. The > linker's error message suggests that this config setting has already > been broken for other symbols. > > All errors (new ones prefixed by >>): > > sh4-linux-ld: drivers/video/fbdev/sh7760fb.o: in function `sh7760fb_probe': > sh7760fb.c:(.text+0x374): undefined reference to `framebuffer_alloc' > sh4-linux-ld: sh7760fb.c:(.text+0x394): undefined reference to `fb_videomode_to_var' > sh4-linux-ld: sh7760fb.c:(.text+0x39c): undefined reference to `fb_alloc_cmap' > sh4-linux-ld: sh7760fb.c:(.text+0x3a4): undefined reference to `register_framebuffer' > sh4-linux-ld: sh7760fb.c:(.text+0x3ac): undefined reference to `fb_dealloc_cmap' > sh4-linux-ld: sh7760fb.c:(.text+0x434): undefined reference to `framebuffer_release' > sh4-linux-ld: drivers/video/fbdev/sh7760fb.o: in function `sh7760fb_remove': > sh7760fb.c:(.text+0x800): undefined reference to `unregister_framebuffer' > sh4-linux-ld: sh7760fb.c:(.text+0x804): undefined reference to `fb_dealloc_cmap' > sh4-linux-ld: sh7760fb.c:(.text+0x814): undefined reference to `framebuffer_release' > >> sh4-linux-ld: drivers/video/fbdev/sh7760fb.o:(.rodata+0xc): undefined reference to `fb_io_read' > >> sh4-linux-ld: drivers/video/fbdev/sh7760fb.o:(.rodata+0x10): undefined reference to `fb_io_write' > sh4-linux-ld: drivers/video/fbdev/sh7760fb.o:(.rodata+0x2c): undefined reference to `cfb_fillrect' > sh4-linux-ld: drivers/video/fbdev/sh7760fb.o:(.rodata+0x30): undefined reference to `cfb_copyarea' > sh4-linux-ld: drivers/video/fbdev/sh7760fb.o:(.rodata+0x34): undefined reference to `cfb_imageblit' > > Suggested-by: Randy Dunlap <rdunlap@infradead.org> > Reported-by: kernel test robot <lkp@intel.com> > Closes: https://lore.kernel.org/oe-kbuild-all/202309130632.LS04CPWu-lkp@intel.com/ > Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de> Thanks for your patch! > --- a/drivers/video/fbdev/Kconfig > +++ b/drivers/video/fbdev/Kconfig > @@ -1756,7 +1756,7 @@ config FB_COBALT > > config FB_SH7760 > bool "SH7760/SH7763/SH7720/SH7721 LCDC support" > - depends on FB && (CPU_SUBTYPE_SH7760 || CPU_SUBTYPE_SH7763 \ > + depends on FB=y && (CPU_SUBTYPE_SH7760 || CPU_SUBTYPE_SH7763 \ > || CPU_SUBTYPE_SH7720 || CPU_SUBTYPE_SH7721) > select FB_IOMEM_HELPERS > help > -- Any reason this can't become tristate instead? drivers/video/fbdev/sh7760fb.c uses module_platform_driver(), and already has all needed MODULE_*(). Gr{oetje,eeting}s, Geert
Hi Geert Am 25.09.23 um 09:33 schrieb Geert Uytterhoeven: > Hi Thomas, > > On Mon, Sep 18, 2023 at 11:45 AM Thomas Zimmermann <tzimmermann@suse.de> wrote: >> Fix linker error if FB=m about missing fb_io_read and fb_io_write. The >> linker's error message suggests that this config setting has already >> been broken for other symbols. >> >> All errors (new ones prefixed by >>): >> >> sh4-linux-ld: drivers/video/fbdev/sh7760fb.o: in function `sh7760fb_probe': >> sh7760fb.c:(.text+0x374): undefined reference to `framebuffer_alloc' >> sh4-linux-ld: sh7760fb.c:(.text+0x394): undefined reference to `fb_videomode_to_var' >> sh4-linux-ld: sh7760fb.c:(.text+0x39c): undefined reference to `fb_alloc_cmap' >> sh4-linux-ld: sh7760fb.c:(.text+0x3a4): undefined reference to `register_framebuffer' >> sh4-linux-ld: sh7760fb.c:(.text+0x3ac): undefined reference to `fb_dealloc_cmap' >> sh4-linux-ld: sh7760fb.c:(.text+0x434): undefined reference to `framebuffer_release' >> sh4-linux-ld: drivers/video/fbdev/sh7760fb.o: in function `sh7760fb_remove': >> sh7760fb.c:(.text+0x800): undefined reference to `unregister_framebuffer' >> sh4-linux-ld: sh7760fb.c:(.text+0x804): undefined reference to `fb_dealloc_cmap' >> sh4-linux-ld: sh7760fb.c:(.text+0x814): undefined reference to `framebuffer_release' >> >> sh4-linux-ld: drivers/video/fbdev/sh7760fb.o:(.rodata+0xc): undefined reference to `fb_io_read' >> >> sh4-linux-ld: drivers/video/fbdev/sh7760fb.o:(.rodata+0x10): undefined reference to `fb_io_write' >> sh4-linux-ld: drivers/video/fbdev/sh7760fb.o:(.rodata+0x2c): undefined reference to `cfb_fillrect' >> sh4-linux-ld: drivers/video/fbdev/sh7760fb.o:(.rodata+0x30): undefined reference to `cfb_copyarea' >> sh4-linux-ld: drivers/video/fbdev/sh7760fb.o:(.rodata+0x34): undefined reference to `cfb_imageblit' >> >> Suggested-by: Randy Dunlap <rdunlap@infradead.org> >> Reported-by: kernel test robot <lkp@intel.com> >> Closes: https://lore.kernel.org/oe-kbuild-all/202309130632.LS04CPWu-lkp@intel.com/ >> Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de> > > Thanks for your patch! > >> --- a/drivers/video/fbdev/Kconfig >> +++ b/drivers/video/fbdev/Kconfig >> @@ -1756,7 +1756,7 @@ config FB_COBALT >> >> config FB_SH7760 >> bool "SH7760/SH7763/SH7720/SH7721 LCDC support" >> - depends on FB && (CPU_SUBTYPE_SH7760 || CPU_SUBTYPE_SH7763 \ >> + depends on FB=y && (CPU_SUBTYPE_SH7760 || CPU_SUBTYPE_SH7763 \ >> || CPU_SUBTYPE_SH7720 || CPU_SUBTYPE_SH7721) >> select FB_IOMEM_HELPERS >> help >> -- > > Any reason this can't become tristate instead? > drivers/video/fbdev/sh7760fb.c uses module_platform_driver(), and > already has all needed MODULE_*(). I've meanwhile fixed the immediate issue. But I don't see anything that would prevent the option and driver from being a tristate. Best regards Thomas > > Gr{oetje,eeting}s, > > Geert >
diff --git a/drivers/video/fbdev/Kconfig b/drivers/video/fbdev/Kconfig index 4455bfd57f0ec..64ccb34d882dd 100644 --- a/drivers/video/fbdev/Kconfig +++ b/drivers/video/fbdev/Kconfig @@ -1756,7 +1756,7 @@ config FB_COBALT config FB_SH7760 bool "SH7760/SH7763/SH7720/SH7721 LCDC support" - depends on FB && (CPU_SUBTYPE_SH7760 || CPU_SUBTYPE_SH7763 \ + depends on FB=y && (CPU_SUBTYPE_SH7760 || CPU_SUBTYPE_SH7763 \ || CPU_SUBTYPE_SH7720 || CPU_SUBTYPE_SH7721) select FB_IOMEM_HELPERS help