diff options
author | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-03-18 16:07:27 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-03-18 16:07:27 -0700 |
commit | fbeb1f19229baa9ee80f315e9d24635045455082 (patch) | |
tree | dc7bd3f3d9c289293f9ed11d0ff3b506444285b0 /arch/sh/kernel/irq.c | |
parent | 5851fadce8824d5d4b8fd02c22ae098401f6489e (diff) | |
parent | 0b3d4ef6fe43b75d4b2a6fc4b814cf03aa248e13 (diff) |
Merge master.kernel.org:/pub/scm/linux/kernel/git/lethal/sh-2.6
* master.kernel.org:/pub/scm/linux/kernel/git/lethal/sh-2.6:
serial: Fix sh-sci break interrupt/sysrq handling.
sh: Fix bogus regs pointer in do_IRQ().
sh: Fix SH-3 cache entry_mask and way_size calculation.
sh: Convert struct ioctls to static defines.
sh: Define missing __NR_readahead.
sh: Fix PCI BAR address-space wraparound.
Diffstat (limited to 'arch/sh/kernel/irq.c')
-rw-r--r-- | arch/sh/kernel/irq.c | 15 |
1 files changed, 2 insertions, 13 deletions
diff --git a/arch/sh/kernel/irq.c b/arch/sh/kernel/irq.c index 67be2b6e8cd..9bdd8a00cd4 100644 --- a/arch/sh/kernel/irq.c +++ b/arch/sh/kernel/irq.c @@ -11,7 +11,6 @@ #include <linux/module.h> #include <linux/kernel_stat.h> #include <linux/seq_file.h> -#include <linux/io.h> #include <linux/irq.h> #include <asm/processor.h> #include <asm/uaccess.h> @@ -82,13 +81,9 @@ static union irq_ctx *hardirq_ctx[NR_CPUS] __read_mostly; static union irq_ctx *softirq_ctx[NR_CPUS] __read_mostly; #endif -asmlinkage int do_IRQ(unsigned long r4, unsigned long r5, - unsigned long r6, unsigned long r7, - struct pt_regs __regs) +asmlinkage int do_IRQ(unsigned int irq, struct pt_regs *regs) { - struct pt_regs *regs = RELOC_HIDE(&__regs, 0); struct pt_regs *old_regs = set_irq_regs(regs); - int irq; #ifdef CONFIG_4KSTACKS union irq_ctx *curctx, *irqctx; #endif @@ -111,13 +106,7 @@ asmlinkage int do_IRQ(unsigned long r4, unsigned long r5, } #endif -#ifdef CONFIG_CPU_HAS_INTEVT - irq = evt2irq(ctrl_inl(INTEVT)); -#else - irq = r4; -#endif - - irq = irq_demux(irq); + irq = irq_demux(evt2irq(irq)); #ifdef CONFIG_4KSTACKS curctx = (union irq_ctx *)current_thread_info(); |