diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2017-09-19 14:35:02 +0200 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2017-09-19 14:35:02 +0200 |
commit | f100a58c823d39fd202a584c2fdae8b7655a98ce (patch) | |
tree | 98d875ccfe6be15b7b9c2b9000100a577c21981d /c/src/lib/libbsp/powerpc/qoriq/start/start.S | |
parent | bsp/qoriq: MMU configuration as hypervisor guest (diff) | |
download | rtems-f100a58c823d39fd202a584c2fdae8b7655a98ce.tar.bz2 |
bsp/qoriq: Add hypervisor guest SMP support
Update #3085.
Diffstat (limited to 'c/src/lib/libbsp/powerpc/qoriq/start/start.S')
-rw-r--r-- | c/src/lib/libbsp/powerpc/qoriq/start/start.S | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/c/src/lib/libbsp/powerpc/qoriq/start/start.S b/c/src/lib/libbsp/powerpc/qoriq/start/start.S index d5a2ceb474..2d275e3c2b 100644 --- a/c/src/lib/libbsp/powerpc/qoriq/start/start.S +++ b/c/src/lib/libbsp/powerpc/qoriq/start/start.S @@ -489,10 +489,18 @@ bsp_exc_vector_base: START_NOP_FOR_LINKER_TOC_POINTER_RESTORE #ifdef __PPC_CPU_E6500__ /* Processor doorbell interrupt */ +#if defined(QORIQ_IS_HYPERVISOR_GUEST) && defined(RTEMS_SMP) + PPC_REG_STORE_UPDATE r1, -PPC_EXC_INTERRUPT_FRAME_SIZE(r1) +#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 /* Processor doorbell critical interrupt */ PPC_REG_STORE_UPDATE r1, -EXC_GENERIC_SIZE(r1) |