Update to latest Bochs BIOS
A number of our patches have been merged so we can now remove them from our queue. Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6117 c046a42c-6fe2-441c-8c8c-71466251a162
This commit is contained in:
parent
68d5736aee
commit
f3c6282391
@ -1,21 +0,0 @@
|
||||
Disable stack protector for BIOS
|
||||
|
||||
Some distro GCCs (like Ubuntu) enable stack protection by default. Since the
|
||||
BIOS doesn't link against libgcc, this results in undefined references unless
|
||||
the stack protector is disabled.
|
||||
|
||||
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
|
||||
|
||||
diff --git a/bios/Makefile.in b/bios/Makefile.in
|
||||
index af674b4..5c7bd4f 100644
|
||||
--- a/bios/Makefile.in
|
||||
+++ b/bios/Makefile.in
|
||||
@@ -41,7 +41,7 @@ RANLIB = @RANLIB@
|
||||
|
||||
BCC = bcc
|
||||
GCC = gcc
|
||||
-GCC32 = gcc -m32
|
||||
+GCC32 = gcc -m32 -fno-stack-protector
|
||||
AS86 = as86
|
||||
|
||||
BX_INCDIRS = -I.. -I$(srcdir)/.. -I../iodev -I$(srcdir)/../iodev
|
@ -1,36 +0,0 @@
|
||||
Make ACPI tables byte-aligned
|
||||
|
||||
The ACPI spec requires structures to be byte-aligned. I'm a bit surprised we've
|
||||
gotten away with this for so long. This patch allows Knoppix to boot. This bug
|
||||
was reported by Paul Brook.
|
||||
|
||||
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
|
||||
|
||||
diff --git a/bios/rombios32.c b/bios/rombios32.c
|
||||
index 7953485..540912a 100644
|
||||
--- a/bios/rombios32.c
|
||||
+++ b/bios/rombios32.c
|
||||
@@ -1099,6 +1099,12 @@ static void mptable_init(void)
|
||||
/* Table structure from Linux kernel (the ACPI tables are under the
|
||||
BSD license) */
|
||||
|
||||
+/*
|
||||
+ * All tables must be byte-packed to match the ACPI specification, since
|
||||
+ * the tables are provided by the system BIOS.
|
||||
+ */
|
||||
+#pragma pack(1)
|
||||
+
|
||||
#define ACPI_TABLE_HEADER_DEF /* ACPI common table header */ \
|
||||
uint8_t signature [4]; /* ACPI signature (4 ASCII characters) */\
|
||||
uint32_t length; /* Length of table, in bytes, including header */\
|
||||
@@ -1326,6 +1332,10 @@ struct madt_int_override
|
||||
};
|
||||
#endif
|
||||
|
||||
+/* Reset to default packing */
|
||||
+
|
||||
+#pragma pack()
|
||||
+
|
||||
#include "acpi-dsdt.hex"
|
||||
|
||||
static inline uint16_t cpu_to_le16(uint16_t x)
|
@ -1,33 +0,0 @@
|
||||
Fix bochs bios build from a separate directory
|
||||
|
||||
Bochs keeps the BIOS-bochs-latest and BIOS-bochs-legacy binaries under revision
|
||||
control. Since the build changes these binaries, and guilt cannot handle
|
||||
changed binaries, it makes it very difficult to work with a patch queue if
|
||||
you're building from the same tree as the source is located.
|
||||
|
||||
Bochs has some support for building from a separate directory but it's currently
|
||||
broken. This patch fixes that and allows for a sane work flow when developing
|
||||
BIOS changes for QEMU.
|
||||
|
||||
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
|
||||
|
||||
diff --git a/bios/Makefile.in b/bios/Makefile.in
|
||||
index 5c7bd4f..3d3d195 100644
|
||||
--- a/bios/Makefile.in
|
||||
+++ b/bios/Makefile.in
|
||||
@@ -98,7 +98,7 @@ rombios32.bin: rombios32.out rombios.h
|
||||
./biossums -pad $@
|
||||
|
||||
rombios32.out: rombios32start.o rombios32.o rombios32.ld
|
||||
- ld -o $@ -T rombios32.ld rombios32start.o rombios32.o
|
||||
+ ld -o $@ -T $(srcdir)/rombios32.ld rombios32start.o rombios32.o
|
||||
|
||||
rombios32.o: rombios32.c acpi-dsdt.hex
|
||||
$(GCC32) -O2 -Wall -c -o $@ $<
|
||||
@@ -115,5 +115,4 @@ rombios32start.o: rombios32start.S
|
||||
BIOS-bochs-latest: rombios16.bin rombios32.bin
|
||||
cat rombios32.bin rombios16.bin > $@
|
||||
|
||||
-biossums: biossums.c
|
||||
- $(GCC) -o biossums biossums.c
|
||||
+biossums: biossums.o
|
@ -1 +1 @@
|
||||
9d573204c0bef20be64f99c55c29660f5fd2fe71
|
||||
370a7e0d8419bc05192d766c11b7221e5ffc0f75
|
||||
|
@ -1,7 +1,4 @@
|
||||
0001_bx-qemu.patch
|
||||
0002_e820-high-mem.patch
|
||||
0003_smp-startup-poll.patch
|
||||
0004_no-stack-protector.patch
|
||||
0005_hpet.patch
|
||||
0006_acpi-packing.patch
|
||||
0007_separate-build-dir.patch
|
||||
|
BIN
pc-bios/bios.bin
BIN
pc-bios/bios.bin
Binary file not shown.
Loading…
Reference in New Issue
Block a user