diff options
Diffstat (limited to 'c/src/lib/libbsp/powerpc/qoriq/start')
-rw-r--r-- | c/src/lib/libbsp/powerpc/qoriq/start/start.S | 16 |
1 files changed, 7 insertions, 9 deletions
diff --git a/c/src/lib/libbsp/powerpc/qoriq/start/start.S b/c/src/lib/libbsp/powerpc/qoriq/start/start.S index 2d275e3c2b..02505a6262 100644 --- a/c/src/lib/libbsp/powerpc/qoriq/start/start.S +++ b/c/src/lib/libbsp/powerpc/qoriq/start/start.S @@ -379,7 +379,7 @@ bsp_exc_vector_base: START_NOP_FOR_LINKER_TOC_POINTER_RESTORE /* External input */ PPC_REG_STORE_UPDATE r1, -PPC_EXC_INTERRUPT_FRAME_SIZE(r1) - PPC_REG_STORE r3, GPR3_OFFSET(r1) + PPC_REG_STORE r3, PPC_EXC_GPR3_PROLOGUE_OFFSET(r1) li r3, 4 b ppc_exc_interrupt START_NOP_FOR_LINKER_TOC_POINTER_RESTORE @@ -420,14 +420,13 @@ bsp_exc_vector_base: /* Decrementer */ #ifdef QORIQ_IS_HYPERVISOR_GUEST PPC_REG_STORE_UPDATE r1, -PPC_EXC_INTERRUPT_FRAME_SIZE(r1) + PPC_REG_STORE r3, PPC_EXC_GPR3_PROLOGUE_OFFSET(r1) + li r3, 10 + b ppc_exc_interrupt #else PPC_REG_STORE_UPDATE r1, -EXC_GENERIC_SIZE(r1) -#endif PPC_REG_STORE r3, GPR3_OFFSET(r1) li r3, 10 -#ifdef QORIQ_IS_HYPERVISOR_GUEST - b ppc_exc_interrupt -#else b ppc_exc_fatal_normal #endif START_NOP_FOR_LINKER_TOC_POINTER_RESTORE @@ -491,14 +490,13 @@ bsp_exc_vector_base: /* Processor doorbell interrupt */ #if defined(QORIQ_IS_HYPERVISOR_GUEST) && defined(RTEMS_SMP) PPC_REG_STORE_UPDATE r1, -PPC_EXC_INTERRUPT_FRAME_SIZE(r1) + PPC_REG_STORE r3, PPC_EXC_GPR3_PROLOGUE_OFFSET(r1) + li r3, 36 + b ppc_exc_interrupt #else PPC_REG_STORE_UPDATE r1, -EXC_GENERIC_SIZE(r1) -#endif PPC_REG_STORE r3, GPR3_OFFSET(r1) li r3, 36 -#if defined(QORIQ_IS_HYPERVISOR_GUEST) && defined(RTEMS_SMP) - b ppc_exc_interrupt -#else b ppc_exc_fatal_normal #endif START_NOP_FOR_LINKER_TOC_POINTER_RESTORE |