Re: [PATCH v9 0/6] drm/log: Introduce a new boot logger to draw the kmsg on the screen

From: Geert Uytterhoeven
Date: Tue Dec 17 2024 - 09:20:20 EST


Hi Jocelyn,

On Wed, Dec 4, 2024 at 6:41 PM Jocelyn Falempe <jfalempe@xxxxxxxxxx> wrote:
> drm_log is a simple logger that uses the drm_client API to print the kmsg boot log on the screen.
> This is not a full replacement to fbcon, as it will only print the kmsg.
> It will never handle user input, or a terminal because this is better done in userspace.
>
> If you're curious on how it looks like, I've put a small demo here:
> https://people.redhat.com/jfalempe/drm_log/drm_log_draft_boot_v2.mp4
>
> Design decisions:
> * It uses the drm_client API, so it should work on all drm drivers from the start.
> * It doesn't scroll the message, that way it doesn't need to redraw the whole screen for each new message.
> It also means it doesn't have to keep drawn messages in memory, to redraw them when scrolling.
> * It uses the new non-blocking console API, so it should work well with PREEMPT_RT

I gave this a try on Koelsch (R-Car M2-W), using rcar-du.
Unfortunately I don't see any kernel messages, and my monitor complains
about no signal. Does this require special support from the driver?

CONFIG_DRM_CLIENT=y
CONFIG_DRM_CLIENT_LIB=y
CONFIG_DRM_CLIENT_SELECTION=y
CONFIG_DRM_CLIENT_SETUP=y
CONFIG_DRM_CLIENT_LOG=y
# CONFIG_DRM_CLIENT_DEFAULT_FBDEV is not set
CONFIG_DRM_CLIENT_DEFAULT_LOG=y
CONFIG_DRM_CLIENT_DEFAULT="log"

Switching to fbdev gives a working display, as before:

CONFIG_DRM_CLIENT_DEFAULT_FBDEV=y
# CONFIG_DRM_CLIENT_DEFAULT_LOG is not set
CONFIG_DRM_CLIENT_DEFAULT="fbdev"

Thanks!

Gr{oetje,eeting}s,

Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@xxxxxxxxxxxxxx

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