Commit ef2039f17d3e2226b8650b4d7692e5f458a37573

Authored by Anthony Liguori
1 parent 2221dde5

Regenerate BIOS and add patches for -boot option

Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
pc-bios/bios-pq/0017-bochs-bios-Move-QEMU_CFG-constants-to-rombios.h.patch 0 → 100644
  1 +From f371c480cb93f3516f34af5e3a4524ee6ba43c24 Mon Sep 17 00:00:00 2001
  2 +From: Jan Kiszka <jan.kiszka@web.de>
  3 +Date: Thu, 2 Jul 2009 00:11:38 +0200
  4 +Subject: [PATCH 1/2] bochs-bios: Move QEMU_CFG constants to rombios.h
  5 +
  6 +We will need them outside of rombios32.c.
  7 +
  8 +Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
  9 +Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
  10 +---
  11 + bios/rombios.h | 10 ++++++++++
  12 + bios/rombios32.c | 10 ----------
  13 + 2 files changed, 10 insertions(+), 10 deletions(-)
  14 +
  15 +diff --git a/bios/rombios.h b/bios/rombios.h
  16 +index 6f9cbb1..59ce19d 100644
  17 +--- a/bios/rombios.h
  18 ++++ b/bios/rombios.h
  19 +@@ -58,6 +58,16 @@
  20 + #define SMB_IO_BASE 0xb100
  21 + #define SMP_MSR_ADDR 0x0510
  22 +
  23 ++#define QEMU_CFG_CTL_PORT 0x510
  24 ++#define QEMU_CFG_DATA_PORT 0x511
  25 ++#define QEMU_CFG_SIGNATURE 0x00
  26 ++#define QEMU_CFG_ID 0x01
  27 ++#define QEMU_CFG_UUID 0x02
  28 ++#define QEMU_CFG_NUMA 0x0d
  29 ++#define QEMU_CFG_ARCH_LOCAL 0x8000
  30 ++#define QEMU_CFG_ACPI_TABLES (QEMU_CFG_ARCH_LOCAL + 0)
  31 ++#define QEMU_CFG_SMBIOS_ENTRIES (QEMU_CFG_ARCH_LOCAL + 1)
  32 ++
  33 + // Define the application NAME
  34 + #if defined(BX_QEMU)
  35 + # define BX_APPNAME "QEMU"
  36 +diff --git a/bios/rombios32.c b/bios/rombios32.c
  37 +index f861f81..3fe4e48 100644
  38 +--- a/bios/rombios32.c
  39 ++++ b/bios/rombios32.c
  40 +@@ -468,16 +468,6 @@ void wrmsr_smp(uint32_t index, uint64_t val)
  41 + }
  42 +
  43 + #ifdef BX_QEMU
  44 +-#define QEMU_CFG_CTL_PORT 0x510
  45 +-#define QEMU_CFG_DATA_PORT 0x511
  46 +-#define QEMU_CFG_SIGNATURE 0x00
  47 +-#define QEMU_CFG_ID 0x01
  48 +-#define QEMU_CFG_UUID 0x02
  49 +-#define QEMU_CFG_NUMA 0x0D
  50 +-#define QEMU_CFG_ARCH_LOCAL 0x8000
  51 +-#define QEMU_CFG_ACPI_TABLES (QEMU_CFG_ARCH_LOCAL + 0)
  52 +-#define QEMU_CFG_SMBIOS_ENTRIES (QEMU_CFG_ARCH_LOCAL + 1)
  53 +-
  54 + int qemu_cfg_port;
  55 +
  56 + void qemu_cfg_select(int f)
  57 +--
  58 +1.6.2.5
  59 +
... ...
pc-bios/bios-pq/0018-bochs-bios-Make-boot-prompt-optional.patch 0 → 100644
  1 +From fff8ffe1c92474ee58ebd6da82fede0ab7929214 Mon Sep 17 00:00:00 2001
  2 +From: Jan Kiszka <jan.kiszka@web.de>
  3 +Date: Thu, 2 Jul 2009 00:11:44 +0200
  4 +Subject: [PATCH 2/2] bochs-bios: Make boot prompt optional
  5 +
  6 +Check via QEMU's firmware configuration interface if the boot prompt
  7 +should be given. This allows to disable the prompt with its several
  8 +seconds long delay, speeding up the common boot case.
  9 +
  10 +Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
  11 +Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
  12 +---
  13 + bios/rombios.c | 19 +++++++++++++++++++
  14 + bios/rombios.h | 1 +
  15 + 2 files changed, 20 insertions(+), 0 deletions(-)
  16 +
  17 +diff --git a/bios/rombios.c b/bios/rombios.c
  18 +index 0f13b53..560e6d5 100644
  19 +--- a/bios/rombios.c
  20 ++++ b/bios/rombios.c
  21 +@@ -2015,6 +2015,21 @@ Bit16u i; ipl_entry_t *e;
  22 + }
  23 +
  24 + #if BX_ELTORITO_BOOT
  25 ++#ifdef BX_QEMU
  26 ++int
  27 ++qemu_cfg_probe_bootkey()
  28 ++{
  29 ++ outw(QEMU_CFG_CTL_PORT, QEMU_CFG_SIGNATURE);
  30 ++ if (inb(QEMU_CFG_DATA_PORT) != 'Q' ||
  31 ++ inb(QEMU_CFG_DATA_PORT) != 'E' ||
  32 ++ inb(QEMU_CFG_DATA_PORT) != 'M' ||
  33 ++ inb(QEMU_CFG_DATA_PORT) != 'U') return 1;
  34 ++
  35 ++ outw(QEMU_CFG_CTL_PORT, QEMU_CFG_BOOT_MENU);
  36 ++ return inb(QEMU_CFG_DATA_PORT);
  37 ++}
  38 ++#endif // BX_QEMU
  39 ++
  40 + void
  41 + interactive_bootkey()
  42 + {
  43 +@@ -2026,6 +2041,10 @@ interactive_bootkey()
  44 + Bit16u ss = get_SS();
  45 + Bit16u valid_choice = 0;
  46 +
  47 ++#ifdef BX_QEMU
  48 ++ if (!qemu_cfg_probe_bootkey()) return;
  49 ++#endif
  50 ++
  51 + while (check_for_keystroke())
  52 + get_keystroke();
  53 +
  54 +diff --git a/bios/rombios.h b/bios/rombios.h
  55 +index 59ce19d..8ece2ee 100644
  56 +--- a/bios/rombios.h
  57 ++++ b/bios/rombios.h
  58 +@@ -64,6 +64,7 @@
  59 + #define QEMU_CFG_ID 0x01
  60 + #define QEMU_CFG_UUID 0x02
  61 + #define QEMU_CFG_NUMA 0x0d
  62 ++#define QEMU_CFG_BOOT_MENU 0x0e
  63 + #define QEMU_CFG_ARCH_LOCAL 0x8000
  64 + #define QEMU_CFG_ACPI_TABLES (QEMU_CFG_ARCH_LOCAL + 0)
  65 + #define QEMU_CFG_SMBIOS_ENTRIES (QEMU_CFG_ARCH_LOCAL + 1)
  66 +--
  67 +1.6.2.5
  68 +
... ...
pc-bios/bios-pq/series
... ... @@ -14,3 +14,5 @@
14 14 0014_add-srat-acpi-table-support.patch
15 15 0015_enable-power-button-even-generation.patch
16 16 0016-use-correct-mask-to-size-pci-option-rom-bar.patch
  17 +0017-bochs-bios-Move-QEMU_CFG-constants-to-rombios.h.patch
  18 +0018-bochs-bios-Make-boot-prompt-optional.patch
... ...
pc-bios/bios.bin
No preview for this file type