15956d97fSEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 25956d97fSEmmanuel Vadot%YAML 1.2 35956d97fSEmmanuel Vadot--- 45956d97fSEmmanuel Vadot$id: http://devicetree.org/schemas/display/bridge/adi,adv7533.yaml# 55956d97fSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 65956d97fSEmmanuel Vadot 75956d97fSEmmanuel Vadottitle: Analog Devices ADV7533/35 HDMI Encoders 85956d97fSEmmanuel Vadot 95956d97fSEmmanuel Vadotmaintainers: 105956d97fSEmmanuel Vadot - Laurent Pinchart <laurent.pinchart@ideasonboard.com> 115956d97fSEmmanuel Vadot 12*84943d6fSEmmanuel VadotallOf: 13*84943d6fSEmmanuel Vadot - $ref: /schemas/sound/dai-common.yaml# 14*84943d6fSEmmanuel Vadot 155956d97fSEmmanuel Vadotdescription: | 165956d97fSEmmanuel Vadot The ADV7533 and ADV7535 are HDMI audio and video transmitters 175956d97fSEmmanuel Vadot compatible with HDMI 1.4 and DVI 1.0. They support color space 185956d97fSEmmanuel Vadot conversion, S/PDIF, CEC and HDCP. The transmitter input is MIPI DSI. 195956d97fSEmmanuel Vadot 205956d97fSEmmanuel Vadotproperties: 215956d97fSEmmanuel Vadot compatible: 225956d97fSEmmanuel Vadot enum: 235956d97fSEmmanuel Vadot - adi,adv7533 245956d97fSEmmanuel Vadot - adi,adv7535 255956d97fSEmmanuel Vadot 265956d97fSEmmanuel Vadot reg: 275956d97fSEmmanuel Vadot description: | 285956d97fSEmmanuel Vadot I2C slave addresses. 295956d97fSEmmanuel Vadot 305956d97fSEmmanuel Vadot The ADV7533/35 internal registers are split into four pages 315956d97fSEmmanuel Vadot exposed through different I2C addresses, creating four register 325956d97fSEmmanuel Vadot maps. Each map has it own I2C address and acts as a standard slave 335956d97fSEmmanuel Vadot device on the I2C bus. The main address is mandatory, others are 345956d97fSEmmanuel Vadot optional and revert to defaults if not specified. 355956d97fSEmmanuel Vadot minItems: 1 365956d97fSEmmanuel Vadot maxItems: 4 375956d97fSEmmanuel Vadot 385956d97fSEmmanuel Vadot reg-names: 395956d97fSEmmanuel Vadot description: 405956d97fSEmmanuel Vadot Names of maps with programmable addresses. It can contain any map 415956d97fSEmmanuel Vadot needing a non-default address. 425956d97fSEmmanuel Vadot minItems: 1 435956d97fSEmmanuel Vadot items: 445956d97fSEmmanuel Vadot - const: main 455956d97fSEmmanuel Vadot - const: edid 465956d97fSEmmanuel Vadot - const: cec 475956d97fSEmmanuel Vadot - const: packet 485956d97fSEmmanuel Vadot 495956d97fSEmmanuel Vadot clocks: 505956d97fSEmmanuel Vadot description: Reference to the CEC clock. 515956d97fSEmmanuel Vadot maxItems: 1 525956d97fSEmmanuel Vadot 535956d97fSEmmanuel Vadot clock-names: 545956d97fSEmmanuel Vadot const: cec 555956d97fSEmmanuel Vadot 565956d97fSEmmanuel Vadot interrupts: 575956d97fSEmmanuel Vadot maxItems: 1 585956d97fSEmmanuel Vadot 595956d97fSEmmanuel Vadot pd-gpios: 605956d97fSEmmanuel Vadot description: GPIO connected to the power down signal. 615956d97fSEmmanuel Vadot maxItems: 1 625956d97fSEmmanuel Vadot 635956d97fSEmmanuel Vadot avdd-supply: 645956d97fSEmmanuel Vadot description: A 1.8V supply that powers up the AVDD pin. 655956d97fSEmmanuel Vadot 665956d97fSEmmanuel Vadot dvdd-supply: 675956d97fSEmmanuel Vadot description: A 1.8V supply that powers up the DVDD pin. 685956d97fSEmmanuel Vadot 695956d97fSEmmanuel Vadot pvdd-supply: 705956d97fSEmmanuel Vadot description: A 1.8V supply that powers up the PVDD pin. 715956d97fSEmmanuel Vadot 725956d97fSEmmanuel Vadot a2vdd-supply: 735956d97fSEmmanuel Vadot description: A 1.8V supply that powers up the A2VDD pin. 745956d97fSEmmanuel Vadot 755956d97fSEmmanuel Vadot v3p3-supply: 765956d97fSEmmanuel Vadot description: A 3.3V supply that powers up the V3P3 pin. 775956d97fSEmmanuel Vadot 785956d97fSEmmanuel Vadot v1p2-supply: 795956d97fSEmmanuel Vadot description: 805956d97fSEmmanuel Vadot A supply that powers up the V1P2 pin. It can be either 1.2V 815956d97fSEmmanuel Vadot or 1.8V for ADV7533 but only 1.8V for ADV7535. 825956d97fSEmmanuel Vadot 835956d97fSEmmanuel Vadot adi,disable-timing-generator: 845956d97fSEmmanuel Vadot description: 855956d97fSEmmanuel Vadot Disables the internal timing generator. The chip will rely on the 865956d97fSEmmanuel Vadot sync signals in the DSI data lanes, rather than generating its own 875956d97fSEmmanuel Vadot timings for HDMI output. 885956d97fSEmmanuel Vadot type: boolean 895956d97fSEmmanuel Vadot 905956d97fSEmmanuel Vadot adi,dsi-lanes: 915956d97fSEmmanuel Vadot description: Number of DSI data lanes connected to the DSI host. 925956d97fSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 935956d97fSEmmanuel Vadot enum: [ 1, 2, 3, 4 ] 945956d97fSEmmanuel Vadot 95*84943d6fSEmmanuel Vadot "#sound-dai-cells": 96*84943d6fSEmmanuel Vadot const: 0 97*84943d6fSEmmanuel Vadot 985956d97fSEmmanuel Vadot ports: 995956d97fSEmmanuel Vadot description: 1007ef62cebSEmmanuel Vadot The ADV7533/35 has two video ports and one audio port. 1017ef62cebSEmmanuel Vadot $ref: /schemas/graph.yaml#/properties/ports 1027ef62cebSEmmanuel Vadot 1035956d97fSEmmanuel Vadot properties: 1045956d97fSEmmanuel Vadot port@0: 1055956d97fSEmmanuel Vadot description: 1065956d97fSEmmanuel Vadot Video port for the DSI input. The remote endpoint phandle 1075956d97fSEmmanuel Vadot should be a reference to a valid mipi_dsi_host_device. 1087ef62cebSEmmanuel Vadot $ref: /schemas/graph.yaml#/properties/port 1095956d97fSEmmanuel Vadot 1105956d97fSEmmanuel Vadot port@1: 1115956d97fSEmmanuel Vadot description: Video port for the HDMI output. 1127ef62cebSEmmanuel Vadot $ref: /schemas/graph.yaml#/properties/port 1135956d97fSEmmanuel Vadot 1145956d97fSEmmanuel Vadot port@2: 1155956d97fSEmmanuel Vadot description: Audio port for the HDMI output. 1167ef62cebSEmmanuel Vadot $ref: /schemas/graph.yaml#/properties/port 1175956d97fSEmmanuel Vadot 1185956d97fSEmmanuel Vadotrequired: 1195956d97fSEmmanuel Vadot - compatible 1205956d97fSEmmanuel Vadot - reg 1215956d97fSEmmanuel Vadot - ports 1225956d97fSEmmanuel Vadot - adi,dsi-lanes 1235956d97fSEmmanuel Vadot - avdd-supply 1245956d97fSEmmanuel Vadot - dvdd-supply 1255956d97fSEmmanuel Vadot - pvdd-supply 1265956d97fSEmmanuel Vadot - a2vdd-supply 1275956d97fSEmmanuel Vadot - v3p3-supply 1285956d97fSEmmanuel Vadot 1295956d97fSEmmanuel VadotadditionalProperties: false 1305956d97fSEmmanuel Vadot 1315956d97fSEmmanuel Vadotexamples: 1325956d97fSEmmanuel Vadot - | 1335956d97fSEmmanuel Vadot #include <dt-bindings/interrupt-controller/irq.h> 1345956d97fSEmmanuel Vadot 1355956d97fSEmmanuel Vadot i2c@e6500000 { 1365956d97fSEmmanuel Vadot #address-cells = <1>; 1375956d97fSEmmanuel Vadot #size-cells = <0>; 1385956d97fSEmmanuel Vadot 1395956d97fSEmmanuel Vadot reg = <0 0xe6500000>; 1405956d97fSEmmanuel Vadot 1415956d97fSEmmanuel Vadot adv7533: hdmi@39 { 1425956d97fSEmmanuel Vadot compatible = "adi,adv7533"; 1435956d97fSEmmanuel Vadot /* 1445956d97fSEmmanuel Vadot * The EDID page will be accessible on address 0x66 on the I2C 1455956d97fSEmmanuel Vadot * bus. All other maps continue to use their default addresses. 1465956d97fSEmmanuel Vadot */ 1475956d97fSEmmanuel Vadot reg = <0x39>, <0x66>; 1485956d97fSEmmanuel Vadot reg-names = "main", "edid"; 1495956d97fSEmmanuel Vadot interrupt-parent = <&gpio3>; 1505956d97fSEmmanuel Vadot interrupts = <29 IRQ_TYPE_EDGE_FALLING>; 1515956d97fSEmmanuel Vadot clocks = <&cec_clock>; 1525956d97fSEmmanuel Vadot clock-names = "cec"; 1535956d97fSEmmanuel Vadot adi,dsi-lanes = <4>; 1545956d97fSEmmanuel Vadot avdd-supply = <&v1v8>; 1555956d97fSEmmanuel Vadot dvdd-supply = <&v1v8>; 1565956d97fSEmmanuel Vadot pvdd-supply = <&v1v8>; 1575956d97fSEmmanuel Vadot a2vdd-supply = <&v1v8>; 1585956d97fSEmmanuel Vadot v3p3-supply = <&v3v3>; 1595956d97fSEmmanuel Vadot 1605956d97fSEmmanuel Vadot ports { 1615956d97fSEmmanuel Vadot #address-cells = <1>; 1625956d97fSEmmanuel Vadot #size-cells = <0>; 1635956d97fSEmmanuel Vadot 1645956d97fSEmmanuel Vadot port@0 { 1655956d97fSEmmanuel Vadot reg = <0>; 1665956d97fSEmmanuel Vadot adv7533_in: endpoint { 1675956d97fSEmmanuel Vadot remote-endpoint = <&dsi_out>; 1685956d97fSEmmanuel Vadot }; 1695956d97fSEmmanuel Vadot }; 1705956d97fSEmmanuel Vadot 1715956d97fSEmmanuel Vadot port@1 { 1725956d97fSEmmanuel Vadot reg = <1>; 1735956d97fSEmmanuel Vadot adv7533_out: endpoint { 1745956d97fSEmmanuel Vadot remote-endpoint = <&hdmi_connector_in>; 1755956d97fSEmmanuel Vadot }; 1765956d97fSEmmanuel Vadot }; 1775956d97fSEmmanuel Vadot 1785956d97fSEmmanuel Vadot port@2 { 1795956d97fSEmmanuel Vadot reg = <2>; 1805956d97fSEmmanuel Vadot codec_endpoint: endpoint { 1815956d97fSEmmanuel Vadot remote-endpoint = <&i2s0_cpu_endpoint>; 1825956d97fSEmmanuel Vadot }; 1835956d97fSEmmanuel Vadot }; 1845956d97fSEmmanuel Vadot }; 1855956d97fSEmmanuel Vadot }; 1865956d97fSEmmanuel Vadot }; 1875956d97fSEmmanuel Vadot 1885956d97fSEmmanuel Vadot... 189