Re: [PATCH 00/18] dt-bindings: irqchip: include generic schema

From: Rob Herring
Date: Mon Mar 21 2022 - 14:53:40 EST


On Thu, Mar 17, 2022 at 12:55:24PM +0100, Krzysztof Kozlowski wrote:
> Hi,
>
> The DTS patches can be picked up independently.
>
> Best regards,
> Krzysztof
>
> Krzysztof Kozlowski (18):
> ARM: dts: nspire: use lower case hex addresses in node unit addresses
> ARM: dts: ox820: align interrupt controller node name with dtschema
> ARM: dts: socfpga: align interrupt controller node name with dtschema
> dt-bindings: irqchip: actions,owl-sirq: include generic schema
> dt-bindings: irqchip: fsl: include generic schema
> dt-bindings: irqchip: ingenic: include generic schema
> dt-bindings: irqchip: intel,ixp4xx: include generic schema
> dt-bindings: irqchip: kontron,sl28cpld: include generic schema
> dt-bindings: irqchip: loongson: include generic schema
> dt-bindings: irqchip: microchip,eic: include generic schema
> dt-bindings: irqchip: mrvl,intc: include generic schema
> dt-bindings: irqchip: mstar,mst-intc: include generic schema
> dt-bindings: irqchip: mti,gic: include generic schema
> dt-bindings: irqchip: nuvoton,wpcm450-aic: include generic schema
> dt-bindings: irqchip: realtek,rtl-intc: include generic schema
> dt-bindings: irqchip: renesas: include generic schema
> dt-bindings: irqchip: sifive: include generic schema
> dt-bindings: irqchip: ti: include generic schema

I'm somewhat on the fence about these. Originally only devices with a
bus or child nodes included a common schema. For 'simple' providers
with mainly a '#<provider>-cells' property, we had to set the
constraints on the number of cells anyways, so referencing another
schema doesn't save anything. It is nice to declare the 'class' of the
device though.

It makes the schema be applied twice (if the node name matches). That's
not all bad because it finds cases of wrong node name. However,
sometimes we have devices which are multiple providers and can't set the
node name. So those can't reference interrupt-controller.yaml.

It also means that 'interrupt-map' for example is now valid. That could
be fixed by splitting 'interrupt-map' related properties to its own
schema.

Rob