diff --git a/plymouth-only_use_fb_for_cirrus_bochs.patch b/plymouth-only_use_fb_for_cirrus_bochs.patch deleted file mode 100644 index 75a7eba..0000000 --- a/plymouth-only_use_fb_for_cirrus_bochs.patch +++ /dev/null @@ -1,50 +0,0 @@ -From: Fabian Vogt -Subject: force fb for cirrus and bochs, force drm otherwise -References: bsc#888590, bsc#980750 - -DRM does not work well with cirrus and bochs (no display) but the framebuffer driver -prevents DRM drivers from loading. -As we need to support cirrus for libvirt and bochs for QEMU, we cannot just remove support for frame-buffer. - -diff -Nura plymouth-22.02.122+94.4bd41a3/src/libply-splash-core/ply-device-manager.c plymouth-22.02.122+94.4bd41a3_new/src/libply-splash-core/ply-device-manager.c ---- plymouth-22.02.122+94.4bd41a3/src/libply-splash-core/ply-device-manager.c 2022-10-26 19:09:02.000000000 +0800 -+++ plymouth-22.02.122+94.4bd41a3_new/src/libply-splash-core/ply-device-manager.c 2022-10-27 00:07:06.605777003 +0800 -@@ -316,6 +316,18 @@ - subsystem = udev_device_get_subsystem (device); - ply_trace ("device subsystem is %s", subsystem); - -+ const char *card_vendor = udev_device_get_sysattr_value (device, "device/vendor"); -+ const char *card_device = udev_device_get_sysattr_value (device, "device/device"); -+ bool use_fb = false; -+ if (card_vendor) { -+ /* Cirrus */ -+ if (strcmp ("0x1013", card_vendor) == 0) -+ use_fb = true; -+ /* "Technical Corp", also used by bochs */ -+ else if (strcmp ("0x1234", card_vendor) == 0) -+ use_fb = strcmp("0x1111", card_device) == 0; -+ } -+ - if (strcmp (subsystem, SUBSYSTEM_DRM) == 0) { - if (!manager->device_timeout_elapsed && !verify_drm_device (device)) { - ply_trace ("ignoring since we only handle SimpleDRM devices after timeout"); -@@ -323,10 +335,18 @@ - } - ply_trace ("found DRM device %s", device_path); - renderer_type = PLY_RENDERER_TYPE_DRM; -+ if (use_fb) { -+ ply_trace ("forcing use of framebuffer for cirrusdrmfb"); -+ renderer_type = PLY_RENDERER_TYPE_NONE; -+ } - } else if (strcmp (subsystem, SUBSYSTEM_FRAME_BUFFER) == 0) { - ply_trace ("found frame buffer device %s", device_path); -- if (!fb_device_has_drm_device (manager, device)) -+ if (use_fb) { - renderer_type = PLY_RENDERER_TYPE_FRAME_BUFFER; -+ } -+ else if (!fb_device_has_drm_device (manager, device)) { -+ ply_trace ("avoiding use of framebuffer to not block DRM drivers from working"); -+ } - else if (force_fb) - renderer_type = PLY_RENDERER_TYPE_FRAME_BUFFER; - else diff --git a/plymouth.changes b/plymouth.changes index 2832430..3f4b69d 100644 --- a/plymouth.changes +++ b/plymouth.changes @@ -1,3 +1,11 @@ +------------------------------------------------------------------- +Wed Dec 4 14:03:31 UTC 2024 - Thomas Zimmermann + +- Remove plymouth-only_use_fb_for_cirrus_bochs.patch: Bochs and cirrus + DRM drivers are fully compatible with plymouth. Remove the workaround + that forces them to use fbdev. Resolves the blank screen when disabling + fbdev interfaces.(bsc#1232727) + ------------------------------------------------------------------- Mon Aug 28 03:33:51 UTC 2023 - Cliff Zhao diff --git a/plymouth.spec b/plymouth.spec index 1e984bc..5175b7e 100644 --- a/plymouth.spec +++ b/plymouth.spec @@ -1,7 +1,7 @@ # # spec file for package plymouth # -# Copyright (c) 2023 SUSE LLC +# Copyright (c) 2024 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -38,22 +38,20 @@ Patch1: plymouth-some-greenish-openSUSE-colors.patch Patch2: plymouth-manpages.patch # PATCH-FIX-OPENSUSE plymouth-disable-fedora-logo.patch qzhao@suse.com -- Disable the fedora logo reference which is not in openSUSE. Patch3: plymouth-disable-fedora-logo.patch -# PATCH-FIX-OPENSUSE plymouth-only_use_fb_for_cirrus_bochs.patch bnc#888590 boo#1172028 bsc#1181913 fvogt@suse.com -- Force fb for cirrus and bochs, force drm otherwise. replace removal of framebuffer driver and plymouth-ignore-cirrusdrm.patch with single patch. -Patch4: plymouth-only_use_fb_for_cirrus_bochs.patch # PATCH-FIX-OPENSUSE plymouth-keep-KillMode-none.patch bsc#1177082 bsc#1184087 boo#1182145 qzhao@suse.com -- Keep the plymouth-start.service KillMode=none. -Patch5: plymouth-keep-KillMode-none.patch +Patch4: plymouth-keep-KillMode-none.patch # PATCH-FIX-OPENSUSE plymouth-install-label-library-and-font-file-to-initrd.patch boo#1183425 boo#1184309 qzhao@suse.com -- Pack label plugin and font into initram to ensure notice info could successfully show when partition encrypted. -Patch6: plymouth-install-label-library-and-font-file-to-initrd.patch +Patch5: plymouth-install-label-library-and-font-file-to-initrd.patch # PATCH-FIX-OPENSUSE plymouth-quiet-dracut-build-info.patch bsc#1189613 qzhao@suse.com -- Hide unuseful output when re-generate initrd. -Patch7: plymouth-quiet-dracut-build-info.patch +Patch6: plymouth-quiet-dracut-build-info.patch # PATCH-FIX-OPENSUSE plymouth-watermark-config.patch bsc#1189613 qzhao@suse.com -- Add two-step water mark config support. -Patch8: plymouth-watermark-config.patch +Patch7: plymouth-watermark-config.patch # PATCH-FIX-OPENSUSE plymouth-log-on-default.patch bsc#1193736 qzhao@suse.com -- Enable plymouth log by default, help to resolve random appear problems. -Patch9: plymouth-log-on-default.patch +Patch8: plymouth-log-on-default.patch # PATCH-FIX-OPENSUSE plymouth-screen-twice-scale-on-160DPI-higher.patch boo#1183425 boo#1184309 qzhao@suse.com -- When DPI > 160, screen will scale output twice. -Patch10: plymouth-screen-twice-scale-on-160DPI-higher.patch +Patch9: plymouth-screen-twice-scale-on-160DPI-higher.patch # PATCH-FIX-OPENSUSE plymouth-crash-avoid-on-keyboard-remove-input-handler.patch bsc#1193736 qzhao@suse.com -- Confirm keyboard handler list not NULL before release memory to avoid crash. -Patch11: plymouth-crash-avoid-on-keyboard-remove-input-handler.patch +Patch10: plymouth-crash-avoid-on-keyboard-remove-input-handler.patch BuildRequires: automake BuildRequires: docbook-xsl-stylesheets BuildRequires: gcc @@ -85,7 +83,7 @@ Requires: %{name}-branding Requires: systemd >= 186 Requires(post): coreutils Requires(post): plymouth-scripts = %{version} -Requires(postun):coreutils +Requires(postun): coreutils Suggests: plymouth-plugin-label Provides: bootsplash = 3.5 Obsoletes: bootsplash < 3.5