aboutsummaryrefslogtreecommitdiff
path: root/src/util.h
diff options
context:
space:
mode:
authorKevin O'Connor <kevin@koconnor.net>2010-09-15 21:48:16 -0400
committerKevin O'Connor <kevin@koconnor.net>2010-09-15 21:48:16 -0400
commit244caf86f11f5f65d166d91704f64cb673167abc (patch)
treeeb0f32c8469d15625ad34ebc3c4fec6068a767e9 /src/util.h
parent5bd01de26257849f36d361018c3ec17aa29b0218 (diff)
downloadseabios-hppa-244caf86f11f5f65d166d91704f64cb673167abc.zip
seabios-hppa-244caf86f11f5f65d166d91704f64cb673167abc.tar.gz
seabios-hppa-244caf86f11f5f65d166d91704f64cb673167abc.tar.bz2
Try to hard-reboot on rerun of post even on emulators.
Extend the hard-reboot logic to qemu and kvm. On qemu, a reboot will not reset the memory settings for 0xc0000-0xfffff, so copy that memory area manually before rebooting. Unfortunately, kvm does not keep a pristine copy of the BIOS at 0xffff0000, so detect that case and shutdown the machine.
Diffstat (limited to 'src/util.h')
-rw-r--r--src/util.h4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/util.h b/src/util.h
index 3d68d45..d2003c1 100644
--- a/src/util.h
+++ b/src/util.h
@@ -1,6 +1,6 @@
// Basic x86 asm functions and function defs.
//
-// Copyright (C) 2008,2009 Kevin O'Connor <kevin@koconnor.net>
+// Copyright (C) 2008-2010 Kevin O'Connor <kevin@koconnor.net>
//
// This file may be distributed under the terms of the GNU LGPLv3 license.
#ifndef __UTIL_H
@@ -327,6 +327,7 @@ void useRTC(void);
void releaseRTC(void);
// apm.c
+void apm_shutdown(void);
void handle_1553(struct bregs *regs);
// pcibios.c
@@ -338,6 +339,7 @@ void make_bios_writable(void);
void make_bios_readonly(void);
void make_bios_writable_intel(u16 bdf, u32 pam0);
void make_bios_readonly_intel(u16 bdf, u32 pam0);
+void qemu_prep_reset(void);
// smm.c
void smm_save_and_copy(void);