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.

TUSB1046A-DCI: Unplug and re-plug of USB C doesn't work

Part Number: TUSB1046A-DCI

Tool/software:

We are trying to integrate a new Xeon CPU and MXM card in our motherboard.

Shown below are two circles and both work well with my older MXM GPU card 1060 (Aetina M3N1060-MN-D). If we unplug-replug the monitor on the HDMI connector it works all the time. It also works if we unplug-replug the USCB C connector.

However:

When we switch it to the newer MXM card RTX 5000 (MX5000A-WAG-A1) it works well with the HDMI (red circle) but on the USB C (blue circle) it only works the very first time on power up. Plugging/re-inserting the USB C connector stops the video on the dsipaly. It doesn’t recover. We installed driver 550.144.03 (Also tried 530) on Ubuntu 24.02. On the USB HUB with HDMI (blue circle), if we remove and attach the HDMI it works. Issues seems to be with USB C.

 Any suggestions?

  • We tried two other USB C to HDMI converters. One from cable creation and another QGeekM. Both worked under all combinations reported as failed in the table below. We also tried 3 different larger Anker USB C Hub B07PPGWQ15 and these worked fine without any failures. We use Anker USB HUB B07DD8BLJW quit a bit in our projects and we tried 6 variations. All exhibit the same problem as described below. We would like to get the new GPU RTX 5000ADA work with the this USB C Hub.

    Summary of the tests:

    ...

  • Hi Ramgopal,

    It sounds like this issue is stemming from the USB-C hub communicating between the monitor and the TUSB1046. If possible, could you monitor the HPDIN pins of the TUSB1046 and see what that pin looks like when you disconnect and reconnect the USB-C versus reconnecting the HDMI connector, as well as what the pin looks like on power-up? My think is that potentially, HPDIN is not being communicated properly when the USB-C is disconnected, however it is when the HDMI is reconnected.

    Thanks,

    Ryan

  • Thanks,

    I just probed pin 23 of TUSB1046AI-DCI and I do see it toggle between high and low when present and absent in working and non-working conditions. Or rather they look and behave the same or correctly. 

    However, I just discovered that of the 4 ports, ports A, B, and C recover (Video works) if I unplug and replug the HDMI in a bad state. The fourth port is inconsisent and sometimes it recovers.

    Is there any other suggestion? 

  • In a bad case where there is no video. If I remove the HDMI, the monitor LED turns from yellow to blue and at that moment if I insert the HDMI it seems to recover. Seems like there is a timing issue. I see a fair amount of time when the HPD line turns from 0 to 1 when the USB hub is inserted. 

  • Hi Ramgopal,

    So from what you can tell, the HPDIN pin is toggling between high and low, and this takes place on each port? Does this happen both when you reconnect HDMI and when you reconnect the type-C plug?

    Can you also monitor HPDIN with one of the known good hubs? In a good/stable HDMI connection, HPDIN should be held high when a connection is made, and should not be toggling.

    If I remove the HDMI, the monitor LED turns from yellow to blue and at that moment if I insert the HDMI it seems to recover. Seems like there is a timing issue.

    Either this, or it believes there is no active video connection and is seeing the hot plug disconnect, causing the monitor to turn on.

    I think it would be good to check the signaling between the good/bad hubs at HPDIN pin and see if there is any difference in performance.

    Thanks,

    Ryan

  • So from what you can tell, the HPDIN pin is toggling between high and low, and this takes place on each port? Does this happen both when you reconnect HDMI and when you reconnect the type-C plug?

    Divakar - It won't toggle if I insert the USB-C hub without the HDMI cable. HPDIN will be 0. Presence of HDMI makes it high and absence low. Yes, it maintains the right state correctly in all ports or high when inserted and low when nont inserted. 

    I believe there is a small delay perhaps in the sequence. I don't know the sequence of events when a USB is inserted. What is the algorithm or the order of events amongst the GPU, PD, and the monitor. 

    Visually, the working and non working don't seem to show any significant differrence in the HPDIN. 

    Thanks,

    Divakar

  • Hi Divakar,

    Sounds like the HPDIN pin works fine, high when plugged in, low when not plugged in.

    Next, could you monitor the CTL and FLIP pins? Assuming that you are using GPIO mode, it would be good to see what those pins are being set to to ensure these pins are being set correctly.

    Another thing you could do is perform a continuity test with the data lane paths of the TUSB1046A and just ensure that the data lanes are open in those cases where the display is not working.

    Also, just for more info, is your device in I2C or GPIO mode? A schematic may help as well.

    Thanks,

    Ryan

  • Yes, HPDIN works as expected. The USB-C vendor looked at the logs and said they look good and it should have worked as expected. 

    The device is in I2C mode controlled by Infineon (CYPRESS) CYPD4226-40LQXIT. I can send you the schematic directly. I will request friendship.

  • Hi Divakar,

    I believe your friend request should be accepted, feel free to send that over.

    Thanks,

    Ryan

  • Hi Divakar,

    Due to inactivity, I am going to go ahead and mark this thread as resolved. If you have any further questions or feel the issue is not closed, please feel free to reply here so we can keep it open.

    Thanks,

    Ryan