aboutsummaryrefslogtreecommitdiffstats
path: root/src/arch/i386/prefix/romprefix.S
diff options
context:
space:
mode:
authorMichael Brown <mcb30@etherboot.org>2007-07-16 16:58:38 +0100
committerMichael Brown <mcb30@etherboot.org>2007-07-16 16:58:38 +0100
commit048bbeeebcfce2eac0a21a8eaf44a6810d685032 (patch)
treed1d55fed52f9ece7f2fc510a81725e7137ff0104 /src/arch/i386/prefix/romprefix.S
parent37fa9a87065e07ccef0fcc62b67db278a337e4a4 (diff)
downloadipxe-048bbeeebcfce2eac0a21a8eaf44a6810d685032.tar.gz
Compressed ROM images now work.
Diffstat (limited to 'src/arch/i386/prefix/romprefix.S')
-rw-r--r--src/arch/i386/prefix/romprefix.S16
1 files changed, 14 insertions, 2 deletions
diff --git a/src/arch/i386/prefix/romprefix.S b/src/arch/i386/prefix/romprefix.S
index f68c14e0..3e6cd2d0 100644
--- a/src/arch/i386/prefix/romprefix.S
+++ b/src/arch/i386/prefix/romprefix.S
@@ -14,7 +14,7 @@
.org 0x00
romheader:
.word 0xAA55 /* BIOS extension signature */
- .byte _rom_size /* Size in 512-byte blocks */
+romheader_size: .byte _rom_size /* Size in 512-byte blocks */
jmp init_vector /* Initialisation vector */
.org 0x16
.word undiheader
@@ -34,7 +34,7 @@ pciheader:
.byte 0x02 /* Device Base Type code */
.byte 0x00 /* Device Sub-Type code */
.byte 0x00 /* Device Interface Type code */
- .word _rom_size /* Image length same as offset 02h */
+pciheader_size: .word _rom_size /* Image length same as offset 02h */
.word 0x0001 /* revision level of code/data */
.byte 0x00 /* code type */
.byte 0x80 /* Flags (last PCI data structure) */
@@ -215,3 +215,15 @@ print_message:
popw %ax
ret
.size print_message, . - print_message
+
+
+ /* Data update information for the compressor */
+ .section ".zinfo.fixup", "a"
+ .ascii "SUBB"
+ .long romheader_size
+ .long 512
+ .long 0
+ .ascii "SUBW"
+ .long pciheader_size
+ .long 512
+ .long 0