Thread (8 messages) flat view 8 messages, 3 authors, 14d ago

Re: [PATCH v2 2/5] fbdev: Give atafb proper parent

From: Thomas Zimmermann <tzimmermann@suse.de>
Date: 2026-08-17 07:58:09
Also in: linux-m68k


Am 17.08.26 um 09:49 schrieb Michael Schmitz:
Hi Thomas,

Am 17.08.2026 um 18:34 schrieb Thomas Zimmermann:
quoted
Hi

Am 16.08.26 um 09:37 schrieb Michael Schmitz:
quoted
From: Miro Kropacek <redacted>

The atafb fb device registers no parent, causing a missing symlink
(/sys/class/graphics/fb0/device). Xorg fbdevhw driver looks for that
symlink when scanning for devices, so add a parent node for atafb.
Do you really have these devices to test with?
Not the particular hardware that patches 3 and 4 add support for, but 
the 'normal' Videl that is found in every Falcon, yes.
quoted
If so, could you also replace the hard coded fb_info with a call to
framebuffer_alloc()?
Can't see how that would work - fb_info isn't passed to all functions 
that need to use it, especially in the hardware detection phase (hence 
the use of a static fb_info struct)?
You'd have to modify the driver to pass the allocated instance, of 
course. It's not a trivial oneliner, but if this driver is still 
relevant, it might be worth improving it.

Best regards
Thomas
Cheers,

    Michael
quoted
quoted
Signed-off-by: Miro Kropacek <redacted>
Reviewed-by: Michael Schmitz <schmitzmic@gmail.com>
Signed-off-by: Michael Schmitz <schmitzmic@gmail.com>
Cc: <redacted>
Link: https://lists.debian.org/debian-68k/2026/08/msg00000.html
---
  drivers/video/fbdev/atafb.c | 5 +++++
  1 file changed, 5 insertions(+)
diff --git a/drivers/video/fbdev/atafb.c b/drivers/video/fbdev/atafb.c
index b8ed1c537293..3d540803dc2b 100644
--- a/drivers/video/fbdev/atafb.c
+++ b/drivers/video/fbdev/atafb.c
@@ -3101,6 +3101,11 @@ static int __init atafb_probe(struct
platform_device *pdev)
  #endif /* ATAFB_EXT */
    //    strcpy(fb_info.mode->name, "Atari Builtin ");
+    /* Parent the fb device properly: without this fb0 registers as a
+     * virtual sysfs device with no /sys/class/graphics/fb0/device 
link,
+     * which makes Xorg's fbdevhw reject it ("No devices detected").
+     */
+    fb_info.device = &pdev->dev;
Because this is supposed to happen in framebuffer_alloc() and keeping it
there would be preferable.

Best regards
Thomas
quoted
      fb_info.fbops = &atafb_ops;
      // try to set default (detected; requested) var
      do_fb_set_var(&atafb_predefined[default_par - 1], 1);
-- 
--
Thomas Zimmermann
Graphics Driver Developer
SUSE Software Solutions Germany GmbH
Frankenstr. 146, 90461 Nürnberg, Germany, www.suse.com
GF: Jochen Jaser, Andrew McDonald, (HRB 36809, AG Nürnberg)

Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help