SNLA419 October   2022 TDP1204 , TMDS1204

 

  1.   Abstract
  2.   Trademarks
  3. 1Introduction
  4. 2Test Setup
  5. 3Test Procedure
    1. 3.1 AEQ Configuration
    2. 3.2 Verify AEQ Configuration
  6. 4AEQ Functional Tests
  7. 5Summary
  8. 6References

AEQ Configuration

The TMDS1204 chip needs to be configured through the I2C bus to allow you to use AEQ functionality. You can access the I2C bus using J5. In this procedure, the Aardvark™ I2C/SPI adapter is plugged in directly to J5 and then a laptop to provide I2C read and write control capabilities. Afterwords, open the Total Phase Control Center v4.3.0 GUI and use the “Adapter” tab to connect to the EVM and use the Batch Mode to write to the TMDS1204 registers. The following code provides the Aardvark script that allows TMDS1204 to use AEQ functionality and configure the device. The script resets the AEQ before it is enabled by writing F3 to register offset 1Dh and then enables AEQ by writing 40 to register offset 1Eh.

<aardvark>
    <configure i2c="1" spi="1" gpio="0" tpower="1" pullups="0"/>
    <i2c_bitrate khz="100"/>


======Rate snoop enabled, TXFFE snoop enabled. Enable SWAP======
<i2c_write addr="0x5E" count="1" radix="16">0A 88</i2c_write>/>

======3G and 6G TX slew rate control======
<i2c_write addr="0x5E" count="1" radix="16">0B 34</i2c_write>/>

======Clock and 8G10G10G TX slew rate control======
<i2c_write addr="0x5E" count="1" radix="16">0C 71</i2c_write>/>

======Linear, DC-coupled, 0dB DCG, TERM Auto, Disable CTLE bypass======
<i2c_write addr="0x5E" count="1" radix="16">0D A2</i2c_write>/>

======HDMI14, HDMI20, and HDMI21 CTLE Selection======
<i2c_write addr="0x5E" count="1" radix="16">0E 3F</i2c_write>/>

======Disable DDC Buffer======
<i2c_write addr="0x5E" count="1" radix="16">10 00</i2c_write>/>

======CLOCK VOD and TXFFE======
<i2c_write addr="0x5E" count="1" radix="16">12 03</i2c_write>/>

======CLOCK EQ======
<i2c_write addr="0x5E" count="1" radix="16">13 01</i2c_write>/>

======D0 VOD and TXFFE======
<i2c_write addr="0x5E" count="1" radix="16">14 03</i2c_write>/>

======D0 EQ======
<i2c_write addr="0x5E" count="1" radix="16">15 01</i2c_write>/>

======D1 VOD and TXFFE======
<i2c_write addr="0x5E" count="1" radix="16">16 03</i2c_write>/>

======D1 EQ======
<i2c_write addr="0x5E" count="1" radix="16">17 01</i2c_write>/>

======D2 VOD and TXFFE======
<i2c_write addr="0x5E" count="1" radix="16">18 03</i2c_write>/>

======D2 EQ======
<i2c_write addr="0x5E" count="1" radix="16">19 01</i2c_write>/>

======AEQ Config======
<i2c_write addr="0x5E" count="1" radix="16">1D F3</i2c_write>/>

======AEQ Enable======
<i2c_write addr="0x5E" count="1" radix="16">1E 40</i2c_write>/>

======Clear x40 bit======
<i2c_write addr="0x5E" count="1" radix="16">20 00</i2c_write>/>

======Take out of PD.  HPD_OUT will get asserted high if HPD_IN is high======
<i2c_write addr="0x5E" count="1" radix="16">09 00</i2c_write>/>

</aardvark>