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> 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 # 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 # All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed # remain the property of their copyright owners, unless otherwise agreed
@ -32,7 +32,7 @@ Release: 0
Summary: Graphical Boot Animation and Logger Summary: Graphical Boot Animation and Logger
License: GPL-2.0-or-later License: GPL-2.0-or-later
Group: System/Base Group: System/Base
Url: http://www.freedesktop.org/wiki/Software/Plymouth URL: http://www.freedesktop.org/wiki/Software/Plymouth
Source0: %{name}-%{version}.tar.xz Source0: %{name}-%{version}.tar.xz
Source1: boot-duration Source1: boot-duration
@ -44,10 +44,8 @@ Patch1: plymouth-some-greenish-openSUSE-colors.patch
Patch2: plymouth-correct-runtime-dir.patch Patch2: plymouth-correct-runtime-dir.patch
# PATCH-FIX-UPSTREAM plymouth-manpages.patch bnc#871419 idoenmez@suse.de -- Fix man page installation # PATCH-FIX-UPSTREAM plymouth-manpages.patch bnc#871419 idoenmez@suse.de -- Fix man page installation
Patch3: plymouth-manpages.patch 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. # 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. # 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 Patch1000: 0001-Add-label-ft-plugin.patch
@ -140,10 +138,10 @@ Requires: %{name} = %{version}
%if %{with x11_renderer} %if %{with x11_renderer}
Requires: %{name}-x11-renderer = %{version} Requires: %{name}-x11-renderer = %{version}
%endif %endif
Requires: libply%{soversion} = %{version}
Requires: libply-boot-client%{soversion} = %{version} Requires: libply-boot-client%{soversion} = %{version}
Requires: libply-splash-core%{soversion} = %{version} Requires: libply-splash-core%{soversion} = %{version}
Requires: libply-splash-graphics%{soversion} = %{version} Requires: libply-splash-graphics%{soversion} = %{version}
Requires: libply%{soversion} = %{version}
Requires: pkgconfig Requires: pkgconfig
%description devel %description devel
@ -206,9 +204,9 @@ graphical boot splashes using FreeTyoe
%package plugin-fade-throbber %package plugin-fade-throbber
Summary: Plymouth "Fade-Throbber" plugin Summary: Plymouth "Fade-Throbber" plugin
Group: System/Base Group: System/Base
Requires: libply%{soversion} = %{version}
Requires: libply-splash-core%{soversion} = %{version} Requires: libply-splash-core%{soversion} = %{version}
Requires: libply-splash-graphics%{soversion} = %{version} Requires: libply-splash-graphics%{soversion} = %{version}
Requires: libply%{soversion} = %{version}
%description plugin-fade-throbber %description plugin-fade-throbber
This package contains the "Fade-In" boot splash plugin for 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 Summary: Plymouth "Throbgress" plugin
Group: System/Base Group: System/Base
Requires: %{name}-plugin-label = %{version} Requires: %{name}-plugin-label = %{version}
Requires: libply%{soversion} = %{version}
Requires: libply-splash-core%{soversion} = %{version} Requires: libply-splash-core%{soversion} = %{version}
Requires: libply-splash-graphics%{soversion} = %{version} Requires: libply-splash-graphics%{soversion} = %{version}
Requires: libply%{soversion} = %{version}
%description plugin-throbgress %description plugin-throbgress
This package contains the "throbgress" boot splash plugin for This package contains the "throbgress" boot splash plugin for
@ -233,9 +231,9 @@ the screen.
Summary: Plymouth "space-flares" plugin Summary: Plymouth "space-flares" plugin
Group: System/Base Group: System/Base
Requires: %{name}-plugin-label = %{version} Requires: %{name}-plugin-label = %{version}
Requires: libply%{soversion} = %{version}
Requires: libply-splash-core%{soversion} = %{version} Requires: libply-splash-core%{soversion} = %{version}
Requires: libply-splash-graphics%{soversion} = %{version} Requires: libply-splash-graphics%{soversion} = %{version}
Requires: libply%{soversion} = %{version}
%description plugin-space-flares %description plugin-space-flares
This package contains the "space-flares" boot splash plugin for 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 %package plugin-two-step
Summary: Plymouth "two-step" plugin Summary: Plymouth "two-step" plugin
Group: System/Base Group: System/Base
Requires: libply%{soversion} = %{version}
Requires: libply-splash-core%{soversion} = %{version} Requires: libply-splash-core%{soversion} = %{version}
Requires: libply-splash-graphics%{soversion} = %{version} Requires: libply-splash-graphics%{soversion} = %{version}
Requires: libply%{soversion} = %{version}
Requires: plymouth-plugin-label = %{version} Requires: plymouth-plugin-label = %{version}
%description plugin-two-step %description plugin-two-step
@ -258,9 +256,9 @@ short, fast one-shot animation.
%package plugin-script %package plugin-script
Summary: Plymouth "script" plugin Summary: Plymouth "script" plugin
Group: System/Base Group: System/Base
Requires: libply%{soversion} = %{version}
Requires: libply-splash-core%{soversion} = %{version} Requires: libply-splash-core%{soversion} = %{version}
Requires: libply-splash-graphics%{soversion} = %{version} Requires: libply-splash-graphics%{soversion} = %{version}
Requires: libply%{soversion} = %{version}
%description plugin-script %description plugin-script
This package contains the "script" boot splash plugin for This package contains the "script" boot splash plugin for
@ -271,9 +269,9 @@ boot splash themes.
%package plugin-tribar %package plugin-tribar
Summary: Plymouth "script" plugin Summary: Plymouth "script" plugin
Group: System/Base Group: System/Base
Requires: libply%{soversion} = %{version}
Requires: libply-splash-core%{soversion} = %{version} Requires: libply-splash-core%{soversion} = %{version}
Requires: libply-splash-graphics%{soversion} = %{version} Requires: libply-splash-graphics%{soversion} = %{version}
Requires: libply%{soversion} = %{version}
%description plugin-tribar %description plugin-tribar
This package contains the "tribar" boot splash plugin for This package contains the "tribar" boot splash plugin for