Accepting request 814749 from Base:System

OBS-URL: https://build.opensuse.org/request/show/814749
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/plymouth?expand=0&rev=83
This commit is contained in:
Dominique Leuenberger 2020-06-22 15:42:19 +00:00 committed by Git OBS Bridge
commit b672187c44
3 changed files with 18 additions and 59 deletions

View File

@ -1,47 +0,0 @@
From: Fabian Vogt <fvogt@suse.com>
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.
Index: plymouth-0.9.3+git20180807.7663b0c/src/libply-splash-core/ply-device-manager.c
===================================================================
--- plymouth-0.9.3+git20180807.7663b0c.orig/src/libply-splash-core/ply-device-manager.c 2018-08-07 17:41:15.000000000 +0200
+++ plymouth-0.9.3+git20180807.7663b0c/src/libply-splash-core/ply-device-manager.c 2018-08-17 19:58:41.178821647 +0200
@@ -228,13 +228,33 @@ create_devices_for_udev_device (ply_devi
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 (subsystem != NULL && strcmp (subsystem, SUBSYSTEM_DRM) == 0) {
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
ply_trace ("ignoring, since there's a DRM device associated with it");
}

View File

@ -1,3 +1,11 @@
-------------------------------------------------------------------
Mon Jun 15 13:54:25 UTC 2020 - Cliff Zhao <qzhao@suse.com>
- Drop plymouth-only_use_fb_for_cirrus_bochs.patch: openSUSE user
are using emu-5.0.0 on MacOS-X with HVF acceleration, the
Plymouth theme with script module fails to go to graphic mode
with this patch(boo#1172028).
-------------------------------------------------------------------
Wed Oct 30 19:21:08 UTC 2019 - Stefan Brüns <stefan.bruens@rwth-aachen.de>

View File

@ -1,7 +1,7 @@
#
# spec file for package plymouth
#
# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany.
# Copyright (c) 2020 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@ -32,7 +32,7 @@ Release: 0
Summary: Graphical Boot Animation and Logger
License: GPL-2.0-or-later
Group: System/Base
Url: http://www.freedesktop.org/wiki/Software/Plymouth
URL: http://www.freedesktop.org/wiki/Software/Plymouth
Source0: %{name}-%{version}.tar.xz
Source1: boot-duration
@ -44,10 +44,8 @@ Patch1: plymouth-some-greenish-openSUSE-colors.patch
Patch2: plymouth-correct-runtime-dir.patch
# PATCH-FIX-UPSTREAM plymouth-manpages.patch bnc#871419 idoenmez@suse.de -- Fix man page installation
Patch3: plymouth-manpages.patch
# PATCH-FIX-OPENSUSE plymouth-only_use_fb_for_cirrus_bochs.patch bnc#888590 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-avoid-umount-hanging-shutdown.patch bnc#1105688, bnc#1129386, bnc#1134660 qzhao@opensuse.org -- Drop grantpt() to avoid system failed to unmount /var during shutdown.
Patch5: plymouth-avoid-umount-hanging-shutdown.patch
Patch4: plymouth-avoid-umount-hanging-shutdown.patch
# PATCH-FIX-UPSTREAM 0001-Add-label-ft-plugin.patch boo#959986 fvogt@suse.com -- add ability to output text in initrd needed for encryption.
Patch1000: 0001-Add-label-ft-plugin.patch
@ -140,10 +138,10 @@ Requires: %{name} = %{version}
%if %{with x11_renderer}
Requires: %{name}-x11-renderer = %{version}
%endif
Requires: libply%{soversion} = %{version}
Requires: libply-boot-client%{soversion} = %{version}
Requires: libply-splash-core%{soversion} = %{version}
Requires: libply-splash-graphics%{soversion} = %{version}
Requires: libply%{soversion} = %{version}
Requires: pkgconfig
%description devel
@ -206,9 +204,9 @@ graphical boot splashes using FreeTyoe
%package plugin-fade-throbber
Summary: Plymouth "Fade-Throbber" plugin
Group: System/Base
Requires: libply%{soversion} = %{version}
Requires: libply-splash-core%{soversion} = %{version}
Requires: libply-splash-graphics%{soversion} = %{version}
Requires: libply%{soversion} = %{version}
%description plugin-fade-throbber
This package contains the "Fade-In" boot splash plugin for
@ -219,9 +217,9 @@ while other images pulsate around during system boot up.
Summary: Plymouth "Throbgress" plugin
Group: System/Base
Requires: %{name}-plugin-label = %{version}
Requires: libply%{soversion} = %{version}
Requires: libply-splash-core%{soversion} = %{version}
Requires: libply-splash-graphics%{soversion} = %{version}
Requires: libply%{soversion} = %{version}
%description plugin-throbgress
This package contains the "throbgress" boot splash plugin for
@ -233,9 +231,9 @@ the screen.
Summary: Plymouth "space-flares" plugin
Group: System/Base
Requires: %{name}-plugin-label = %{version}
Requires: libply%{soversion} = %{version}
Requires: libply-splash-core%{soversion} = %{version}
Requires: libply-splash-graphics%{soversion} = %{version}
Requires: libply%{soversion} = %{version}
%description plugin-space-flares
This package contains the "space-flares" boot splash plugin for
@ -244,9 +242,9 @@ Plymouth. It features a corner image with animated flares.
%package plugin-two-step
Summary: Plymouth "two-step" plugin
Group: System/Base
Requires: libply%{soversion} = %{version}
Requires: libply-splash-core%{soversion} = %{version}
Requires: libply-splash-graphics%{soversion} = %{version}
Requires: libply%{soversion} = %{version}
Requires: plymouth-plugin-label = %{version}
%description plugin-two-step
@ -258,9 +256,9 @@ short, fast one-shot animation.
%package plugin-script
Summary: Plymouth "script" plugin
Group: System/Base
Requires: libply%{soversion} = %{version}
Requires: libply-splash-core%{soversion} = %{version}
Requires: libply-splash-graphics%{soversion} = %{version}
Requires: libply%{soversion} = %{version}
%description plugin-script
This package contains the "script" boot splash plugin for
@ -271,9 +269,9 @@ boot splash themes.
%package plugin-tribar
Summary: Plymouth "script" plugin
Group: System/Base
Requires: libply%{soversion} = %{version}
Requires: libply-splash-core%{soversion} = %{version}
Requires: libply-splash-graphics%{soversion} = %{version}
Requires: libply%{soversion} = %{version}
%description plugin-tribar
This package contains the "tribar" boot splash plugin for