2022-03-17 18:00:48

by Krzysztof Kozlowski

[permalink] [raw]
Subject: [PATCH 00/18] dt-bindings: irqchip: include generic schema

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

.../actions,owl-sirq.yaml | 5 +-
.../interrupt-controller/fsl,intmux.yaml | 5 +-
.../interrupt-controller/fsl,irqsteer.yaml | 5 +-
.../interrupt-controller/ingenic,intc.yaml | 5 +-
.../intel,ixp4xx-interrupt.yaml | 5 +-
.../kontron,sl28cpld-intc.yaml | 5 +-
.../interrupt-controller/loongson,htvec.yaml | 5 +-
.../loongson,pch-msi.yaml | 5 +-
.../loongson,pch-pic.yaml | 5 +-
.../interrupt-controller/microchip,eic.yaml | 5 +-
.../interrupt-controller/mrvl,intc.yaml | 3 +-
.../interrupt-controller/mstar,mst-intc.yaml | 5 +-
.../interrupt-controller/mti,gic.yaml | 5 +-
.../nuvoton,wpcm450-aic.yaml | 7 ++-
.../realtek,rtl-intc.yaml | 5 +-
.../renesas,intc-irqpin.yaml | 28 +++++----
.../interrupt-controller/renesas,irqc.yaml | 5 +-
.../sifive,plic-1.0.0.yaml | 5 +-
.../interrupt-controller/ti,pruss-intc.yaml | 5 +-
.../interrupt-controller/ti,sci-inta.yaml | 1 +
.../interrupt-controller/ti,sci-intr.yaml | 3 +-
arch/arm/boot/dts/nspire-classic.dtsi | 10 ++--
arch/arm/boot/dts/nspire-cx.dts | 4 +-
arch/arm/boot/dts/nspire.dtsi | 60 +++++++++----------
arch/arm/boot/dts/ox820.dtsi | 2 +-
arch/arm/boot/dts/socfpga.dtsi | 2 +-
arch/arm/boot/dts/socfpga_arria10.dtsi | 2 +-
27 files changed, 129 insertions(+), 73 deletions(-)

--
2.32.0


2022-03-17 18:09:44

by Krzysztof Kozlowski

[permalink] [raw]
Subject: [PATCH 06/18] dt-bindings: irqchip: ingenic: include generic schema

Include generic interrupt-controller.yaml schema, which enforces node
naming and other generic properties.

Signed-off-by: Krzysztof Kozlowski <[email protected]>
---
.../bindings/interrupt-controller/ingenic,intc.yaml | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/Documentation/devicetree/bindings/interrupt-controller/ingenic,intc.yaml b/Documentation/devicetree/bindings/interrupt-controller/ingenic,intc.yaml
index 0358a7739c8e..74597a98f86c 100644
--- a/Documentation/devicetree/bindings/interrupt-controller/ingenic,intc.yaml
+++ b/Documentation/devicetree/bindings/interrupt-controller/ingenic,intc.yaml
@@ -9,6 +9,9 @@ title: Ingenic SoCs interrupt controller devicetree bindings
maintainers:
- Paul Cercueil <[email protected]>

+allOf:
+ - $ref: /schemas/interrupt-controller.yaml#
+
properties:
$nodename:
pattern: "^interrupt-controller@[0-9a-f]+$"
@@ -50,7 +53,7 @@ required:
- "#interrupt-cells"
- interrupt-controller

-additionalProperties: false
+unevaluatedProperties: false

examples:
- |
--
2.32.0

2022-03-17 18:12:22

by Krzysztof Kozlowski

[permalink] [raw]
Subject: [PATCH 17/18] dt-bindings: irqchip: sifive: include generic schema

Include generic interrupt-controller.yaml schema, which enforces node
naming and other generic properties.

Signed-off-by: Krzysztof Kozlowski <[email protected]>
---
.../bindings/interrupt-controller/sifive,plic-1.0.0.yaml | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/Documentation/devicetree/bindings/interrupt-controller/sifive,plic-1.0.0.yaml b/Documentation/devicetree/bindings/interrupt-controller/sifive,plic-1.0.0.yaml
index 27092c6a86c4..e3c08cff89d2 100644
--- a/Documentation/devicetree/bindings/interrupt-controller/sifive,plic-1.0.0.yaml
+++ b/Documentation/devicetree/bindings/interrupt-controller/sifive,plic-1.0.0.yaml
@@ -44,6 +44,9 @@ maintainers:
- Paul Walmsley <[email protected]>
- Palmer Dabbelt <[email protected]>

+allOf:
+ - $ref: /schemas/interrupt-controller.yaml#
+
properties:
compatible:
oneOf:
@@ -91,7 +94,7 @@ required:
- interrupts-extended
- riscv,ndev

-additionalProperties: false
+unevaluatedProperties: false

examples:
- |
--
2.32.0

2022-03-17 19:40:44

by Krzysztof Kozlowski

[permalink] [raw]
Subject: [PATCH 05/18] dt-bindings: irqchip: fsl: include generic schema

Include generic interrupt-controller.yaml schema, which enforces node
naming and other generic properties.

Signed-off-by: Krzysztof Kozlowski <[email protected]>
---
.../devicetree/bindings/interrupt-controller/fsl,intmux.yaml | 5 ++++-
.../bindings/interrupt-controller/fsl,irqsteer.yaml | 5 ++++-
2 files changed, 8 insertions(+), 2 deletions(-)

diff --git a/Documentation/devicetree/bindings/interrupt-controller/fsl,intmux.yaml b/Documentation/devicetree/bindings/interrupt-controller/fsl,intmux.yaml
index 1d6e0f64a807..5ead6b7dcb42 100644
--- a/Documentation/devicetree/bindings/interrupt-controller/fsl,intmux.yaml
+++ b/Documentation/devicetree/bindings/interrupt-controller/fsl,intmux.yaml
@@ -9,6 +9,9 @@ title: Freescale INTMUX interrupt multiplexer
maintainers:
- Joakim Zhang <[email protected]>

+allOf:
+ - $ref: /schemas/interrupt-controller.yaml#
+
properties:
compatible:
const: fsl,imx-intmux
@@ -45,7 +48,7 @@ required:
- clocks
- clock-names

-additionalProperties: false
+unevaluatedProperties: false

examples:
- |
diff --git a/Documentation/devicetree/bindings/interrupt-controller/fsl,irqsteer.yaml b/Documentation/devicetree/bindings/interrupt-controller/fsl,irqsteer.yaml
index bcb5e20fa9ca..4b5080f754ea 100644
--- a/Documentation/devicetree/bindings/interrupt-controller/fsl,irqsteer.yaml
+++ b/Documentation/devicetree/bindings/interrupt-controller/fsl,irqsteer.yaml
@@ -9,6 +9,9 @@ title: Freescale IRQSTEER Interrupt Multiplexer
maintainers:
- Lucas Stach <[email protected]>

+allOf:
+ - $ref: /schemas/interrupt-controller.yaml#
+
properties:
compatible:
oneOf:
@@ -70,7 +73,7 @@ required:
- fsl,channel
- fsl,num-irqs

-additionalProperties: false
+unevaluatedProperties: false

examples:
- |
--
2.32.0

2022-03-17 20:21:33

by Paul Cercueil

[permalink] [raw]
Subject: Re: [PATCH 06/18] dt-bindings: irqchip: ingenic: include generic schema

Hi,

Le jeu., mars 17 2022 at 12:56:53 +0100, Krzysztof Kozlowski
<[email protected]> a ?crit :
> Include generic interrupt-controller.yaml schema, which enforces node
> naming and other generic properties.
>
> Signed-off-by: Krzysztof Kozlowski <[email protected]>

Reviewed-by: Paul Cercueil <[email protected]>

Cheers,
-Paul

> ---
> .../bindings/interrupt-controller/ingenic,intc.yaml | 5
> ++++-
> 1 file changed, 4 insertions(+), 1 deletion(-)
>
> diff --git
> a/Documentation/devicetree/bindings/interrupt-controller/ingenic,intc.yaml
> b/Documentation/devicetree/bindings/interrupt-controller/ingenic,intc.yaml
> index 0358a7739c8e..74597a98f86c 100644
> ---
> a/Documentation/devicetree/bindings/interrupt-controller/ingenic,intc.yaml
> +++
> b/Documentation/devicetree/bindings/interrupt-controller/ingenic,intc.yaml
> @@ -9,6 +9,9 @@ title: Ingenic SoCs interrupt controller devicetree
> bindings
> maintainers:
> - Paul Cercueil <[email protected]>
>
> +allOf:
> + - $ref: /schemas/interrupt-controller.yaml#
> +
> properties:
> $nodename:
> pattern: "^interrupt-controller@[0-9a-f]+$"
> @@ -50,7 +53,7 @@ required:
> - "#interrupt-cells"
> - interrupt-controller
>
> -additionalProperties: false
> +unevaluatedProperties: false
>
> examples:
> - |
> --
> 2.32.0
>


2022-03-17 20:31:46

by Palmer Dabbelt

[permalink] [raw]
Subject: Re: [PATCH 17/18] dt-bindings: irqchip: sifive: include generic schema

On Thu, 17 Mar 2022 04:57:04 PDT (-0700), [email protected] wrote:
> Include generic interrupt-controller.yaml schema, which enforces node
> naming and other generic properties.
>
> Signed-off-by: Krzysztof Kozlowski <[email protected]>
> ---
> .../bindings/interrupt-controller/sifive,plic-1.0.0.yaml | 5 ++++-
> 1 file changed, 4 insertions(+), 1 deletion(-)
>
> diff --git a/Documentation/devicetree/bindings/interrupt-controller/sifive,plic-1.0.0.yaml b/Documentation/devicetree/bindings/interrupt-controller/sifive,plic-1.0.0.yaml
> index 27092c6a86c4..e3c08cff89d2 100644
> --- a/Documentation/devicetree/bindings/interrupt-controller/sifive,plic-1.0.0.yaml
> +++ b/Documentation/devicetree/bindings/interrupt-controller/sifive,plic-1.0.0.yaml
> @@ -44,6 +44,9 @@ maintainers:
> - Paul Walmsley <[email protected]>
> - Palmer Dabbelt <[email protected]>
>
> +allOf:
> + - $ref: /schemas/interrupt-controller.yaml#
> +
> properties:
> compatible:
> oneOf:
> @@ -91,7 +94,7 @@ required:
> - interrupts-extended
> - riscv,ndev
>
> -additionalProperties: false
> +unevaluatedProperties: false
>
> examples:
> - |

Acked-by: Palmer Dabbelt <[email protected]>

I'm assuming this is going in along with the others.

Thanks!

2022-03-17 20:41:45

by Krzysztof Kozlowski

[permalink] [raw]
Subject: [PATCH 11/18] dt-bindings: irqchip: mrvl,intc: include generic schema

Include generic interrupt-controller.yaml schema, which enforces node
naming and other generic properties.

Signed-off-by: Krzysztof Kozlowski <[email protected]>
---
.../devicetree/bindings/interrupt-controller/mrvl,intc.yaml | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/Documentation/devicetree/bindings/interrupt-controller/mrvl,intc.yaml b/Documentation/devicetree/bindings/interrupt-controller/mrvl,intc.yaml
index 372ccbfae771..75d49c9e956f 100644
--- a/Documentation/devicetree/bindings/interrupt-controller/mrvl,intc.yaml
+++ b/Documentation/devicetree/bindings/interrupt-controller/mrvl,intc.yaml
@@ -13,6 +13,7 @@ maintainers:
- Rob Herring <[email protected]>

allOf:
+ - $ref: /schemas/interrupt-controller.yaml#
- if:
properties:
compatible:
@@ -101,7 +102,7 @@ required:
- reg
- interrupt-controller

-additionalProperties: false
+unevaluatedProperties: false

examples:
- |
--
2.32.0

2022-03-17 20:43:29

by Krzysztof Kozlowski

[permalink] [raw]
Subject: [PATCH 04/18] dt-bindings: irqchip: actions,owl-sirq: include generic schema

Include generic interrupt-controller.yaml schema, which enforces node
naming and other generic properties.

Signed-off-by: Krzysztof Kozlowski <[email protected]>
---
.../bindings/interrupt-controller/actions,owl-sirq.yaml | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/Documentation/devicetree/bindings/interrupt-controller/actions,owl-sirq.yaml b/Documentation/devicetree/bindings/interrupt-controller/actions,owl-sirq.yaml
index 5da333c644c9..c058810cf475 100644
--- a/Documentation/devicetree/bindings/interrupt-controller/actions,owl-sirq.yaml
+++ b/Documentation/devicetree/bindings/interrupt-controller/actions,owl-sirq.yaml
@@ -14,6 +14,9 @@ description: |
This interrupt controller is found in the Actions Semi Owl SoCs (S500, S700
and S900) and provides support for handling up to 3 external interrupt lines.

+allOf:
+ - $ref: /schemas/interrupt-controller.yaml#
+
properties:
compatible:
enum:
@@ -46,7 +49,7 @@ required:
- '#interrupt-cells'
- 'interrupts'

-additionalProperties: false
+unevaluatedProperties: false

examples:
- |
--
2.32.0

2022-03-18 02:24:46

by Joakim Zhang

[permalink] [raw]
Subject: RE: [PATCH 05/18] dt-bindings: irqchip: fsl: include generic schema


> -----Original Message-----
> From: Krzysztof Kozlowski <[email protected]>
> Sent: 2022年3月17日 19:57
> To: Thomas Gleixner <[email protected]>; Marc Zyngier <[email protected]>;
> Rob Herring <[email protected]>; Krzysztof Kozlowski
> <[email protected]>; Andreas Färber <[email protected]>; Manivannan
> Sadhasivam <[email protected]>; Linus Walleij <[email protected]>; Imre
> Kaloz <[email protected]>; Krzysztof Halasa <[email protected]>; Michael
> Walle <[email protected]>; Mark-PK Tsai <[email protected]>;
> Daniel Palmer <[email protected]>; Jonathan Neuschäfer
> <[email protected]>; Palmer Dabbelt <[email protected]>; Paul
> Walmsley <[email protected]>; Nishanth Menon <[email protected]>;
> Tero Kristo <[email protected]>; Santosh Shilimkar <[email protected]>;
> Neil Armstrong <[email protected]>; Dinh Nguyen
> <[email protected]>; Cristian Ciocaltea <[email protected]>;
> Joakim Zhang <[email protected]>; Lucas Stach
> <[email protected]>; Paul Cercueil <[email protected]>; Jiaxun
> Yang <[email protected]>; Claudiu Beznea
> <[email protected]>; Jason Cooper <[email protected]>;
> Paul Burton <[email protected]>; Thomas Bogendoerfer
> <[email protected]>; Birger Koblitz <[email protected]>; Bert
> Vermeulen <[email protected]>; John Crispin <[email protected]>; Geert
> Uytterhoeven <[email protected]>; Sagar Kadam
> <[email protected]>; Suman Anna <[email protected]>; Lokesh Vutla
> <[email protected]>; [email protected];
> [email protected]; [email protected];
> [email protected]; [email protected];
> [email protected]; [email protected]
> Cc: Krzysztof Kozlowski <[email protected]>
> Subject: [PATCH 05/18] dt-bindings: irqchip: fsl: include generic schema
>
> Include generic interrupt-controller.yaml schema, which enforces node
> naming and other generic properties.
>
> Signed-off-by: Krzysztof Kozlowski <[email protected]>
> ---

Reviewed-by: Joakim Zhang <[email protected]>

Best Regards,
Joakim Zhang
> .../devicetree/bindings/interrupt-controller/fsl,intmux.yaml | 5 ++++-
> .../bindings/interrupt-controller/fsl,irqsteer.yaml | 5 ++++-
> 2 files changed, 8 insertions(+), 2 deletions(-)
>
> diff --git
> a/Documentation/devicetree/bindings/interrupt-controller/fsl,intmux.yaml
> b/Documentation/devicetree/bindings/interrupt-controller/fsl,intmux.yaml
> index 1d6e0f64a807..5ead6b7dcb42 100644
> ---
> a/Documentation/devicetree/bindings/interrupt-controller/fsl,intmux.yaml
> +++ b/Documentation/devicetree/bindings/interrupt-controller/fsl,intmux.
> +++ yaml
> @@ -9,6 +9,9 @@ title: Freescale INTMUX interrupt multiplexer
> maintainers:
> - Joakim Zhang <[email protected]>
>
> +allOf:
> + - $ref: /schemas/interrupt-controller.yaml#
> +
> properties:
> compatible:
> const: fsl,imx-intmux
> @@ -45,7 +48,7 @@ required:
> - clocks
> - clock-names
>
> -additionalProperties: false
> +unevaluatedProperties: false
>
> examples:
> - |
> diff --git
> a/Documentation/devicetree/bindings/interrupt-controller/fsl,irqsteer.yaml
> b/Documentation/devicetree/bindings/interrupt-controller/fsl,irqsteer.yaml
> index bcb5e20fa9ca..4b5080f754ea 100644
> ---
> a/Documentation/devicetree/bindings/interrupt-controller/fsl,irqsteer.yaml
> +++ b/Documentation/devicetree/bindings/interrupt-controller/fsl,irqstee
> +++ r.yaml
> @@ -9,6 +9,9 @@ title: Freescale IRQSTEER Interrupt Multiplexer
> maintainers:
> - Lucas Stach <[email protected]>
>
> +allOf:
> + - $ref: /schemas/interrupt-controller.yaml#
> +
> properties:
> compatible:
> oneOf:
> @@ -70,7 +73,7 @@ required:
> - fsl,channel
> - fsl,num-irqs
>
> -additionalProperties: false
> +unevaluatedProperties: false
>
> examples:
> - |
> --
> 2.32.0

2022-03-18 08:05:52

by Cristian Ciocaltea

[permalink] [raw]
Subject: Re: [PATCH 04/18] dt-bindings: irqchip: actions,owl-sirq: include generic schema

On Thu, Mar 17, 2022 at 12:56:51PM +0100, Krzysztof Kozlowski wrote:
> Include generic interrupt-controller.yaml schema, which enforces node
> naming and other generic properties.
>
> Signed-off-by: Krzysztof Kozlowski <[email protected]>

Reviewed-by: Cristian Ciocaltea <[email protected]>

Thanks.

> ---
> .../bindings/interrupt-controller/actions,owl-sirq.yaml | 5 ++++-
> 1 file changed, 4 insertions(+), 1 deletion(-)
>
> diff --git a/Documentation/devicetree/bindings/interrupt-controller/actions,owl-sirq.yaml b/Documentation/devicetree/bindings/interrupt-controller/actions,owl-sirq.yaml
> index 5da333c644c9..c058810cf475 100644
> --- a/Documentation/devicetree/bindings/interrupt-controller/actions,owl-sirq.yaml
> +++ b/Documentation/devicetree/bindings/interrupt-controller/actions,owl-sirq.yaml
> @@ -14,6 +14,9 @@ description: |
> This interrupt controller is found in the Actions Semi Owl SoCs (S500, S700
> and S900) and provides support for handling up to 3 external interrupt lines.
>
> +allOf:
> + - $ref: /schemas/interrupt-controller.yaml#
> +
> properties:
> compatible:
> enum:
> @@ -46,7 +49,7 @@ required:
> - '#interrupt-cells'
> - 'interrupts'
>
> -additionalProperties: false
> +unevaluatedProperties: false
>
> examples:
> - |
> --
> 2.32.0
>

2022-03-21 22:18:41

by Rob Herring (Arm)

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

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

2022-03-23 03:25:57

by Krzysztof Kozlowski

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

On 21/03/2022 19:53, Rob Herring wrote:
> 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.

Indeed there were cases of MSI and interrupt controller.

>
> 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.

Yes, that's a side effect. Maybe my series should be abandoned.

Best regards,
Krzysztof