oprom/realmode/x86.c: Fix building for ENV_X86_64
Not tested on hardware. Change-Id: I8ce8d56da326aeff5ff9b400ded02d4309372519 Signed-off-by: Arthur Heymans <arthur@aheymans.xyz> Signed-off-by: Elyes HAOUAS <ehaouas@noos.fr> Reviewed-on: https://review.coreboot.org/c/coreboot/+/59660 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Nico Huber <nico.h@gmx.de>
This commit is contained in:
parent
e74ebcde38
commit
15c9c78057
|
@ -10,6 +10,7 @@
|
||||||
#include <device/pci_ids.h>
|
#include <device/pci_ids.h>
|
||||||
#include <pc80/i8259.h>
|
#include <pc80/i8259.h>
|
||||||
#include <pc80/i8254.h>
|
#include <pc80/i8254.h>
|
||||||
|
#include <stdint.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
#include <vbe.h>
|
#include <vbe.h>
|
||||||
#include <framebuffer_info.h>
|
#include <framebuffer_info.h>
|
||||||
|
@ -89,14 +90,19 @@ static int intXX_exception_handler(void)
|
||||||
.edi=X86_EDI,
|
.edi=X86_EDI,
|
||||||
.vector=M.x86.intno,
|
.vector=M.x86.intno,
|
||||||
.error_code=0, // FIXME: fill in
|
.error_code=0, // FIXME: fill in
|
||||||
.eip=X86_EIP,
|
|
||||||
.cs=X86_CS,
|
.cs=X86_CS,
|
||||||
|
#if ENV_X86_64
|
||||||
|
.rip=X86_EIP,
|
||||||
|
.rflags=X86_EFLAGS
|
||||||
|
#else
|
||||||
|
.eip=X86_EIP,
|
||||||
.eflags=X86_EFLAGS
|
.eflags=X86_EFLAGS
|
||||||
|
#endif
|
||||||
};
|
};
|
||||||
struct eregs *regs = ®_info;
|
struct eregs *regs = ®_info;
|
||||||
|
|
||||||
printk(BIOS_INFO, "Oops, exception %d while executing option rom\n",
|
printk(BIOS_INFO, "Oops, exception %d while executing option rom\n",
|
||||||
regs->vector);
|
(uint32_t)regs->vector);
|
||||||
x86_exception(regs); // Call coreboot exception handler
|
x86_exception(regs); // Call coreboot exception handler
|
||||||
|
|
||||||
return 0; // Never really returns
|
return 0; // Never really returns
|
||||||
|
|
Loading…
Reference in New Issue