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