diff options
author | Russell King <rmk+kernel@arm.linux.org.uk> | 2015-06-16 18:06:25 -0400 |
---|---|---|
committer | Thomas Gleixner <tglx@linutronix.de> | 2015-06-18 08:03:08 -0400 |
commit | 056c0acf8798d3b94916633c41432d7a310b2f64 (patch) | |
tree | b4b2f6c3f8aded732972c8266736c19ec8cdbe55 | |
parent | 3b0f95be143bea1aa47beb20134ef82e4e4068dc (diff) |
ARM: sa1100: convert SA11x0 related code to use new chained handler helper
Convert SA11x0 (Neponset, SA1111, and UCB1x00 code) to use the new
irq_set_chained_handler_and_data() helper.
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Cc: Alexandre Courbot <gnurou@gmail.com>
Cc: Hans Ulli Kroll <ulli.kroll@googlemail.com>
Cc: Jason Cooper <jason@lakedaemon.net>
Cc: Lee Jones <lee.jones@linaro.org>
Cc: Linus Walleij <linus.walleij@linaro.org>
Cc: Thierry Reding <thierry.reding@gmail.com>
Cc: linux-arm-kernel@lists.infradead.org
Link: http://lkml.kernel.org/r/E1Z4yzx-0002S6-7p@rmk-PC.arm.linux.org.uk
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
-rw-r--r-- | arch/arm/common/sa1111.c | 7 | ||||
-rw-r--r-- | arch/arm/mach-sa1100/neponset.c | 3 | ||||
-rw-r--r-- | drivers/mfd/ucb1x00-core.c | 3 |
3 files changed, 5 insertions, 8 deletions
diff --git a/arch/arm/common/sa1111.c b/arch/arm/common/sa1111.c index 5cc779c8e9c6..93ee70dbbdd3 100644 --- a/arch/arm/common/sa1111.c +++ b/arch/arm/common/sa1111.c | |||
@@ -501,8 +501,8 @@ static int sa1111_setup_irq(struct sa1111 *sachip, unsigned irq_base) | |||
501 | * Register SA1111 interrupt | 501 | * Register SA1111 interrupt |
502 | */ | 502 | */ |
503 | irq_set_irq_type(sachip->irq, IRQ_TYPE_EDGE_RISING); | 503 | irq_set_irq_type(sachip->irq, IRQ_TYPE_EDGE_RISING); |
504 | irq_set_handler_data(sachip->irq, sachip); | 504 | irq_set_chained_handler_and_data(sachip->irq, sa1111_irq_handler, |
505 | irq_set_chained_handler(sachip->irq, sa1111_irq_handler); | 505 | sachip); |
506 | 506 | ||
507 | dev_info(sachip->dev, "Providing IRQ%u-%u\n", | 507 | dev_info(sachip->dev, "Providing IRQ%u-%u\n", |
508 | sachip->irq_base, sachip->irq_base + SA1111_IRQ_NR - 1); | 508 | sachip->irq_base, sachip->irq_base + SA1111_IRQ_NR - 1); |
@@ -836,8 +836,7 @@ static void __sa1111_remove(struct sa1111 *sachip) | |||
836 | clk_unprepare(sachip->clk); | 836 | clk_unprepare(sachip->clk); |
837 | 837 | ||
838 | if (sachip->irq != NO_IRQ) { | 838 | if (sachip->irq != NO_IRQ) { |
839 | irq_set_chained_handler(sachip->irq, NULL); | 839 | irq_set_chained_handler_and_data(sachip->irq, NULL, NULL); |
840 | irq_set_handler_data(sachip->irq, NULL); | ||
841 | irq_free_descs(sachip->irq_base, SA1111_IRQ_NR); | 840 | irq_free_descs(sachip->irq_base, SA1111_IRQ_NR); |
842 | 841 | ||
843 | release_mem_region(sachip->phys + SA1111_INTC, 512); | 842 | release_mem_region(sachip->phys + SA1111_INTC, 512); |
diff --git a/arch/arm/mach-sa1100/neponset.c b/arch/arm/mach-sa1100/neponset.c index af868d258e66..99d9a3b1bf34 100644 --- a/arch/arm/mach-sa1100/neponset.c +++ b/arch/arm/mach-sa1100/neponset.c | |||
@@ -327,8 +327,7 @@ static int neponset_probe(struct platform_device *dev) | |||
327 | irq_set_chip(d->irq_base + NEP_IRQ_SA1111, &nochip); | 327 | irq_set_chip(d->irq_base + NEP_IRQ_SA1111, &nochip); |
328 | 328 | ||
329 | irq_set_irq_type(irq, IRQ_TYPE_EDGE_RISING); | 329 | irq_set_irq_type(irq, IRQ_TYPE_EDGE_RISING); |
330 | irq_set_handler_data(irq, d); | 330 | irq_set_chained_handler_and_data(irq, neponset_irq_handler, d); |
331 | irq_set_chained_handler(irq, neponset_irq_handler); | ||
332 | 331 | ||
333 | /* | 332 | /* |
334 | * We would set IRQ_GPIO25 to be a wake-up IRQ, but unfortunately | 333 | * We would set IRQ_GPIO25 to be a wake-up IRQ, but unfortunately |
diff --git a/drivers/mfd/ucb1x00-core.c b/drivers/mfd/ucb1x00-core.c index 58ea9fdd3a15..3591550598ad 100644 --- a/drivers/mfd/ucb1x00-core.c +++ b/drivers/mfd/ucb1x00-core.c | |||
@@ -566,8 +566,7 @@ static int ucb1x00_probe(struct mcp *mcp) | |||
566 | } | 566 | } |
567 | 567 | ||
568 | irq_set_irq_type(ucb->irq, IRQ_TYPE_EDGE_RISING); | 568 | irq_set_irq_type(ucb->irq, IRQ_TYPE_EDGE_RISING); |
569 | irq_set_handler_data(ucb->irq, ucb); | 569 | irq_set_chained_handler_and_data(ucb->irq, ucb1x00_irq, ucb); |
570 | irq_set_chained_handler(ucb->irq, ucb1x00_irq); | ||
571 | 570 | ||
572 | if (pdata && pdata->gpio_base) { | 571 | if (pdata && pdata->gpio_base) { |
573 | ucb->gpio.label = dev_name(&ucb->dev); | 572 | ucb->gpio.label = dev_name(&ucb->dev); |