18c2ecf20Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0
28c2ecf20Sopenharmony_ci%YAML 1.2
38c2ecf20Sopenharmony_ci---
48c2ecf20Sopenharmony_ci$id: http://devicetree.org/schemas/display/brcm,bcm2711-hdmi.yaml#
58c2ecf20Sopenharmony_ci$schema: http://devicetree.org/meta-schemas/core.yaml#
68c2ecf20Sopenharmony_ci
78c2ecf20Sopenharmony_cititle: Broadcom BCM2711 HDMI Controller Device Tree Bindings
88c2ecf20Sopenharmony_ci
98c2ecf20Sopenharmony_cimaintainers:
108c2ecf20Sopenharmony_ci  - Eric Anholt <eric@anholt.net>
118c2ecf20Sopenharmony_ci
128c2ecf20Sopenharmony_ciproperties:
138c2ecf20Sopenharmony_ci  compatible:
148c2ecf20Sopenharmony_ci    enum:
158c2ecf20Sopenharmony_ci      - brcm,bcm2711-hdmi0
168c2ecf20Sopenharmony_ci      - brcm,bcm2711-hdmi1
178c2ecf20Sopenharmony_ci
188c2ecf20Sopenharmony_ci  reg:
198c2ecf20Sopenharmony_ci    items:
208c2ecf20Sopenharmony_ci      - description: HDMI controller register range
218c2ecf20Sopenharmony_ci      - description: DVP register range
228c2ecf20Sopenharmony_ci      - description: HDMI PHY register range
238c2ecf20Sopenharmony_ci      - description: Rate Manager register range
248c2ecf20Sopenharmony_ci      - description: Packet RAM register range
258c2ecf20Sopenharmony_ci      - description: Metadata RAM register range
268c2ecf20Sopenharmony_ci      - description: CSC register range
278c2ecf20Sopenharmony_ci      - description: CEC register range
288c2ecf20Sopenharmony_ci      - description: HD register range
298c2ecf20Sopenharmony_ci
308c2ecf20Sopenharmony_ci  reg-names:
318c2ecf20Sopenharmony_ci    items:
328c2ecf20Sopenharmony_ci      - const: hdmi
338c2ecf20Sopenharmony_ci      - const: dvp
348c2ecf20Sopenharmony_ci      - const: phy
358c2ecf20Sopenharmony_ci      - const: rm
368c2ecf20Sopenharmony_ci      - const: packet
378c2ecf20Sopenharmony_ci      - const: metadata
388c2ecf20Sopenharmony_ci      - const: csc
398c2ecf20Sopenharmony_ci      - const: cec
408c2ecf20Sopenharmony_ci      - const: hd
418c2ecf20Sopenharmony_ci
428c2ecf20Sopenharmony_ci  clocks:
438c2ecf20Sopenharmony_ci    items:
448c2ecf20Sopenharmony_ci      - description: The HDMI state machine clock
458c2ecf20Sopenharmony_ci      - description: The Pixel BVB clock
468c2ecf20Sopenharmony_ci      - description: The HDMI Audio parent clock
478c2ecf20Sopenharmony_ci      - description: The HDMI CEC parent clock
488c2ecf20Sopenharmony_ci
498c2ecf20Sopenharmony_ci  clock-names:
508c2ecf20Sopenharmony_ci    items:
518c2ecf20Sopenharmony_ci      - const: hdmi
528c2ecf20Sopenharmony_ci      - const: bvb
538c2ecf20Sopenharmony_ci      - const: audio
548c2ecf20Sopenharmony_ci      - const: cec
558c2ecf20Sopenharmony_ci
568c2ecf20Sopenharmony_ci  ddc:
578c2ecf20Sopenharmony_ci    allOf:
588c2ecf20Sopenharmony_ci      - $ref: /schemas/types.yaml#/definitions/phandle
598c2ecf20Sopenharmony_ci    description: >
608c2ecf20Sopenharmony_ci      Phandle of the I2C controller used for DDC EDID probing
618c2ecf20Sopenharmony_ci
628c2ecf20Sopenharmony_ci  hpd-gpios:
638c2ecf20Sopenharmony_ci    description: >
648c2ecf20Sopenharmony_ci      The GPIO pin for the HDMI hotplug detect (if it doesn't appear
658c2ecf20Sopenharmony_ci      as an interrupt/status bit in the HDMI controller itself)
668c2ecf20Sopenharmony_ci
678c2ecf20Sopenharmony_ci  dmas:
688c2ecf20Sopenharmony_ci    maxItems: 1
698c2ecf20Sopenharmony_ci    description: >
708c2ecf20Sopenharmony_ci      Should contain one entry pointing to the DMA channel used to
718c2ecf20Sopenharmony_ci      transfer audio data.
728c2ecf20Sopenharmony_ci
738c2ecf20Sopenharmony_ci  dma-names:
748c2ecf20Sopenharmony_ci    const: audio-rx
758c2ecf20Sopenharmony_ci
768c2ecf20Sopenharmony_ci  resets:
778c2ecf20Sopenharmony_ci    maxItems: 1
788c2ecf20Sopenharmony_ci
798c2ecf20Sopenharmony_ci  wifi-2.4ghz-coexistence:
808c2ecf20Sopenharmony_ci    type: boolean
818c2ecf20Sopenharmony_ci    description: >
828c2ecf20Sopenharmony_ci      Should the pixel frequencies in the WiFi frequencies range be
838c2ecf20Sopenharmony_ci      avoided?
848c2ecf20Sopenharmony_ci
858c2ecf20Sopenharmony_cirequired:
868c2ecf20Sopenharmony_ci  - compatible
878c2ecf20Sopenharmony_ci  - reg
888c2ecf20Sopenharmony_ci  - reg-names
898c2ecf20Sopenharmony_ci  - clocks
908c2ecf20Sopenharmony_ci  - resets
918c2ecf20Sopenharmony_ci  - ddc
928c2ecf20Sopenharmony_ci
938c2ecf20Sopenharmony_ciadditionalProperties: false
948c2ecf20Sopenharmony_ci
958c2ecf20Sopenharmony_ciexamples:
968c2ecf20Sopenharmony_ci  - |
978c2ecf20Sopenharmony_ci    hdmi0: hdmi@7ef00700 {
988c2ecf20Sopenharmony_ci        compatible = "brcm,bcm2711-hdmi0";
998c2ecf20Sopenharmony_ci        reg = <0x7ef00700 0x300>,
1008c2ecf20Sopenharmony_ci              <0x7ef00300 0x200>,
1018c2ecf20Sopenharmony_ci              <0x7ef00f00 0x80>,
1028c2ecf20Sopenharmony_ci              <0x7ef00f80 0x80>,
1038c2ecf20Sopenharmony_ci              <0x7ef01b00 0x200>,
1048c2ecf20Sopenharmony_ci              <0x7ef01f00 0x400>,
1058c2ecf20Sopenharmony_ci              <0x7ef00200 0x80>,
1068c2ecf20Sopenharmony_ci              <0x7ef04300 0x100>,
1078c2ecf20Sopenharmony_ci              <0x7ef20000 0x100>;
1088c2ecf20Sopenharmony_ci        reg-names = "hdmi",
1098c2ecf20Sopenharmony_ci                    "dvp",
1108c2ecf20Sopenharmony_ci                    "phy",
1118c2ecf20Sopenharmony_ci                    "rm",
1128c2ecf20Sopenharmony_ci                    "packet",
1138c2ecf20Sopenharmony_ci                    "metadata",
1148c2ecf20Sopenharmony_ci                    "csc",
1158c2ecf20Sopenharmony_ci                    "cec",
1168c2ecf20Sopenharmony_ci                    "hd";
1178c2ecf20Sopenharmony_ci        clocks = <&firmware_clocks 13>, <&firmware_clocks 14>, <&dvp 1>, <&clk_27MHz>;
1188c2ecf20Sopenharmony_ci        clock-names = "hdmi", "bvb", "audio", "cec";
1198c2ecf20Sopenharmony_ci        resets = <&dvp 0>;
1208c2ecf20Sopenharmony_ci        ddc = <&ddc0>;
1218c2ecf20Sopenharmony_ci    };
1228c2ecf20Sopenharmony_ci
1238c2ecf20Sopenharmony_ci...
124