Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 15645581 authored by Kuninori Morimoto's avatar Kuninori Morimoto Committed by Simon Horman
Browse files

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: default avatarKuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Acked-by: default avatarMagnus Damm <damm@opensource.se>
Signed-off-by: default avatarSimon Horman <horms+renesas@verge.net.au>
parent d2f463a6
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -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,
+0 −1
Original line number Diff line number Diff line
@@ -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);
+3 −17
Original line number Diff line number Diff line
@@ -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();
}