[PATCH 2/2] dt-bindings: serial: renesas,scif: Validate 'interrupts' and 'interrupt-names'

From: Prabhakar
Date: Wed Mar 06 2024 - 18:12:24 EST


From: Lad Prabhakar <prabhakar.mahadev-lad.rj@xxxxxxxxxxxxxx>

This commit adds support to validate the 'interrupts' and 'interrupt-names'
properties for every supported SoC. This ensures proper handling and
configuration of interrupt-related properties across supported platforms.

Signed-off-by: Lad Prabhakar <prabhakar.mahadev-lad.rj@xxxxxxxxxxxxxx>
---
.../bindings/serial/renesas,scif.yaml | 117 +++++++++++++-----
1 file changed, 85 insertions(+), 32 deletions(-)

diff --git a/Documentation/devicetree/bindings/serial/renesas,scif.yaml b/Documentation/devicetree/bindings/serial/renesas,scif.yaml
index af72c3420453..1a5f4568ae4f 100644
--- a/Documentation/devicetree/bindings/serial/renesas,scif.yaml
+++ b/Documentation/devicetree/bindings/serial/renesas,scif.yaml
@@ -82,38 +82,6 @@ properties:
reg:
maxItems: 1

- interrupts:
- oneOf:
- - items:
- - description: A combined interrupt
- - items:
- - description: Error interrupt
- - description: Receive buffer full interrupt
- - description: Transmit buffer empty interrupt
- - description: Break interrupt
- - items:
- - description: Error interrupt
- - description: Receive buffer full interrupt
- - description: Transmit buffer empty interrupt
- - description: Break interrupt
- - description: Data Ready interrupt
- - description: Transmit End interrupt
-
- interrupt-names:
- oneOf:
- - items:
- - const: eri
- - const: rxi
- - const: txi
- - const: bri
- - items:
- - const: eri
- - const: rxi
- - const: txi
- - const: bri
- - const: dri
- - const: tei
-
clocks:
minItems: 1
maxItems: 4
@@ -173,6 +141,91 @@ allOf:
required:
- resets

+ - if:
+ properties:
+ compatible:
+ contains:
+ enum:
+ - renesas,scif-r8a7742
+ - renesas,scif-r8a7743
+ - renesas,scif-r8a7744
+ - renesas,scif-r8a7745
+ - renesas,scif-r8a77470
+ - renesas,scif-r8a774a1
+ - renesas,scif-r8a774b1
+ - renesas,scif-r8a774c0
+ - renesas,scif-r8a774e1
+ - renesas,scif-r8a7778
+ - renesas,scif-r8a7779
+ - renesas,scif-r8a7790
+ - renesas,scif-r8a7791
+ - renesas,scif-r8a7792
+ - renesas,scif-r8a7793
+ - renesas,scif-r8a7794
+ - renesas,scif-r8a7795
+ - renesas,scif-r8a7796
+ - renesas,scif-r8a77961
+ - renesas,scif-r8a77965
+ - renesas,scif-r8a77970
+ - renesas,scif-r8a77980
+ - renesas,scif-r8a77990
+ - renesas,scif-r8a77995
+ - renesas,scif-r8a779a0
+ - renesas,scif-r8a779f0
+ - renesas,scif-r8a779g0
+ then:
+ properties:
+ interrupts:
+ items:
+ - description: A combined interrupt
+
+ - if:
+ properties:
+ compatible:
+ contains:
+ enum:
+ - renesas,scif-r7s72100
+ then:
+ properties:
+ interrupts:
+ items:
+ - description: Error interrupt
+ - description: Receive buffer full interrupt
+ - description: Transmit buffer empty interrupt
+ - description: Break interrupt
+ interrupt-names:
+ items:
+ - const: eri
+ - const: rxi
+ - const: txi
+ - const: bri
+
+ - if:
+ properties:
+ compatible:
+ contains:
+ enum:
+ - renesas,scif-r7s9210
+ - renesas,scif-r9a07g044
+ then:
+ properties:
+ interrupts:
+ items:
+ - description: Error interrupt
+ - description: Receive buffer full interrupt
+ - description: Transmit buffer empty interrupt
+ - description: Break interrupt
+ - description: Data Ready interrupt
+ - description: Transmit End interrupt
+ interrupt-names:
+ items:
+ - const: eri
+ - const: rxi
+ - const: txi
+ - const: bri
+ - const: dri
+ - const: tei
+
unevaluatedProperties: false

examples:
--
2.34.1