This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

TPS25750: Initial hardware checkout

Part Number: TPS25750
Other Parts Discussed in Thread: TUSB1042I,

Hello,

I've just gotten back our first prototype USB-C port using the TPS25750 PD chip. 

The i2c prom that is connected to it is not yet programmed, but should I expect to see clock signals on the line from the TPS25750?

How else would it know if there's a chip out there?

Thanks!

Kan Hoy

  • Hi,

    For the clock signal, are you talking about the I2Cm_SCL signal to the external EEPROM?

    Regards.

  • Hi Tommy,

    Yes, should I expect activity on this line?  How else would it read my i2c eeprom? 

    Thanks,

    Kan

  • Hi,

    If there are no content in the EEPROM, I do not think you will see any activity on the I2Cm_SCL line. I will check with my team to confirm this and get back to you by next Monday.

    Regards.

  • Hello Tommy,

    I was able to capture at startup- the I2C lines from the TPS chip trying to read 0x50. 

    This is good- but now I need help configuring the EEPROM/ GPIO.

    I have a questions on GPIO2--

    * We are intending to use GPIO2 as an input.  But on the datasheet- in one place it says that it's an OUTPUT, and in another it says it's configurable.  which is it?

    * We want to use GPIO2 as an enable to the PD chip.  How would I configure this in the web app?  

    Thanks,

    Kan

  • Hello Tommy,

    I was able to capture at startup- the I2C lines from the TPS chip trying to read 0x50. 

    This is good- but now I need help configuring the EEPROM/ GPIO.

    I have a questions on GPIO2--

    * We are intending to use GPIO2 as an input.  But on the datasheet- in one place it says that it's an OUTPUT, and in another it says it's configurable.  which is it?

    * We want to use GPIO2 as an enable to the PD chip.  How would I configure this in the web app?  

    Thanks,

    Kan

  • Hi,

    Do you have any interface such as Aardvark on the board to allow EEPROM programming?

    As for GPIO configuration, you should be able to see the IO Config option after selecting Advanced Configuration on the right and the Configuration. Please refer to the screenshot below.

    Regards

  • Hi Tommy,

    I have an Aardvark, and I know to go to the Advance config options,

    but I am determine what should be set to to control TUSB1042 transceiver which has two controls when set to run in IO mode vs I2C control.

    a) "FLIP" signal

    b) "CTRL" signal

    These are the lines in magenta and green below.

    In addition, there should be a 

    c) Enable signal for the USB PD chip- this connects to GPIO2, which i hope can be set to be an input for the PD chip.

  • Hi,

    Can you provide more description on the FLIP and CTRL signal so I can help you find out what event should be mapped to the GPIOs?

    Also for GPIO2, what do you mean by "Enable Signal"? What do you want TPS25750 to do (e.g establish power contract?) when the "Enable signal" is received and how is the "Enable signal" generated?

    Regards.

  • Hi Tommy,

    This is a TI redriver chip: TUSB1042- the GPIO mode  is detailed in Table 2 &3 of section 8.4

    https://www.ti.com/document-viewer/TUSB1042I/datasheet/features-sllsev75792#SLLSEV75792

    Which I've copied here for reference:

    ----------------

    Receiver Linear Equalization

    The purpose of receiver equalization is to compensate for channel insertion loss and inter-symbol interference in the system before the input or after the output of the TUSB1042I. The receiver overcomes these losses by attenuating the low frequency components of the signals with respect to the high frequency components. The proper gain setting should be selected to match the channel insertion loss. Two 4-level input pins enable up to 16 possible equalization settings. USB3.1 upstream path and USB3.1 downstream path each have their own two 4-level inputs. The TUSB1042I also provides the flexibility of adjusting settings through I2C registers.

    Device Functional Modes

    Device Configuration in GPIO Mode

    The TUSB1042I is in GPIO configuration when I2C_EN = “0”. The TUSB1042I supports USB 3.1 operation. The TEST1 pin needs to be pulled down to GND. CTL0 pins enables or disables USB 3.1 operation as detailed in Table 2.

    After power-up (VCC from 0 V to 3.3 V), the TUSB1042I defaults to USB3.1 mode. The USB PD controller upon detecting no device attached to Type-C port or USB3.1 operation not required by attached device must take TUSB1042I out of USB3.1 mode by transitioning the CTL0 pin from L to H and back to L.

    Table 2. GPIO Configuration Control

    CTL0 PIN FLIP PIN TUSB1042I CONFIGURATION
    L L Power Down
    L H Power Down
    H L One Port USB 3.1 - No Flip
    H H One Port USB 3.1 – With Flip

    Table 3 Details the TUSB1042I’s mux routing. This table is valid for both I2C and GPIO configuration modes.

    Table 3. INPUT to OUTPUT Mapping

    CTL0 PIN FLIP PIN FROM TO
    INPUT PIN OUTPUT PIN
    L L NA NA
    L H NA NA
    H L RX1P SSRXP
    RX1N SSRXN
    SSTXP TX1P
    SSTXN TX1N
    H H RX2P SSRXP
    RX2N SSRXN
    SSTXP TX2P
    SSTXN TX2P
  • Hi,

    So I am assuming the CTL0 is detecting USB3.1 device connected to the type-C port and FLIP is the cable orientation, are these the function/event you are looking to map to?

    Also for GPIO2, what do you mean by "Enable Signal"? What do you want TPS25750 to do (e.g establish power contract?) when the "Enable signal" is received and how is the "Enable signal" generated?

    Regards.

  • Yes CTL0 = HI should enable, and FLIP controls which signals.

    The Enable signal-- we have an upstream processor that requires the ability to enable/disable the USB port (turn off the port/reset)

    I have tried a downloading a.BIN file using an Aardvark I2C programmer that the previous engineer helping me with this and I am unable to get power (VBUS) enabled. 

    Can you help create a file that will get this part up? 

    Thanks!

    Kan

  • Hi,

    So it seems like you only need 2 GPIO that can toggle high and low to control CTL0 and FLIP, am I correct?

    Can I know the name of the engineer that helped you and can you upload the .bin here?

    Regards.

  • Hi Tommy,

    3 GPIO- CTL0, FLIP, and one additional one that allows us to enable/disable the port.

    Matt Lin/Malik(?) and one additional person helped me with this previously.

    I've uploaded fullFlash.bin which was generated previously.

    Thanks

    Kan

  • Hi,

    Got it.

    Maybe I missed it but I did not see the fullFlash.bin on this thread, do you mind upload it again? Also, since I do not have an TPS25750EVM next to me right now, can you provide your project file? It is hard for me to see the settings from binary files.

    I have some ideas on how to enable you to configure these GPIOs but I need to confirm with my team on what tool we should guide you to.

    Regards.

  • Hi Tommy,

    I sent you a separate email with the customer bin and JSON files. Let us know if you need anything else. Thanks!

    -Vijay

  • Hi Vijay,

    Email received.

    Regards.