xref: /freebsd/sys/contrib/device-tree/Bindings/display/mediatek/mediatek,hdmi.yaml (revision fac71e4e09885bb2afa3d984a0c239a52e1a7418)
15956d97fSEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
25956d97fSEmmanuel Vadot%YAML 1.2
35956d97fSEmmanuel Vadot---
45956d97fSEmmanuel Vadot$id: http://devicetree.org/schemas/display/mediatek/mediatek,hdmi.yaml#
55956d97fSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
65956d97fSEmmanuel Vadot
78bab661aSEmmanuel Vadottitle: Mediatek HDMI Encoder
85956d97fSEmmanuel Vadot
95956d97fSEmmanuel Vadotmaintainers:
105956d97fSEmmanuel Vadot  - CK Hu <ck.hu@mediatek.com>
115956d97fSEmmanuel Vadot  - Jitao shi <jitao.shi@mediatek.com>
125956d97fSEmmanuel Vadot
135956d97fSEmmanuel Vadotdescription: |
145956d97fSEmmanuel Vadot  The Mediatek HDMI encoder can generate HDMI 1.4a or MHL 2.0 signals from
155956d97fSEmmanuel Vadot  its parallel input.
165956d97fSEmmanuel Vadot
175956d97fSEmmanuel Vadotproperties:
185956d97fSEmmanuel Vadot  compatible:
195956d97fSEmmanuel Vadot    enum:
205956d97fSEmmanuel Vadot      - mediatek,mt2701-hdmi
215956d97fSEmmanuel Vadot      - mediatek,mt7623-hdmi
225956d97fSEmmanuel Vadot      - mediatek,mt8167-hdmi
235956d97fSEmmanuel Vadot      - mediatek,mt8173-hdmi
245956d97fSEmmanuel Vadot
255956d97fSEmmanuel Vadot  reg:
265956d97fSEmmanuel Vadot    maxItems: 1
275956d97fSEmmanuel Vadot
285956d97fSEmmanuel Vadot  interrupts:
295956d97fSEmmanuel Vadot    maxItems: 1
305956d97fSEmmanuel Vadot
315956d97fSEmmanuel Vadot  clocks:
325956d97fSEmmanuel Vadot    items:
335956d97fSEmmanuel Vadot      - description: Pixel Clock
345956d97fSEmmanuel Vadot      - description: HDMI PLL
355956d97fSEmmanuel Vadot      - description: Bit Clock
365956d97fSEmmanuel Vadot      - description: S/PDIF Clock
375956d97fSEmmanuel Vadot
385956d97fSEmmanuel Vadot  clock-names:
395956d97fSEmmanuel Vadot    items:
405956d97fSEmmanuel Vadot      - const: pixel
415956d97fSEmmanuel Vadot      - const: pll
425956d97fSEmmanuel Vadot      - const: bclk
435956d97fSEmmanuel Vadot      - const: spdif
445956d97fSEmmanuel Vadot
455956d97fSEmmanuel Vadot  phys:
465956d97fSEmmanuel Vadot    maxItems: 1
475956d97fSEmmanuel Vadot
485956d97fSEmmanuel Vadot  phy-names:
495956d97fSEmmanuel Vadot    items:
505956d97fSEmmanuel Vadot      - const: hdmi
515956d97fSEmmanuel Vadot
525956d97fSEmmanuel Vadot  mediatek,syscon-hdmi:
53*fac71e4eSEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/phandle-array
54c9ccf3a3SEmmanuel Vadot    items:
55c9ccf3a3SEmmanuel Vadot      - items:
56c9ccf3a3SEmmanuel Vadot          - description: phandle to system configuration registers
57c9ccf3a3SEmmanuel Vadot          - description: register offset in the system configuration registers
585956d97fSEmmanuel Vadot    description: |
595956d97fSEmmanuel Vadot      phandle link and register offset to the system configuration registers.
605956d97fSEmmanuel Vadot
615956d97fSEmmanuel Vadot  ports:
625956d97fSEmmanuel Vadot    $ref: /schemas/graph.yaml#/properties/ports
635956d97fSEmmanuel Vadot
645956d97fSEmmanuel Vadot    properties:
655956d97fSEmmanuel Vadot      port@0:
665956d97fSEmmanuel Vadot        $ref: /schemas/graph.yaml#/properties/port
675956d97fSEmmanuel Vadot        description: |
685956d97fSEmmanuel Vadot          Input port node. This port should be connected to a DPI output port.
695956d97fSEmmanuel Vadot
705956d97fSEmmanuel Vadot      port@1:
715956d97fSEmmanuel Vadot        $ref: /schemas/graph.yaml#/properties/port
725956d97fSEmmanuel Vadot        description: |
735956d97fSEmmanuel Vadot          Output port node. This port should be connected to the input port of a connector
745956d97fSEmmanuel Vadot          node that contains a ddc-i2c-bus property, or to the  input port of an attached
755956d97fSEmmanuel Vadot          bridge chip, such as a SlimPort transmitter.
765956d97fSEmmanuel Vadot
775956d97fSEmmanuel Vadot    required:
785956d97fSEmmanuel Vadot      - port@0
795956d97fSEmmanuel Vadot      - port@1
805956d97fSEmmanuel Vadot
815956d97fSEmmanuel Vadotrequired:
825956d97fSEmmanuel Vadot  - compatible
835956d97fSEmmanuel Vadot  - reg
845956d97fSEmmanuel Vadot  - interrupts
855956d97fSEmmanuel Vadot  - clocks
865956d97fSEmmanuel Vadot  - clock-names
875956d97fSEmmanuel Vadot  - phys
885956d97fSEmmanuel Vadot  - phy-names
895956d97fSEmmanuel Vadot  - mediatek,syscon-hdmi
905956d97fSEmmanuel Vadot  - ports
915956d97fSEmmanuel Vadot
925956d97fSEmmanuel VadotadditionalProperties: false
935956d97fSEmmanuel Vadot
945956d97fSEmmanuel Vadotexamples:
955956d97fSEmmanuel Vadot  - |
965956d97fSEmmanuel Vadot    #include <dt-bindings/clock/mt8173-clk.h>
975956d97fSEmmanuel Vadot    #include <dt-bindings/interrupt-controller/arm-gic.h>
985956d97fSEmmanuel Vadot    #include <dt-bindings/interrupt-controller/irq.h>
995956d97fSEmmanuel Vadot    hdmi0: hdmi@14025000 {
1005956d97fSEmmanuel Vadot        compatible = "mediatek,mt8173-hdmi";
1015956d97fSEmmanuel Vadot        reg = <0x14025000 0x400>;
1025956d97fSEmmanuel Vadot        interrupts = <GIC_SPI 206 IRQ_TYPE_LEVEL_LOW>;
1035956d97fSEmmanuel Vadot        clocks = <&mmsys CLK_MM_HDMI_PIXEL>,
1045956d97fSEmmanuel Vadot             <&mmsys CLK_MM_HDMI_PLLCK>,
1055956d97fSEmmanuel Vadot             <&mmsys CLK_MM_HDMI_AUDIO>,
1065956d97fSEmmanuel Vadot             <&mmsys CLK_MM_HDMI_SPDIF>;
1075956d97fSEmmanuel Vadot        clock-names = "pixel", "pll", "bclk", "spdif";
1085956d97fSEmmanuel Vadot        pinctrl-names = "default";
1095956d97fSEmmanuel Vadot        pinctrl-0 = <&hdmi_pin>;
1105956d97fSEmmanuel Vadot        phys = <&hdmi_phy>;
1115956d97fSEmmanuel Vadot        phy-names = "hdmi";
1125956d97fSEmmanuel Vadot        mediatek,syscon-hdmi = <&mmsys 0x900>;
1135956d97fSEmmanuel Vadot
1145956d97fSEmmanuel Vadot        ports {
1155956d97fSEmmanuel Vadot          #address-cells = <1>;
1165956d97fSEmmanuel Vadot          #size-cells = <0>;
1175956d97fSEmmanuel Vadot
1185956d97fSEmmanuel Vadot          port@0 {
1195956d97fSEmmanuel Vadot            reg = <0>;
1205956d97fSEmmanuel Vadot
1215956d97fSEmmanuel Vadot            hdmi0_in: endpoint {
1225956d97fSEmmanuel Vadot              remote-endpoint = <&dpi0_out>;
1235956d97fSEmmanuel Vadot            };
1245956d97fSEmmanuel Vadot          };
1255956d97fSEmmanuel Vadot
1265956d97fSEmmanuel Vadot          port@1 {
1275956d97fSEmmanuel Vadot            reg = <1>;
1285956d97fSEmmanuel Vadot
1295956d97fSEmmanuel Vadot            hdmi0_out: endpoint {
1305956d97fSEmmanuel Vadot              remote-endpoint = <&hdmi_con_in>;
1315956d97fSEmmanuel Vadot            };
1325956d97fSEmmanuel Vadot          };
1335956d97fSEmmanuel Vadot        };
1345956d97fSEmmanuel Vadot    };
1355956d97fSEmmanuel Vadot
1365956d97fSEmmanuel Vadot...
137