diff options
Diffstat (limited to 'c/src/lib/libbsp/powerpc/shared/irq/irq_asm.S')
-rw-r--r-- | c/src/lib/libbsp/powerpc/shared/irq/irq_asm.S | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/c/src/lib/libbsp/powerpc/shared/irq/irq_asm.S b/c/src/lib/libbsp/powerpc/shared/irq/irq_asm.S index 412a8e2214..e8a9c779e7 100644 --- a/c/src/lib/libbsp/powerpc/shared/irq/irq_asm.S +++ b/c/src/lib/libbsp/powerpc/shared/irq/irq_asm.S @@ -47,6 +47,24 @@ SYM (decrementer_exception_vector_prolog_code): decrementer_exception_vector_prolog_code_size = . - decrementer_exception_vector_prolog_code #endif +#if defined(ASM_SYSMGMT_VECTOR) + PUBLIC_VAR(sysmgmt_exception_vector_prolog_code) + +SYM (sysmgmt_exception_vector_prolog_code): + /* + * let room for exception frame + */ + stwu r1, - (EXCEPTION_FRAME_END)(r1) + stw r4, GPR4_OFFSET(r1) + li r4, ASM_SYSMGMT_VECTOR + ba shared_raw_irq_code_entry + + PUBLIC_VAR (sysmgmt_exception_vector_prolog_code_size) + + sysmgmt_exception_vector_prolog_code_size = . - sysmgmt_exception_vector_prolog_code +#endif + + #if defined(ASM_PIT_VECTOR) PUBLIC_VAR(pit_exception_vector_prolog_code) |