Update seabios to master snapshot (pre-1.7.4).
Update vgabios, switch from lgplvgabios to seavgabios. Update build process to build both 128k and 256k bios versions. Use 256k bios for pc-*-2.0+ machine types. -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.22 (GNU/Linux) iQIcBAABAgAGBQJSoYRUAAoJEEy22O7T6HE4a18QAL5at1YcMp40N8EDJ268/xl0 +t2WGu2847imEhJ2lhI6gb1bmg2XdYYTtOfmIspC58BObpoJT4wppPo7JmGrGvL+ UYpge8mt/NkmzUjDz98sDKL3vqAq5ZFg4olMMIMNmNKCsyrq3Cz6U+/5F+2XMdHH P5tMqNvAFqNHWUhjcDxPNF7jWpsZkMKQb2RV1zKzZD7nvuf2wZmZjzsEjCLh3JzO pN2A4blgN3LTmoomf/HSaFmqGdrsuoDXtQ0s5JLCaZATONK7tr7/ZFhgxykHP+Ol lenfmYKJba5KAO/rH7lN3DlF460HZClq734i9NXkTKGXPvPJ7mCMhJ79SIWZQcWx u4mPKBvuE5hk596jV0lscNOTNqRk8fVw7aOgSgGpfOUtf72pl2jy70gCsXLpS9R3 zhazAQHDU5v55FHIsnGJ0igkrj0usliWoT89UBAcaYCbq/vKyVp9jKgWHYHLbJuM Xr2rm8aQI0i/ZtSImHqxmg+UfrLdCcwKlW4gpUlqdO6w1Rd1m3GkY1RXbuSi9RYO eGTcc51d8RJXxa1k24BkGOf9FPVjf8MmyOwy4mBbNp01+hU6XzdWs1E5kr7zQ65M +apRsBJadcTtbG8kXuOMdSwhpkc1H0PuERppDyDSV9aS0NlPdyBMzr/H2T3szEsH yqtyTFxZs23m3IWFYmvO =nfH6 -----END PGP SIGNATURE----- Merge remote-tracking branch 'kraxel/tags/pull-seabios-31b8b4e-1' into staging Update seabios to master snapshot (pre-1.7.4). Update vgabios, switch from lgplvgabios to seavgabios. Update build process to build both 128k and 256k bios versions. Use 256k bios for pc-*-2.0+ machine types. # gpg: Signature made Fri 06 Dec 2013 12:01:24 AM PST using RSA key ID D3E87138 # gpg: Can't check signature: public key not found # By Gerd Hoffmann # Via Gerd Hoffmann * kraxel/tags/pull-seabios-31b8b4e-1: pc: switch 2.0 machine types to large seabios binary roms: update vgabios binaries roms: update seabios binaries roms: enable seabios cross builds roms: build two seabios binaries roms: update seabios submodule to 31b8b4eea9d9ad58a73b22a6060d3ac1c419c26d add firmware to machine options add pc-{i440fx,q35}-2.0 machine types Message-id: 1386322527-23148-1-git-send-email-kraxel@redhat.com Signed-off-by: Anthony Liguori <aliguori@amazon.com>
This commit is contained in:
commit
3c88da3c24
@ -339,15 +339,26 @@ static void pc_xen_hvm_init(QEMUMachineInitArgs *args)
|
||||
.desc = "Standard PC (i440FX + PIIX, 1996)", \
|
||||
.hot_add_cpu = pc_hot_add_cpu
|
||||
|
||||
#define PC_I440FX_1_7_MACHINE_OPTIONS PC_I440FX_MACHINE_OPTIONS
|
||||
static QEMUMachine pc_i440fx_machine_v1_7 = {
|
||||
PC_I440FX_1_7_MACHINE_OPTIONS,
|
||||
.name = "pc-i440fx-1.7",
|
||||
#define PC_I440FX_2_0_MACHINE_OPTIONS \
|
||||
PC_I440FX_MACHINE_OPTIONS, \
|
||||
.default_machine_opts = "firmware=bios-256k.bin"
|
||||
|
||||
static QEMUMachine pc_i440fx_machine_v2_0 = {
|
||||
PC_I440FX_2_0_MACHINE_OPTIONS,
|
||||
.name = "pc-i440fx-2.0",
|
||||
.alias = "pc",
|
||||
.init = pc_init_pci,
|
||||
.is_default = 1,
|
||||
};
|
||||
|
||||
#define PC_I440FX_1_7_MACHINE_OPTIONS PC_I440FX_MACHINE_OPTIONS
|
||||
|
||||
static QEMUMachine pc_i440fx_machine_v1_7 = {
|
||||
PC_I440FX_1_7_MACHINE_OPTIONS,
|
||||
.name = "pc-i440fx-1.7",
|
||||
.init = pc_init_pci,
|
||||
};
|
||||
|
||||
#define PC_I440FX_1_6_MACHINE_OPTIONS PC_I440FX_MACHINE_OPTIONS
|
||||
|
||||
static QEMUMachine pc_i440fx_machine_v1_6 = {
|
||||
@ -747,6 +758,7 @@ static QEMUMachine xenfv_machine = {
|
||||
|
||||
static void pc_machine_init(void)
|
||||
{
|
||||
qemu_register_machine(&pc_i440fx_machine_v2_0);
|
||||
qemu_register_machine(&pc_i440fx_machine_v1_7);
|
||||
qemu_register_machine(&pc_i440fx_machine_v1_6);
|
||||
qemu_register_machine(&pc_i440fx_machine_v1_5);
|
||||
|
@ -259,12 +259,22 @@ static void pc_q35_init_1_4(QEMUMachineInitArgs *args)
|
||||
.desc = "Standard PC (Q35 + ICH9, 2009)", \
|
||||
.hot_add_cpu = pc_hot_add_cpu
|
||||
|
||||
#define PC_Q35_2_0_MACHINE_OPTIONS \
|
||||
PC_Q35_MACHINE_OPTIONS, \
|
||||
.default_machine_opts = "firmware=bios-256k.bin"
|
||||
|
||||
static QEMUMachine pc_q35_machine_v2_0 = {
|
||||
PC_Q35_2_0_MACHINE_OPTIONS,
|
||||
.name = "pc-q35-2.0",
|
||||
.alias = "q35",
|
||||
.init = pc_q35_init,
|
||||
};
|
||||
|
||||
#define PC_Q35_1_7_MACHINE_OPTIONS PC_Q35_MACHINE_OPTIONS
|
||||
|
||||
static QEMUMachine pc_q35_machine_v1_7 = {
|
||||
PC_Q35_1_7_MACHINE_OPTIONS,
|
||||
.name = "pc-q35-1.7",
|
||||
.alias = "q35",
|
||||
.init = pc_q35_init,
|
||||
};
|
||||
|
||||
@ -306,6 +316,7 @@ static QEMUMachine pc_q35_machine_v1_4 = {
|
||||
|
||||
static void pc_q35_machine_init(void)
|
||||
{
|
||||
qemu_register_machine(&pc_q35_machine_v2_0);
|
||||
qemu_register_machine(&pc_q35_machine_v1_7);
|
||||
qemu_register_machine(&pc_q35_machine_v1_6);
|
||||
qemu_register_machine(&pc_q35_machine_v1_5);
|
||||
|
Binary file not shown.
BIN
pc-bios/bios-256k.bin
Normal file
BIN
pc-bios/bios-256k.bin
Normal file
Binary file not shown.
BIN
pc-bios/bios.bin
BIN
pc-bios/bios.bin
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -56,9 +56,10 @@ default:
|
||||
@echo " the EfiRom utility from edk2 / tianocore)"
|
||||
@echo " slof -- update slof.bin"
|
||||
|
||||
bios: build-seabios-config-seabios
|
||||
cp seabios/builds/seabios/bios.bin ../pc-bios/bios.bin
|
||||
cp seabios/builds/seabios/*dsdt.aml ../pc-bios/
|
||||
bios: build-seabios-config-seabios-128k build-seabios-config-seabios-256k
|
||||
cp seabios/builds/seabios-128k/bios.bin ../pc-bios/bios.bin
|
||||
cp seabios/builds/seabios-256k/bios.bin ../pc-bios/bios-256k.bin
|
||||
cp seabios/builds/seabios-256k/src/fw/*dsdt.aml ../pc-bios/
|
||||
|
||||
seavgabios: $(patsubst %,seavgabios-%,$(vgabios_variants))
|
||||
|
||||
@ -72,9 +73,11 @@ build-seabios-config-%: config.%
|
||||
mkdir -p seabios/builds/$*
|
||||
cp $< seabios/builds/$*/.config
|
||||
$(MAKE) $(MAKEFLAGS) -C seabios \
|
||||
CROSS_COMPILE=$(x86_64_cross_prefix) \
|
||||
KCONFIG_CONFIG=$(CURDIR)/seabios/builds/$*/.config \
|
||||
OUT=$(CURDIR)/seabios/builds/$*/ oldnoconfig
|
||||
$(MAKE) $(MAKEFLAGS) -C seabios \
|
||||
CROSS_COMPILE=$(x86_64_cross_prefix) \
|
||||
KCONFIG_CONFIG=$(CURDIR)/seabios/builds/$*/.config \
|
||||
OUT=$(CURDIR)/seabios/builds/$*/ all
|
||||
|
||||
|
@ -1 +0,0 @@
|
||||
# empty, default config works for us
|
6
roms/config.seabios-128k
Normal file
6
roms/config.seabios-128k
Normal file
@ -0,0 +1,6 @@
|
||||
# for qemu machine types 1.7 + older
|
||||
# need to turn off features (xhci) to make it fit into 128k
|
||||
CONFIG_QEMU=y
|
||||
CONFIG_ROM_SIZE=128
|
||||
CONFIG_XEN=n
|
||||
CONFIG_USB_XHCI=n
|
3
roms/config.seabios-256k
Normal file
3
roms/config.seabios-256k
Normal file
@ -0,0 +1,3 @@
|
||||
# for qemu machine types 2.0 + newer
|
||||
CONFIG_QEMU=y
|
||||
CONFIG_ROM_SIZE=256
|
@ -1 +1 @@
|
||||
Subproject commit ece025f5980bae88fa677bc9c0d24d2e580e205d
|
||||
Subproject commit 31b8b4eea9d9ad58a73b22a6060d3ac1c419c26d
|
7
vl.c
7
vl.c
@ -428,6 +428,10 @@ static QemuOptsList qemu_machine_opts = {
|
||||
.name = "usb",
|
||||
.type = QEMU_OPT_BOOL,
|
||||
.help = "Set on/off to enable/disable usb",
|
||||
},{
|
||||
.name = "firmware",
|
||||
.type = QEMU_OPT_STRING,
|
||||
.help = "firmware image",
|
||||
},
|
||||
{ /* End of list */ }
|
||||
},
|
||||
@ -3230,7 +3234,7 @@ int main(int argc, char **argv, char **envp)
|
||||
}
|
||||
break;
|
||||
case QEMU_OPTION_bios:
|
||||
bios_name = optarg;
|
||||
qemu_opts_set(qemu_find_opts("machine"), 0, "firmware", optarg);
|
||||
break;
|
||||
case QEMU_OPTION_singlestep:
|
||||
singlestep = 1;
|
||||
@ -4051,6 +4055,7 @@ int main(int argc, char **argv, char **envp)
|
||||
kernel_filename = qemu_opt_get(machine_opts, "kernel");
|
||||
initrd_filename = qemu_opt_get(machine_opts, "initrd");
|
||||
kernel_cmdline = qemu_opt_get(machine_opts, "append");
|
||||
bios_name = qemu_opt_get(machine_opts, "firmware");
|
||||
|
||||
boot_order = machine->default_boot_order;
|
||||
opts = qemu_opts_find(qemu_find_opts("boot-opts"), NULL);
|
||||
|
Loading…
Reference in New Issue
Block a user