Commit 62948c62abca ("dt-bindings: display: Add BCM2712 HDMI bindings")
added the compatible strings for BCM2712, but missed out that the
number of interrupts changed.
Update the schema to include the interrupt requirements.
Fixes: 62948c62abca ("dt-bindings: display: Add BCM2712 HDMI bindings")
Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
---
.../bindings/display/brcm,bcm2711-hdmi.yaml | 81 ++++++++++++++++++----
1 file changed, 67 insertions(+), 14 deletions(-)
diff --git a/Documentation/devicetree/bindings/display/brcm,bcm2711-hdmi.yaml b/Documentation/devicetree/bindings/display/brcm,bcm2711-hdmi.yaml
index 6d11f5955b51..83c058728ef1 100644
--- a/Documentation/devicetree/bindings/display/brcm,bcm2711-hdmi.yaml
+++ b/Documentation/devicetree/bindings/display/brcm,bcm2711-hdmi.yaml
@@ -56,22 +56,12 @@ properties:
- const: cec
interrupts:
- items:
- - description: CEC TX interrupt
- - description: CEC RX interrupt
- - description: CEC stuck at low interrupt
- - description: Wake-up interrupt
- - description: Hotplug connected interrupt
- - description: Hotplug removed interrupt
+ minItems: 5
+ maxItems: 6
interrupt-names:
- items:
- - const: cec-tx
- - const: cec-rx
- - const: cec-low
- - const: wakeup
- - const: hpd-connected
- - const: hpd-removed
+ minItems: 5
+ maxItems: 6
ddc:
$ref: /schemas/types.yaml#/definitions/phandle
@@ -112,6 +102,66 @@ required:
additionalProperties: false
+allOf:
+ - if:
+ properties:
+ compatible:
+ contains:
+ enum:
+ - brcm,bcm2711-hdmi0
+ - brcm,bcm2711-hdmi1
+ then:
+ properties:
+ interrupts:
+ items:
+ - description: CEC TX interrupt
+ - description: CEC RX interrupt
+ - description: CEC stuck at low interrupt
+ - description: Wake-up interrupt
+ - description: Hotplug connected interrupt
+ - description: Hotplug removed interrupt
+ interrupt-names:
+ items:
+ - const: cec-tx
+ - const: cec-rx
+ - const: cec-low
+ - const: wakeup
+ - const: hpd-connected
+ - const: hpd-removed
+
+
+ required:
+ - interrupts
+ - interrupt-names
+
+ - if:
+ properties:
+ compatible:
+ contains:
+ enum:
+ - brcm,bcm2712-hdmi0
+ - brcm,bcm2712-hdmi1
+ then:
+ properties:
+ interrupts:
+ items:
+ - description: CEC TX interrupt
+ - description: CEC RX interrupt
+ - description: CEC stuck at low interrupt
+ - description: Hotplug connected interrupt
+ - description: Hotplug removed interrupt
+ interrupts-names:
+ items:
+ - const: cec-tx
+ - const: cec-rx
+ - const: cec-low
+ - const: hpd-connected
+ - const: hpd-removed
+
+ required:
+ - interrupts
+ - interrupt-names
+
examples:
- |
hdmi0: hdmi@7ef00700 {
@@ -136,6 +186,9 @@ examples:
"hd";
clocks = <&firmware_clocks 13>, <&firmware_clocks 14>, <&dvp 1>, <&clk_27MHz>;
clock-names = "hdmi", "bvb", "audio", "cec";
+ interrupts = <0>, <1>, <2>, <3>, <4>, <5>;
+ interrupt-names = "cec-tx", "cec-rx", "cec-low", "wakeup",
+ "hpd-connected", "hpd-removed";
resets = <&dvp 0>;
ddc = <&ddc0>;
};
--
2.34.1
On Wed, Dec 18, 2024 at 02:48:32PM +0000, Dave Stevenson wrote:
> Commit 62948c62abca ("dt-bindings: display: Add BCM2712 HDMI bindings")
> added the compatible strings for BCM2712, but missed out that the
> number of interrupts changed.
>
> Update the schema to include the interrupt requirements.
>
> Fixes: 62948c62abca ("dt-bindings: display: Add BCM2712 HDMI bindings")
> Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
> ---
> .../bindings/display/brcm,bcm2711-hdmi.yaml | 81 ++++++++++++++++++----
> 1 file changed, 67 insertions(+), 14 deletions(-)
>
> diff --git a/Documentation/devicetree/bindings/display/brcm,bcm2711-hdmi.yaml b/Documentation/devicetree/bindings/display/brcm,bcm2711-hdmi.yaml
> index 6d11f5955b51..83c058728ef1 100644
> --- a/Documentation/devicetree/bindings/display/brcm,bcm2711-hdmi.yaml
> +++ b/Documentation/devicetree/bindings/display/brcm,bcm2711-hdmi.yaml
> @@ -56,22 +56,12 @@ properties:
> - const: cec
>
> interrupts:
> - items:
> - - description: CEC TX interrupt
> - - description: CEC RX interrupt
> - - description: CEC stuck at low interrupt
> - - description: Wake-up interrupt
> - - description: Hotplug connected interrupt
> - - description: Hotplug removed interrupt
> + minItems: 5
> + maxItems: 6
>
> interrupt-names:
> - items:
> - - const: cec-tx
> - - const: cec-rx
> - - const: cec-low
> - - const: wakeup
> - - const: hpd-connected
> - - const: hpd-removed
> + minItems: 5
> + maxItems: 6
>
> ddc:
> $ref: /schemas/types.yaml#/definitions/phandle
> @@ -112,6 +102,66 @@ required:
>
> additionalProperties: false
>
> +allOf:
> + - if:
> + properties:
> + compatible:
> + contains:
> + enum:
> + - brcm,bcm2711-hdmi0
> + - brcm,bcm2711-hdmi1
> + then:
> + properties:
> + interrupts:
> + items:
> + - description: CEC TX interrupt
> + - description: CEC RX interrupt
> + - description: CEC stuck at low interrupt
> + - description: Wake-up interrupt
> + - description: Hotplug connected interrupt
> + - description: Hotplug removed interrupt
> + interrupt-names:
> + items:
> + - const: cec-tx
> + - const: cec-rx
> + - const: cec-low
> + - const: wakeup
> + - const: hpd-connected
> + - const: hpd-removed
> +
> +
Only one blank line
> + required:
> + - interrupts
> + - interrupt-names
But anyway this is unusual. Why this was added? Nothing in commit msg
explains this.
> +
> + - if:
> + properties:
> + compatible:
> + contains:
> + enum:
> + - brcm,bcm2712-hdmi0
> + - brcm,bcm2712-hdmi1
> + then:
> + properties:
> + interrupts:
> + items:
> + - description: CEC TX interrupt
> + - description: CEC RX interrupt
> + - description: CEC stuck at low interrupt
> + - description: Hotplug connected interrupt
> + - description: Hotplug removed interrupt
> + interrupts-names:
> + items:
> + - const: cec-tx
> + - const: cec-rx
> + - const: cec-low
> + - const: hpd-connected
> + - const: hpd-removed
> +
> + required:
> + - interrupts
> + - interrupt-names
Same question.
> +
> examples:
> - |
> hdmi0: hdmi@7ef00700 {
> @@ -136,6 +186,9 @@ examples:
> "hd";
> clocks = <&firmware_clocks 13>, <&firmware_clocks 14>, <&dvp 1>, <&clk_27MHz>;
> clock-names = "hdmi", "bvb", "audio", "cec";
> + interrupts = <0>, <1>, <2>, <3>, <4>, <5>;
> + interrupt-names = "cec-tx", "cec-rx", "cec-low", "wakeup",
> + "hpd-connected", "hpd-removed";
Fix alignment with opening " from earlier line (see DTS coding style).
Best regards,
Krzysztof
© 2016 - 2026 Red Hat, Inc.