1*c66ec88fSEmmanuel Vadot* Analog Devices ADV7604/11/12 video decoder with HDMI receiver 2*c66ec88fSEmmanuel Vadot 3*c66ec88fSEmmanuel VadotThe ADV7604 and ADV7611/12 are multiformat video decoders with an integrated 4*c66ec88fSEmmanuel VadotHDMI receiver. The ADV7604 has four multiplexed HDMI inputs and one analog 5*c66ec88fSEmmanuel Vadotinput, and the ADV7611 has one HDMI input and no analog input. The 7612 is 6*c66ec88fSEmmanuel Vadotsimilar to the 7611 but has 2 HDMI inputs. 7*c66ec88fSEmmanuel Vadot 8*c66ec88fSEmmanuel VadotThese device tree bindings support the ADV7611/12 only at the moment. 9*c66ec88fSEmmanuel Vadot 10*c66ec88fSEmmanuel VadotRequired Properties: 11*c66ec88fSEmmanuel Vadot 12*c66ec88fSEmmanuel Vadot - compatible: Must contain one of the following 13*c66ec88fSEmmanuel Vadot - "adi,adv7611" for the ADV7611 14*c66ec88fSEmmanuel Vadot - "adi,adv7612" for the ADV7612 15*c66ec88fSEmmanuel Vadot 16*c66ec88fSEmmanuel Vadot - reg: I2C slave addresses 17*c66ec88fSEmmanuel Vadot The ADV76xx has up to thirteen 256-byte maps that can be accessed via the 18*c66ec88fSEmmanuel Vadot main I2C ports. Each map has it own I2C address and acts as a standard 19*c66ec88fSEmmanuel Vadot slave device on the I2C bus. The main address is mandatory, others are 20*c66ec88fSEmmanuel Vadot optional and revert to defaults if not specified. 21*c66ec88fSEmmanuel Vadot 22*c66ec88fSEmmanuel Vadot - hpd-gpios: References to the GPIOs that control the HDMI hot-plug 23*c66ec88fSEmmanuel Vadot detection pins, one per HDMI input. The active flag indicates the GPIO 24*c66ec88fSEmmanuel Vadot level that enables hot-plug detection. 25*c66ec88fSEmmanuel Vadot 26*c66ec88fSEmmanuel VadotThe device node must contain one 'port' child node per device input and output 27*c66ec88fSEmmanuel Vadotport, in accordance with the video interface bindings defined in 28*c66ec88fSEmmanuel VadotDocumentation/devicetree/bindings/media/video-interfaces.txt. The port nodes 29*c66ec88fSEmmanuel Vadotare numbered as follows. 30*c66ec88fSEmmanuel Vadot 31*c66ec88fSEmmanuel Vadot Port ADV7611 ADV7612 32*c66ec88fSEmmanuel Vadot------------------------------------------------------------ 33*c66ec88fSEmmanuel Vadot HDMI 0 0, 1 34*c66ec88fSEmmanuel Vadot Digital output 1 2 35*c66ec88fSEmmanuel Vadot 36*c66ec88fSEmmanuel VadotThe digital output port node must contain at least one endpoint. 37*c66ec88fSEmmanuel Vadot 38*c66ec88fSEmmanuel VadotOptional Properties: 39*c66ec88fSEmmanuel Vadot 40*c66ec88fSEmmanuel Vadot - reset-gpios: Reference to the GPIO connected to the device's reset pin. 41*c66ec88fSEmmanuel Vadot - default-input: Select which input is selected after reset. 42*c66ec88fSEmmanuel Vadot - reg-names : Names of maps with programmable addresses. 43*c66ec88fSEmmanuel Vadot It can contain any map needing a non-default address. 44*c66ec88fSEmmanuel Vadot Possible maps names are : 45*c66ec88fSEmmanuel Vadot "main", "avlink", "cec", "infoframe", "esdp", "dpp", "afe", 46*c66ec88fSEmmanuel Vadot "rep", "edid", "hdmi", "test", "cp", "vdp" 47*c66ec88fSEmmanuel Vadot 48*c66ec88fSEmmanuel VadotOptional Endpoint Properties: 49*c66ec88fSEmmanuel Vadot 50*c66ec88fSEmmanuel Vadot The following three properties are defined in video-interfaces.txt and are 51*c66ec88fSEmmanuel Vadot valid for source endpoints only. 52*c66ec88fSEmmanuel Vadot 53*c66ec88fSEmmanuel Vadot - hsync-active: Horizontal synchronization polarity. Defaults to active low. 54*c66ec88fSEmmanuel Vadot - vsync-active: Vertical synchronization polarity. Defaults to active low. 55*c66ec88fSEmmanuel Vadot - pclk-sample: Pixel clock polarity. Defaults to output on the falling edge. 56*c66ec88fSEmmanuel Vadot 57*c66ec88fSEmmanuel Vadot If none of hsync-active, vsync-active and pclk-sample is specified the 58*c66ec88fSEmmanuel Vadot endpoint will use embedded BT.656 synchronization. 59*c66ec88fSEmmanuel Vadot 60*c66ec88fSEmmanuel VadotExample: 61*c66ec88fSEmmanuel Vadot 62*c66ec88fSEmmanuel Vadot hdmi_receiver@4c { 63*c66ec88fSEmmanuel Vadot compatible = "adi,adv7611"; 64*c66ec88fSEmmanuel Vadot /* 65*c66ec88fSEmmanuel Vadot * The edid page will be accessible @ 0x66 on the I2C bus. All 66*c66ec88fSEmmanuel Vadot * other maps will retain their default addresses. 67*c66ec88fSEmmanuel Vadot */ 68*c66ec88fSEmmanuel Vadot reg = <0x4c>, <0x66>; 69*c66ec88fSEmmanuel Vadot reg-names = "main", "edid"; 70*c66ec88fSEmmanuel Vadot 71*c66ec88fSEmmanuel Vadot reset-gpios = <&ioexp 0 GPIO_ACTIVE_LOW>; 72*c66ec88fSEmmanuel Vadot hpd-gpios = <&ioexp 2 GPIO_ACTIVE_HIGH>; 73*c66ec88fSEmmanuel Vadot 74*c66ec88fSEmmanuel Vadot #address-cells = <1>; 75*c66ec88fSEmmanuel Vadot #size-cells = <0>; 76*c66ec88fSEmmanuel Vadot 77*c66ec88fSEmmanuel Vadot default-input = <0>; 78*c66ec88fSEmmanuel Vadot 79*c66ec88fSEmmanuel Vadot port@0 { 80*c66ec88fSEmmanuel Vadot reg = <0>; 81*c66ec88fSEmmanuel Vadot }; 82*c66ec88fSEmmanuel Vadot port@1 { 83*c66ec88fSEmmanuel Vadot reg = <1>; 84*c66ec88fSEmmanuel Vadot hdmi_in: endpoint { 85*c66ec88fSEmmanuel Vadot remote-endpoint = <&ccdc_in>; 86*c66ec88fSEmmanuel Vadot }; 87*c66ec88fSEmmanuel Vadot }; 88*c66ec88fSEmmanuel Vadot }; 89