diff options
author | Arthur Heymans <arthur@aheymans.xyz> | 2021-11-25 09:39:02 +0100 |
---|---|---|
committer | Nico Huber <nico.h@gmx.de> | 2022-01-17 13:43:27 +0000 |
commit | 15c9c78057f35c05af4ebf348b1f737baf3ef5c8 (patch) | |
tree | 2037286b5d92eb2f343f663510856210dae7657f /src/device/oprom/realmode/x86.c | |
parent | e74ebcde38c78a4b81f621211d58c618ae1ad3a7 (diff) |
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>
Diffstat (limited to 'src/device/oprom/realmode/x86.c')
-rw-r--r-- | src/device/oprom/realmode/x86.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/src/device/oprom/realmode/x86.c b/src/device/oprom/realmode/x86.c index 224e49b97d..b391b92ee0 100644 --- a/src/device/oprom/realmode/x86.c +++ b/src/device/oprom/realmode/x86.c @@ -10,6 +10,7 @@ #include <device/pci_ids.h> #include <pc80/i8259.h> #include <pc80/i8254.h> +#include <stdint.h> #include <string.h> #include <vbe.h> #include <framebuffer_info.h> @@ -89,14 +90,19 @@ static int intXX_exception_handler(void) .edi=X86_EDI, .vector=M.x86.intno, .error_code=0, // FIXME: fill in - .eip=X86_EIP, .cs=X86_CS, +#if ENV_X86_64 + .rip=X86_EIP, + .rflags=X86_EFLAGS +#else + .eip=X86_EIP, .eflags=X86_EFLAGS +#endif }; struct eregs *regs = ®_info; printk(BIOS_INFO, "Oops, exception %d while executing option rom\n", - regs->vector); + (uint32_t)regs->vector); x86_exception(regs); // Call coreboot exception handler return 0; // Never really returns |