Compare commits

...

No commits in common. "imports/c8-beta-stream-rhel/seabios-1.11.1-3.module+el8.1.0+2983+b2ae9c0a" and "c8-stream-rhel" have entirely different histories.

16 changed files with 681 additions and 193 deletions

2
.gitignore vendored
View File

@ -1 +1 @@
SOURCES/seabios-1.11.1.tar.gz
SOURCES/seabios-1.16.0.tar.gz

View File

@ -1 +1 @@
b0ead7ce2bd4b267a48e713ae3888a21ee287bf1 SOURCES/seabios-1.11.1.tar.gz
0cc6b21cfbafa1f9f158c9aca1ab9f5174ebede2 SOURCES/seabios-1.16.0.tar.gz

View File

@ -1,7 +1,10 @@
From d5d95a6501682b870a8981f0ad129fa345bbda74 Mon Sep 17 00:00:00 2001
From d659d62b9c094acea66f6f7506877f210a9dd182 Mon Sep 17 00:00:00 2001
From: Andrea Arcangeli <aarcange@redhat.com>
Date: Tue, 8 Oct 2013 17:07:23 +0200
Subject: allow >1TB of RAM
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
RH-Author: Andrea Arcangeli <aarcange@redhat.com>
Message-id: <1381252043-13480-2-git-send-email-aarcange@redhat.com>
@ -20,18 +23,18 @@ Signed-off-by: Andrea Arcangeli <aarcange@redhat.com>
src/post.c | 7 ++++---
2 files changed, 8 insertions(+), 6 deletions(-)
Signed-off-by: Miroslav Rezanina <mrezanin@redhat.com>
(cherry picked from commit 4fee214c41b11b72b3427fda18e9eac1ee647746)
(cherry picked from commit 0dea1df1f9b9a64bd9e71dd1a7b4c6cc9962afa0)
Signed-off-by: Paweł Poławski <ppolawsk@redhat.com>
---
src/fw/paravirt.c | 7 ++++---
src/hw/rtc.h | 7 ++++---
2 files changed, 8 insertions(+), 6 deletions(-)
diff --git a/src/fw/paravirt.c b/src/fw/paravirt.c
index 0770c47..0804d57 100644
index fba4e52d..090d6555 100644
--- a/src/fw/paravirt.c
+++ b/src/fw/paravirt.c
@@ -492,9 +492,10 @@ qemu_cfg_e820(void)
@@ -516,9 +516,10 @@ qemu_cfg_e820(void)
}
// Check for memory over 4Gig in cmos
@ -46,7 +49,7 @@ index 0770c47..0804d57 100644
e820_add(0x100000000ull, high, E820_RAM);
dprintf(1, "RamSizeOver4G: 0x%016llx [cmos]\n", RamSizeOver4G);
diff --git a/src/hw/rtc.h b/src/hw/rtc.h
index 252e73a..c4369f8 100644
index 252e73a4..c4369f81 100644
--- a/src/hw/rtc.h
+++ b/src/hw/rtc.h
@@ -41,9 +41,10 @@
@ -64,5 +67,5 @@ index 252e73a..c4369f8 100644
// RTC register flags
--
1.8.3.1
2.31.1

View File

@ -1,7 +1,10 @@
From 60858d89551b29bcfe595f60f9cb518e55a915fe Mon Sep 17 00:00:00 2001
From daf5bb8573c22dc133b4f7a8a07a174dbb30a2c5 Mon Sep 17 00:00:00 2001
From: Gerd Hoffmann <kraxel@redhat.com>
Date: Mon, 28 Jul 2014 12:14:11 +0200
Subject: smbios: set bios vendor/version fields to Seabios/0.5.1
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Message-id: <1406549651-26021-2-git-send-email-kraxel@redhat.com>
Patchwork-id: 60264
@ -20,14 +23,15 @@ fill in the actual version information instead of the bogous 0.5.1
which we are using here for backward compatibility reasons.
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Signed-off-by: Miroslav Rezanina <mrezanin@redhat.com>
(cherry picked from commit bf361def4623ac1942512f255e5c1450970b5092)
(cherry picked from commit cc21704fcfbc62af6789e1362eb05a2dc2b56cbf)
Signed-off-by: Paweł Poławski <ppolawsk@redhat.com>
---
src/fw/smbios.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/fw/smbios.c b/src/fw/smbios.c
index f3b5ad9..2770ff7 100644
index 730b6898..cb6fc03f 100644
--- a/src/fw/smbios.c
+++ b/src/fw/smbios.c
@@ -174,8 +174,8 @@ smbios_init_type_0(void *start)
@ -42,5 +46,5 @@ index f3b5ad9..2770ff7 100644
p->bios_starting_address_segment = 0xe800;
--
1.8.3.1
2.31.1

View File

@ -1,4 +1,4 @@
From 1dfb44fecec3070163d66047815f3cbebabfceb6 Mon Sep 17 00:00:00 2001
From 0182f348c6bc7cb676cb52941cbb0b220639c4e0 Mon Sep 17 00:00:00 2001
From: Radim Krcmar <rkrcmar@redhat.com>
Date: Mon, 10 Mar 2014 15:14:27 +0100
Subject: Workaround for a win8.1-32 S4 resume bug
@ -36,12 +36,15 @@ The reason Windows uses NULL pointer is still unknown, but this bug is
blocking WHQL certification, so we have to work around it in 7.0.
Signed-off-by: Radim Krčmář <rkrcmar@redhat.com>
(cherry picked from commit 8629f200084ce1aab31d193280d34b5fb16e543f)
Signed-off-by: Paweł Poławski <ppolawsk@redhat.com>
---
src/clock.c | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/src/clock.c b/src/clock.c
index e44e112..298a722 100644
index e44e1120..298a7229 100644
--- a/src/clock.c
+++ b/src/clock.c
@@ -309,7 +309,13 @@ handle_08(void)
@ -60,5 +63,5 @@ index e44e112..298a722 100644
pic_eoi1();
}
--
1.8.3.1
2.31.1

View File

@ -1,44 +0,0 @@
From 0a9f331cc723d5dfefb16022366d40db9491d555 Mon Sep 17 00:00:00 2001
From: Gerd Hoffmann <kraxel@redhat.com>
Date: Tue, 19 Apr 2016 11:27:50 +0200
Subject: redhat: reserve more memory on fseg
RH-Author: Gerd Hoffmann <kraxel@redhat.com>
Message-id: <1461065271-22039-2-git-send-email-kraxel@redhat.com>
Patchwork-id: 70213
O-Subject: [RHEL-7.1 seabios PATCH 1/2] redhat: reserve more memory on fseg
Bugzilla: 1327060
RH-Acked-by: Miroslav Rezanina <mrezanin@redhat.com>
RH-Acked-by: Marcel Apfelbaum <marcel@redhat.com>
RH-Acked-by: Laszlo Ersek <lersek@redhat.com>
seabios 1.7.5 has about 8k free space in fseg.
configure 1.9.1 to keep the same amout space in fseg, so the amout of
disks we are able to handle stays roughly the same. ahci + scsi are
slightly below the 1.7.5 numbers but stay above the documented limits.
virtio-block numbers are higher than the 1.7.5 numbers.
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Signed-off-by: Miroslav Rezanina <mrezanin@redhat.com>
(cherry picked from commit 0561b82b0470679505d62f49eec83adb01eec0ab)
---
scripts/layoutrom.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/scripts/layoutrom.py b/scripts/layoutrom.py
index 6616721..71841aa 100755
--- a/scripts/layoutrom.py
+++ b/scripts/layoutrom.py
@@ -66,7 +66,7 @@ BUILD_BIOS_SIZE = 0x10000
BUILD_ROM_START = 0xc0000
BUILD_LOWRAM_END = 0xa0000
# Space to reserve in f-segment for dynamic allocations
-BUILD_MIN_BIOSTABLE = 2048
+BUILD_MIN_BIOSTABLE = 8192
# Layout the 16bit code. This ensures sections with fixed offset
# requirements are placed in the correct location. It also places the
--
1.8.3.1

View File

@ -1,124 +0,0 @@
From 53b64698cdcba24ebcea482523196eb1e64c65aa Mon Sep 17 00:00:00 2001
From: Ladi Prosek <lprosek@redhat.com>
Date: Mon, 31 Oct 2016 19:33:05 +0100
Subject: vgabios: Reorder video modes to work around a Windows bug
RH-Author: Ladi Prosek <lprosek@redhat.com>
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 <lersek@redhat.com>
RH-Acked-by: Gerd Hoffmann <kraxel@redhat.com>
RH-Acked-by: vrozenfe <vrozenfe@redhat.com>
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 <lprosek@redhat.com>
Signed-off-by: Miroslav Rezanina <mrezanin@redhat.com>
---
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

View File

@ -0,0 +1,3 @@
CONFIG_BUILD_VGABIOS=y
CONFIG_DISPLAY_BOCHS=y
CONFIG_VGA_PCI=y

3
SOURCES/config.vga.ramfb Normal file
View File

@ -0,0 +1,3 @@
CONFIG_BUILD_VGABIOS=y
CONFIG_VGA_RAMFB=y
CONFIG_VGA_PCI=n

View File

@ -0,0 +1,72 @@
From 93ba763d219be90b088b15a5fc585ff7f051e424 Mon Sep 17 00:00:00 2001
From: Gerd Hoffmann <kraxel@redhat.com>
Date: Mon, 25 Apr 2022 09:25:31 +0200
Subject: [PATCH 2/2] malloc: use large ZoneHigh when there is enough memory
RH-Author: Paolo Bonzini <pbonzini@redhat.com>
RH-MergeRequest: 9: malloc: use large ZoneHigh when there is enough memory
RH-Bugzilla: 2227373
RH-Acked-by: Thomas Huth <thuth@redhat.com>
RH-Acked-by: Oliver Steffen <osteffen@redhat.com>
RH-Acked-by: Laszlo Ersek <lersek@redhat.com>
RH-Acked-by: Jon Maloy <jmaloy@redhat.com>
RH-Commit: [2/2] aa6072543a124ad152199d5263c590cb95609d81
In case there is enough memory installed use a large ZoneHigh.
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
(cherry picked from commit dc88f9b72df52b22c35b127b80c487e0b6fca4af)
---
src/config.h | 3 ++-
src/malloc.c | 14 +++++++++-----
2 files changed, 11 insertions(+), 6 deletions(-)
diff --git a/src/config.h b/src/config.h
index 93c8dbc2..9abe355b 100644
--- a/src/config.h
+++ b/src/config.h
@@ -17,7 +17,8 @@
// Maximum number of map entries in the e820 map
#define BUILD_MAX_E820 32
// Space to reserve in high-memory for tables
-#define BUILD_MAX_HIGHTABLE (256*1024)
+#define BUILD_MIN_HIGHTABLE (256*1024)
+#define BUILD_MAX_HIGHTABLE (16*1024*1024)
// Largest supported externaly facing drive id
#define BUILD_MAX_EXTDRIVE 16
// Number of bytes the smbios may be and still live in the f-segment
diff --git a/src/malloc.c b/src/malloc.c
index ecd8c9ac..da840980 100644
--- a/src/malloc.c
+++ b/src/malloc.c
@@ -423,7 +423,7 @@ malloc_preinit(void)
// Populate temp high ram
u32 highram_start = 0;
- u32 highram_size = BUILD_MAX_HIGHTABLE;
+ u32 highram_size = 0;
int i;
for (i=e820_count-1; i>=0; i--) {
struct e820entry *en = &e820_list[i];
@@ -434,10 +434,14 @@ malloc_preinit(void)
continue;
u32 s = en->start, e = end;
if (!highram_start) {
- u32 newe = ALIGN_DOWN(e - highram_size, MALLOC_MIN_ALIGN);
- if (newe <= e && newe >= s) {
- highram_start = newe;
- e = newe;
+ u32 new_max = ALIGN_DOWN(e - BUILD_MAX_HIGHTABLE, MALLOC_MIN_ALIGN);
+ u32 new_min = ALIGN_DOWN(e - BUILD_MIN_HIGHTABLE, MALLOC_MIN_ALIGN);
+ if (new_max <= e && new_max >= s + BUILD_MAX_HIGHTABLE) {
+ highram_start = e = new_max;
+ highram_size = BUILD_MAX_HIGHTABLE;
+ } else if (new_min <= e && new_min >= s) {
+ highram_start = e = new_min;
+ highram_size = BUILD_MIN_HIGHTABLE;
}
}
alloc_add(&ZoneTmpHigh, s, e);
--
2.37.3

View File

@ -0,0 +1,71 @@
From 2be730cc469be472bc3e3967690a83f1327e9fc1 Mon Sep 17 00:00:00 2001
From: Gerd Hoffmann <kraxel@redhat.com>
Date: Mon, 25 Apr 2022 09:20:02 +0200
Subject: [PATCH 1/2] malloc: use variable for ZoneHigh size
RH-Author: Paolo Bonzini <pbonzini@redhat.com>
RH-MergeRequest: 9: malloc: use large ZoneHigh when there is enough memory
RH-Bugzilla: 2227373
RH-Acked-by: Thomas Huth <thuth@redhat.com>
RH-Acked-by: Oliver Steffen <osteffen@redhat.com>
RH-Acked-by: Laszlo Ersek <lersek@redhat.com>
RH-Acked-by: Jon Maloy <jmaloy@redhat.com>
RH-Commit: [1/2] 9e60f2104cc297ed4e78b92c5e5e11e11395bfc3
Use the variable highram_size instead of the BUILD_MAX_HIGHTABLE #define
for the ZoneHigh size. Initialize the new variable with the old #define,
so behavior does not change.
This allows to easily adjust the ZoneHigh size at runtime in a followup
patch.
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
(cherry picked from commit 3b91e8e9fe93d5ff7edf17f984c401f9e6ba55fe)
---
src/malloc.c | 15 ++++++++-------
1 file changed, 8 insertions(+), 7 deletions(-)
diff --git a/src/malloc.c b/src/malloc.c
index 3733855c..ecd8c9ac 100644
--- a/src/malloc.c
+++ b/src/malloc.c
@@ -422,7 +422,8 @@ malloc_preinit(void)
e820_add(BUILD_BIOS_ADDR, BUILD_BIOS_SIZE, E820_RESERVED);
// Populate temp high ram
- u32 highram = 0;
+ u32 highram_start = 0;
+ u32 highram_size = BUILD_MAX_HIGHTABLE;
int i;
for (i=e820_count-1; i>=0; i--) {
struct e820entry *en = &e820_list[i];
@@ -432,10 +433,10 @@ malloc_preinit(void)
if (en->type != E820_RAM || end > 0xffffffff)
continue;
u32 s = en->start, e = end;
- if (!highram) {
- u32 newe = ALIGN_DOWN(e - BUILD_MAX_HIGHTABLE, MALLOC_MIN_ALIGN);
+ if (!highram_start) {
+ u32 newe = ALIGN_DOWN(e - highram_size, MALLOC_MIN_ALIGN);
if (newe <= e && newe >= s) {
- highram = newe;
+ highram_start = newe;
e = newe;
}
}
@@ -444,9 +445,9 @@ malloc_preinit(void)
// Populate regions
alloc_add(&ZoneTmpLow, BUILD_STACK_ADDR, BUILD_EBDA_MINIMUM);
- if (highram) {
- alloc_add(&ZoneHigh, highram, highram + BUILD_MAX_HIGHTABLE);
- e820_add(highram, BUILD_MAX_HIGHTABLE, E820_RESERVED);
+ if (highram_start) {
+ alloc_add(&ZoneHigh, highram_start, highram_start + highram_size);
+ e820_add(highram_start, highram_size, E820_RESERVED);
}
}
--
2.37.3

View File

@ -0,0 +1,174 @@
From a35645ca4985b8fdd4f4d8c4d87ae05001061c53 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Volker=20R=C3=BCmelin?= <vr_qemu@t-online.de>
Date: Sat, 2 Apr 2022 20:28:38 +0200
Subject: [PATCH 2/3] pci: refactor the pci_config_*() functions
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
RH-Author: Gerd Hoffmann <kraxel@redhat.com>
RH-MergeRequest: 7: pci: fix reset for q35 and tcg
RH-Commit: [1/2] 7607f8f3296435a2884902f650ce060c6be07bd1
RH-Bugzilla: 2083884
RH-Acked-by: Pawel Polawski <ppolawsk@redhat.com>
RH-Acked-by: Oliver Steffen <osteffen@redhat.com>
RH-Acked-by: Igor Mammedov <imammedo@redhat.com>
RH-Acked-by: Laszlo Ersek <lersek@redhat.com>
Split out the Standard PCI Configuration Access Mechanism
pci_ioconfig_*() functions from the pci_config_*() functions.
The standard PCI CAM functions will be used in the next patch.
Reviewed-by: Gerd Hoffmann <kraxel@redhat.com>
Signed-off-by: Volker Rümelin <vr_qemu@t-online.de>
(cherry picked from commit d24f42b0d819ea473ae05b2f955b822d0126d901)
---
src/hw/pci.c | 54 ++++++++++++++++++++++++++++++++++++++++------------
src/hw/pci.h | 12 +++++++++++-
2 files changed, 53 insertions(+), 13 deletions(-)
diff --git a/src/hw/pci.c b/src/hw/pci.c
index 3df1dae4..f13cbdea 100644
--- a/src/hw/pci.c
+++ b/src/hw/pci.c
@@ -26,63 +26,93 @@ static u32 ioconfig_cmd(u16 bdf, u32 addr)
return 0x80000000 | (bdf << 8) | (addr & 0xfc);
}
+void pci_ioconfig_writel(u16 bdf, u32 addr, u32 val)
+{
+ outl(ioconfig_cmd(bdf, addr), PORT_PCI_CMD);
+ outl(val, PORT_PCI_DATA);
+}
+
void pci_config_writel(u16 bdf, u32 addr, u32 val)
{
if (!MODESEGMENT && mmconfig) {
writel(mmconfig_addr(bdf, addr), val);
} else {
- outl(ioconfig_cmd(bdf, addr), PORT_PCI_CMD);
- outl(val, PORT_PCI_DATA);
+ pci_ioconfig_writel(bdf, addr, val);
}
}
+void pci_ioconfig_writew(u16 bdf, u32 addr, u16 val)
+{
+ outl(ioconfig_cmd(bdf, addr), PORT_PCI_CMD);
+ outw(val, PORT_PCI_DATA + (addr & 2));
+}
+
void pci_config_writew(u16 bdf, u32 addr, u16 val)
{
if (!MODESEGMENT && mmconfig) {
writew(mmconfig_addr(bdf, addr), val);
} else {
- outl(ioconfig_cmd(bdf, addr), PORT_PCI_CMD);
- outw(val, PORT_PCI_DATA + (addr & 2));
+ pci_ioconfig_writew(bdf, addr, val);
}
}
+void pci_ioconfig_writeb(u16 bdf, u32 addr, u8 val)
+{
+ outl(ioconfig_cmd(bdf, addr), PORT_PCI_CMD);
+ outb(val, PORT_PCI_DATA + (addr & 3));
+}
+
void pci_config_writeb(u16 bdf, u32 addr, u8 val)
{
if (!MODESEGMENT && mmconfig) {
writeb(mmconfig_addr(bdf, addr), val);
} else {
- outl(ioconfig_cmd(bdf, addr), PORT_PCI_CMD);
- outb(val, PORT_PCI_DATA + (addr & 3));
+ pci_ioconfig_writeb(bdf, addr, val);
}
}
+u32 pci_ioconfig_readl(u16 bdf, u32 addr)
+{
+ outl(ioconfig_cmd(bdf, addr), PORT_PCI_CMD);
+ return inl(PORT_PCI_DATA);
+}
+
u32 pci_config_readl(u16 bdf, u32 addr)
{
if (!MODESEGMENT && mmconfig) {
return readl(mmconfig_addr(bdf, addr));
} else {
- outl(ioconfig_cmd(bdf, addr), PORT_PCI_CMD);
- return inl(PORT_PCI_DATA);
+ return pci_ioconfig_readl(bdf, addr);
}
}
+u16 pci_ioconfig_readw(u16 bdf, u32 addr)
+{
+ outl(ioconfig_cmd(bdf, addr), PORT_PCI_CMD);
+ return inw(PORT_PCI_DATA + (addr & 2));
+}
+
u16 pci_config_readw(u16 bdf, u32 addr)
{
if (!MODESEGMENT && mmconfig) {
return readw(mmconfig_addr(bdf, addr));
} else {
- outl(ioconfig_cmd(bdf, addr), PORT_PCI_CMD);
- return inw(PORT_PCI_DATA + (addr & 2));
+ return pci_ioconfig_readw(bdf, addr);
}
}
+u8 pci_ioconfig_readb(u16 bdf, u32 addr)
+{
+ outl(ioconfig_cmd(bdf, addr), PORT_PCI_CMD);
+ return inb(PORT_PCI_DATA + (addr & 3));
+}
+
u8 pci_config_readb(u16 bdf, u32 addr)
{
if (!MODESEGMENT && mmconfig) {
return readb(mmconfig_addr(bdf, addr));
} else {
- outl(ioconfig_cmd(bdf, addr), PORT_PCI_CMD);
- return inb(PORT_PCI_DATA + (addr & 3));
+ return pci_ioconfig_readb(bdf, addr);
}
}
diff --git a/src/hw/pci.h b/src/hw/pci.h
index 01c51f70..ee6acafc 100644
--- a/src/hw/pci.h
+++ b/src/hw/pci.h
@@ -32,6 +32,15 @@ static inline u16 pci_bus_devfn_to_bdf(int bus, u16 devfn) {
; BDF >= 0 \
; BDF=pci_next(BDF, (BUS)))
+// standard PCI configration access mechanism
+void pci_ioconfig_writel(u16 bdf, u32 addr, u32 val);
+void pci_ioconfig_writew(u16 bdf, u32 addr, u16 val);
+void pci_ioconfig_writeb(u16 bdf, u32 addr, u8 val);
+u32 pci_ioconfig_readl(u16 bdf, u32 addr);
+u16 pci_ioconfig_readw(u16 bdf, u32 addr);
+u8 pci_ioconfig_readb(u16 bdf, u32 addr);
+
+// PCI configuration access using either PCI CAM or PCIe ECAM
void pci_config_writel(u16 bdf, u32 addr, u32 val);
void pci_config_writew(u16 bdf, u32 addr, u16 val);
void pci_config_writeb(u16 bdf, u32 addr, u8 val);
@@ -39,9 +48,10 @@ u32 pci_config_readl(u16 bdf, u32 addr);
u16 pci_config_readw(u16 bdf, u32 addr);
u8 pci_config_readb(u16 bdf, u32 addr);
void pci_config_maskw(u16 bdf, u32 addr, u16 off, u16 on);
-void pci_enable_mmconfig(u64 addr, const char *name);
u8 pci_find_capability(u16 bdf, u8 cap_id, u8 cap);
int pci_next(int bdf, int bus);
+
+void pci_enable_mmconfig(u64 addr, const char *name);
int pci_probe_host(void);
void pci_reboot(void);
--
2.35.3

View File

@ -0,0 +1,159 @@
From a7e5f1d8f1f874434f8b3e6d6eac784d5e3e3971 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Volker=20R=C3=BCmelin?= <vr_qemu@t-online.de>
Date: Sat, 2 Apr 2022 20:28:39 +0200
Subject: [PATCH 3/3] reset: force standard PCI configuration access
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
RH-Author: Gerd Hoffmann <kraxel@redhat.com>
RH-MergeRequest: 7: pci: fix reset for q35 and tcg
RH-Commit: [2/2] 693fbb9148c81f344dc9f64e7a36e51b42ee1a95
RH-Bugzilla: 2083884
RH-Acked-by: Pawel Polawski <ppolawsk@redhat.com>
RH-Acked-by: Oliver Steffen <osteffen@redhat.com>
RH-Acked-by: Igor Mammedov <imammedo@redhat.com>
RH-Acked-by: Laszlo Ersek <lersek@redhat.com>
After a reset of a QEMU -machine q35 guest, the PCI Express
Enhanced Configuration Mechanism is disabled and the variable
mmconfig no longer matches the configuration register PCIEXBAR
of the Q35 chipset. Until the variable mmconfig is reset to 0,
all pci_config_*() functions no longer work.
The variable mmconfig is located in one of the read-only C-F
segments. To reset it the pci_config_*() functions are needed,
but they do not work.
Replace all pci_config_*() calls with Standard PCI Configuration
Mechanism pci_ioconfig_*() calls until mmconfig is overwritten
with 0 by a fresh copy of the BIOS.
This fixes
In resume (status=0)
In 32bit resume
Attempting a hard reboot
Unable to unlock ram - bridge not found
and a reset loop with QEMU -accel tcg.
Signed-off-by: Volker Rümelin <vr_qemu@t-online.de>
(cherry picked from commit 01774004c7f7fdc9c1e8f1715f70d3b913f8d491)
---
src/fw/shadow.c | 14 +++++++-------
src/hw/pci.c | 27 +++++++++++++++++++++++++++
src/hw/pci.h | 6 ++++++
3 files changed, 40 insertions(+), 7 deletions(-)
diff --git a/src/fw/shadow.c b/src/fw/shadow.c
index 4c627a8f..8930616e 100644
--- a/src/fw/shadow.c
+++ b/src/fw/shadow.c
@@ -32,8 +32,8 @@ __make_bios_writable_intel(u16 bdf, u32 pam0)
{
// Read in current PAM settings from pci config space
union pamdata_u pamdata;
- pamdata.data32[0] = pci_config_readl(bdf, ALIGN_DOWN(pam0, 4));
- pamdata.data32[1] = pci_config_readl(bdf, ALIGN_DOWN(pam0, 4) + 4);
+ pamdata.data32[0] = pci_ioconfig_readl(bdf, ALIGN_DOWN(pam0, 4));
+ pamdata.data32[1] = pci_ioconfig_readl(bdf, ALIGN_DOWN(pam0, 4) + 4);
u8 *pam = &pamdata.data8[pam0 & 0x03];
// Make ram from 0xc0000-0xf0000 writable
@@ -46,8 +46,8 @@ __make_bios_writable_intel(u16 bdf, u32 pam0)
pam[0] = 0x30;
// Write PAM settings back to pci config space
- pci_config_writel(bdf, ALIGN_DOWN(pam0, 4), pamdata.data32[0]);
- pci_config_writel(bdf, ALIGN_DOWN(pam0, 4) + 4, pamdata.data32[1]);
+ pci_ioconfig_writel(bdf, ALIGN_DOWN(pam0, 4), pamdata.data32[0]);
+ pci_ioconfig_writel(bdf, ALIGN_DOWN(pam0, 4) + 4, pamdata.data32[1]);
if (!ram_present)
// Copy bios.
@@ -59,7 +59,7 @@ __make_bios_writable_intel(u16 bdf, u32 pam0)
static void
make_bios_writable_intel(u16 bdf, u32 pam0)
{
- int reg = pci_config_readb(bdf, pam0);
+ int reg = pci_ioconfig_readb(bdf, pam0);
if (!(reg & 0x10)) {
// QEMU doesn't fully implement the piix shadow capabilities -
// if ram isn't backing the bios segment when shadowing is
@@ -125,8 +125,8 @@ make_bios_writable(void)
// At this point, statically allocated variables can't be written,
// so do this search manually.
int bdf;
- foreachbdf(bdf, 0) {
- u32 vendev = pci_config_readl(bdf, PCI_VENDOR_ID);
+ pci_ioconfig_foreachbdf(bdf, 0) {
+ u32 vendev = pci_ioconfig_readl(bdf, PCI_VENDOR_ID);
u16 vendor = vendev & 0xffff, device = vendev >> 16;
if (vendor == PCI_VENDOR_ID_INTEL
&& device == PCI_DEVICE_ID_INTEL_82441) {
diff --git a/src/hw/pci.c b/src/hw/pci.c
index f13cbdea..8eda84b2 100644
--- a/src/hw/pci.c
+++ b/src/hw/pci.c
@@ -157,6 +157,33 @@ u8 pci_find_capability(u16 bdf, u8 cap_id, u8 cap)
return 0;
}
+// Helper function for pci_ioconfig_foreachbdf() macro - return next device
+int pci_ioconfig_next(int bdf, int bus)
+{
+ if (pci_bdf_to_fn(bdf) == 0
+ && (pci_ioconfig_readb(bdf, PCI_HEADER_TYPE) & 0x80) == 0)
+ // Last found device wasn't a multi-function device - skip to
+ // the next device.
+ bdf += 8;
+ else
+ bdf += 1;
+
+ for (;;) {
+ if (pci_bdf_to_bus(bdf) != bus)
+ return -1;
+
+ u16 v = pci_ioconfig_readw(bdf, PCI_VENDOR_ID);
+ if (v != 0x0000 && v != 0xffff)
+ // Device is present.
+ return bdf;
+
+ if (pci_bdf_to_fn(bdf) == 0)
+ bdf += 8;
+ else
+ bdf += 1;
+ }
+}
+
// Helper function for foreachbdf() macro - return next device
int
pci_next(int bdf, int bus)
diff --git a/src/hw/pci.h b/src/hw/pci.h
index ee6acafc..b2f5baf4 100644
--- a/src/hw/pci.h
+++ b/src/hw/pci.h
@@ -27,6 +27,11 @@ static inline u16 pci_bus_devfn_to_bdf(int bus, u16 devfn) {
return (bus << 8) | devfn;
}
+#define pci_ioconfig_foreachbdf(BDF, BUS) \
+ for (BDF=pci_ioconfig_next(pci_bus_devfn_to_bdf((BUS), 0)-1, (BUS)) \
+ ; BDF >= 0 \
+ ; BDF=pci_ioconfig_next(BDF, (BUS)))
+
#define foreachbdf(BDF, BUS) \
for (BDF=pci_next(pci_bus_devfn_to_bdf((BUS), 0)-1, (BUS)) \
; BDF >= 0 \
@@ -39,6 +44,7 @@ void pci_ioconfig_writeb(u16 bdf, u32 addr, u8 val);
u32 pci_ioconfig_readl(u16 bdf, u32 addr);
u16 pci_ioconfig_readw(u16 bdf, u32 addr);
u8 pci_ioconfig_readb(u16 bdf, u32 addr);
+int pci_ioconfig_next(int bdf, int bus);
// PCI configuration access using either PCI CAM or PCIe ECAM
void pci_config_writel(u16 bdf, u32 addr, u32 val);
--
2.35.3

View File

@ -0,0 +1,40 @@
From 27b924ad88b53c1bff736d144b90ce655087d1a5 Mon Sep 17 00:00:00 2001
From: Gerd Hoffmann <kraxel@redhat.com>
Date: Fri, 29 Oct 2021 11:19:10 +0200
Subject: [PATCH 1/3] shortcut skip-unbootable-disks optimitation
RH-Author: Gerd Hoffmann <kraxel@redhat.com>
RH-MergeRequest: 6: shortcut skip-unbootable-disks optimitation
RH-Commit: [1/1] 95008c119b45b4a360caa4a7733420d72aec99cb
RH-Bugzilla: 2073012
RH-Acked-by: Laszlo Ersek <lersek@redhat.com>
RH-Acked-by: Oliver Steffen <osteffen@redhat.com>
RH-Acked-by: Pawel Polawski <ppolawsk@redhat.com>
---
src/boot.c | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/src/boot.c b/src/boot.c
index 1effd802..b18e7788 100644
--- a/src/boot.c
+++ b/src/boot.c
@@ -297,11 +297,16 @@ find_prio(const char *glob)
u8 is_bootprio_strict(void)
{
+#if 0
static int prio_halt = -2;
if (prio_halt == -2)
prio_halt = find_prio("HALT");
return prio_halt >= 0;
+#else
+ // force initializing all disks
+ return 0;
+#endif
}
int bootprio_find_pci_device(struct pci_device *pci)
--
2.35.3

View File

@ -0,0 +1,42 @@
From 88e527d9fbbbe8d05e45f6db8a151d22e7f973d3 Mon Sep 17 00:00:00 2001
From: Gerd Hoffmann <kraxel@redhat.com>
Date: Thu, 30 Jun 2022 17:28:40 +0200
Subject: [PATCH] virtio-blk: use larger default request size
RH-Author: Gerd Hoffmann <kraxel@redhat.com>
RH-MergeRequest: 8: virtio-blk: use larger default request size
RH-Commit: [1/1] df68a35a0d02fb91f61eca9e9342ae5f13f99803
RH-Bugzilla: 2101787
RH-Acked-by: Oliver Steffen <osteffen@redhat.com>
RH-Acked-by: Pawel Polawski <ppolawsk@redhat.com>
RH-Acked-by: Miroslav Rezanina <mrezanin@redhat.com>
Bump default from 8 to 64 blocks. Using 8 by default leads
to requests being splitted on qemu, which slows down boot.
Some (temporary) debug logging added showed that almost all
requests on a standard fedora install are less than 64 blocks,
so that should bring us back to 1.15 performance levels.
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
(cherry picked from commit 46de2eec93bffa0706e6229c0da2919763c8eb04)
---
src/hw/virtio-blk.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/hw/virtio-blk.c b/src/hw/virtio-blk.c
index 929ba887..9b4a05a4 100644
--- a/src/hw/virtio-blk.c
+++ b/src/hw/virtio-blk.c
@@ -95,7 +95,7 @@ virtio_blk_op(struct disk_op_s *op, int write)
blk_num_max = (u16)max_io_size / vdrive->drive.blksize;
else
/* default blk_num_max if hardware doesnot advise a proper value */
- blk_num_max = 8;
+ blk_num_max = 64;
if (op->count <= blk_num_max) {
virtio_blk_op_one_segment(vdrive, write, sg);
--
2.31.1

View File

@ -1,18 +1,20 @@
Name: seabios
Version: 1.11.1
Release: 3%{?dist}
Version: 1.16.0
Release: 4%{?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.16.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
@ -20,8 +22,18 @@ Source21: config.seabios-256k
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#2073012 - Guest whose os is installed multiple disks but boot partition is installed on single disk can't boot into OS on RHEL 8 [rhel-8.7.0]
Patch5: seabios-shortcut-skip-unbootable-disks-optimitation.patch
# For bz#2083884 - qemu reboot problem with seabios 1.16.0
Patch6: seabios-pci-refactor-the-pci_config_-functions.patch
# For bz#2083884 - qemu reboot problem with seabios 1.16.0
Patch7: seabios-reset-force-standard-PCI-configuration-access.patch
# For bz#2101787 - [rhel.8.7] Loading a kernel/initrd is sometimes very slow
Patch8: seabios-virtio-blk-use-larger-default-request-size.patch
# For bz#2227373 - "No bootable device" with OS boot disk interface VirtIO-SCSI and with more than 9 VirtIO disks.
Patch9: seabios-malloc-use-variable-for-ZoneHigh-size.patch
# For bz#2227373 - "No bootable device" with OS boot disk interface VirtIO-SCSI and with more than 9 VirtIO disks.
Patch10: seabios-malloc-use-large-ZoneHigh-when-there-is-enough-memor.patch
BuildRequires: python3 iasl
ExclusiveArch: x86_64 %{power64}
@ -76,8 +88,12 @@ SeaVGABIOS is an open-source VGABIOS implementation.
%patch0002 -p1
%patch0003 -p1
%patch0004 -p1
%patch0005 -p1
%patch0006 -p1
%patch5 -p1
%patch6 -p1
%patch7 -p1
%patch8 -p1
%patch9 -p1
%patch10 -p1
%build
%ifarch x86_64
@ -104,7 +120,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 +152,72 @@ install -m 0644 binaries/vgabios*.bin $RPM_BUILD_ROOT%{_datadir}/seavgabios
%changelog
* Thu Aug 03 2023 Jon Maloy <jmaloy@redhat.com> - 1.16.0-4
- seabios-malloc-use-variable-for-ZoneHigh-size.patch [bz#2227373]
- seabios-malloc-use-large-ZoneHigh-when-there-is-enough-memor.patch [bz#2227373]
- Resolves: bz#2227373
("No bootable device" with OS boot disk interface VirtIO-SCSI and with more than 9 VirtIO disks.)
* Wed Jul 27 2022 Miroslav Rezanina <mrezanin@redhat.com> - 1.16.0-3
- seabios-virtio-blk-use-larger-default-request-size.patch [bz#2101787]
- Resolves: bz#2101787
([rhel.8.7] Loading a kernel/initrd is sometimes very slow)
* Mon May 30 2022 Jon Maloy <jmaloy@redhat.com> - 1.16.0-2
- seabios-shortcut-skip-unbootable-disks-optimitation.patch [bz#2073012]
- seabios-pci-refactor-the-pci_config_-functions.patch [bz#2083884]
- seabios-reset-force-standard-PCI-configuration-access.patch [bz#2083884]
- Resolves: bz#2073012
(Guest whose os is installed multiple disks but boot partition is installed on single disk can't boot into OS on RHEL 8 [rhel-8.7.0])
- Resolves: bz#2083884
(qemu reboot problem with seabios 1.16.0)
* Tue Apr 26 2022 Paweł Poławski <ppolawsk@redhat.com> - 1.16.0-1
- Rebase to upstream 1.16 tag [bz#2066828]
- Resolves: bz#2066828
(rebase seabios to 1.16 release)
* Thu Dec 16 2021 Jon Maloy <jmaloy@redhat.com> - 1.15.0-1.el8
- Rebase to 1.15 (bz#2018392)
- Resolves: bz#2018392
* Thu Dec 16 2021 Jon Maloy <jmaloy@redhat.com> - 1.15.0-1.el8
- pci-reserve-resources-for-pcie-pci-bridge-to-fix-reg.patch [bz#2001921]
- pci: let firmware reserve IO for pcie-pci-bridge.patch [bz#2001921]
- Resolves: bz#2001921
* Tue Aug 11 2020 Miroslav Rezanina <mrezanin@redhat.com> - 1.14.0-1.el8
- Rebase to 1.14 (bz#1809772)
- Resolves: bz#1809772
(rebase seabios for RHEL AV-8.3.0)
* Tue Jan 21 2020 Miroslav Rezanina <mrezanin@redhat.com> - 1.13.0-1.el8
- Rebase to 1.13 (bz#1793377)
- Resolves: bz#1793377
(rebase seabios to 1.13)
* Tue Aug 20 2019 Danilo Cesar Lemes de Paula <ddepaula@redhat.com> - 1.12.0-5.el8
- seabios-add-get_keystroke_full-helper.patch [bz#1693031]
- seabios-bootmenu-add-support-for-more-than-9-entries.patch [bz#1693031]
- Resolves: bz#1693031
(On systems with more than 10 available boot devices, keys are uninintuitive)
* Fri Aug 02 2019 Danilo Cesar Lemes de Paula <ddepaula@redhat.com> - 1.12.0-4.el8
- seabios-tpm-Check-for-TPM-related-ACPI-tables-before-attempt.patch [bz#1705212]
- seabios-usb-ehci-Clear-pipe-token-on-pipe-reallocate.patch [bz#1705212]
- Resolves: bz#1705212
(Backport 1.12.1 patches to RHEL-AV 8.1.0)
* Tue Jul 09 2019 Miroslav Rezanina <mrezanin@redhat.com> - 1.12.0-3.el8
- seabios-rh-add-configs-for-ramfb-and-bochs-display.patch [bz#1724098]
- Resolves: bz#1724098
(enable device: bochs-display (seabios))
* Mon Jan 21 2019 Miroslav Rezanina <mrezanin@redhat.com> - 1.12.0-1.el8
- Rebase to 1.12.0 [bz#1666134]
- Resolves: bz#1666134
(Rebase seabios for RHEL-AV release in virt:8.0.0 stream)
* Fri Dec 07 2018 Danilo C. L. de Paula <ddepaula@redhat.com> - 1.11.1-3.el8
- Resolves: bz#1613465
(Fix seabios package)