1# SPDX-License-Identifier: GPL-2.0
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/display/brcm,bcm2835-hdmi.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Broadcom VC4 (VideoCore4) HDMI Controller
8
9maintainers:
10  - Eric Anholt <eric@anholt.net>
11
12properties:
13  compatible:
14    const: brcm,bcm2835-hdmi
15
16  reg:
17    items:
18      - description: HDMI register range
19      - description: HD register range
20
21  interrupts:
22    minItems: 2
23
24  clocks:
25    items:
26      - description: The pixel clock
27      - description: The HDMI state machine clock
28
29  clock-names:
30    items:
31      - const: pixel
32      - const: hdmi
33
34  ddc:
35    $ref: /schemas/types.yaml#/definitions/phandle
36    description: >
37      Phandle of the I2C controller used for DDC EDID probing
38
39  hpd-gpios:
40    description: >
41      The GPIO pin for the HDMI hotplug detect (if it doesn't appear
42      as an interrupt/status bit in the HDMI controller itself)
43
44  dmas:
45    maxItems: 1
46    description: >
47      Should contain one entry pointing to the DMA channel used to
48      transfer audio data.
49
50  dma-names:
51    const: audio-rx
52
53required:
54  - compatible
55  - reg
56  - interrupts
57  - clocks
58  - ddc
59
60additionalProperties: false
61
62examples:
63  - |
64    #include <dt-bindings/clock/bcm2835.h>
65    #include <dt-bindings/gpio/gpio.h>
66
67    hdmi: hdmi@7e902000 {
68        compatible = "brcm,bcm2835-hdmi";
69        reg = <0x7e902000 0x600>,
70              <0x7e808000 0x100>;
71        interrupts = <2 8>, <2 9>;
72        ddc = <&i2c2>;
73        hpd-gpios = <&gpio 46 GPIO_ACTIVE_HIGH>;
74        clocks = <&clocks BCM2835_PLLH_PIX>,
75                 <&clocks BCM2835_CLOCK_HSM>;
76        clock-names = "pixel", "hdmi";
77    };
78
79...
80