Message ID | 20201126115927.4089838-1-geert@linux-m68k.org |
---|---|
State | New |
Headers | show |
Series | [PATCH/RFC] dt-bindings: pci: rcar-pci-ep: Document missing interrupts property | expand |
On Thu, Nov 26, 2020 at 3:20 PM Geert Uytterhoeven <geert@linux-m68k.org> wrote: > The R-Car PCIe controller does not use interrupts when configured > for endpoint mode, hence the bindings do not document the interrupt > property. However, all DTS files provide interrupts properties, and > thus fail to validate. > > Fix this by documenting the interrupts property. > > Fixes: 5be478f9c24fbdf8 ("dt-bindings: Another round of adding missing 'additionalProperties'") > Fixes: 4c0f80920923f103 ("dt-bindings: PCI: rcar: Add bindings for R-Car PCIe endpoint controller") > Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org> Oops, this should have been geert+renesas@glider.be. > --- > Alternatively, the interrupts properties should be removed from the > corresponding device nodes in the DTS files. Obviously they should be > retained in the device nodes representing PCIe controllers configured in > host mode, which describe the same hardware... Anyway, waiting for your comments ;-) Gr{oetje,eeting}s, Geert -- Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org In personal conversations with technical people, I call myself a hacker. But when I'm talking to journalists I just say "programmer" or something like that. -- Linus Torvalds
Hi Geert, Thank you for the patch. On Thu, Nov 26, 2020 at 2:21 PM Geert Uytterhoeven <geert@linux-m68k.org> wrote: > > The R-Car PCIe controller does not use interrupts when configured > for endpoint mode, hence the bindings do not document the interrupt > property. However, all DTS files provide interrupts properties, and > thus fail to validate. > > Fix this by documenting the interrupts property. > > Fixes: 5be478f9c24fbdf8 ("dt-bindings: Another round of adding missing 'additionalProperties'") > Fixes: 4c0f80920923f103 ("dt-bindings: PCI: rcar: Add bindings for R-Car PCIe endpoint controller") > Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org> > --- > Alternatively, the interrupts properties should be removed from the > corresponding device nodes in the DTS files. Obviously they should be > retained in the device nodes representing PCIe controllers configured in > host mode, which describe the same hardware... > --- > Documentation/devicetree/bindings/pci/rcar-pci-ep.yaml | 9 +++++++++ > 1 file changed, 9 insertions(+) > Reviewed-by: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com> Cheers, Prabhakar > diff --git a/Documentation/devicetree/bindings/pci/rcar-pci-ep.yaml b/Documentation/devicetree/bindings/pci/rcar-pci-ep.yaml > index fb97f4ea0e63682b..32a3b7665ff5473c 100644 > --- a/Documentation/devicetree/bindings/pci/rcar-pci-ep.yaml > +++ b/Documentation/devicetree/bindings/pci/rcar-pci-ep.yaml > @@ -33,6 +33,10 @@ properties: > - const: memory2 > - const: memory3 > > + interrupts: > + minItems: 3 > + maxItems: 3 > + > power-domains: > maxItems: 1 > > @@ -54,6 +58,7 @@ required: > - compatible > - reg > - reg-names > + - interrupts > - resets > - power-domains > - clocks > @@ -65,6 +70,7 @@ additionalProperties: false > examples: > - | > #include <dt-bindings/clock/r8a774c0-cpg-mssr.h> > + #include <dt-bindings/interrupt-controller/arm-gic.h> > #include <dt-bindings/power/r8a774c0-sysc.h> > > pcie0_ep: pcie-ep@fe000000 { > @@ -76,6 +82,9 @@ examples: > <0x30000000 0x8000000>, > <0x38000000 0x8000000>; > reg-names = "apb-base", "memory0", "memory1", "memory2", "memory3"; > + interrupts = <GIC_SPI 116 IRQ_TYPE_LEVEL_HIGH>, > + <GIC_SPI 117 IRQ_TYPE_LEVEL_HIGH>, > + <GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH>; > resets = <&cpg 319>; > power-domains = <&sysc R8A774C0_PD_ALWAYS_ON>; > clocks = <&cpg CPG_MOD 319>; > -- > 2.25.1 >
On Thu, Nov 26, 2020 at 12:59:27PM +0100, Geert Uytterhoeven wrote: > The R-Car PCIe controller does not use interrupts when configured > for endpoint mode, hence the bindings do not document the interrupt > property. However, all DTS files provide interrupts properties, and > thus fail to validate. > > Fix this by documenting the interrupts property. > > Fixes: 5be478f9c24fbdf8 ("dt-bindings: Another round of adding missing 'additionalProperties'") I don't think this fixes is appropriate. The commit itself wasn't broken, this binding is. > Fixes: 4c0f80920923f103 ("dt-bindings: PCI: rcar: Add bindings for R-Car PCIe endpoint controller") > Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org> > --- > Alternatively, the interrupts properties should be removed from the > corresponding device nodes in the DTS files. Obviously they should be > retained in the device nodes representing PCIe controllers configured in > host mode, which describe the same hardware... No, I think this patch is the right change. EP and host bindings should be similiar. Fix your Sob and resend please. Rob
diff --git a/Documentation/devicetree/bindings/pci/rcar-pci-ep.yaml b/Documentation/devicetree/bindings/pci/rcar-pci-ep.yaml index fb97f4ea0e63682b..32a3b7665ff5473c 100644 --- a/Documentation/devicetree/bindings/pci/rcar-pci-ep.yaml +++ b/Documentation/devicetree/bindings/pci/rcar-pci-ep.yaml @@ -33,6 +33,10 @@ properties: - const: memory2 - const: memory3 + interrupts: + minItems: 3 + maxItems: 3 + power-domains: maxItems: 1 @@ -54,6 +58,7 @@ required: - compatible - reg - reg-names + - interrupts - resets - power-domains - clocks @@ -65,6 +70,7 @@ additionalProperties: false examples: - | #include <dt-bindings/clock/r8a774c0-cpg-mssr.h> + #include <dt-bindings/interrupt-controller/arm-gic.h> #include <dt-bindings/power/r8a774c0-sysc.h> pcie0_ep: pcie-ep@fe000000 { @@ -76,6 +82,9 @@ examples: <0x30000000 0x8000000>, <0x38000000 0x8000000>; reg-names = "apb-base", "memory0", "memory1", "memory2", "memory3"; + interrupts = <GIC_SPI 116 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 117 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH>; resets = <&cpg 319>; power-domains = <&sysc R8A774C0_PD_ALWAYS_ON>; clocks = <&cpg CPG_MOD 319>;
The R-Car PCIe controller does not use interrupts when configured for endpoint mode, hence the bindings do not document the interrupt property. However, all DTS files provide interrupts properties, and thus fail to validate. Fix this by documenting the interrupts property. Fixes: 5be478f9c24fbdf8 ("dt-bindings: Another round of adding missing 'additionalProperties'") Fixes: 4c0f80920923f103 ("dt-bindings: PCI: rcar: Add bindings for R-Car PCIe endpoint controller") Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org> --- Alternatively, the interrupts properties should be removed from the corresponding device nodes in the DTS files. Obviously they should be retained in the device nodes representing PCIe controllers configured in host mode, which describe the same hardware... --- Documentation/devicetree/bindings/pci/rcar-pci-ep.yaml | 9 +++++++++ 1 file changed, 9 insertions(+)