diff options
Diffstat (limited to 'arch/arm/mach-imx')
-rw-r--r-- | arch/arm/mach-imx/gpc.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/arch/arm/mach-imx/gpc.c b/arch/arm/mach-imx/gpc.c index e1537f9e45b8..722e5df7e44e 100644 --- a/arch/arm/mach-imx/gpc.c +++ b/arch/arm/mach-imx/gpc.c | |||
@@ -101,11 +101,16 @@ static void imx_gpc_irq_mask(struct irq_data *d) | |||
101 | void __init imx_gpc_init(void) | 101 | void __init imx_gpc_init(void) |
102 | { | 102 | { |
103 | struct device_node *np; | 103 | struct device_node *np; |
104 | int i; | ||
104 | 105 | ||
105 | np = of_find_compatible_node(NULL, NULL, "fsl,imx6q-gpc"); | 106 | np = of_find_compatible_node(NULL, NULL, "fsl,imx6q-gpc"); |
106 | gpc_base = of_iomap(np, 0); | 107 | gpc_base = of_iomap(np, 0); |
107 | WARN_ON(!gpc_base); | 108 | WARN_ON(!gpc_base); |
108 | 109 | ||
110 | /* Initially mask all interrupts */ | ||
111 | for (i = 0; i < IMR_NUM; i++) | ||
112 | writel_relaxed(~0, gpc_base + GPC_IMR1 + i * 4); | ||
113 | |||
109 | /* Register GPC as the secondary interrupt controller behind GIC */ | 114 | /* Register GPC as the secondary interrupt controller behind GIC */ |
110 | gic_arch_extn.irq_mask = imx_gpc_irq_mask; | 115 | gic_arch_extn.irq_mask = imx_gpc_irq_mask; |
111 | gic_arch_extn.irq_unmask = imx_gpc_irq_unmask; | 116 | gic_arch_extn.irq_unmask = imx_gpc_irq_unmask; |