Thread (21 messages) 21 messages, 8 authors, 2023-07-10

Re: [PATCH 1/2] fbdev/offb: Update expected device name

flat view

From: Michal Suchánek <hidden>
Date: 2023-06-20 08:04:43
Also in: dri-devel, lkml, regressions, stable

On Tue, Jun 20, 2023 at 08:24:34AM +0200, Helge Deller wrote:
On 6/15/23 23:19, Cyril Brulebois wrote:
quoted
Hi Rob,

Rob Herring [off-list ref] (2023-06-15):
quoted
On Thu, Jun 15, 2023 at 03:21:07PM +0200, Michal Suchánek wrote:
quoted
At the time this was proposed it was said that "of-display", is wrong,
and that "of-display.0" must be used for the first device instead, and
if something breaks an alias can be provided.

So how does one provide an alias so that offb can find "of-display.0"
as "of-display"?
I'm not aware of any way. There isn't because device names and paths are
not considered ABI. There are mechanisms for getting stable class device
indices (e.g. i2c0, mmcblk0, fb0, fb1, etc.) though not implemented for
fbN (and please don't add it).

In any case, this should be an easy fix. Though if "linux,opened" or
"linux,boot-display" is not set, then you'd still get "of-display.0":
diff --git a/drivers/of/platform.c b/drivers/of/platform.c
index 78ae84187449..e46482cef9c7 100644
--- a/drivers/of/platform.c
+++ b/drivers/of/platform.c
@@ -553,7 +553,7 @@ static int __init of_platform_default_populate_init(void)
                         if (!of_get_property(node, "linux,opened", NULL) ||
                             !of_get_property(node, "linux,boot-display", NULL))
                                 continue;
-                       dev = of_platform_device_create(node, "of-display.0", NULL);
+                       dev = of_platform_device_create(node, "of-display", NULL);
                         of_node_put(node);
                         if (WARN_ON(!dev))
                                 return -ENOMEM;
Michal, does that patch look correct?
I don't have that hardware, but that way the boot-display gets named
"of-display" while all others get "of-display.x"....
Yes, that's inconsistent, and IIRC it's what I originally proposed to
preserve compatibility as much as possible.

The patch went through multiple iteration by me and Rob and the final
version that was merged uses the consistent but incompatible naming.

The other option would be to adapt the offb driver, presumably.

I don't understand how the device name figures in attaching the driver
to the device, the only other occurence of of-display is the name of the
offb and ofdrm drivers.
quoted
I've just replaced my clueless workaround with this patch on top of the
kernel found in Debian 12 (Bookworm), i.e. 6.1.27 at this point, and it
indeed fixes the black screen problem in the installer's context.
... at least it fixes the issue.
I would expect as much. I don't have the hardware either but keeping
what was there before, and only adding on top is kind of the least
disruptive way of adding new stuff.

Thanks

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