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, Michaelquoted
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(structplatform_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 Thomasquoted
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)