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 33eeb9b..9d369f5 100644 --- a/plymouth.changes +++ b/plymouth.changes @@ -1,3 +1,20 @@ +------------------------------------------------------------------- +Fri Nov 15 11:58:59 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 after disabling + fbdev interfaces.(bsc#1232727) + +------------------------------------------------------------------- +Fri Nov 15 11:28:41 UTC 2024 - Thomas Zimmermann + +- Set BOOT_TTY and SHUTDOWN_TTY to pre-Meson values. With Meson, the + values BOOT_TTY and SHUTDOWN_TTY lose their defaults. As the given + value of tty1 is not a full path name, plymouth fails to find the file + and falls back to serial output. Restoring the _TTY defaults to + /dev/tty1 and /dev/tty7 also restores graphics output. (bsc#1224150) + ------------------------------------------------------------------- Fri Mar 08 17:21:11 UTC 2024 - Cliff Zhao diff --git a/plymouth.spec b/plymouth.spec index a10dbe0..a4c1f49 100644 --- a/plymouth.spec +++ b/plymouth.spec @@ -37,24 +37,22 @@ Patch0: plymouth-dracut-path.patch Patch1: plymouth-some-greenish-openSUSE-colors.patch # PATCH-FIX-OPENSUSE plymouth-disable-fedora-logo.patch qzhao@suse.com -- Disable the fedora logo reference which is not in openSUSE. Patch2: 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. -Patch3: 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. -Patch4: plymouth-keep-KillMode-none.patch +Patch3: 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. -Patch5: plymouth-install-label-library-and-font-file-to-initrd.patch +Patch4: 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. -Patch6: plymouth-quiet-dracut-build-info.patch +Patch5: 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. -Patch7: plymouth-watermark-config.patch +Patch6: 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. -Patch8: plymouth-log-on-default.patch +Patch7: 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. -Patch9: plymouth-screen-twice-scale-on-160DPI-higher.patch +Patch8: 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. -Patch10: plymouth-crash-avoid-on-keyboard-remove-input-handler.patch +Patch9: plymouth-crash-avoid-on-keyboard-remove-input-handler.patch # PATCH-FIX-OPENSUSE plymouth-adapts-xkbommon.patch qzhao@suse.com -- openSUSE specify xkbommon header files position, plymouth adapt with that to build successfully. -Patch11: plymouth-adapts-xkbommon.patch +Patch10: plymouth-adapts-xkbommon.patch BuildRequires: docbook-xsl-stylesheets BuildRequires: gcc BuildRequires: libtool @@ -90,7 +88,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 @@ -381,8 +379,8 @@ Plymouth. %endif -D release-file=/etc/os-release \ -D runstatedir=/run \ - -D boot-tty=tty1 \ - -D shutdown-tty=tty1 \ + -D boot-tty=/dev/tty1 \ + -D shutdown-tty=/dev/tty7 \ -D background-start-color-stop=0x1A3D1F \ -D background-end-color-stop=0x4EA65C \ -D background-color=0x3391cd \