From 411d89eb6b893ddbeb530cb3fc606044776cdaf2 Mon Sep 17 00:00:00 2001 From: gdisirio Date: Wed, 10 Apr 2013 13:48:02 +0000 Subject: git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@5584 35acf78f-673a-0410-8e92-d51de3d6d3f4 --- os/ports/GCC/PPC/ivor.s | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'os') diff --git a/os/ports/GCC/PPC/ivor.s b/os/ports/GCC/PPC/ivor.s index 46dc66bf5..8235af0e5 100644 --- a/os/ports/GCC/PPC/ivor.s +++ b/os/ports/GCC/PPC/ivor.s @@ -86,6 +86,11 @@ _IVOR10: lis %r3, 0x0800 /* DIS bit mask. */ mtspr 336, %r3 /* TSR register. */ +#if PPC_USE_IRQ_PREEMPTION + /* Allows preemption while executing the software handler.*/ + wrteei 1 +#endif + #if CH_DBG_SYSTEM_STATE_CHECK bl dbg_check_enter_isr bl dbg_check_lock_from_isr @@ -96,6 +101,11 @@ _IVOR10: bl dbg_check_leave_isr #endif +#if PPC_USE_IRQ_PREEMPTION + /* Prevents preemption again.*/ + wrteei 0 +#endif + /* System tick handler invocation.*/ #if CH_DBG_SYSTEM_STATE_CHECK bl dbg_check_lock -- cgit v1.2.3