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