[PATCH 4.2.y-ckt 047/305] ARM: imx: add platform irq type setting in gpc

Kamal Mostafa kamal at canonical.com
Fri Jan 15 23:57:41 UTC 2016


4.2.8-ckt2 -stable review patch.  If anyone has any objections, please let me know.

---8<------------------------------------------------------------

From: Anson Huang <b20788 at freescale.com>

commit 4699ccbf8cf2f962031b88de7851f610030e5c17 upstream.

GPC irq domain is a child domain of GIC, now all of platform irqs
are inside GPC domain, during the module populate, all devices irq
should have correct type setting in GIC, however, there is no
.irq_set_type callback setting in GPC, so the irq_set_type will be
skipped and cause all irqs' type in /proc/interrupt are "edge" which
mismatch with irq type setting in dtb file. Since GPC has no irq
type setting, so just tell kernel to use irq_chip_set_type_parent.

Signed-off-by: Anson Huang <Anson.Huang at freescale.com>
Reviewed-by: Lucas Stach <l.stach at pengutronix.de>
Reviewed-by: Marc Zyngier <marc.zyngier at arm.com>
Signed-off-by: Shawn Guo <shawnguo at kernel.org>
Signed-off-by: Kamal Mostafa <kamal at canonical.com>
---
 arch/arm/mach-imx/gpc.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/arch/arm/mach-imx/gpc.c b/arch/arm/mach-imx/gpc.c
index 8c4467f..af085d7 100644
--- a/arch/arm/mach-imx/gpc.c
+++ b/arch/arm/mach-imx/gpc.c
@@ -176,6 +176,7 @@ static struct irq_chip imx_gpc_chip = {
 	.irq_unmask		= imx_gpc_irq_unmask,
 	.irq_retrigger		= irq_chip_retrigger_hierarchy,
 	.irq_set_wake		= imx_gpc_irq_set_wake,
+	.irq_set_type           = irq_chip_set_type_parent,
 #ifdef CONFIG_SMP
 	.irq_set_affinity	= irq_chip_set_affinity_parent,
 #endif
-- 
1.9.1





More information about the kernel-team mailing list