diff options
author | Joel Sherrill <joel.sherrill@OARcorp.com> | 1999-08-10 16:41:44 +0000 |
---|---|---|
committer | Joel Sherrill <joel.sherrill@OARcorp.com> | 1999-08-10 16:41:44 +0000 |
commit | 981b99faf208e2c7f6e2b83d73e1b89b669112ee (patch) | |
tree | 1f2e2b431853a81be77417c1026c75c53e04d5ea /c/src/lib/libbsp/powerpc/mcp750/vectors/vectors_init.c | |
parent | New configuration files added by patch from (diff) | |
download | rtems-981b99faf208e2c7f6e2b83d73e1b89b669112ee.tar.bz2 |
Patch from Eric Valette <valette@crf.canon.fr> and Emmanuel Raguet
<raguet@crf.canon.fr>:
- the dec21140 driver code has been hardened (various bug fixed) Emmanuel,
- bug in the mcp750 init code have been fixed (interrupt stack/initial
stack initialization), BSS correctly cleared (Eric V)
- remote debugging over TCP/IP is nearly complete (berakpoints,
backtrace, variables,...) (Eric V),
- exception handling code has also been improved in order to fully
support RDBG requirements (Eric V),
Diffstat (limited to '')
-rw-r--r-- | c/src/lib/libbsp/powerpc/mcp750/vectors/vectors_init.c | 18 |
1 files changed, 14 insertions, 4 deletions
diff --git a/c/src/lib/libbsp/powerpc/mcp750/vectors/vectors_init.c b/c/src/lib/libbsp/powerpc/mcp750/vectors/vectors_init.c index 83adc22db1..7310fbd2c5 100644 --- a/c/src/lib/libbsp/powerpc/mcp750/vectors/vectors_init.c +++ b/c/src/lib/libbsp/powerpc/mcp750/vectors/vectors_init.c @@ -19,7 +19,9 @@ static rtems_raw_except_global_settings exception_config; static rtems_raw_except_connect_data exception_table[LAST_VALID_EXC + 1]; -void C_exception_handler(exception_frame* excPtr) +exception_handler_t globalExceptHdl; + +void C_exception_handler(BSP_Exception_frame* excPtr) { int recoverable = 0; @@ -81,9 +83,17 @@ int except_always_enabled(const rtems_raw_except_connect_data* ptr) void initialize_exceptions() { int i; - - exception_config.exceptSize = LAST_VALID_EXC + 1; - exception_config.rawExceptHdlTbl = &exception_table[0]; + + /* + * Initialize pointer used by low level execption handling + */ + globalExceptHdl = C_exception_handler; + /* + * Put default_exception_vector_code_prolog at relevant exception + * code entry addresses + */ + exception_config.exceptSize = LAST_VALID_EXC + 1; + exception_config.rawExceptHdlTbl = &exception_table[0]; exception_config.defaultRawEntry.exceptIndex = 0; exception_config.defaultRawEntry.hdl.vector = 0; exception_config.defaultRawEntry.hdl.raw_hdl = default_exception_vector_code_prolog; |