Re: Make psplash wait for the framebuffer to be ready


Mike Looijmans
 

Ah, just writing to the list appeared to have helped. For the dependency to work, you need both a "Requires" and an "After" directive, i.e.

[unit]
...
Requires=sys-devices-platform-gpu-graphics-fb0.device
After=sys-devices-platform-gpu-graphics-fb0.device

And with that change, it works. The splash appears as soon as the device registers.



Met vriendelijke groet / kind regards,

Mike Looijmans
System Expert


TOPIC Embedded Products B.V.
Materiaalweg 4, 5681 RJ Best
The Netherlands

T: +31 (0) 499 33 69 69
E: mike.looijmans@...
W: www.topic.nl

Please consider the environment before printing this e-mail

On 23-05-2022 14:12, Mike Looijmans via lists.yoctoproject.org wrote:
psplash doesn't work on my system because systemd attempts to start it at 1.6 seconds into boot, while the fb device is created 1.9 seconds after booting.

This results in:

[FAILED] Failed to start Start psplash boot splash screen.


I figure I'm not the first and only person in the world to encounter this issue...


I'm digging into udev and systemd options to properly make it wait. As suggested on the net, it should be possible using an udev rule like:

SUBSYSTEM=="graphics", KERNEL=="fb0", TAG+="systemd"


And then add the following to psplash-start.service:

After=dev-fb0.device

I also tried this variant, as reported by systemctl list-units:

After=sys-devices-platform-gpu-graphics-fb0.device


However, neither has any effect whatsoever, the service still tries to start too early and fails. The "After=" apparently is ignored or so?



-- Mike Looijmans

Met vriendelijke groet / kind regards,

Mike Looijmans
System Expert


TOPIC Embedded Products B.V.
Materiaalweg 4, 5681 RJ Best
The Netherlands

T: +31 (0) 499 33 69 69
E: mike.looijmans@...
W: www.topic.nl

Please consider the environment before printing this e-mail

--
Mike Looijmans

Join yocto@lists.yoctoproject.org to automatically receive all group messages.