]> git.ipfire.org Git - thirdparty/plymouth.git/commit
libply-splash-core: Add a force argument to ply_renderer_open ()
authorHans de Goede <hdegoede@redhat.com>
Tue, 4 Mar 2025 14:22:45 +0000 (15:22 +0100)
committerHans de Goede <hdegoede@redhat.com>
Mon, 10 Mar 2025 10:46:58 +0000 (11:46 +0100)
commitc1e0070d4725607d974616d45afa745d172d38d8
treeea831fb523855d721392457f77ae089d2012fd40
parente7fc6cb5c43daa03594b916118085d96374128a9
libply-splash-core: Add a force argument to ply_renderer_open ()

Sometimes a renderer plugin may want to refuse to open a device
because it has suboptimal settings, like e.g. an EFI framebuffer
based simpledrm when the EFI firmware has set the resolution to
800x600 instead of the native panel resolution.

In such a case it might be better to wait for another better
/dev/dri/card# device to show up.

This skipping of devices by renderer plugins needs to be configurable
in case the timeout hits, or the user wishes to override things.

Add a force argument to ply_renderer_open () to allow overriding
this behavior. User can force using simpledrm by passing
plymouth.use-simpledrm=2 on the kernel commandline or by setting
UseSimpledrm=2 in the config-file.

This flag is passed to the renderer plugin's query_device () method
as that is the best place for the renderer plugin to determine
a device's usability.

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
src/libply-splash-core/ply-device-manager.c
src/libply-splash-core/ply-device-manager.h
src/libply-splash-core/ply-renderer-plugin.h
src/libply-splash-core/ply-renderer.c
src/libply-splash-core/ply-renderer.h
src/main.c
src/plugins/renderers/drm/plugin.c
src/plugins/renderers/frame-buffer/plugin.c
src/plugins/renderers/x11/plugin.c