TUSB546A-DC register configuration

Part Number: TUSB546A-DCI

Tool/software:

Hi i am using Tusb546A  I want to know how to write the register values for example in data sheet having 8 registers in what register what data need to write for eg : flip, 4 lane dp, 2 lane dp 

These are the registers from the tusb546A data sheet  

1.General Register (address = 0x0A) [reset = 00000001]  

2.DisplayPort Control/Status Registers (address = 0x10) [reset = 00000000]

3.DisplayPort Control/Status Registers (address = 0x11) [reset = 00000000]

4.DisplayPort Control/Status Registers (address = 0x12) [reset = 00000000]

5.DisplayPort Control/Status Registers (address = 0x13) [reset = 00000000]

6.USB3.1 Control/Status Registers (address = 0x20) [reset = 00000000]

7.USB3.1 Control/Status Registers (address = 0x21) [reset = 00000000]

8.USB3.1 Control/Status Registers (address = 0x22) [reset = 00000100]

questions

1.From the above registers we want to write each register  or only 0x0A general register? give example 

2. If we use general register only then all the remaining registers are write into the 0x0A ? give example code for writing through i2c

3. How to write the data in registers for dissplay lane , flip  2 ane 4 lane display lane with flip, and aux flip ? 

4. for example i2c write( tusb546a slave address , register address(0x0A), register data(0x02))  is ths correct ?  or i need to write only the 0x0A register address with the remaining registers as data for 0x0A ?like   

i2c write( tusb546a slave address , register address(0x0A), register data(0x10)) 

i2c write( tusb546a slave address , register address(0x0A), register data(0x11)) 

i2c write( tusb546a slave address , register address(0x0A), register data(0x12)) 

i2c write( tusb546a slave address , register address(0x0A), register data(0x13)) 

i2c write( tusb546a slave address , register address(0x0A), register data(0x20)) 

i2c write( tusb546a slave address , register address(0x0A), register data(0x21)) 

i2c write( tusb546a slave address , register address(0x0A), register data(0x22)) 

 

how to i need to write the register only 0x0A or all register ?

  • Hello,

    1.From the above registers we want to write each register  or only 0x0A general register? give example 

    This depends on the functionality of the system, and what is needed. Are you using a PD controller to communicate via I2C? Do you need to control EQ via I2C, or will you use GPIO for that? Depending on which it is, you may only need register 0x0A.

    2. If we use general register only then all the remaining registers are write into the 0x0A ? give example code for writing through i2c

    Register 0x0A only contains the bits listed in that register. To perform writes to any other register, you would need to write to those register addresses specifically. 

    3. How to write the data in registers for dissplay lane , flip  2 ane 4 lane display lane with flip, and aux flip ? 

    Are you using AUX snooping, or manually controlling the DP lanes?

    If you are using AUX snooping, you would only need to write to bits 2:0 of register 0x0A.

    If you are not using AUX snooping, you would also need to control the DP lanes enabled via register 0x12 and register 0x13.

    4. for example i2c write( tusb546a slave address , register address(0x0A), register data(0x02))  is ths correct ?  or i need to write only the 0x0A register address with the remaining registers as data for 0x0A ?like   

    You would need to set the register address to the register you want to update, and register data to the value you want to enter into that address.

    Thanks,

    Ryan