summaryrefslogtreecommitdiffstats
path: root/drivers/irqchip/irq-renesas-intc-irqpin.c
diff options
context:
space:
mode:
authorGuennadi Liakhovetski <g.liakhovetski@gmx.de>2013-06-19 07:53:09 +0200
committerSimon Horman <horms+renesas@verge.net.au>2013-06-19 21:27:31 +0900
commitc4fa4946f177ae214523586cd794ac18d34b1430 (patch)
tree161ef4e778f870b8fecbb5d90801428566da8d83 /drivers/irqchip/irq-renesas-intc-irqpin.c
parent561a1a31d232d0f2b1ce7b7480bd03aba97e818d (diff)
downloadop-kernel-dev-c4fa4946f177ae214523586cd794ac18d34b1430.zip
op-kernel-dev-c4fa4946f177ae214523586cd794ac18d34b1430.tar.gz
ARM: shmobile: irqpin: add a DT property to enable masking on parent
To disable spurious interrupts, that get triggered on certain hardware, the irqpin driver masks them on the parent interrupt controller. To specify such broken devices a .control_parent parameter can be provided in the platform data. In the DT case we need a property, to do the same. Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> Acked-by: Magnus Damm <damm@opensource.se> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
Diffstat (limited to 'drivers/irqchip/irq-renesas-intc-irqpin.c')
-rw-r--r--drivers/irqchip/irq-renesas-intc-irqpin.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/drivers/irqchip/irq-renesas-intc-irqpin.c b/drivers/irqchip/irq-renesas-intc-irqpin.c
index 4aca1b2..82cec63 100644
--- a/drivers/irqchip/irq-renesas-intc-irqpin.c
+++ b/drivers/irqchip/irq-renesas-intc-irqpin.c
@@ -348,11 +348,14 @@ static int intc_irqpin_probe(struct platform_device *pdev)
}
/* deal with driver instance configuration */
- if (pdata)
+ if (pdata) {
memcpy(&p->config, pdata, sizeof(*pdata));
- else
+ } else {
of_property_read_u32(pdev->dev.of_node, "sense-bitfield-width",
&p->config.sense_bitfield_width);
+ p->config.control_parent = of_property_read_bool(pdev->dev.of_node,
+ "control-parent");
+ }
if (!p->config.sense_bitfield_width)
p->config.sense_bitfield_width = 4; /* default to 4 bits */
OpenPOWER on IntegriCloud