aboutsummaryrefslogtreecommitdiffstats
path: root/src/boot.c
diff options
context:
space:
mode:
authorKevin O'Connor <kevin@koconnor.net>2012-05-13 12:23:58 -0400
committerKevin O'Connor <kevin@koconnor.net>2012-05-20 18:10:51 -0400
commit9d8e0a677b40c7e9fd22394901be6091993fcbe1 (patch)
treeee30dd292b2f8d3377236682377916c785eb8094 /src/boot.c
parent9d254d4614746687a4e324a6b85756a71f775b7b (diff)
downloadseabios-9d8e0a677b40c7e9fd22394901be6091993fcbe1.tar.gz
Convert boot code EBDA variables to VARLOW variables.
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
Diffstat (limited to 'src/boot.c')
-rw-r--r--src/boot.c13
1 files changed, 6 insertions, 7 deletions
diff --git a/src/boot.c b/src/boot.c
index 4447b9a3..ef21fe4e 100644
--- a/src/boot.c
+++ b/src/boot.c
@@ -238,8 +238,6 @@ boot_setup(void)
if (! CONFIG_BOOT)
return;
- SET_EBDA(boot_sequence, 0xffff);
-
if (!CONFIG_COREBOOT) {
// On emulators, get boot order from nvram.
if (inb_cmos(CMOS_BIOS_BOOTFLAG1) & 1)
@@ -642,7 +640,7 @@ boot_fail(void)
// Determine next boot method and attempt a boot using it.
static void
-do_boot(u16 seq_nr)
+do_boot(int seq_nr)
{
if (! CONFIG_BOOT)
panic("Boot support not compiled in.\n");
@@ -679,15 +677,16 @@ do_boot(u16 seq_nr)
call16_int(0x18, &br);
}
+int BootSequence VARLOW = -1;
+
// Boot Failure recovery: try the next device.
void VISIBLE32FLAT
handle_18(void)
{
debug_serial_setup();
debug_enter(NULL, DEBUG_HDL_18);
- u16 ebda_seg = get_ebda_seg();
- u16 seq = GET_EBDA2(ebda_seg, boot_sequence) + 1;
- SET_EBDA2(ebda_seg, boot_sequence, seq);
+ int seq = BootSequence + 1;
+ BootSequence = seq;
do_boot(seq);
}
@@ -697,6 +696,6 @@ handle_19(void)
{
debug_serial_setup();
debug_enter(NULL, DEBUG_HDL_19);
- SET_EBDA(boot_sequence, 0);
+ BootSequence = 0;
do_boot(0);
}