2015-07-13 20:32:10

by Thomas Gleixner

[permalink] [raw]
Subject: [patch 1/3] avr32/at32ap: Consolidate chained IRQ handler install/remove

Chained irq handlers usually set up handler data as well. We now have
a function to set both under irq_desc->lock. Replace the two calls
with one.

Search and conversion was done with coccinelle.

Reported-by: Russell King <[email protected]>
Signed-off-by: Thomas Gleixner <[email protected]>
Cc: Julia Lawall <[email protected]>
Cc: Haavard Skinnemoen <[email protected]>
Cc: Hans-Christian Egtvedt <[email protected]>
---
arch/avr32/mach-at32ap/pio.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

Index: tip/arch/avr32/mach-at32ap/pio.c
===================================================================
--- tip.orig/arch/avr32/mach-at32ap/pio.c
+++ tip/arch/avr32/mach-at32ap/pio.c
@@ -312,7 +312,6 @@ gpio_irq_setup(struct pio_device *pio, i
unsigned i;

irq_set_chip_data(irq, pio);
- irq_set_handler_data(irq, (void *)gpio_irq);

for (i = 0; i < 32; i++, gpio_irq++) {
irq_set_chip_data(gpio_irq, pio);
@@ -320,7 +319,8 @@ gpio_irq_setup(struct pio_device *pio, i
handle_simple_irq);
}

- irq_set_chained_handler(irq, gpio_irq_handler);
+ irq_set_chained_handler_and_data(irq, gpio_irq_handler,
+ (void *)gpio_irq);
}

/*--------------------------------------------------------------------------*/


Subject: Re: [patch 1/3] avr32/at32ap: Consolidate chained IRQ handler install/remove

Around Mon 13 Jul 2015 20:31:09 -0000 or thereabout, Thomas Gleixner wrote:
> Chained irq handlers usually set up handler data as well. We now have
> a function to set both under irq_desc->lock. Replace the two calls
> with one.
>
> Search and conversion was done with coccinelle.
>
> Reported-by: Russell King <[email protected]>
> Signed-off-by: Thomas Gleixner <[email protected]>
> Cc: Julia Lawall <[email protected]>
> Cc: Haavard Skinnemoen <[email protected]>
> Cc: Hans-Christian Egtvedt <[email protected]>

Acked-by: Hans-Christian Egtvedt <[email protected]>

> ---
> arch/avr32/mach-at32ap/pio.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> Index: tip/arch/avr32/mach-at32ap/pio.c
> ===================================================================
> --- tip.orig/arch/avr32/mach-at32ap/pio.c
> +++ tip/arch/avr32/mach-at32ap/pio.c
> @@ -312,7 +312,6 @@ gpio_irq_setup(struct pio_device *pio, i
> unsigned i;
>
> irq_set_chip_data(irq, pio);
> - irq_set_handler_data(irq, (void *)gpio_irq);
>
> for (i = 0; i < 32; i++, gpio_irq++) {
> irq_set_chip_data(gpio_irq, pio);
> @@ -320,7 +319,8 @@ gpio_irq_setup(struct pio_device *pio, i
> handle_simple_irq);
> }
>
> - irq_set_chained_handler(irq, gpio_irq_handler);
> + irq_set_chained_handler_and_data(irq, gpio_irq_handler,
> + (void *)gpio_irq);
> }
>
> /*--------------------------------------------------------------------------*/
--
mvh
Hans-Christian Egtvedt

Subject: [tip:irq/core] avr32/at32ap: Consolidate chained IRQ handler install/remove

Commit-ID: 4365160def95ef2f5da9b5cc5660e5747e5e1956
Gitweb: http://git.kernel.org/tip/4365160def95ef2f5da9b5cc5660e5747e5e1956
Author: Thomas Gleixner <[email protected]>
AuthorDate: Mon, 13 Jul 2015 20:31:09 +0000
Committer: Thomas Gleixner <[email protected]>
CommitDate: Sun, 26 Jul 2015 11:47:25 +0200

avr32/at32ap: Consolidate chained IRQ handler install/remove

Chained irq handlers usually set up handler data as well. We now have
a function to set both under irq_desc->lock. Replace the two calls
with one.

Search and conversion was done with coccinelle.

Reported-by: Russell King <[email protected]>
Signed-off-by: Thomas Gleixner <[email protected]>
Acked-by: Hans-Christian Egtvedt <[email protected]>
Cc: Haavard Skinnemoen <[email protected]>
Cc: Jiang Liu <[email protected]>
Cc: Julia Lawall <[email protected]>
Link: http://lkml.kernel.org/r/[email protected]
Signed-off-by: Thomas Gleixner <[email protected]>
---
arch/avr32/mach-at32ap/pio.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/arch/avr32/mach-at32ap/pio.c b/arch/avr32/mach-at32ap/pio.c
index 903c7d8..6c7035a 100644
--- a/arch/avr32/mach-at32ap/pio.c
+++ b/arch/avr32/mach-at32ap/pio.c
@@ -312,7 +312,6 @@ gpio_irq_setup(struct pio_device *pio, int irq, int gpio_irq)
unsigned i;

irq_set_chip_data(irq, pio);
- irq_set_handler_data(irq, (void *)gpio_irq);

for (i = 0; i < 32; i++, gpio_irq++) {
irq_set_chip_data(gpio_irq, pio);
@@ -320,7 +319,8 @@ gpio_irq_setup(struct pio_device *pio, int irq, int gpio_irq)
handle_simple_irq);
}

- irq_set_chained_handler(irq, gpio_irq_handler);
+ irq_set_chained_handler_and_data(irq, gpio_irq_handler,
+ (void *)gpio_irq);
}

/*--------------------------------------------------------------------------*/