diff --git a/.gitignore b/.gitignore index 53759da..3f9724d 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1 @@ -SOURCES/seabios-1.11.1.tar.gz +SOURCES/seabios-1.13.0.tar.gz diff --git a/.seabios.metadata b/.seabios.metadata index 985bb77..b6a8150 100644 --- a/.seabios.metadata +++ b/.seabios.metadata @@ -1 +1 @@ -b0ead7ce2bd4b267a48e713ae3888a21ee287bf1 SOURCES/seabios-1.11.1.tar.gz +62918d1657e4046eb82ecf426988f5feb6c318de SOURCES/seabios-1.13.0.tar.gz diff --git a/SOURCES/0002-allow-1TB-of-RAM.patch b/SOURCES/0002-allow-1TB-of-RAM.patch index 88edc66..d649c3d 100644 --- a/SOURCES/0002-allow-1TB-of-RAM.patch +++ b/SOURCES/0002-allow-1TB-of-RAM.patch @@ -1,4 +1,4 @@ -From d5d95a6501682b870a8981f0ad129fa345bbda74 Mon Sep 17 00:00:00 2001 +From 54157a3e683d10137a80d2ac85a6aacfaa3f4020 Mon Sep 17 00:00:00 2001 From: Andrea Arcangeli Date: Tue, 8 Oct 2013 17:07:23 +0200 Subject: allow >1TB of RAM @@ -28,10 +28,10 @@ Signed-off-by: Miroslav Rezanina 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/src/fw/paravirt.c b/src/fw/paravirt.c -index 0770c47..0804d57 100644 +index 4fcd8f5..d1d01fa 100644 --- a/src/fw/paravirt.c +++ b/src/fw/paravirt.c -@@ -492,9 +492,10 @@ qemu_cfg_e820(void) +@@ -495,9 +495,10 @@ qemu_cfg_e820(void) } // Check for memory over 4Gig in cmos diff --git a/SOURCES/0003-smbios-set-bios-vendor-version-fields-to-Seabios-0.5.patch b/SOURCES/0003-smbios-set-bios-vendor-version-fields-to-Seabios-0.5.patch index 8a7aef3..8650a63 100644 --- a/SOURCES/0003-smbios-set-bios-vendor-version-fields-to-Seabios-0.5.patch +++ b/SOURCES/0003-smbios-set-bios-vendor-version-fields-to-Seabios-0.5.patch @@ -1,4 +1,4 @@ -From 60858d89551b29bcfe595f60f9cb518e55a915fe Mon Sep 17 00:00:00 2001 +From e65a8cab8ed866690d1a229e97c1e8ee0369cd72 Mon Sep 17 00:00:00 2001 From: Gerd Hoffmann Date: Mon, 28 Jul 2014 12:14:11 +0200 Subject: smbios: set bios vendor/version fields to Seabios/0.5.1 @@ -27,7 +27,7 @@ Signed-off-by: Miroslav Rezanina 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/fw/smbios.c b/src/fw/smbios.c -index f3b5ad9..2770ff7 100644 +index 62a563b..4dc1737 100644 --- a/src/fw/smbios.c +++ b/src/fw/smbios.c @@ -174,8 +174,8 @@ smbios_init_type_0(void *start) diff --git a/SOURCES/0004-Workaround-for-a-win8.1-32-S4-resume-bug.patch b/SOURCES/0004-Workaround-for-a-win8.1-32-S4-resume-bug.patch index 9dfe5ff..370bb8d 100644 --- a/SOURCES/0004-Workaround-for-a-win8.1-32-S4-resume-bug.patch +++ b/SOURCES/0004-Workaround-for-a-win8.1-32-S4-resume-bug.patch @@ -1,4 +1,4 @@ -From 1dfb44fecec3070163d66047815f3cbebabfceb6 Mon Sep 17 00:00:00 2001 +From 5c71a5876270b2dc0173db9ba410aa202f002428 Mon Sep 17 00:00:00 2001 From: Radim Krcmar Date: Mon, 10 Mar 2014 15:14:27 +0100 Subject: Workaround for a win8.1-32 S4 resume bug diff --git a/SOURCES/0005-redhat-reserve-more-memory-on-fseg.patch b/SOURCES/0005-redhat-reserve-more-memory-on-fseg.patch index dd2b21b..bc15f68 100644 --- a/SOURCES/0005-redhat-reserve-more-memory-on-fseg.patch +++ b/SOURCES/0005-redhat-reserve-more-memory-on-fseg.patch @@ -1,4 +1,4 @@ -From 0a9f331cc723d5dfefb16022366d40db9491d555 Mon Sep 17 00:00:00 2001 +From 7efcff8f5b02a721a11e13423a2938affa4eff18 Mon Sep 17 00:00:00 2001 From: Gerd Hoffmann Date: Tue, 19 Apr 2016 11:27:50 +0200 Subject: redhat: reserve more memory on fseg diff --git a/SOURCES/0006-vgabios-Reorder-video-modes-to-work-around-a-Windows.patch b/SOURCES/0006-vgabios-Reorder-video-modes-to-work-around-a-Windows.patch deleted file mode 100644 index 97a4b73..0000000 --- a/SOURCES/0006-vgabios-Reorder-video-modes-to-work-around-a-Windows.patch +++ /dev/null @@ -1,124 +0,0 @@ -From 53b64698cdcba24ebcea482523196eb1e64c65aa Mon Sep 17 00:00:00 2001 -From: Ladi Prosek -Date: Mon, 31 Oct 2016 19:33:05 +0100 -Subject: vgabios: Reorder video modes to work around a Windows bug - -RH-Author: Ladi Prosek -Message-id: <1477924385-6169-1-git-send-email-lprosek@redhat.com> -Patchwork-id: 72677 -O-Subject: [RHEL-7.4/7.3.z seabios PATCH] vgabios: Reorder video modes to work around a Windows bug -Bugzilla: 1392028 -RH-Acked-by: Laszlo Ersek -RH-Acked-by: Gerd Hoffmann -RH-Acked-by: vrozenfe - -Windows Server 2016 and Windows 10 RS1 come with a bug in its blue screen -of death rendering logic which prevents it from generating crash dumps. - -The bug does not manifest if Windows sees a suitable 32 bpp video mode -before a suitable 24 bpp video mode in the list of modes returned from -vgabios. This commit moves all 32 bpp modes to the front of the list to -make sure that this is always the case. - -Upstream patch: -https://www.coreboot.org/pipermail/seabios/2016-October/010963.html - -There are valid concerns upstream about the breaking nature of the fix -but for the limited set of operating systems supported by RHEL/RHEV we -can easily verify that they are unaffected. So as things stand now, this -is a downstream-only patch which will be reverted in the near future; -the exact time will depend on Windows 10 RS2 schedule and other factors. -The goal is to make sure that our customers running Windows 10 VMs can -generate crash dumps. - -Signed-off-by: Ladi Prosek -Signed-off-by: Miroslav Rezanina ---- - vgasrc/bochsvga.c | 39 ++++++++++++++++++++------------------- - 1 file changed, 20 insertions(+), 19 deletions(-) - -diff --git a/vgasrc/bochsvga.c b/vgasrc/bochsvga.c -index ec5d101..c5d1511 100644 ---- a/vgasrc/bochsvga.c -+++ b/vgasrc/bochsvga.c -@@ -28,6 +28,25 @@ static struct bochsvga_mode - u16 mode; - struct vgamode_s info; - } bochsvga_modes[] VAR16 = { -+ /* 32 bpp BOCHS modes */ -+ { 0x140, { MM_DIRECT, 320, 200, 32, 8, 16, SEG_GRAPH } }, -+ { 0x141, { MM_DIRECT, 640, 400, 32, 8, 16, SEG_GRAPH } }, -+ { 0x142, { MM_DIRECT, 640, 480, 32, 8, 16, SEG_GRAPH } }, -+ { 0x143, { MM_DIRECT, 800, 600, 32, 8, 16, SEG_GRAPH } }, -+ { 0x144, { MM_DIRECT, 1024, 768, 32, 8, 16, SEG_GRAPH } }, -+ { 0x145, { MM_DIRECT, 1280, 1024, 32, 8, 16, SEG_GRAPH } }, -+ { 0x147, { MM_DIRECT, 1600, 1200, 32, 8, 16, SEG_GRAPH } }, -+ { 0x14c, { MM_DIRECT, 1152, 864, 32, 8, 16, SEG_GRAPH } }, -+ { 0x177, { MM_DIRECT, 1280, 768, 32, 8, 16, SEG_GRAPH } }, -+ { 0x17a, { MM_DIRECT, 1280, 800, 32, 8, 16, SEG_GRAPH } }, -+ { 0x17d, { MM_DIRECT, 1280, 960, 32, 8, 16, SEG_GRAPH } }, -+ { 0x180, { MM_DIRECT, 1440, 900, 32, 8, 16, SEG_GRAPH } }, -+ { 0x183, { MM_DIRECT, 1400, 1050, 32, 8, 16, SEG_GRAPH } }, -+ { 0x186, { MM_DIRECT, 1680, 1050, 32, 8, 16, SEG_GRAPH } }, -+ { 0x189, { MM_DIRECT, 1920, 1200, 32, 8, 16, SEG_GRAPH } }, -+ { 0x18c, { MM_DIRECT, 2560, 1600, 32, 8, 16, SEG_GRAPH } }, -+ { 0x18f, { MM_DIRECT, 1280, 720, 32, 8, 16, SEG_GRAPH } }, -+ { 0x192, { MM_DIRECT, 1920, 1080, 32, 8, 16, SEG_GRAPH } }, - /* standard modes */ - { 0x100, { MM_PACKED, 640, 400, 8, 8, 16, SEG_GRAPH } }, - { 0x101, { MM_PACKED, 640, 480, 8, 8, 16, SEG_GRAPH } }, -@@ -56,50 +75,32 @@ static struct bochsvga_mode - { 0x11D, { MM_DIRECT, 1600, 1200, 15, 8, 16, SEG_GRAPH } }, - { 0x11E, { MM_DIRECT, 1600, 1200, 16, 8, 16, SEG_GRAPH } }, - { 0x11F, { MM_DIRECT, 1600, 1200, 24, 8, 16, SEG_GRAPH } }, -- /* BOCHS modes */ -- { 0x140, { MM_DIRECT, 320, 200, 32, 8, 16, SEG_GRAPH } }, -- { 0x141, { MM_DIRECT, 640, 400, 32, 8, 16, SEG_GRAPH } }, -- { 0x142, { MM_DIRECT, 640, 480, 32, 8, 16, SEG_GRAPH } }, -- { 0x143, { MM_DIRECT, 800, 600, 32, 8, 16, SEG_GRAPH } }, -- { 0x144, { MM_DIRECT, 1024, 768, 32, 8, 16, SEG_GRAPH } }, -- { 0x145, { MM_DIRECT, 1280, 1024, 32, 8, 16, SEG_GRAPH } }, -+ /* 8, 15, 16, and 24 bpp BOCHS modes */ - { 0x146, { MM_PACKED, 320, 200, 8, 8, 16, SEG_GRAPH } }, -- { 0x147, { MM_DIRECT, 1600, 1200, 32, 8, 16, SEG_GRAPH } }, - { 0x148, { MM_PACKED, 1152, 864, 8, 8, 16, SEG_GRAPH } }, - { 0x149, { MM_DIRECT, 1152, 864, 15, 8, 16, SEG_GRAPH } }, - { 0x14a, { MM_DIRECT, 1152, 864, 16, 8, 16, SEG_GRAPH } }, - { 0x14b, { MM_DIRECT, 1152, 864, 24, 8, 16, SEG_GRAPH } }, -- { 0x14c, { MM_DIRECT, 1152, 864, 32, 8, 16, SEG_GRAPH } }, - { 0x175, { MM_DIRECT, 1280, 768, 16, 8, 16, SEG_GRAPH } }, - { 0x176, { MM_DIRECT, 1280, 768, 24, 8, 16, SEG_GRAPH } }, -- { 0x177, { MM_DIRECT, 1280, 768, 32, 8, 16, SEG_GRAPH } }, - { 0x178, { MM_DIRECT, 1280, 800, 16, 8, 16, SEG_GRAPH } }, - { 0x179, { MM_DIRECT, 1280, 800, 24, 8, 16, SEG_GRAPH } }, -- { 0x17a, { MM_DIRECT, 1280, 800, 32, 8, 16, SEG_GRAPH } }, - { 0x17b, { MM_DIRECT, 1280, 960, 16, 8, 16, SEG_GRAPH } }, - { 0x17c, { MM_DIRECT, 1280, 960, 24, 8, 16, SEG_GRAPH } }, -- { 0x17d, { MM_DIRECT, 1280, 960, 32, 8, 16, SEG_GRAPH } }, - { 0x17e, { MM_DIRECT, 1440, 900, 16, 8, 16, SEG_GRAPH } }, - { 0x17f, { MM_DIRECT, 1440, 900, 24, 8, 16, SEG_GRAPH } }, -- { 0x180, { MM_DIRECT, 1440, 900, 32, 8, 16, SEG_GRAPH } }, - { 0x181, { MM_DIRECT, 1400, 1050, 16, 8, 16, SEG_GRAPH } }, - { 0x182, { MM_DIRECT, 1400, 1050, 24, 8, 16, SEG_GRAPH } }, -- { 0x183, { MM_DIRECT, 1400, 1050, 32, 8, 16, SEG_GRAPH } }, - { 0x184, { MM_DIRECT, 1680, 1050, 16, 8, 16, SEG_GRAPH } }, - { 0x185, { MM_DIRECT, 1680, 1050, 24, 8, 16, SEG_GRAPH } }, -- { 0x186, { MM_DIRECT, 1680, 1050, 32, 8, 16, SEG_GRAPH } }, - { 0x187, { MM_DIRECT, 1920, 1200, 16, 8, 16, SEG_GRAPH } }, - { 0x188, { MM_DIRECT, 1920, 1200, 24, 8, 16, SEG_GRAPH } }, -- { 0x189, { MM_DIRECT, 1920, 1200, 32, 8, 16, SEG_GRAPH } }, - { 0x18a, { MM_DIRECT, 2560, 1600, 16, 8, 16, SEG_GRAPH } }, - { 0x18b, { MM_DIRECT, 2560, 1600, 24, 8, 16, SEG_GRAPH } }, -- { 0x18c, { MM_DIRECT, 2560, 1600, 32, 8, 16, SEG_GRAPH } }, - { 0x18d, { MM_DIRECT, 1280, 720, 16, 8, 16, SEG_GRAPH } }, - { 0x18e, { MM_DIRECT, 1280, 720, 24, 8, 16, SEG_GRAPH } }, -- { 0x18f, { MM_DIRECT, 1280, 720, 32, 8, 16, SEG_GRAPH } }, - { 0x190, { MM_DIRECT, 1920, 1080, 16, 8, 16, SEG_GRAPH } }, - { 0x191, { MM_DIRECT, 1920, 1080, 24, 8, 16, SEG_GRAPH } }, -- { 0x192, { MM_DIRECT, 1920, 1080, 32, 8, 16, SEG_GRAPH } }, - }; - - static int dispi_found VAR16 = 0; --- -1.8.3.1 - diff --git a/SOURCES/config.vga.bochs-display b/SOURCES/config.vga.bochs-display new file mode 100644 index 0000000..d2adaae --- /dev/null +++ b/SOURCES/config.vga.bochs-display @@ -0,0 +1,3 @@ +CONFIG_BUILD_VGABIOS=y +CONFIG_DISPLAY_BOCHS=y +CONFIG_VGA_PCI=y diff --git a/SOURCES/config.vga.ramfb b/SOURCES/config.vga.ramfb new file mode 100644 index 0000000..c809c79 --- /dev/null +++ b/SOURCES/config.vga.ramfb @@ -0,0 +1,3 @@ +CONFIG_BUILD_VGABIOS=y +CONFIG_VGA_RAMFB=y +CONFIG_VGA_PCI=n diff --git a/SOURCES/seabios-vga-fix-cirrus-bios.patch b/SOURCES/seabios-vga-fix-cirrus-bios.patch new file mode 100644 index 0000000..5cea8cd --- /dev/null +++ b/SOURCES/seabios-vga-fix-cirrus-bios.patch @@ -0,0 +1,42 @@ +From 9e3aaa8c60399e1a66f4700b34698ef4cc59c773 Mon Sep 17 00:00:00 2001 +From: Gerd Hoffmann +Date: Thu, 2 Jul 2020 16:33:09 -0400 +Subject: [PATCH] vga: fix cirrus bios + +RH-Author: Gerd Hoffmann +Message-id: <20200702163309.29589-2-kraxel@redhat.com> +Patchwork-id: 97895 +O-Subject: [RHEL-AV-8.2.1 seabios PATCH 1/1] vga: fix cirrus bios +Bugzilla: 1847959 +RH-Acked-by: Laszlo Ersek +RH-Acked-by: Juan Quintela +RH-Acked-by: Dr. David Alan Gilbert + +Little mistake, big effect. The patch adding the ati driver broke +cirrus due to a missing "else", which effectively downgrades cirrus +to standard vga. + +Fixes: 34b6ecc16074 ("vga: add atiext driver") +Signed-off-by: Gerd Hoffmann +(cherry picked from commit d11c75185276ded944f2ea0277532b7fee849bbc) +Signed-off-by: Danilo C. L. de Paula +--- + vgasrc/vgahw.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/vgasrc/vgahw.h b/vgasrc/vgahw.h +index c774f4f2..8b64660e 100644 +--- a/vgasrc/vgahw.h ++++ b/vgasrc/vgahw.h +@@ -36,7 +36,7 @@ static inline int vgahw_set_mode(struct vgamode_s *vmode_g, int flags) { + static inline void vgahw_list_modes(u16 seg, u16 *dest, u16 *last) { + if (CONFIG_VGA_CIRRUS) + clext_list_modes(seg, dest, last); +- if (CONFIG_VGA_ATI) ++ else if (CONFIG_VGA_ATI) + ati_list_modes(seg, dest, last); + else if (CONFIG_VGA_BOCHS) + bochsvga_list_modes(seg, dest, last); +-- +2.27.0 + diff --git a/SPECS/seabios.spec b/SPECS/seabios.spec index 5ecc0ca..5fd6e25 100644 --- a/SPECS/seabios.spec +++ b/SPECS/seabios.spec @@ -1,18 +1,20 @@ Name: seabios -Version: 1.11.1 -Release: 4%{?dist} +Version: 1.13.0 +Release: 2%{?dist} Summary: Open-source legacy BIOS implementation Group: Applications/Emulators License: LGPLv3 URL: https://www.coreboot.org/SeaBIOS -Source0: https://code.coreboot.org/p/seabios/downloads/get/seabios-1.11.1.tar.gz +Source0: https://code.coreboot.org/p/seabios/downloads/get/seabios-1.13.0.tar.gz Source10: config.vga.cirrus Source11: config.vga.qxl Source12: config.vga.stdvga Source13: config.vga.virtio +Source14: config.vga.ramfb +Source15: config.vga.bochs-display Source20: config.seabios-128k Source21: config.seabios-256k @@ -21,7 +23,8 @@ Patch0002: 0002-allow-1TB-of-RAM.patch Patch0003: 0003-smbios-set-bios-vendor-version-fields-to-Seabios-0.5.patch Patch0004: 0004-Workaround-for-a-win8.1-32-S4-resume-bug.patch Patch0005: 0005-redhat-reserve-more-memory-on-fseg.patch -Patch0006: 0006-vgabios-Reorder-video-modes-to-work-around-a-Windows.patch +# For bz#1847959 - novnc working in grayscale and low resolution after upgrade to OSP15/OSP16 +Patch6: seabios-vga-fix-cirrus-bios.patch BuildRequires: python3 iasl ExclusiveArch: x86_64 %{power64} @@ -77,7 +80,7 @@ SeaVGABIOS is an open-source VGABIOS implementation. %patch0003 -p1 %patch0004 -p1 %patch0005 -p1 -%patch0006 -p1 +%patch6 -p1 %build %ifarch x86_64 @@ -104,7 +107,7 @@ build_bios %{_sourcedir}/config.seabios-256k bios.bin bios-256k.bin # seavgabios -%global vgaconfigs cirrus qxl stdvga virtio +%global vgaconfigs cirrus qxl stdvga virtio ramfb bochs-display for config in %{vgaconfigs}; do build_bios %{_sourcedir}/config.vga.${config} \ vgabios.bin vgabios-${config}.bin out/vgabios.bin @@ -136,6 +139,14 @@ install -m 0644 binaries/vgabios*.bin $RPM_BUILD_ROOT%{_datadir}/seavgabios %changelog +* Mon Jul 13 2020 Danilo C. L. de Paula - 1.13.0 +- Resolves: bz#1844296 +(Upgrade components in virt:rhel module:stream for RHEL-8.3 release) + +* Mon Apr 27 2020 Danilo C. L. de Paula - 1.13.0 +- Resolves: bz#1810193 + (Upgrade components in virt:rhel module:stream for RHEL-8.3 release) + * Fri Jun 28 2019 Danilo de Paula - 1.11.1-4 - Rebuild all virt packages to fix RHEL's upgrade path - Resolves: rhbz#1695587