linux-fbdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] fbdev: simplefb: limit its use to DRM_SIMPLEDRM=n
@ 2021-07-19  2:33 Randy Dunlap
  2021-07-19  8:06 ` Geert Uytterhoeven
  0 siblings, 1 reply; 3+ messages in thread
From: Randy Dunlap @ 2021-07-19  2:33 UTC (permalink / raw)
  To: linux-kernel
  Cc: Randy Dunlap, kernel test robot, Hans de Goede, linux-fbdev,
	dri-devel, Thomas Zimmermann

When DRM_SIMPLEDRM=m, all of FB_CFB_{FILLRECT,COPYAREA,IMAGEBLIT} are =m,
causing undefined references in fbdev/simplefb.o.

By restricting FB_SIMPLEFB to be set only when DRM_SIMPLEDRM is not set,
the FB_CFB_* symbols are =y and the build completes without these
undefined references.

IOW, really "disable simplefb if simpledrm has been selected".

or1k-linux-ld: drivers/video/fbdev/simplefb.o:(.rodata+0x2c): undefined reference to `cfb_fillrect'
or1k-linux-ld: drivers/video/fbdev/simplefb.o:(.rodata+0x30): undefined reference to `cfb_copyarea'
or1k-linux-ld: drivers/video/fbdev/simplefb.o:(.rodata+0x34): undefined reference to `cfb_imageblit'

Fixes: 11e8f5fd223b ("drm: Add simpledrm driver")
Signed-off-by: Randy Dunlap <rdunlap@infradead.org>
Reported-by: kernel test robot <lkp@intel.com>
Cc: Hans de Goede <hdegoede@redhat.com>
Cc: linux-fbdev@vger.kernel.org
Cc: dri-devel@lists.freedesktop.org
Cc: Thomas Zimmermann <tzimmermann@suse.de>
---
 drivers/video/fbdev/Kconfig |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

--- linux-next-20210716.orig/drivers/video/fbdev/Kconfig
+++ linux-next-20210716/drivers/video/fbdev/Kconfig
@@ -2192,7 +2192,7 @@ config FB_HYPERV
 
 config FB_SIMPLE
 	bool "Simple framebuffer support"
-	depends on (FB = y) && !DRM_SIMPLEDRM
+	depends on (FB = y) && DRM_SIMPLEDRM=n
 	select FB_CFB_FILLRECT
 	select FB_CFB_COPYAREA
 	select FB_CFB_IMAGEBLIT

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH] fbdev: simplefb: limit its use to DRM_SIMPLEDRM=n
  2021-07-19  2:33 [PATCH] fbdev: simplefb: limit its use to DRM_SIMPLEDRM=n Randy Dunlap
@ 2021-07-19  8:06 ` Geert Uytterhoeven
  2021-07-19 20:03   ` Randy Dunlap
  0 siblings, 1 reply; 3+ messages in thread
From: Geert Uytterhoeven @ 2021-07-19  8:06 UTC (permalink / raw)
  To: Randy Dunlap
  Cc: Linux Kernel Mailing List, kernel test robot, Hans de Goede,
	Linux Fbdev development list, DRI Development, Thomas Zimmermann

Hi Randy,

On Mon, Jul 19, 2021 at 4:34 AM Randy Dunlap <rdunlap@infradead.org> wrote:
> When DRM_SIMPLEDRM=m, all of FB_CFB_{FILLRECT,COPYAREA,IMAGEBLIT} are =m,

Why does that happen?
FB_SIMPLE does select FB_CFB_*, so all of the latter should be builtin?
Do I need my morning coffee? I'm about to fetch it...

> causing undefined references in fbdev/simplefb.o.
>
> By restricting FB_SIMPLEFB to be set only when DRM_SIMPLEDRM is not set,
> the FB_CFB_* symbols are =y and the build completes without these
> undefined references.
>
> IOW, really "disable simplefb if simpledrm has been selected".

That does make sense, regardless of my question above ;-)

> or1k-linux-ld: drivers/video/fbdev/simplefb.o:(.rodata+0x2c): undefined reference to `cfb_fillrect'
> or1k-linux-ld: drivers/video/fbdev/simplefb.o:(.rodata+0x30): undefined reference to `cfb_copyarea'
> or1k-linux-ld: drivers/video/fbdev/simplefb.o:(.rodata+0x34): undefined reference to `cfb_imageblit'
>
> Fixes: 11e8f5fd223b ("drm: Add simpledrm driver")
> Signed-off-by: Randy Dunlap <rdunlap@infradead.org>

> --- linux-next-20210716.orig/drivers/video/fbdev/Kconfig
> +++ linux-next-20210716/drivers/video/fbdev/Kconfig
> @@ -2192,7 +2192,7 @@ config FB_HYPERV
>
>  config FB_SIMPLE
>         bool "Simple framebuffer support"
> -       depends on (FB = y) && !DRM_SIMPLEDRM
> +       depends on (FB = y) && DRM_SIMPLEDRM=n
>         select FB_CFB_FILLRECT
>         select FB_CFB_COPYAREA
>         select FB_CFB_IMAGEBLIT

Gr{oetje,eeting}s,

                        Geert

-- 
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
                                -- Linus Torvalds

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH] fbdev: simplefb: limit its use to DRM_SIMPLEDRM=n
  2021-07-19  8:06 ` Geert Uytterhoeven
@ 2021-07-19 20:03   ` Randy Dunlap
  0 siblings, 0 replies; 3+ messages in thread
From: Randy Dunlap @ 2021-07-19 20:03 UTC (permalink / raw)
  To: Geert Uytterhoeven, Masahiro Yamada
  Cc: Linux Kernel Mailing List, kernel test robot, Hans de Goede,
	Linux Fbdev development list, DRI Development, Thomas Zimmermann

On 7/19/21 1:06 AM, Geert Uytterhoeven wrote:
> Hi Randy,
> 
> On Mon, Jul 19, 2021 at 4:34 AM Randy Dunlap <rdunlap@infradead.org> wrote:
>> When DRM_SIMPLEDRM=m, all of FB_CFB_{FILLRECT,COPYAREA,IMAGEBLIT} are =m,
> 
> Why does that happen?
> FB_SIMPLE does select FB_CFB_*, so all of the latter should be builtin?
> Do I need my morning coffee? I'm about to fetch it...

Hi Geert,

I have no idea why this happens. It feels like a kconfig bug to me.

>> causing undefined references in fbdev/simplefb.o.
>>
>> By restricting FB_SIMPLEFB to be set only when DRM_SIMPLEDRM is not set,
>> the FB_CFB_* symbols are =y and the build completes without these
>> undefined references.
>>
>> IOW, really "disable simplefb if simpledrm has been selected".
> 
> That does make sense, regardless of my question above ;-)
> 
>> or1k-linux-ld: drivers/video/fbdev/simplefb.o:(.rodata+0x2c): undefined reference to `cfb_fillrect'
>> or1k-linux-ld: drivers/video/fbdev/simplefb.o:(.rodata+0x30): undefined reference to `cfb_copyarea'
>> or1k-linux-ld: drivers/video/fbdev/simplefb.o:(.rodata+0x34): undefined reference to `cfb_imageblit'
>>
>> Fixes: 11e8f5fd223b ("drm: Add simpledrm driver")
>> Signed-off-by: Randy Dunlap <rdunlap@infradead.org>
> 
>> --- linux-next-20210716.orig/drivers/video/fbdev/Kconfig
>> +++ linux-next-20210716/drivers/video/fbdev/Kconfig
>> @@ -2192,7 +2192,7 @@ config FB_HYPERV
>>
>>  config FB_SIMPLE
>>         bool "Simple framebuffer support"
>> -       depends on (FB = y) && !DRM_SIMPLEDRM
>> +       depends on (FB = y) && DRM_SIMPLEDRM=n
>>         select FB_CFB_FILLRECT
>>         select FB_CFB_COPYAREA
>>         select FB_CFB_IMAGEBLIT
> 
> Gr{oetje,eeting}s,
> 
>                         Geert
> 


-- 
~Randy


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2021-07-19 23:27 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-07-19  2:33 [PATCH] fbdev: simplefb: limit its use to DRM_SIMPLEDRM=n Randy Dunlap
2021-07-19  8:06 ` Geert Uytterhoeven
2021-07-19 20:03   ` Randy Dunlap

This is a public inbox, see mirroring instructions
on how to clone and mirror all data and code used for this inbox