summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorThomas Gleixner2015-07-13 22:51:26 +0200
committerIngo Molnar2015-07-29 10:08:09 +0200
commitc497615c0cb62ba0b06db9580911dcf6d612bdb9 (patch)
treeed7e9abbaf1f65ec8da54c6c4ea8dd45eb7d23f5
parentsh/intc: Use irq_desc_get_xxx() to avoid redundant lookup of irq_desc (diff)
downloadkernel-qcow2-linux-c497615c0cb62ba0b06db9580911dcf6d612bdb9.tar.gz
kernel-qcow2-linux-c497615c0cb62ba0b06db9580911dcf6d612bdb9.tar.xz
kernel-qcow2-linux-c497615c0cb62ba0b06db9580911dcf6d612bdb9.zip
sh/intc: Prepare irq flow handlers for irq argument removal
The irq argument of most interrupt flow handlers is unused or merily used instead of a local variable. The handlers which need the irq argument can retrieve the irq number from the irq descriptor. Search and update was done with coccinelle and the invaluable help of Julia Lawall. Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Cc: Jiang Liu <jiang.liu@linux.intel.com> Cc: Simon Horman <horms@verge.net.au> Cc: Magnus Damm <magnus.damm@gmail.com> Cc: Julia Lawall <Julia.Lawall@lip6.fr> Link: http://lkml.kernel.org/r/20150713151626.872605327@linutronix.de Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Signed-off-by: Ingo Molnar <mingo@kernel.org>
-rw-r--r--arch/sh/boards/mach-se/7724/irq.c3
-rw-r--r--drivers/sh/intc/virq.c3
2 files changed, 4 insertions, 2 deletions
diff --git a/arch/sh/boards/mach-se/7724/irq.c b/arch/sh/boards/mach-se/7724/irq.c
index 5d1d3ec9a6cd..9f2033898652 100644
--- a/arch/sh/boards/mach-se/7724/irq.c
+++ b/arch/sh/boards/mach-se/7724/irq.c
@@ -92,8 +92,9 @@ static struct irq_chip se7724_irq_chip __read_mostly = {
.irq_unmask = enable_se7724_irq,
};
-static void se7724_irq_demux(unsigned int irq, struct irq_desc *desc)
+static void se7724_irq_demux(unsigned int __irq, struct irq_desc *desc)
{
+ unsigned int irq = irq_desc_get_irq(desc);
struct fpga_irq set = get_fpga_irq(irq);
unsigned short intv = __raw_readw(set.sraddr);
unsigned int ext_irq = set.base;
diff --git a/drivers/sh/intc/virq.c b/drivers/sh/intc/virq.c
index 503d95a48d13..bafc51c6f0ba 100644
--- a/drivers/sh/intc/virq.c
+++ b/drivers/sh/intc/virq.c
@@ -109,8 +109,9 @@ static int add_virq_to_pirq(unsigned int irq, unsigned int virq)
return 0;
}
-static void intc_virq_handler(unsigned int irq, struct irq_desc *desc)
+static void intc_virq_handler(unsigned int __irq, struct irq_desc *desc)
{
+ unsigned int irq = irq_desc_get_irq(desc);
struct irq_data *data = irq_desc_get_irq_data(desc);
struct irq_chip *chip = irq_data_get_irq_chip(data);
struct intc_virq_list *entry, *vlist = irq_data_get_irq_handler_data(data);