diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2017-09-19 09:02:30 +0200 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2017-09-19 10:57:27 +0200 |
commit | 599e6fbdd8b12ba4a876545c8d809cd3ac4dd272 (patch) | |
tree | 741528164e6155c45d7bea45bf87e7c72509bf03 /c/src/lib/libbsp/powerpc/mpc55xxevb/startup/exc-vector-base.S | |
parent | score: Include missing <limits.h> (diff) | |
download | rtems-599e6fbdd8b12ba4a876545c8d809cd3ac4dd272.tar.bz2 |
bsps/powerpc: PPC_EXC_CONFIG_USE_FIXED_HANDLER
Make PPC_EXC_CONFIG_USE_FIXED_HANDLER mandatory for BSPs using
ppc_exc_interrupt(). Pass exception number to bsp_interrupt_dispatch()
to allow processing of decrementer and doorbell exceptions as hypervisor
guest.
Update #3085.
Diffstat (limited to '')
-rw-r--r-- | c/src/lib/libbsp/powerpc/mpc55xxevb/startup/exc-vector-base.S | 30 |
1 files changed, 6 insertions, 24 deletions
diff --git a/c/src/lib/libbsp/powerpc/mpc55xxevb/startup/exc-vector-base.S b/c/src/lib/libbsp/powerpc/mpc55xxevb/startup/exc-vector-base.S index 7bc520d6b1..9d9e79f351 100644 --- a/c/src/lib/libbsp/powerpc/mpc55xxevb/startup/exc-vector-base.S +++ b/c/src/lib/libbsp/powerpc/mpc55xxevb/startup/exc-vector-base.S @@ -59,15 +59,9 @@ mpc55xx_exc_vector_base: li r4, 4 b ppc_exc_wrap_nopush_std stwu r1, -PPC_EXC_INTERRUPT_FRAME_SIZE(r1) -#ifndef PPC_EXC_CONFIG_USE_FIXED_HANDLER - stw r4, PPC_EXC_VECTOR_PROLOGUE_OFFSET(r1) - li r4, -32763 -#endif + stw r3, GPR3_OFFSET(r1) + li r3, -32763 b ppc_exc_interrupt -#ifdef PPC_EXC_CONFIG_USE_FIXED_HANDLER - nop - nop -#endif stwu r1, -EXC_GENERIC_SIZE(r1) stw r4, GPR4_OFFSET(r1) li r4, 6 @@ -89,25 +83,13 @@ mpc55xx_exc_vector_base: li r4, 24 b ppc_exc_wrap_nopush_std stwu r1, -PPC_EXC_INTERRUPT_FRAME_SIZE(r1) -#ifndef PPC_EXC_CONFIG_USE_FIXED_HANDLER - stw r4, PPC_EXC_VECTOR_PROLOGUE_OFFSET(r1) - li r4, -32752 -#endif + stw r3, GPR3_OFFSET(r1) + li r3, -32752 b ppc_exc_interrupt -#ifdef PPC_EXC_CONFIG_USE_FIXED_HANDLER - nop - nop -#endif stwu r1, -PPC_EXC_INTERRUPT_FRAME_SIZE(r1) -#ifndef PPC_EXC_CONFIG_USE_FIXED_HANDLER - stw r4, PPC_EXC_VECTOR_PROLOGUE_OFFSET(r1) - li r4, -32749 -#endif + stw r3, GPR3_OFFSET(r1) + li r3, -32749 b ppc_exc_interrupt -#ifdef PPC_EXC_CONFIG_USE_FIXED_HANDLER - nop - nop -#endif stw r1, ppc_exc_lock_crit@sdarel(r13) stw r4, ppc_exc_vector_register_crit@sdarel(r13) li r4, -32748 |