1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2%YAML 1.2 3--- 4$id: http://devicetree.org/schemas/display/mediatek/mediatek,mt8195-hdmi.yaml# 5$schema: http://devicetree.org/meta-schemas/core.yaml# 6 7title: MediaTek MT8195 series HDMI-TX Encoder 8 9maintainers: 10 - AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com> 11 - CK Hu <ck.hu@mediatek.com> 12 13description: 14 The MediaTek HDMI-TX v2 encoder can generate HDMI format data based on 15 the HDMI Specification 2.0b. 16 17properties: 18 compatible: 19 enum: 20 - mediatek,mt8188-hdmi-tx 21 - mediatek,mt8195-hdmi-tx 22 23 reg: 24 maxItems: 1 25 26 interrupts: 27 maxItems: 1 28 29 clocks: 30 items: 31 - description: HDMI Peripheral Bus (APB) clock 32 - description: HDCP and HDMI_TOP clock 33 - description: HDCP, HDMI_TOP and HDMI Audio reference clock 34 - description: VPP HDMI Split clock 35 36 clock-names: 37 items: 38 - const: bus 39 - const: hdcp 40 - const: hdcp24m 41 - const: hdmi-split 42 43 i2c: 44 type: object 45 $ref: /schemas/display/mediatek/mediatek,mt8195-hdmi-ddc.yaml 46 unevaluatedProperties: false 47 description: HDMI DDC I2C controller 48 49 phys: 50 maxItems: 1 51 description: PHY providing clocking TMDS and pixel to controller 52 53 phy-names: 54 items: 55 - const: hdmi 56 57 power-domains: 58 maxItems: 1 59 60 '#sound-dai-cells': 61 const: 1 62 63 ports: 64 $ref: /schemas/graph.yaml#/properties/ports 65 66 properties: 67 port@0: 68 $ref: /schemas/graph.yaml#/properties/port 69 description: 70 Input port, usually connected to the output port of a DPI 71 72 port@1: 73 $ref: /schemas/graph.yaml#/properties/port 74 description: 75 Output port that must be connected either to the input port of 76 a HDMI connector node containing a ddc-i2c-bus, or to the input 77 port of an attached bridge chip, such as a SlimPort transmitter. 78 79 required: 80 - port@0 81 - port@1 82 83required: 84 - compatible 85 - reg 86 - interrupts 87 - clocks 88 - clock-names 89 - power-domains 90 - phys 91 - phy-names 92 - ports 93 94allOf: 95 - $ref: /schemas/sound/dai-common.yaml# 96 97additionalProperties: false 98 99examples: 100 - | 101 #include <dt-bindings/clock/mt8195-clk.h> 102 #include <dt-bindings/interrupt-controller/arm-gic.h> 103 #include <dt-bindings/power/mt8195-power.h> 104 105 soc { 106 #address-cells = <2>; 107 #size-cells = <2>; 108 109 hdmi@1c300000 { 110 compatible = "mediatek,mt8195-hdmi-tx"; 111 reg = <0 0x1c300000 0 0x1000>; 112 clocks = <&topckgen CLK_TOP_HDMI_APB>, 113 <&topckgen CLK_TOP_HDCP>, 114 <&topckgen CLK_TOP_HDCP_24M>, 115 <&vppsys1 CLK_VPP1_VPP_SPLIT_HDMI>; 116 clock-names = "bus", "hdcp", "hdcp24m", "hdmi-split"; 117 interrupts = <GIC_SPI 677 IRQ_TYPE_LEVEL_HIGH 0>; 118 phys = <&hdmi_phy>; 119 phy-names = "hdmi"; 120 power-domains = <&spm MT8195_POWER_DOMAIN_HDMI_TX>; 121 pinctrl-names = "default"; 122 pinctrl-0 = <&hdmi_pins>; 123 #sound-dai-cells = <1>; 124 125 hdmitx_ddc: i2c { 126 compatible = "mediatek,mt8195-hdmi-ddc"; 127 clocks = <&clk26m>; 128 }; 129 130 ports { 131 #address-cells = <1>; 132 #size-cells = <0>; 133 134 port@0 { 135 reg = <0>; 136 137 hdmi_in: endpoint { 138 remote-endpoint = <&dpi1_out>; 139 }; 140 }; 141 142 port@1 { 143 reg = <1>; 144 145 hdmi_out: endpoint { 146 remote-endpoint = <&hdmi_connector_in>; 147 }; 148 }; 149 }; 150 }; 151 }; 152