aboutsummaryrefslogtreecommitdiff
path: root/arch/m68knommu/platform/coldfire
diff options
context:
space:
mode:
authorSebastian Siewior <bigeasy@linutronix.de>2008-04-28 11:43:16 +0200
committerGreg Ungerer <gerg@uclinux.org>2009-01-27 16:42:00 +1000
commitc7bcd0df1f2879fcedc3f55323c3afa7bb1f4295 (patch)
treec1324fcf31a78b67477b647fa0101187d138a0bf /arch/m68knommu/platform/coldfire
parent5ee810072175042775e39bdd3eaaa68884c27805 (diff)
m68knommu: use one exist from execption
Part of the code that did not make sense to me got removed by Greg. This is part two: The first compare is to check whether the interrupts are disabled or not. Depending on the result we exectute the RESTORE_ALL macro is not only restoring the stack but also returning to caller. The test for pending softirq has been removed because it is allready done in irq_exit(). Since system_call() is allso using the SAVE_ALL macro and returning via ret_from_exception label I see no reason why we could not do this here as well. This is also handy because if we return from the timer interrupt and we need to resched than we check for this :) Signed-off-by: Sebastian Siewior <bigeasy@linutronix.de> Signed-off-by: Greg Ungerer <gerg@uclinux.org>
Diffstat (limited to 'arch/m68knommu/platform/coldfire')
-rw-r--r--arch/m68knommu/platform/coldfire/entry.S15
1 files changed, 2 insertions, 13 deletions
diff --git a/arch/m68knommu/platform/coldfire/entry.S b/arch/m68knommu/platform/coldfire/entry.S
index 1e3c0dcbd7a..3b471c0da24 100644
--- a/arch/m68knommu/platform/coldfire/entry.S
+++ b/arch/m68knommu/platform/coldfire/entry.S
@@ -215,19 +215,8 @@ ENTRY(fasthandler)
RESTORE_LOCAL
ENTRY(ret_from_interrupt)
- moveb %sp@(PT_SR),%d0
- andl #0x7,%d0
- jeq 1f
-
- RESTORE_ALL
-
-1:
- /* check if we need to do software interrupts */
- movel irq_stat+CPUSTAT_SOFTIRQ_PENDING,%d0
- jeq ret_from_exception
-
- pea ret_from_exception
- jmp do_softirq
+ /* the fasthandler is confusing me, haven't seen any user */
+ jmp ret_from_exception
/*
* Beware - when entering resume, prev (the current task) is