diff mbox

[v2,1/2] ARM: shmobile: sh73a0: Use generic irqchip_init()

Message ID 1358493373-28722-1-git-send-email-thierry.reding@avionic-design.de (mailing list archive)
State New, archived
Headers show

Commit Message

Thierry Reding Jan. 18, 2013, 7:16 a.m. UTC
The asm/hardware/gic.h header does no longer exist and the corresponding
functionality was moved to linux/irqchip.h and linux/irqchip/arm-gic.h
respectively. gic_handle_irq() and of_irq_init() are no longer available
either and have been replaced by irqchip_init().

Signed-off-by: Thierry Reding <thierry.reding@avionic-design.de>
---
Changes in v2:
- split off kzm9g board changes into a separate patch

 arch/arm/mach-shmobile/intc-sh73a0.c  | 9 ++-------
 arch/arm/mach-shmobile/setup-sh73a0.c | 2 --
 2 files changed, 2 insertions(+), 9 deletions(-)

Comments

Simon Horman Jan. 21, 2013, 12:54 a.m. UTC | #1
On Fri, Jan 18, 2013 at 08:16:12AM +0100, Thierry Reding wrote:
> The asm/hardware/gic.h header does no longer exist and the corresponding
> functionality was moved to linux/irqchip.h and linux/irqchip/arm-gic.h
> respectively. gic_handle_irq() and of_irq_init() are no longer available
> either and have been replaced by irqchip_init().

asm/hardware/gic.h Seems to still exist in Linus's tree.
Could you let me know which tree of which branch I should depend on
in order to apply this change?

> 
> Signed-off-by: Thierry Reding <thierry.reding@avionic-design.de>
> ---
> Changes in v2:
> - split off kzm9g board changes into a separate patch
> 
>  arch/arm/mach-shmobile/intc-sh73a0.c  | 9 ++-------
>  arch/arm/mach-shmobile/setup-sh73a0.c | 2 --
>  2 files changed, 2 insertions(+), 9 deletions(-)
> 
> diff --git a/arch/arm/mach-shmobile/intc-sh73a0.c b/arch/arm/mach-shmobile/intc-sh73a0.c
> index fc7c8da..91faba6 100644
> --- a/arch/arm/mach-shmobile/intc-sh73a0.c
> +++ b/arch/arm/mach-shmobile/intc-sh73a0.c
> @@ -21,9 +21,9 @@
>  #include <linux/interrupt.h>
>  #include <linux/module.h>
>  #include <linux/irq.h>
> -#include <linux/of_irq.h>
>  #include <linux/io.h>
>  #include <linux/sh_intc.h>
> +#include <linux/irqchip.h>
>  #include <linux/irqchip/arm-gic.h>
>  #include <mach/intc.h>
>  #include <mach/irqs.h>
> @@ -462,14 +462,9 @@ void __init sh73a0_init_irq(void)
>  }
>  
>  #ifdef CONFIG_OF
> -static const struct of_device_id irq_of_match[] __initconst = {
> -	{ .compatible = "arm,cortex-a9-gic", .data = gic_of_init, },
> -	{ },
> -};
> -
>  void __init sh73a0_init_irq_dt(void)
>  {
> -	of_irq_init(irq_of_match);
> +	irqchip_init();
>  	gic_arch_extn.irq_set_wake = sh73a0_set_wake;
>  }
>  #endif
> diff --git a/arch/arm/mach-shmobile/setup-sh73a0.c b/arch/arm/mach-shmobile/setup-sh73a0.c
> index abf1eb0..2ecd668 100644
> --- a/arch/arm/mach-shmobile/setup-sh73a0.c
> +++ b/arch/arm/mach-shmobile/setup-sh73a0.c
> @@ -36,7 +36,6 @@
>  #include <mach/irqs.h>
>  #include <mach/sh73a0.h>
>  #include <mach/common.h>
> -#include <asm/hardware/gic.h>
>  #include <asm/mach-types.h>
>  #include <asm/mach/map.h>
>  #include <asm/mach/arch.h>
> @@ -892,7 +891,6 @@ DT_MACHINE_START(SH73A0_DT, "Generic SH73A0 (Flattened Device Tree)")
>  	.init_early	= sh73a0_add_early_devices_dt,
>  	.nr_irqs	= NR_IRQS_LEGACY,
>  	.init_irq	= sh73a0_init_irq_dt,
> -	.handle_irq	= gic_handle_irq,
>  	.init_machine	= sh73a0_add_standard_devices_dt,
>  	.init_time	= shmobile_timer_init,
>  	.dt_compat	= sh73a0_boards_compat_dt,
> -- 
> 1.8.1.1
> 
> --
> To unsubscribe from this list: send the line "unsubscribe linux-sh" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>
Thierry Reding Jan. 21, 2013, 7:03 a.m. UTC | #2
On Mon, Jan 21, 2013 at 09:54:39AM +0900, Simon Horman wrote:
> On Fri, Jan 18, 2013 at 08:16:12AM +0100, Thierry Reding wrote:
> > The asm/hardware/gic.h header does no longer exist and the corresponding
> > functionality was moved to linux/irqchip.h and linux/irqchip/arm-gic.h
> > respectively. gic_handle_irq() and of_irq_init() are no longer available
> > either and have been replaced by irqchip_init().
> 
> asm/hardware/gic.h Seems to still exist in Linus's tree.
> Could you let me know which tree of which branch I should depend on
> in order to apply this change?

I found this when doing an automated build over all ARM defconfigs on
linux-next.

Commit 520f7bd73354f003a9a59937b28e4903d985c420 "irqchip: Move ARM gic.h
to include/linux/irqchip/arm-gic.h" moved the file and was merged
through Olof Johansson's next/cleanup and for-next branches.

Adding Olof on Cc since I'm not quite sure myself about how this is
handled.

Thierry
Simon Horman Jan. 22, 2013, 12:18 a.m. UTC | #3
On Mon, Jan 21, 2013 at 08:03:01AM +0100, Thierry Reding wrote:
> On Mon, Jan 21, 2013 at 09:54:39AM +0900, Simon Horman wrote:
> > On Fri, Jan 18, 2013 at 08:16:12AM +0100, Thierry Reding wrote:
> > > The asm/hardware/gic.h header does no longer exist and the corresponding
> > > functionality was moved to linux/irqchip.h and linux/irqchip/arm-gic.h
> > > respectively. gic_handle_irq() and of_irq_init() are no longer available
> > > either and have been replaced by irqchip_init().
> > 
> > asm/hardware/gic.h Seems to still exist in Linus's tree.
> > Could you let me know which tree of which branch I should depend on
> > in order to apply this change?
> 
> I found this when doing an automated build over all ARM defconfigs on
> linux-next.
> 
> Commit 520f7bd73354f003a9a59937b28e4903d985c420 "irqchip: Move ARM gic.h
> to include/linux/irqchip/arm-gic.h" moved the file and was merged
> through Olof Johansson's next/cleanup and for-next branches.
> 
> Adding Olof on Cc since I'm not quite sure myself about how this is
> handled.

Thanks, I'm not quite sure either.
Olof Johansson Jan. 22, 2013, 7:29 a.m. UTC | #4
On Mon, Jan 21, 2013 at 08:03:01AM +0100, Thierry Reding wrote:
> On Mon, Jan 21, 2013 at 09:54:39AM +0900, Simon Horman wrote:
> > On Fri, Jan 18, 2013 at 08:16:12AM +0100, Thierry Reding wrote:
> > > The asm/hardware/gic.h header does no longer exist and the corresponding
> > > functionality was moved to linux/irqchip.h and linux/irqchip/arm-gic.h
> > > respectively. gic_handle_irq() and of_irq_init() are no longer available
> > > either and have been replaced by irqchip_init().
> > 
> > asm/hardware/gic.h Seems to still exist in Linus's tree.
> > Could you let me know which tree of which branch I should depend on
> > in order to apply this change?
> 
> I found this when doing an automated build over all ARM defconfigs on
> linux-next.
> 
> Commit 520f7bd73354f003a9a59937b28e4903d985c420 "irqchip: Move ARM gic.h
> to include/linux/irqchip/arm-gic.h" moved the file and was merged
> through Olof Johansson's next/cleanup and for-next branches.
> 
> Adding Olof on Cc since I'm not quite sure myself about how this is
> handled.

The way to handle this is to base the branch you are adding new shmobile code
in, on top of the cleanup branches that changes the underlying infrastructure.
This is why we merge it early during the release, so that new code for various
platforms can be based on it to avoid a bunch of conflicts in the end.

In this case, you might need to base your branch onto a merge of both
the irqchip/gic-vic-move and timer/cleanup branches from arm-soc.


-Olof
Simon Horman Jan. 22, 2013, 8:07 a.m. UTC | #5
On Mon, Jan 21, 2013 at 11:29:12PM -0800, Olof Johansson wrote:
> On Mon, Jan 21, 2013 at 08:03:01AM +0100, Thierry Reding wrote:
> > On Mon, Jan 21, 2013 at 09:54:39AM +0900, Simon Horman wrote:
> > > On Fri, Jan 18, 2013 at 08:16:12AM +0100, Thierry Reding wrote:
> > > > The asm/hardware/gic.h header does no longer exist and the corresponding
> > > > functionality was moved to linux/irqchip.h and linux/irqchip/arm-gic.h
> > > > respectively. gic_handle_irq() and of_irq_init() are no longer available
> > > > either and have been replaced by irqchip_init().
> > > 
> > > asm/hardware/gic.h Seems to still exist in Linus's tree.
> > > Could you let me know which tree of which branch I should depend on
> > > in order to apply this change?
> > 
> > I found this when doing an automated build over all ARM defconfigs on
> > linux-next.
> > 
> > Commit 520f7bd73354f003a9a59937b28e4903d985c420 "irqchip: Move ARM gic.h
> > to include/linux/irqchip/arm-gic.h" moved the file and was merged
> > through Olof Johansson's next/cleanup and for-next branches.
> > 
> > Adding Olof on Cc since I'm not quite sure myself about how this is
> > handled.
> 
> The way to handle this is to base the branch you are adding new shmobile code
> in, on top of the cleanup branches that changes the underlying infrastructure.
> This is why we merge it early during the release, so that new code for various
> platforms can be based on it to avoid a bunch of conflicts in the end.
> 
> In this case, you might need to base your branch onto a merge of both
> the irqchip/gic-vic-move and timer/cleanup branches from arm-soc.

Thanks, I'll take a look at rebasing accordingly.
diff mbox

Patch

diff --git a/arch/arm/mach-shmobile/intc-sh73a0.c b/arch/arm/mach-shmobile/intc-sh73a0.c
index fc7c8da..91faba6 100644
--- a/arch/arm/mach-shmobile/intc-sh73a0.c
+++ b/arch/arm/mach-shmobile/intc-sh73a0.c
@@ -21,9 +21,9 @@ 
 #include <linux/interrupt.h>
 #include <linux/module.h>
 #include <linux/irq.h>
-#include <linux/of_irq.h>
 #include <linux/io.h>
 #include <linux/sh_intc.h>
+#include <linux/irqchip.h>
 #include <linux/irqchip/arm-gic.h>
 #include <mach/intc.h>
 #include <mach/irqs.h>
@@ -462,14 +462,9 @@  void __init sh73a0_init_irq(void)
 }
 
 #ifdef CONFIG_OF
-static const struct of_device_id irq_of_match[] __initconst = {
-	{ .compatible = "arm,cortex-a9-gic", .data = gic_of_init, },
-	{ },
-};
-
 void __init sh73a0_init_irq_dt(void)
 {
-	of_irq_init(irq_of_match);
+	irqchip_init();
 	gic_arch_extn.irq_set_wake = sh73a0_set_wake;
 }
 #endif
diff --git a/arch/arm/mach-shmobile/setup-sh73a0.c b/arch/arm/mach-shmobile/setup-sh73a0.c
index abf1eb0..2ecd668 100644
--- a/arch/arm/mach-shmobile/setup-sh73a0.c
+++ b/arch/arm/mach-shmobile/setup-sh73a0.c
@@ -36,7 +36,6 @@ 
 #include <mach/irqs.h>
 #include <mach/sh73a0.h>
 #include <mach/common.h>
-#include <asm/hardware/gic.h>
 #include <asm/mach-types.h>
 #include <asm/mach/map.h>
 #include <asm/mach/arch.h>
@@ -892,7 +891,6 @@  DT_MACHINE_START(SH73A0_DT, "Generic SH73A0 (Flattened Device Tree)")
 	.init_early	= sh73a0_add_early_devices_dt,
 	.nr_irqs	= NR_IRQS_LEGACY,
 	.init_irq	= sh73a0_init_irq_dt,
-	.handle_irq	= gic_handle_irq,
 	.init_machine	= sh73a0_add_standard_devices_dt,
 	.init_time	= shmobile_timer_init,
 	.dt_compat	= sh73a0_boards_compat_dt,