1# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 2%YAML 1.2 3--- 4$id: http://devicetree.org/schemas/display/bridge/adi,adv7533.yaml# 5$schema: http://devicetree.org/meta-schemas/core.yaml# 6 7title: Analog Devices ADV7533/35 HDMI Encoders 8 9maintainers: 10 - Laurent Pinchart <laurent.pinchart@ideasonboard.com> 11 12allOf: 13 - $ref: /schemas/sound/dai-common.yaml# 14 15description: | 16 The ADV7533 and ADV7535 are HDMI audio and video transmitters 17 compatible with HDMI 1.4 and DVI 1.0. They support color space 18 conversion, S/PDIF, CEC and HDCP. The transmitter input is MIPI DSI. 19 20properties: 21 compatible: 22 enum: 23 - adi,adv7533 24 - adi,adv7535 25 26 reg: 27 description: | 28 I2C slave addresses. 29 30 The ADV7533/35 internal registers are split into four pages 31 exposed through different I2C addresses, creating four register 32 maps. Each map has it own I2C address and acts as a standard slave 33 device on the I2C bus. The main address is mandatory, others are 34 optional and revert to defaults if not specified. 35 minItems: 1 36 maxItems: 4 37 38 reg-names: 39 description: 40 Names of maps with programmable addresses. It can contain any map 41 needing a non-default address. 42 minItems: 1 43 items: 44 - const: main 45 - const: edid 46 - const: cec 47 - const: packet 48 49 clocks: 50 description: Reference to the CEC clock. 51 maxItems: 1 52 53 clock-names: 54 const: cec 55 56 interrupts: 57 maxItems: 1 58 59 pd-gpios: 60 description: GPIO connected to the power down signal. 61 maxItems: 1 62 63 avdd-supply: 64 description: A 1.8V supply that powers up the AVDD pin. 65 66 dvdd-supply: 67 description: A 1.8V supply that powers up the DVDD pin. 68 69 pvdd-supply: 70 description: A 1.8V supply that powers up the PVDD pin. 71 72 a2vdd-supply: 73 description: A 1.8V supply that powers up the A2VDD pin. 74 75 v3p3-supply: 76 description: A 3.3V supply that powers up the V3P3 pin. 77 78 v1p2-supply: 79 description: 80 A supply that powers up the V1P2 pin. It can be either 1.2V 81 or 1.8V for ADV7533 but only 1.8V for ADV7535. 82 83 adi,disable-timing-generator: 84 description: 85 Disables the internal timing generator. The chip will rely on the 86 sync signals in the DSI data lanes, rather than generating its own 87 timings for HDMI output. 88 type: boolean 89 90 adi,dsi-lanes: 91 description: Number of DSI data lanes connected to the DSI host. 92 $ref: /schemas/types.yaml#/definitions/uint32 93 enum: [ 1, 2, 3, 4 ] 94 95 "#sound-dai-cells": 96 const: 0 97 98 ports: 99 description: 100 The ADV7533/35 has two video ports and one audio port. 101 $ref: /schemas/graph.yaml#/properties/ports 102 103 properties: 104 port@0: 105 description: 106 Video port for the DSI input. The remote endpoint phandle 107 should be a reference to a valid mipi_dsi_host_device. 108 $ref: /schemas/graph.yaml#/properties/port 109 110 port@1: 111 description: Video port for the HDMI output. 112 $ref: /schemas/graph.yaml#/properties/port 113 114 port@2: 115 description: Audio port for the HDMI output. 116 $ref: /schemas/graph.yaml#/properties/port 117 118required: 119 - compatible 120 - reg 121 - ports 122 - adi,dsi-lanes 123 - avdd-supply 124 - dvdd-supply 125 - pvdd-supply 126 - a2vdd-supply 127 - v3p3-supply 128 129additionalProperties: false 130 131examples: 132 - | 133 #include <dt-bindings/interrupt-controller/irq.h> 134 135 i2c@e6500000 { 136 #address-cells = <1>; 137 #size-cells = <0>; 138 139 reg = <0 0xe6500000>; 140 141 adv7533: hdmi@39 { 142 compatible = "adi,adv7533"; 143 /* 144 * The EDID page will be accessible on address 0x66 on the I2C 145 * bus. All other maps continue to use their default addresses. 146 */ 147 reg = <0x39>, <0x66>; 148 reg-names = "main", "edid"; 149 interrupt-parent = <&gpio3>; 150 interrupts = <29 IRQ_TYPE_EDGE_FALLING>; 151 clocks = <&cec_clock>; 152 clock-names = "cec"; 153 adi,dsi-lanes = <4>; 154 avdd-supply = <&v1v8>; 155 dvdd-supply = <&v1v8>; 156 pvdd-supply = <&v1v8>; 157 a2vdd-supply = <&v1v8>; 158 v3p3-supply = <&v3v3>; 159 160 ports { 161 #address-cells = <1>; 162 #size-cells = <0>; 163 164 port@0 { 165 reg = <0>; 166 adv7533_in: endpoint { 167 remote-endpoint = <&dsi_out>; 168 }; 169 }; 170 171 port@1 { 172 reg = <1>; 173 adv7533_out: endpoint { 174 remote-endpoint = <&hdmi_connector_in>; 175 }; 176 }; 177 178 port@2 { 179 reg = <2>; 180 codec_endpoint: endpoint { 181 remote-endpoint = <&i2s0_cpu_endpoint>; 182 }; 183 }; 184 }; 185 }; 186 }; 187 188... 189