diff options
author | Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> | 2013-08-02 10:39:13 +0400 |
---|---|---|
committer | Simon Horman <horms+renesas@verge.net.au> | 2013-08-06 06:18:29 +0400 |
commit | 15645581a9401cf2370d2c975e2673d289d5e561 (patch) | |
tree | f842b09826cf0cb3e928814297fe16ff83e90004 /arch/arm/mach-shmobile | |
parent | d2f463a66abb1edc3b0ab6cc8252d9fa4e3d30e8 (diff) | |
download | linux-15645581a9401cf2370d2c975e2673d289d5e561.tar.xz |
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>
Diffstat (limited to 'arch/arm/mach-shmobile')
-rw-r--r-- | arch/arm/mach-shmobile/board-armadillo800eva.c | 2 | ||||
-rw-r--r-- | arch/arm/mach-shmobile/include/mach/r8a7740.h | 1 | ||||
-rw-r--r-- | 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 66cfd5686578..68641952b63a 100644 --- a/arch/arm/mach-shmobile/board-armadillo800eva.c +++ b/arch/arm/mach-shmobile/board-armadillo800eva.c @@ -1265,7 +1265,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 56f375005fcd..d07932f872b6 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 8871f7717dc8..75193539b541 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(); -} |