Patchwork [1/1] Add vgabios build rules to roms/Makefile

login
register
mail settings
Submitter Gerd Hoffmann
Date July 12, 2012, 1:33 p.m.
Message ID <1342099998-32020-2-git-send-email-kraxel@redhat.com>
Download mbox | patch
Permalink /patch/170659/
State New
Headers show

Comments

Gerd Hoffmann - July 12, 2012, 1:33 p.m.
This patch adds some glue to roms/Makefile to build vgabios binaries for
qemu.  It covers both the lgpl'ed vgabios implementation used by qemu
traditionally and the new seabios implementation.

The purpose of this patch is to (a) document the vgabios build process
and (b) simplify seavgabios testing for those who want to play with it.

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
---
 roms/Makefile          |   17 +++++++++++++++++
 roms/config.vga.cirrus |    3 +++
 roms/config.vga.isavga |    3 +++
 roms/config.vga.qxl    |    6 ++++++
 roms/config.vga.stdvga |    3 +++
 roms/config.vga.vmware |    6 ++++++
 6 files changed, 38 insertions(+), 0 deletions(-)
 create mode 100644 roms/config.vga.cirrus
 create mode 100644 roms/config.vga.isavga
 create mode 100644 roms/config.vga.qxl
 create mode 100644 roms/config.vga.stdvga
 create mode 100644 roms/config.vga.vmware

Patch

diff --git a/roms/Makefile b/roms/Makefile
index 0114e6f..feb9c2b 100644
--- a/roms/Makefile
+++ b/roms/Makefile
@@ -1,10 +1,27 @@ 
 
+vgabios_variants := stdvga cirrus vmware qxl
+
 default:
 	@echo "nothing is build by default"
 	@echo "available build targets:"
 	@echo "  bios           -- update bios.bin (seabios)"
+	@echo "  seavgabios     -- update vgabios binaries (seabios)"
+	@echo "  lgplvgabios    -- update vgabios binaries (lgpl)"
 
 bios: config.seabios
 	sh configure-seabios.sh $<
 	make -C seabios out/bios.bin
 	cp seabios/out/bios.bin ../pc-bios/bios.bin
+
+seavgabios: $(patsubst %,seavgabios-%,$(vgabios_variants))
+
+seavgabios-%: config.vga.%
+	sh configure-seabios.sh $<
+	make -C seabios out/vgabios.bin
+	cp seabios/out/vgabios.bin ../pc-bios/vgabios-$*.bin
+
+lgplvgabios: $(patsubst %,lgplvgabios-%,$(vgabios_variants))
+
+lgplvgabios-%:
+	make -C vgabios vgabios-$*.bin
+	cp vgabios/VGABIOS-lgpl-latest.$*.bin ../pc-bios/vgabios-$*.bin
diff --git a/roms/config.vga.cirrus b/roms/config.vga.cirrus
new file mode 100644
index 0000000..c8fe582
--- /dev/null
+++ b/roms/config.vga.cirrus
@@ -0,0 +1,3 @@ 
+CONFIG_BUILD_VGABIOS=y
+CONFIG_VGA_CIRRUS=y
+CONFIG_VGA_PCI=y
diff --git a/roms/config.vga.isavga b/roms/config.vga.isavga
new file mode 100644
index 0000000..e55e294
--- /dev/null
+++ b/roms/config.vga.isavga
@@ -0,0 +1,3 @@ 
+CONFIG_BUILD_VGABIOS=y
+CONFIG_VGA_BOCHS=y
+CONFIG_VGA_PCI=n
diff --git a/roms/config.vga.qxl b/roms/config.vga.qxl
new file mode 100644
index 0000000..d393f0c
--- /dev/null
+++ b/roms/config.vga.qxl
@@ -0,0 +1,6 @@ 
+CONFIG_BUILD_VGABIOS=y
+CONFIG_VGA_BOCHS=y
+CONFIG_VGA_PCI=y
+CONFIG_OVERRIDE_PCI_ID=y
+CONFIG_VGA_VID=0x1b36
+CONFIG_VGA_DID=0x0100
diff --git a/roms/config.vga.stdvga b/roms/config.vga.stdvga
new file mode 100644
index 0000000..7d063b7
--- /dev/null
+++ b/roms/config.vga.stdvga
@@ -0,0 +1,3 @@ 
+CONFIG_BUILD_VGABIOS=y
+CONFIG_VGA_BOCHS=y
+CONFIG_VGA_PCI=y
diff --git a/roms/config.vga.vmware b/roms/config.vga.vmware
new file mode 100644
index 0000000..eb10427
--- /dev/null
+++ b/roms/config.vga.vmware
@@ -0,0 +1,6 @@ 
+CONFIG_BUILD_VGABIOS=y
+CONFIG_VGA_BOCHS=y
+CONFIG_VGA_PCI=y
+CONFIG_OVERRIDE_PCI_ID=y
+CONFIG_VGA_VID=0x15ad
+CONFIG_VGA_DID=0x0405