http://git.etherboot.org
/
people
/
mcb30
/
gpxe.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
07581d3
)
[romprefix] Preserve %edi when issuing INT 1A,B101
author
Michael Brown
<mcb30@etherboot.org>
Tue, 26 Aug 2008 04:03:19 +0000
(
05:03
+0100)
committer
Michael Brown
<mcb30@etherboot.org>
Tue, 26 Aug 2008 04:03:19 +0000
(
05:03
+0100)
INT 1A,B101 (get PCI BIOS version) will overwrite %edi.
src/arch/i386/prefix/romprefix.S
patch
|
blob
|
history
diff --git
a/src/arch/i386/prefix/romprefix.S
b/src/arch/i386/prefix/romprefix.S
index
8b2e20b
..
b22cbab
100644
(file)
--- a/
src/arch/i386/prefix/romprefix.S
+++ b/
src/arch/i386/prefix/romprefix.S
@@
-177,6
+177,7
@@
init:
/* Check for PCI BIOS version */
pushl %ebx
pushl %edx
+ pushl %edi
stc
movw $0xb101, %ax
int $0x1a
@@
-199,7
+200,8
@@
init:
1: /* PCI <3.0: set %gs (runtime segment) = %cs (init-time segment) */
pushw %cs
popw %gs
-2: popl %edx
+2: popl %edi
+ popl %edx
popl %ebx
/* Check for PnP BIOS */