![]() |
coreboot
coreboot is an Open Source project aimed at replacing the proprietary BIOS found in most computers.
|
#include <types.h>
#include <arch/barrier.h>
#include <arch/exception.h>
#include <arch/transition.h>
#include <console/console.h>
#include <console/uart.h>
#include <arch/lib_helpers.h>
Go to the source code of this file.
Functions | |
static void | dump_stack (uintptr_t addr, size_t bytes) |
static void | print_regs (struct exc_state *exc_state) |
int | exception_handler_register (uint64_t vid, struct exception_handler *h) |
int | exception_handler_unregister (uint64_t vid, struct exception_handler *h) |
static void | print_exception_info (struct exc_state *state, uint64_t idx) |
static void | print_exception_and_die (struct exc_state *state, uint64_t idx) |
static int | handle_exception (struct exc_state *state, uint64_t idx) |
void | exc_dispatch (struct exc_state *state, uint64_t idx) |
static int | test_exception_handler (struct exc_state *state, uint64_t vector_id) |
static uint64_t | test_exception (void) |
void | exception_init (void) |
Variables | |
uint8_t | exception_stack [2 *KiB] |
static const char * | exception_names [NUM_EXC_VIDS] |
static struct exception_handler * | handlers [NUM_EXC_VIDS] |
Definition at line 32 of file exception.c.
References addr, ALIGN_DOWN, BIOS_DEBUG, and printk.
Referenced by print_exception_info().
Definition at line 141 of file exception.c.
References BIOS_DEBUG, exc_exit(), EXC_RET_ABORT, EXC_RET_HANDLED_DUMP_STATE, EXC_RET_IGNORED, handle_exception(), NUM_EXC_VIDS, print_exception_and_die(), print_exception_info(), and printk.
int exception_handler_register | ( | uint64_t | vid, |
struct exception_handler * | h | ||
) |
Definition at line 68 of file exception.c.
References handlers, exception_handler::next, NUM_EXC_VIDS, store_release, and vid.
Referenced by probe_mb(), and test_exception().
int exception_handler_unregister | ( | uint64_t | vid, |
struct exception_handler * | h | ||
) |
Definition at line 80 of file exception.c.
References handlers, exception_handler::next, NULL, NUM_EXC_VIDS, store_release, and vid.
Referenced by probe_mb(), and test_exception().
Definition at line 189 of file exception.c.
References ARRAY_SIZE, BIOS_DEBUG, CONFIG, exception_init_asm(), exception_stack, printk, and test_exception().
Definition at line 123 of file exception.c.
References EXC_RET_ABORT, exception_handler::handler, handlers, exception_handler::next, and NULL.
Referenced by exc_dispatch().
Definition at line 117 of file exception.c.
References die(), and print_exception_info().
Referenced by exc_dispatch().
Definition at line 102 of file exception.c.
References __uart_tx_byte(), BIOS_DEBUG, dump_stack(), exception_names, NUM_EXC_VIDS, print_regs(), and printk.
Referenced by exc_dispatch(), and print_exception_and_die().
Definition at line 47 of file exception.c.
References BIOS_DEBUG, elx_state::elr, exc_state::elx, printk, exc_state::regs, regs::sp, and regs::x.
Referenced by print_exception_info().
Definition at line 169 of file exception.c.
References EXC_VID_CUR_SP_EL0_SYNC, EXC_VID_CUR_SP_ELX_SYNC, exception_handler_register(), exception_handler_unregister(), force_read, exception_handler::handler, sync_el0, and test_exception_handler().
Referenced by exception_init().
Definition at line 161 of file exception.c.
References EXC_RET_HANDLED.
Referenced by test_exception().
|
static |
Definition at line 13 of file exception.c.
Referenced by print_exception_info().
Definition at line 11 of file exception.c.
|
static |
Definition at line 66 of file exception.c.
Referenced by exception_handler_register(), exception_handler_unregister(), and handle_exception().