Message ID | Pine.LNX.4.64.1305241109530.1090@axis700.grange (mailing list archive) |
---|---|
State | Superseded |
Headers | show |
On Fri, May 24, 2013 at 11:13:03AM +0200, Guennadi Liakhovetski wrote: > 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> > --- > > These two patches simply split the earlier "ARM: shmobile: irqpin: fix > handling of spurious interrupts in DT case" patch into two parts. > Otherwise no change. Magnus, could you please review this series? > > .../interrupt-controller/renesas,intc-irqpin.txt | 2 ++ > drivers/irqchip/irq-renesas-intc-irqpin.c | 7 +++++-- > 2 files changed, 7 insertions(+), 2 deletions(-) > > diff --git a/Documentation/devicetree/bindings/interrupt-controller/renesas,intc-irqpin.txt b/Documentation/devicetree/bindings/interrupt-controller/renesas,intc-irqpin.txt > index c6f09b7..152b10a 100644 > --- a/Documentation/devicetree/bindings/interrupt-controller/renesas,intc-irqpin.txt > +++ b/Documentation/devicetree/bindings/interrupt-controller/renesas,intc-irqpin.txt > @@ -11,3 +11,5 @@ Optional properties: > resource allocation properties > - sense-bitfield-width: width of a single sense bitfield in the SENSE register, > if different from the default 4 bits > +- control-parent: disable and enable interrupts on the parent interrupt > + controller, needed for some broken implementations > 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 */ > > -- > 1.7.2.5 > -- To unsubscribe from this list: send the line "unsubscribe linux-sh" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Fri, May 24, 2013 at 6:13 PM, Guennadi Liakhovetski <g.liakhovetski@gmx.de> wrote: > 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> > --- > > These two patches simply split the earlier "ARM: shmobile: irqpin: fix > handling of spurious interrupts in DT case" patch into two parts. > Otherwise no change. I'm fine with this portion of the patch series. Thanks for your help! Acked-by: Magnus Damm <damm@opensource.se> -- To unsubscribe from this list: send the line "unsubscribe linux-sh" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Tue, Jun 11, 2013 at 06:37:24PM +0900, Magnus Damm wrote: > On Fri, May 24, 2013 at 6:13 PM, Guennadi Liakhovetski > <g.liakhovetski@gmx.de> wrote: > > 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> > > --- > > > > These two patches simply split the earlier "ARM: shmobile: irqpin: fix > > handling of spurious interrupts in DT case" patch into two parts. > > Otherwise no change. > > I'm fine with this portion of the patch series. Thanks for your help! > > Acked-by: Magnus Damm <damm@opensource.se> I believe that this patch depends on "irqchip: renesas-intc-irqpin: DT binding for sense bitfield width" which Arnd has requested some modifications to. "I think you should add documentation here about how the two interrupt cells are to be interpreted, to allow people to fill the values from a data sheet or board schematic." http://www.spinics.net/lists/linux-sh/msg20202.html Please post a fresh series that: 1. Includes a fresh version of "irqchip: renesas-intc-irqpin: DT binding for sense bitfield width" with Arnd's concerns addressed. 2. Includes this patch with Magnus's Ack. Please be sure to CC Arnd on the new series. -- To unsubscribe from this list: send the line "unsubscribe linux-sh" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Wed, Jun 12, 2013 at 05:38:50PM +0900, Simon Horman wrote: > On Tue, Jun 11, 2013 at 06:37:24PM +0900, Magnus Damm wrote: > > On Fri, May 24, 2013 at 6:13 PM, Guennadi Liakhovetski > > <g.liakhovetski@gmx.de> wrote: > > > 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> > > > --- > > > > > > These two patches simply split the earlier "ARM: shmobile: irqpin: fix > > > handling of spurious interrupts in DT case" patch into two parts. > > > Otherwise no change. > > > > I'm fine with this portion of the patch series. Thanks for your help! > > > > Acked-by: Magnus Damm <damm@opensource.se> > > I believe that this patch depends on > "irqchip: renesas-intc-irqpin: DT binding for sense bitfield width" > which Arnd has requested some modifications to. > > "I think you should add documentation here about how the two interrupt > cells are to be interpreted, to allow people to fill the values from a data > sheet or board schematic." > http://www.spinics.net/lists/linux-sh/msg20202.html > > Please post a fresh series that: > > 1. Includes a fresh version of "irqchip: renesas-intc-irqpin: DT binding > for sense bitfield width" with Arnd's concerns addressed. > > 2. Includes this patch with Magnus's Ack. > > Please be sure to CC Arnd on the new series. Hi Guennadi, I see that you reposted "irqchip: renesas-intc-irqpin: DT binding for sense bitfield width", which I have queued-up, without this patch. Please rebase this patch and repost it with Magnus's Ack. -- To unsubscribe from this list: send the line "unsubscribe linux-sh" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/Documentation/devicetree/bindings/interrupt-controller/renesas,intc-irqpin.txt b/Documentation/devicetree/bindings/interrupt-controller/renesas,intc-irqpin.txt index c6f09b7..152b10a 100644 --- a/Documentation/devicetree/bindings/interrupt-controller/renesas,intc-irqpin.txt +++ b/Documentation/devicetree/bindings/interrupt-controller/renesas,intc-irqpin.txt @@ -11,3 +11,5 @@ Optional properties: resource allocation properties - sense-bitfield-width: width of a single sense bitfield in the SENSE register, if different from the default 4 bits +- control-parent: disable and enable interrupts on the parent interrupt + controller, needed for some broken implementations 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 */
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> --- These two patches simply split the earlier "ARM: shmobile: irqpin: fix handling of spurious interrupts in DT case" patch into two parts. Otherwise no change. .../interrupt-controller/renesas,intc-irqpin.txt | 2 ++ drivers/irqchip/irq-renesas-intc-irqpin.c | 7 +++++-- 2 files changed, 7 insertions(+), 2 deletions(-)