diff options
Diffstat (limited to 'drivers/irqchip/irq-renesas-intc-irqpin.c')
-rw-r--r-- | drivers/irqchip/irq-renesas-intc-irqpin.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/drivers/irqchip/irq-renesas-intc-irqpin.c b/drivers/irqchip/irq-renesas-intc-irqpin.c index 5a68e5accec1..82cec63a9011 100644 --- a/drivers/irqchip/irq-renesas-intc-irqpin.c +++ b/drivers/irqchip/irq-renesas-intc-irqpin.c | |||
@@ -18,6 +18,7 @@ | |||
18 | */ | 18 | */ |
19 | 19 | ||
20 | #include <linux/init.h> | 20 | #include <linux/init.h> |
21 | #include <linux/of.h> | ||
21 | #include <linux/platform_device.h> | 22 | #include <linux/platform_device.h> |
22 | #include <linux/spinlock.h> | 23 | #include <linux/spinlock.h> |
23 | #include <linux/interrupt.h> | 24 | #include <linux/interrupt.h> |
@@ -347,8 +348,14 @@ static int intc_irqpin_probe(struct platform_device *pdev) | |||
347 | } | 348 | } |
348 | 349 | ||
349 | /* deal with driver instance configuration */ | 350 | /* deal with driver instance configuration */ |
350 | if (pdata) | 351 | if (pdata) { |
351 | memcpy(&p->config, pdata, sizeof(*pdata)); | 352 | memcpy(&p->config, pdata, sizeof(*pdata)); |
353 | } else { | ||
354 | of_property_read_u32(pdev->dev.of_node, "sense-bitfield-width", | ||
355 | &p->config.sense_bitfield_width); | ||
356 | p->config.control_parent = of_property_read_bool(pdev->dev.of_node, | ||
357 | "control-parent"); | ||
358 | } | ||
352 | if (!p->config.sense_bitfield_width) | 359 | if (!p->config.sense_bitfield_width) |
353 | p->config.sense_bitfield_width = 4; /* default to 4 bits */ | 360 | p->config.sense_bitfield_width = 4; /* default to 4 bits */ |
354 | 361 | ||