aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDavid Woodhouse <David.Woodhouse@intel.com>2013-02-09 23:45:02 +0000
committerKevin O'Connor <kevin@koconnor.net>2013-02-12 21:12:52 -0500
commit38c2ebf41da37e3a4f452492e005c75b8d0c3ab1 (patch)
tree5633db30329c43f11d7c659a211df0c60ad5acee
parent616fb27f88d9acac64d8bf786c7d2b32df273660 (diff)
downloadseabios-38c2ebf41da37e3a4f452492e005c75b8d0c3ab1.tar.gz
Fix rom_reserve()/rom_confirm() for CSM oprom dispatch
Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
-rw-r--r--src/csm.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/csm.c b/src/csm.c
index 64172ea..057e529 100644
--- a/src/csm.c
+++ b/src/csm.c
@@ -193,11 +193,13 @@ handle_csm_0005(struct bregs *regs)
rom = MAKE_FLATPTR(table->OpromSegment, 0);
bdf = pci_bus_devfn_to_bdf(table->PciBus, table->PciDeviceFunction);
- rom_confirm(rom->size * 512);
+ rom_reserve(rom->size * 512);
// XX PnP seg/ofs should never be other than default
callrom(rom, bdf);
+ rom_confirm(rom->size * 512);
+
regs->bx = 0; // FIXME
regs->ax = 0;
}