| From c70cb4f3542000200273579d887bf786d3b51079 Mon Sep 17 00:00:00 2001 |
| From: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> |
| Date: Thu, 1 Aug 2013 23:39:13 -0700 |
| Subject: ARM: shmobile: armadillo800eva: Use DT for GIC |
| |
| Current Armadillo800eva is using DT booting, |
| and r8a7740.dtsi already has GIC settings. |
| |
| So, we can remove the C version of the GIC setup code, |
| instead rely on GIC information provided by DT. |
| |
| This patch removes r8a7740_init_irq() which has |
| no user any more |
| |
| Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> |
| Acked-by: Magnus Damm <damm@opensource.se> |
| Signed-off-by: Simon Horman <horms+renesas@verge.net.au> |
| (cherry picked from commit 15645581a9401cf2370d2c975e2673d289d5e561) |
| Signed-off-by: Simon Horman <horms+renesas@verge.net.au> |
| --- |
| arch/arm/mach-shmobile/board-armadillo800eva.c | 2 +- |
| arch/arm/mach-shmobile/include/mach/r8a7740.h | 1 - |
| arch/arm/mach-shmobile/intc-r8a7740.c | 20 +++----------------- |
| 3 files changed, 4 insertions(+), 19 deletions(-) |
| |
| diff --git a/arch/arm/mach-shmobile/board-armadillo800eva.c b/arch/arm/mach-shmobile/board-armadillo800eva.c |
| index 9bb74729..471440ba 100644 |
| --- a/arch/arm/mach-shmobile/board-armadillo800eva.c |
| +++ b/arch/arm/mach-shmobile/board-armadillo800eva.c |
| @@ -1313,7 +1313,7 @@ static const char *eva_boards_compat_dt[] __initdata = { |
| DT_MACHINE_START(ARMADILLO800EVA_DT, "armadillo800eva") |
| .map_io = r8a7740_map_io, |
| .init_early = eva_add_early_devices, |
| - .init_irq = r8a7740_init_irq, |
| + .init_irq = r8a7740_init_irq_of, |
| .init_machine = eva_init, |
| .init_late = shmobile_init_late, |
| .init_time = eva_earlytimer_init, |
| diff --git a/arch/arm/mach-shmobile/include/mach/r8a7740.h b/arch/arm/mach-shmobile/include/mach/r8a7740.h |
| index 56f37500..d07932f8 100644 |
| --- a/arch/arm/mach-shmobile/include/mach/r8a7740.h |
| +++ b/arch/arm/mach-shmobile/include/mach/r8a7740.h |
| @@ -48,7 +48,6 @@ enum { |
| |
| extern void r8a7740_meram_workaround(void); |
| extern void r8a7740_init_delay(void); |
| -extern void r8a7740_init_irq(void); |
| extern void r8a7740_init_irq_of(void); |
| extern void r8a7740_map_io(void); |
| extern void r8a7740_add_early_devices(void); |
| diff --git a/arch/arm/mach-shmobile/intc-r8a7740.c b/arch/arm/mach-shmobile/intc-r8a7740.c |
| index 8871f771..75193539 100644 |
| --- a/arch/arm/mach-shmobile/intc-r8a7740.c |
| +++ b/arch/arm/mach-shmobile/intc-r8a7740.c |
| @@ -23,12 +23,14 @@ |
| #include <linux/irqchip.h> |
| #include <linux/irqchip/arm-gic.h> |
| |
| -static void __init r8a7740_init_irq_common(void) |
| +void __init r8a7740_init_irq_of(void) |
| { |
| void __iomem *intc_prio_base = ioremap_nocache(0xe6900010, 0x10); |
| void __iomem *intc_msk_base = ioremap_nocache(0xe6900040, 0x10); |
| void __iomem *pfc_inta_ctrl = ioremap_nocache(0xe605807c, 0x4); |
| |
| + irqchip_init(); |
| + |
| /* route signals to GIC */ |
| iowrite32(0x0, pfc_inta_ctrl); |
| |
| @@ -50,19 +52,3 @@ static void __init r8a7740_init_irq_common(void) |
| iounmap(intc_msk_base); |
| iounmap(pfc_inta_ctrl); |
| } |
| - |
| -void __init r8a7740_init_irq_of(void) |
| -{ |
| - irqchip_init(); |
| - r8a7740_init_irq_common(); |
| -} |
| - |
| -void __init r8a7740_init_irq(void) |
| -{ |
| - void __iomem *gic_dist_base = ioremap_nocache(0xc2800000, 0x1000); |
| - void __iomem *gic_cpu_base = ioremap_nocache(0xc2000000, 0x1000); |
| - |
| - /* initialize the Generic Interrupt Controller PL390 r0p0 */ |
| - gic_init(0, 29, gic_dist_base, gic_cpu_base); |
| - r8a7740_init_irq_common(); |
| -} |
| -- |
| 1.8.4.3.gca3854a |
| |