Re: [PATCH v5] arm: pxa: support ICP DAS LP-8x4x FPGA irq

Sergei Ianovich
2015-12-19T07:03:26Z

On Fri, 2015-12-18 at 21:58 -0600, Rob Herring wrote:
> On Tue, Dec 15, 2015 at 10:26:21PM +0300, Sergei Ianovich wrote:
> > +Example:
> > +
> > + fpga: fpga@17000006 {
>
> Nothing else in the fpga? In any case, this node should be named
> interrupt-controller@17000006.
>
> > + compatible = "icpdas,irq-lp8x4x";
>
> As pointed out in the uart binding, don't use wildcards here.
>
> > + reg = <0x17000006 0x16>;
> > + interrupt-parent = <&gpio>;
> > + interrupts = <3 IRQ_TYPE_EDGE_RISING>;
> > + #interrupt-cells = <1>;
> > + interrupt-controller;
> > + status = "okay";
> > + };
> > +
> > + uart@17009050 {
> > + compatible = "icpdas,uart-lp8x4x";
> > + reg = <0x17009050 0x10
> > +        0x17009030 0x02>;
> > + interrupt-parent = <&fpga>;
> > + interrupts = <13>;
> > + status = "okay";
> > + };

That was just an example. The actual binding in LP-8x4x is bigger:
fpga@5 {
compatible = "simple-bus";
#address-cells = <1>;
#size-cells = <1>;
ranges = <0 5 0x3000000 0x10000>;
interrupt-parent = <&fpgairq>;

rtc@901c {
compatible = "dallas,rtc-ds1302";
reg = <0x901c 0x1>;
status = "okay";
};

sram@a000 {
compatible = "icpdas,sram-lp8x4x";
reg = <0xa000 0x1000
0x901e 0x1>;

partitions {
#address-cells = <1>;
#size-cells = <1>;
};
};

fpgairq: irq@9006 {
compatible = "icpdas,irq-lp8x4x";
reg = <0x9006 0x16>;
interrupt-parent = <&gpio>;
interrupts = <3 IRQ_TYPE_EDGE_FALLING>;
#interrupt-cells = <1>;
interrupt-controller;
status = "okay";
};

uart@9050 {
compatible = "icpdas,uart-lp8x4x";
reg = <0x9050 0x10
0x9030 0x02>;
interrupts = <13>;
status = "okay";
};

uart@9060 {
compatible = "icpdas,uart-lp8x4x";
reg = <0x9060 0x10
0x9032 0x02>;
interrupts = <14>;
status = "okay";
};

uart@9070 {
compatible = "icpdas,uart-lp8x4x";
reg = <0x9070 0x10
0x9034 0x02>;
interrupts = <15>;
status = "okay";
};

backplane {
compatible = "icpdas,backplane-lp8x4x";
reg = <0x0 0x2
0x1000 0x10
0x2000 0x10
0x3000 0x10
0x4000 0x10
0x5000 0x10
0x6000 0x10
0x7000 0x10
0x8000 0x10
0x9002 0x2
0x9004 0x2
0x9046 0x2>;
eeprom-gpios = <&gpio 4 0>;
};
};