[vgabios] Patches from freedesktop.org to support newer qemu.

Justin M. Forbes jforbes at fedoraproject.org
Tue Aug 10 15:15:09 UTC 2010


commit 62aaa2f3a41339d30eae2a12c3bbd17e4b5797e1
Author: Justin M. Forbes <jforbes at redhat.com>
Date:   Tue Aug 10 10:14:56 2010 -0500

    Patches from freedesktop.org to support newer qemu.

 0001-Makefile-cleanup.patch                       |  119 +++++++++++++++++++++
 0002-Add-defines-for-PCI-IDs.patch                |   66 ++++++++++++
 0003-Add-qemu-stdvga-pci-bios.patch               |   59 ++++++++++
 0004-update-pci_get_lfb_addr-for-vmware-vga.patch |   60 +++++++++++
 0005-Add-qemu-vmware-vga-pci-bios.patch           |   63 +++++++++++
 0006-Add-qemu-qxl-vga-pci-bios.patch              |   63 +++++++++++
 vgabios.spec                                      |   24 ++++-
 7 files changed, 453 insertions(+), 1 deletions(-)
---
diff --git a/0001-Makefile-cleanup.patch b/0001-Makefile-cleanup.patch
new file mode 100644
index 0000000..038bf3b
--- /dev/null
+++ b/0001-Makefile-cleanup.patch
@@ -0,0 +1,119 @@
+From 4daf1128d4bb2c7e30b0c2f3d279c8fa5759bb39 Mon Sep 17 00:00:00 2001
+From: Gerd Hoffmann <kraxel at redhat.com>
+Date: Thu, 6 May 2010 09:58:40 +0200
+Subject: [PATCH 1/7] Makefile cleanup
+
+Use a single rule for building bios binaries.
+Use target specific variables to set compile flags.
+
+This makes it more obvious what the differences between the versions
+are.  It also makes it easier to add new bios binaries with slightly
+different settings.
+---
+ Makefile |   76 +++++++++++++++++++++++++++----------------------------------
+ 1 files changed, 34 insertions(+), 42 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index 00e8c66..c3c744c 100644
+--- a/Makefile
++++ b/Makefile
+@@ -16,8 +16,7 @@ VGABIOS_DATE = "-DVGABIOS_DATE=\"$(RELDATE)\""
+
+ all: bios cirrus-bios
+
+-
+-bios: biossums vgabios.bin vgabios.debug.bin
++bios: vgabios.bin vgabios.debug.bin
+
+ cirrus-bios: vgabios-cirrus.bin vgabios-cirrus.debug.bin
+
+@@ -27,6 +26,39 @@ clean:
+
+ dist-clean: clean
+
++# source files
++VGA_FILES := vgabios.c vgabios.h vgafonts.h vgatables.h
++VBE_FILES := vbe.h vbe.c vbetables.h
++
++# build flags
++vgabios.bin              : VGAFLAGS := -DVBE
++vgabios.debug.bin        : VGAFLAGS := -DVBE -DDEBUG
++vgabios-cirrus.bin       : VGAFLAGS := -DCIRRUS -DPCIBIOS 
++vgabios-cirrus.debug.bin : VGAFLAGS := -DCIRRUS -DPCIBIOS -DCIRRUS_DEBUG
++
++# dist names
++vgabios.bin              : DISTNAME := VGABIOS-lgpl-latest.bin
++vgabios.debug.bin        : DISTNAME := VGABIOS-lgpl-latest.debug.bin
++vgabios-cirrus.bin       : DISTNAME := VGABIOS-lgpl-latest.cirrus.bin
++vgabios-cirrus.debug.bin : DISTNAME := VGABIOS-lgpl-latest.cirrus.debug.bin
++
++# dependencies
++vgabios.bin              : $(VGA_FILES) $(VBE_FILES) biossums
++vgabios.debug.bin        : $(VGA_FILES) $(VBE_FILES) biossums
++vgabios-cirrus.bin       : $(VGA_FILES) clext.c biossums
++vgabios-cirrus.debug.bin : $(VGA_FILES) clext.c biossums
++
++# build rule
++%.bin:
++	$(GCC) -E -P vgabios.c $(VGABIOS_VERS) $(VGAFLAGS) $(VGABIOS_DATE) > _$*_.c
++	$(BCC) -o $*.s -C-c -D__i86__ -S -0 _$*_.c
++	sed -e 's/^\.text//' -e 's/^\.data//' $*.s > _$*_.s
++	$(AS86) _$*_.s -b $*.bin -u -w- -g -0 -j -O -l $*.txt
++	rm -f _$*_.s _$*_.c $*.s
++	mv $*.bin $(DISTNAME)
++	./biossums $(DISTNAME)
++	ls -l $(DISTNAME)
++
+ release: 
+ 	VGABIOS_VERS=\"-DVGABIOS_VERS=\\\"$(RELVERS)\\\"\" make bios cirrus-bios
+ 	/bin/rm -f  *.o *.s *.ld86 \
+@@ -37,46 +69,6 @@ release:
+ 	cp VGABIOS-lgpl-latest.cirrus.debug.bin ../$(RELEASE).cirrus.debug.bin
+ 	tar czvf ../$(RELEASE).tgz --exclude CVS -C .. $(RELEASE)/
+
+-vgabios.bin: vgabios.c vgabios.h vgafonts.h vgatables.h vbe.h vbe.c vbetables.h
+-	$(GCC) -E -P vgabios.c $(VGABIOS_VERS) -DVBE $(VGABIOS_DATE) > _vgabios_.c
+-	$(BCC) -o vgabios.s -C-c -D__i86__ -S -0 _vgabios_.c
+-	sed -e 's/^\.text//' -e 's/^\.data//' vgabios.s > _vgabios_.s
+-	$(AS86) _vgabios_.s -b vgabios.bin -u -w- -g -0 -j -O -l vgabios.txt
+-	rm -f _vgabios_.s _vgabios_.c vgabios.s
+-	mv vgabios.bin VGABIOS-lgpl-latest.bin
+-	./biossums VGABIOS-lgpl-latest.bin
+-	ls -l VGABIOS-lgpl-latest.bin
+-
+-vgabios.debug.bin: vgabios.c vgabios.h vgafonts.h vgatables.h vbe.h vbe.c vbetables.h
+-	$(GCC) -E -P vgabios.c $(VGABIOS_VERS) -DVBE -DDEBUG $(VGABIOS_DATE) > _vgabios-debug_.c
+-	$(BCC) -o vgabios-debug.s -C-c -D__i86__ -S -0 _vgabios-debug_.c
+-	sed -e 's/^\.text//' -e 's/^\.data//' vgabios-debug.s > _vgabios-debug_.s
+-	$(AS86) _vgabios-debug_.s -b vgabios.debug.bin -u -w- -g -0 -j -O -l vgabios.debug.txt
+-	rm -f _vgabios-debug_.s _vgabios-debug_.c vgabios-debug.s
+-	mv vgabios.debug.bin VGABIOS-lgpl-latest.debug.bin
+-	./biossums VGABIOS-lgpl-latest.debug.bin
+-	ls -l VGABIOS-lgpl-latest.debug.bin
+-
+-vgabios-cirrus.bin: vgabios.c vgabios.h vgafonts.h vgatables.h clext.c
+-	$(GCC) -E -P vgabios.c $(VGABIOS_VERS) -DCIRRUS -DPCIBIOS $(VGABIOS_DATE) > _vgabios-cirrus_.c
+-	$(BCC) -o vgabios-cirrus.s -C-c -D__i86__ -S -0 _vgabios-cirrus_.c
+-	sed -e 's/^\.text//' -e 's/^\.data//' vgabios-cirrus.s > _vgabios-cirrus_.s
+-	$(AS86) _vgabios-cirrus_.s -b vgabios-cirrus.bin -u -w- -g -0 -j -O -l vgabios.cirrus.txt
+-	rm -f _vgabios-cirrus_.s _vgabios-cirrus_.c vgabios-cirrus.s
+-	mv vgabios-cirrus.bin VGABIOS-lgpl-latest.cirrus.bin
+-	./biossums VGABIOS-lgpl-latest.cirrus.bin
+-	ls -l VGABIOS-lgpl-latest.cirrus.bin
+-
+-vgabios-cirrus.debug.bin: vgabios.c vgabios.h vgafonts.h vgatables.h clext.c
+-	$(GCC) -E -P vgabios.c $(VGABIOS_VERS) -DCIRRUS -DCIRRUS_DEBUG -DPCIBIOS $(VGABIOS_DATE) > _vgabios-cirrus-debug_.c
+-	$(BCC) -o vgabios-cirrus-debug.s -C-c -D__i86__ -S -0 _vgabios-cirrus-debug_.c
+-	sed -e 's/^\.text//' -e 's/^\.data//' vgabios-cirrus-debug.s > _vgabios-cirrus-debug_.s
+-	$(AS86) _vgabios-cirrus-debug_.s -b vgabios.cirrus.debug.bin -u -w- -g -0 -j -O -l vgabios.cirrus.debug.txt
+-	rm -f _vgabios-cirrus-debug_.s _vgabios-cirrus-debug_.c vgabios-cirrus-debug.s
+-	mv vgabios.cirrus.debug.bin VGABIOS-lgpl-latest.cirrus.debug.bin
+-	./biossums VGABIOS-lgpl-latest.cirrus.debug.bin
+-	ls -l VGABIOS-lgpl-latest.cirrus.debug.bin
+-
+ biossums: biossums.c
+ 	$(CC) -o biossums biossums.c
+
+-- 
+1.7.2.1
+
diff --git a/0002-Add-defines-for-PCI-IDs.patch b/0002-Add-defines-for-PCI-IDs.patch
new file mode 100644
index 0000000..4bf9088
--- /dev/null
+++ b/0002-Add-defines-for-PCI-IDs.patch
@@ -0,0 +1,66 @@
+From bb44e12f7b1b7ccd040c58ddb0e8cdaf2f9f5a67 Mon Sep 17 00:00:00 2001
+From: Gerd Hoffmann <kraxel at redhat.com>
+Date: Thu, 6 May 2010 10:21:47 +0200
+Subject: [PATCH 2/7] Add defines for PCI IDs.
+
+This patch allows to set PCI vendor and device IDs using defines
+(PCI_VID and PCI_DID).  Use it for vgabios.bin.
+---
+ Makefile  |    4 ++--
+ vbe.c     |    6 +++++-
+ vgabios.c |    5 +++++
+ 3 files changed, 12 insertions(+), 3 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index c3c744c..d440b93 100644
+--- a/Makefile
++++ b/Makefile
+@@ -31,8 +31,8 @@ VGA_FILES := vgabios.c vgabios.h vgafonts.h vgatables.h
+ VBE_FILES := vbe.h vbe.c vbetables.h
+
+ # build flags
+-vgabios.bin              : VGAFLAGS := -DVBE
+-vgabios.debug.bin        : VGAFLAGS := -DVBE -DDEBUG
++vgabios.bin              : VGAFLAGS := -DVBE -DPCI_VID=0x1234
++vgabios.debug.bin        : VGAFLAGS := -DVBE -DPCI_VID=0x1234 -DDEBUG
+ vgabios-cirrus.bin       : VGAFLAGS := -DCIRRUS -DPCIBIOS 
+ vgabios-cirrus.debug.bin : VGAFLAGS := -DCIRRUS -DPCIBIOS -DCIRRUS_DEBUG
+
+diff --git a/vbe.c b/vbe.c
+index ecff90d..1fab2f9 100644
+--- a/vbe.c
++++ b/vbe.c
+@@ -925,7 +925,11 @@ Bit16u *AX;Bit16u CX; Bit16u ES;Bit16u DI;
+                 if (using_lfb) {
+                   info.NumberOfBanks = 1;
+                 }
+-                lfb_addr = pci_get_lfb_addr(0x1234); // experimental vendor
++#ifdef PCI_VID
++                lfb_addr = pci_get_lfb_addr(PCI_VID);
++#else
++                lfb_addr = 0;
++#endif
+                 if (lfb_addr > 0) {
+                   info.PhysBasePtr = ((Bit32u)lfb_addr << 16);
+                 }
+diff --git a/vgabios.c b/vgabios.c
+index ea3aae8..2e8b5d7 100644
+--- a/vgabios.c
++++ b/vgabios.c
+@@ -210,8 +210,13 @@ vgabios_pci_data:
+ .word 0x1013
+ .word 0x00b8 // CLGD5446
+ #else
++#ifdef PCI_VID
++.word PCI_VID
++.word PCI_DID
++#else
+ #error "Unknown PCI vendor and device id"
+ #endif
++#endif
+ .word 0 // reserved
+ .word 0x18 // dlen
+ .byte 0 // revision
+-- 
+1.7.2.1
+
diff --git a/0003-Add-qemu-stdvga-pci-bios.patch b/0003-Add-qemu-stdvga-pci-bios.patch
new file mode 100644
index 0000000..1bd47a1
--- /dev/null
+++ b/0003-Add-qemu-stdvga-pci-bios.patch
@@ -0,0 +1,59 @@
+From be965ab705738d3dfe21ab2bafb15a92639ae50c Mon Sep 17 00:00:00 2001
+From: Gerd Hoffmann <kraxel at redhat.com>
+Date: Thu, 6 May 2010 10:39:33 +0200
+Subject: [PATCH 3/7] Add qemu stdvga pci bios
+
+Add PCI vgabios for the qemu standard vga (1234:1111).
+Name it vgabios-stdvga.bin.
+---
+ Makefile |   10 +++++++++-
+ 1 files changed, 9 insertions(+), 1 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index d440b93..58f064e 100644
+--- a/Makefile
++++ b/Makefile
+@@ -14,12 +14,14 @@ RELVERS = `pwd | sed "s-.*/--" | sed "s/vgabios//" | sed "s/-//"`
+
+ VGABIOS_DATE = "-DVGABIOS_DATE=\"$(RELDATE)\""
+
+-all: bios cirrus-bios
++all: bios cirrus-bios stdvga-bios
+
+ bios: vgabios.bin vgabios.debug.bin
+
+ cirrus-bios: vgabios-cirrus.bin vgabios-cirrus.debug.bin
+
++stdvga-bios: vgabios-stdvga.bin vgabios-stdvga.debug.bin
++
+ clean:
+ 	/bin/rm -f  biossums vbetables-gen vbetables.h *.o *.s *.ld86 \
+           temp.awk.* vgabios*.orig _vgabios_* _vgabios-debug_* core vgabios*.bin vgabios*.txt $(RELEASE).bin *.bak
+@@ -35,18 +37,24 @@ vgabios.bin              : VGAFLAGS := -DVBE -DPCI_VID=0x1234
+ vgabios.debug.bin        : VGAFLAGS := -DVBE -DPCI_VID=0x1234 -DDEBUG
+ vgabios-cirrus.bin       : VGAFLAGS := -DCIRRUS -DPCIBIOS 
+ vgabios-cirrus.debug.bin : VGAFLAGS := -DCIRRUS -DPCIBIOS -DCIRRUS_DEBUG
++vgabios-stdvga.bin       : VGAFLAGS := -DVBE -DPCIBIOS -DPCI_VID=0x1234 -DPCI_DID=0x1111
++vgabios-stdvga.debug.bin : VGAFLAGS := -DVBE -DPCIBIOS -DPCI_VID=0x1234 -DPCI_DID=0x1111 -DDEBUG
+
+ # dist names
+ vgabios.bin              : DISTNAME := VGABIOS-lgpl-latest.bin
+ vgabios.debug.bin        : DISTNAME := VGABIOS-lgpl-latest.debug.bin
+ vgabios-cirrus.bin       : DISTNAME := VGABIOS-lgpl-latest.cirrus.bin
+ vgabios-cirrus.debug.bin : DISTNAME := VGABIOS-lgpl-latest.cirrus.debug.bin
++vgabios-stdvga.bin       : DISTNAME := VGABIOS-lgpl-latest.stdvga.bin
++vgabios-stdvga.debug.bin : DISTNAME := VGABIOS-lgpl-latest.stdvga.debug.bin
+
+ # dependencies
+ vgabios.bin              : $(VGA_FILES) $(VBE_FILES) biossums
+ vgabios.debug.bin        : $(VGA_FILES) $(VBE_FILES) biossums
+ vgabios-cirrus.bin       : $(VGA_FILES) clext.c biossums
+ vgabios-cirrus.debug.bin : $(VGA_FILES) clext.c biossums
++vgabios-stdvga.bin       : $(VGA_FILES) $(VBE_FILES) biossums
++vgabios-stdvga.debug.bin : $(VGA_FILES) $(VBE_FILES) biossums
+
+ # build rule
+ %.bin:
+-- 
+1.7.2.1
+
diff --git a/0004-update-pci_get_lfb_addr-for-vmware-vga.patch b/0004-update-pci_get_lfb_addr-for-vmware-vga.patch
new file mode 100644
index 0000000..50e67b0
--- /dev/null
+++ b/0004-update-pci_get_lfb_addr-for-vmware-vga.patch
@@ -0,0 +1,60 @@
+From 846780ebcad7a907383173bd2f4fcc4e520e4611 Mon Sep 17 00:00:00 2001
+From: Gerd Hoffmann <kraxel at redhat.com>
+Date: Thu, 6 May 2010 15:11:39 +0200
+Subject: [PATCH 4/7] update pci_get_lfb_addr for vmware vga
+
+vmware vga has the framebuffer at pci region 1 not 0.  This patch makes
+pci_get_lfb_addr check region 1 too.  It also gives names to the
+numbered labels to make the code more readable.
+---
+ vgabios.c |   23 ++++++++++++++---------
+ 1 files changed, 14 insertions(+), 9 deletions(-)
+
+diff --git a/vgabios.c b/vgabios.c
+index 2e8b5d7..c1e312b 100644
+--- a/vgabios.c
++++ b/vgabios.c
+@@ -3852,26 +3852,31 @@ _pci_get_lfb_addr:
+     mov dl, #0x00
+     call pci_read_reg
+     cmp ax, #0xffff
+-    jz pci_get_lfb_addr_5
+- pci_get_lfb_addr_3:
++    jz pci_get_lfb_addr_fail
++ pci_get_lfb_addr_next_dev:
+     mov dl, #0x00
+     call pci_read_reg
+     cmp ax, bx ;; check vendor
+-    jz pci_get_lfb_addr_4
++    jz pci_get_lfb_addr_found
+     add cx, #0x8
+     cmp cx, #0x200 ;; search bus #0 and #1
+-    jb pci_get_lfb_addr_3
+- pci_get_lfb_addr_5:
++    jb pci_get_lfb_addr_next_dev
++ pci_get_lfb_addr_fail:
+     xor dx, dx ;; no LFB
+-    jmp pci_get_lfb_addr_6
+- pci_get_lfb_addr_4:
++    jmp pci_get_lfb_addr_return
++ pci_get_lfb_addr_found:
+     mov dl, #0x10 ;; I/O space #0
+     call pci_read_reg
+     test ax, #0xfff1
+-    jnz pci_get_lfb_addr_5
++    jz pci_get_lfb_addr_success
++    mov dl, #0x14 ;; I/O space #1
++    call pci_read_reg
++    test ax, #0xfff1
++    jnz pci_get_lfb_addr_fail
++ pci_get_lfb_addr_success:
+     shr eax, #16
+     mov dx, ax ;; LFB address
+- pci_get_lfb_addr_6:
++ pci_get_lfb_addr_return:
+   pop eax
+   mov ax, dx
+   pop dx
+-- 
+1.7.2.1
+
diff --git a/0005-Add-qemu-vmware-vga-pci-bios.patch b/0005-Add-qemu-vmware-vga-pci-bios.patch
new file mode 100644
index 0000000..74cf46d
--- /dev/null
+++ b/0005-Add-qemu-vmware-vga-pci-bios.patch
@@ -0,0 +1,63 @@
+From 824c3dfda24e414ea111042483668ff3f14aadf5 Mon Sep 17 00:00:00 2001
+From: Gerd Hoffmann <kraxel at redhat.com>
+Date: Thu, 6 May 2010 10:47:01 +0200
+Subject: [PATCH 5/7] Add qemu vmware vga pci bios
+
+Add PCI vgabios for the qemu vmeare vga (15ad:0405).
+Name it vgabios-vmware.bin.
+---
+ Makefile |   10 +++++++++-
+ 1 files changed, 9 insertions(+), 1 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index 58f064e..2a093e8 100644
+--- a/Makefile
++++ b/Makefile
+@@ -14,7 +14,7 @@ RELVERS = `pwd | sed "s-.*/--" | sed "s/vgabios//" | sed "s/-//"`
+
+ VGABIOS_DATE = "-DVGABIOS_DATE=\"$(RELDATE)\""
+
+-all: bios cirrus-bios stdvga-bios
++all: bios cirrus-bios stdvga-bios vmware-bios
+
+ bios: vgabios.bin vgabios.debug.bin
+
+@@ -22,6 +22,8 @@ cirrus-bios: vgabios-cirrus.bin vgabios-cirrus.debug.bin
+
+ stdvga-bios: vgabios-stdvga.bin vgabios-stdvga.debug.bin
+
++vmware-bios: vgabios-vmware.bin vgabios-vmware.debug.bin
++
+ clean:
+ 	/bin/rm -f  biossums vbetables-gen vbetables.h *.o *.s *.ld86 \
+           temp.awk.* vgabios*.orig _vgabios_* _vgabios-debug_* core vgabios*.bin vgabios*.txt $(RELEASE).bin *.bak
+@@ -39,6 +41,8 @@ vgabios-cirrus.bin       : VGAFLAGS := -DCIRRUS -DPCIBIOS
+ vgabios-cirrus.debug.bin : VGAFLAGS := -DCIRRUS -DPCIBIOS -DCIRRUS_DEBUG
+ vgabios-stdvga.bin       : VGAFLAGS := -DVBE -DPCIBIOS -DPCI_VID=0x1234 -DPCI_DID=0x1111
+ vgabios-stdvga.debug.bin : VGAFLAGS := -DVBE -DPCIBIOS -DPCI_VID=0x1234 -DPCI_DID=0x1111 -DDEBUG
++vgabios-vmware.bin       : VGAFLAGS := -DVBE -DPCIBIOS -DPCI_VID=0x15ad -DPCI_DID=0x0405
++vgabios-vmware.debug.bin : VGAFLAGS := -DVBE -DPCIBIOS -DPCI_VID=0x15ad -DPCI_DID=0x0405 -DDEBUG
+
+ # dist names
+ vgabios.bin              : DISTNAME := VGABIOS-lgpl-latest.bin
+@@ -47,6 +51,8 @@ vgabios-cirrus.bin       : DISTNAME := VGABIOS-lgpl-latest.cirrus.bin
+ vgabios-cirrus.debug.bin : DISTNAME := VGABIOS-lgpl-latest.cirrus.debug.bin
+ vgabios-stdvga.bin       : DISTNAME := VGABIOS-lgpl-latest.stdvga.bin
+ vgabios-stdvga.debug.bin : DISTNAME := VGABIOS-lgpl-latest.stdvga.debug.bin
++vgabios-vmware.bin       : DISTNAME := VGABIOS-lgpl-latest.vmware.bin
++vgabios-vmware.debug.bin : DISTNAME := VGABIOS-lgpl-latest.vmware.debug.bin
+
+ # dependencies
+ vgabios.bin              : $(VGA_FILES) $(VBE_FILES) biossums
+@@ -55,6 +61,8 @@ vgabios-cirrus.bin       : $(VGA_FILES) clext.c biossums
+ vgabios-cirrus.debug.bin : $(VGA_FILES) clext.c biossums
+ vgabios-stdvga.bin       : $(VGA_FILES) $(VBE_FILES) biossums
+ vgabios-stdvga.debug.bin : $(VGA_FILES) $(VBE_FILES) biossums
++vgabios-vmware.bin       : $(VGA_FILES) $(VBE_FILES) biossums
++vgabios-vmware.debug.bin : $(VGA_FILES) $(VBE_FILES) biossums
+
+ # build rule
+ %.bin:
+-- 
+1.7.2.1
+
diff --git a/0006-Add-qemu-qxl-vga-pci-bios.patch b/0006-Add-qemu-qxl-vga-pci-bios.patch
new file mode 100644
index 0000000..8cc7f2b
--- /dev/null
+++ b/0006-Add-qemu-qxl-vga-pci-bios.patch
@@ -0,0 +1,63 @@
+From 19ea12c230ded95928ecaef0db47a82231c2e485 Mon Sep 17 00:00:00 2001
+From: Gerd Hoffmann <kraxel at redhat.com>
+Date: Thu, 6 May 2010 10:50:41 +0200
+Subject: [PATCH 6/7] Add qemu qxl vga pci bios
+
+Add PCI vgabios for the qemu qxl vga (1b36:0100).
+Name it vgabios-qxl.bin.
+---
+ Makefile |   10 +++++++++-
+ 1 files changed, 9 insertions(+), 1 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index 2a093e8..578721a 100644
+--- a/Makefile
++++ b/Makefile
+@@ -14,7 +14,7 @@ RELVERS = `pwd | sed "s-.*/--" | sed "s/vgabios//" | sed "s/-//"`
+
+ VGABIOS_DATE = "-DVGABIOS_DATE=\"$(RELDATE)\""
+
+-all: bios cirrus-bios stdvga-bios vmware-bios
++all: bios cirrus-bios stdvga-bios vmware-bios qxl-bios
+
+ bios: vgabios.bin vgabios.debug.bin
+
+@@ -24,6 +24,8 @@ stdvga-bios: vgabios-stdvga.bin vgabios-stdvga.debug.bin
+
+ vmware-bios: vgabios-vmware.bin vgabios-vmware.debug.bin
+
++qxl-bios: vgabios-qxl.bin vgabios-qxl.debug.bin
++
+ clean:
+ 	/bin/rm -f  biossums vbetables-gen vbetables.h *.o *.s *.ld86 \
+           temp.awk.* vgabios*.orig _vgabios_* _vgabios-debug_* core vgabios*.bin vgabios*.txt $(RELEASE).bin *.bak
+@@ -43,6 +45,8 @@ vgabios-stdvga.bin       : VGAFLAGS := -DVBE -DPCIBIOS -DPCI_VID=0x1234 -DPCI_DI
+ vgabios-stdvga.debug.bin : VGAFLAGS := -DVBE -DPCIBIOS -DPCI_VID=0x1234 -DPCI_DID=0x1111 -DDEBUG
+ vgabios-vmware.bin       : VGAFLAGS := -DVBE -DPCIBIOS -DPCI_VID=0x15ad -DPCI_DID=0x0405
+ vgabios-vmware.debug.bin : VGAFLAGS := -DVBE -DPCIBIOS -DPCI_VID=0x15ad -DPCI_DID=0x0405 -DDEBUG
++vgabios-qxl.bin          : VGAFLAGS := -DVBE -DPCIBIOS -DPCI_VID=0x1b36 -DPCI_DID=0x0100
++vgabios-qxl.debug.bin    : VGAFLAGS := -DVBE -DPCIBIOS -DPCI_VID=0x1b36 -DPCI_DID=0x0100 -DDEBUG
+
+ # dist names
+ vgabios.bin              : DISTNAME := VGABIOS-lgpl-latest.bin
+@@ -53,6 +57,8 @@ vgabios-stdvga.bin       : DISTNAME := VGABIOS-lgpl-latest.stdvga.bin
+ vgabios-stdvga.debug.bin : DISTNAME := VGABIOS-lgpl-latest.stdvga.debug.bin
+ vgabios-vmware.bin       : DISTNAME := VGABIOS-lgpl-latest.vmware.bin
+ vgabios-vmware.debug.bin : DISTNAME := VGABIOS-lgpl-latest.vmware.debug.bin
++vgabios-qxl.bin          : DISTNAME := VGABIOS-lgpl-latest.qxl.bin
++vgabios-qxl.debug.bin    : DISTNAME := VGABIOS-lgpl-latest.qxl.debug.bin
+
+ # dependencies
+ vgabios.bin              : $(VGA_FILES) $(VBE_FILES) biossums
+@@ -63,6 +69,8 @@ vgabios-stdvga.bin       : $(VGA_FILES) $(VBE_FILES) biossums
+ vgabios-stdvga.debug.bin : $(VGA_FILES) $(VBE_FILES) biossums
+ vgabios-vmware.bin       : $(VGA_FILES) $(VBE_FILES) biossums
+ vgabios-vmware.debug.bin : $(VGA_FILES) $(VBE_FILES) biossums
++vgabios-qxl.bin          : $(VGA_FILES) $(VBE_FILES) biossums
++vgabios-qxl.debug.bin    : $(VGA_FILES) $(VBE_FILES) biossums
+
+ # build rule
+ %.bin:
+-- 
+1.7.2.1
+
diff --git a/vgabios.spec b/vgabios.spec
index ca9e47a..feb85f0 100644
--- a/vgabios.spec
+++ b/vgabios.spec
@@ -1,12 +1,18 @@
 Name:		vgabios
 Version:	0.6c
-Release:	1%{?dist}
+Release:	2%{?dist}
 Summary:	LGPL implementation of a vga video bios
 
 Group:		Applications/Emulators		
 License:	LGPLv2
 URL:		http://www.nongnu.org/vgabios/
 Source0:	http://savannah.gnu.org/download/%{name}/%{name}-%{version}.tgz
+Patch01:		0001-Makefile-cleanup.patch
+Patch02:		0002-Add-defines-for-PCI-IDs.patch
+Patch03:		0003-Add-qemu-stdvga-pci-bios.patch
+Patch04:		0004-update-pci_get_lfb_addr-for-vmware-vga.patch 
+Patch05:		0005-Add-qemu-vmware-vga-pci-bios.patch 
+Patch06:		0006-Add-qemu-qxl-vga-pci-bios.patch 
 BuildRoot:	%{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
 
 BuildRequires:	dev86
@@ -21,6 +27,13 @@ emulators. It is not intended for use in real cards.
 %prep 
 %setup -q -n %{name}-%{version}
 
+%patch01 -p1
+%patch02 -p1
+%patch03 -p1
+%patch04 -p1
+%patch05 -p1
+%patch06 -p1
+
 %build 
 make clean
 make biossums %{?_smp_mflags}
@@ -43,11 +56,20 @@ rm -rf $RPM_BUILD_ROOT
 %doc README COPYING
 %{_datadir}/vgabios/VGABIOS-lgpl-latest.bin
 %{_datadir}/vgabios/VGABIOS-lgpl-latest.cirrus.bin
+%{_datadir}/vgabios/VGABIOS-lgpl-latest.qxl.bin
+%{_datadir}/vgabios/VGABIOS-lgpl-latest.stdvga.bin
+%{_datadir}/vgabios/VGABIOS-lgpl-latest.vmware.bin
 %{_datadir}/vgabios/VGABIOS-lgpl-latest.cirrus.debug.bin
 %{_datadir}/vgabios/VGABIOS-lgpl-latest.debug.bin
+%{_datadir}/vgabios/VGABIOS-lgpl-latest.qxl.debug.bin
+%{_datadir}/vgabios/VGABIOS-lgpl-latest.stdvga.debug.bin
+%{_datadir}/vgabios/VGABIOS-lgpl-latest.vmware.debug.bin
 
 
 %changelog
+* Tue Aug 10 2010 Justin M. Forbes <jforbes at redhat.com> - 0.6c-2
+- Patches from freedesktop.org to support newer qemu.
+ 
 * Fri May 14 2010 Matthew Garrett <mjg at redhat.com> - 0.6c-1
 - Update to newer upstream to permit S3 under Windows XP
  


More information about the scm-commits mailing list