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.

TPS65982: Emarker cable override debug

Expert 1005 points
Part Number: TPS65982

I am connecting to a laptop with the Intel VID Config register setup for TBlt.

In order for it to go into Tbolt Mode (confirming with the status register) I need to use an EMarked cable that has a SOP' message.
 If I use a non marked cable the TPS65982 won't go into Tbolt mode.
I tried setting the bit in the config register (0x52) called "TBT Emarker Cable Override" using an Aardvark and writing to the register. (SEE BELOW)

I then disconnect and reconnect the unmarked cable. The PD contract is made, but it won't go into TBolt mode. How does this bit work?

  • Hello,

    We have templates in the TPS65982 Application Customization Tool for different Thunderbolt configurations. Do you have "Thunderbolt Mode Autoentry Allowed" enabled?

    Thank you,
    Eric
  • I made a new configuration this morning and made sure that 'Thunderbolt Mode Autoentry Allowed" was checked. However when I download that to my part and then use the Aardvark tool to look at the 0x52 register the box is unchecked. The Emarker Override remains checked.
    So I clicked on it again and wrote the register. I then connected and didn't have the Thunderbolt connection according to the status register. So I went back to the config register and tried writing again. If I do an immediate read, the box shows up as unchecked. So apparently I can't get it to stick on. I tried 3 marked cables and they work fine, but my unmarked cable won't make a TBlt connection and this box won't remain checked after writing. I used version 2.12.1 for making the configuration but it doesn't seem to matter, the problem is related to the IC register. I'll go try it with some EVM boards and see if I can get it to work with two of them.
  • I tried it with two TPS65982-EVM boards, one set to #5 with the power connected and one set to #10. It made the TBlt connection with a marked cable and an unmarked cable, both at 20V. It made the power contract of 20V/0.9A (the 0.75A in the documentation is incorrect). But the override isn't set, according to the Aardvark read of register 0x52. I found the same behavior with an Apex Creek board I have, it doesn't care about the marked cable either. However, the laptop I connect to does care.
    I then finally connected the #10 EVM board to the laptop. It has the same behavior as my board, it won't make a TBlt contract with an unmarked cable, the override box doesn't help, and the ...Autoentry Allowed doesn't remain checked upon a write and a read.
    So, there must be something else going on here or some other registers need to be set.
  • Hello,

    Please build a binary image that has the override bit enabled. Setting this through the host utilities interface will not always set this correctly. If you use the application customization tool and export the full flash image with the bit enabled you should see the bit enabled in the host utilities interface.

    Thank you,
    Eric
  • I verified my image had both the override and autoentry check. I programmed my part and have the same behavior. The e-marker bit IS enabled in the host interface, however, when I connect an unmarked cable I don't get the TBLt true in the status register. I do get a billboard in the device manager that says TPS65982 (however only with the cable not-flipped).

    Since I didn't enter TBlt mode it makes sense that it tries to billboard.

    In any case, the AutoEntry never stays checked. If I look at the RawView of this register in the App Customization tool it has 0303 for the lower bits with the Override checked, and 0103 with it not checked. When I read it over I2C after connection I see 0303 so the Host Interface tool is correct. Something of note, in the RawView the upper two bytes of the 8 byte register are 0x0502. However, when I read this register over I2C after connection I only see 0000 in the upper bytes. I don't know if this explains it not working with an unmarked cable, but it is something to note. I don't know what the 05 is, but the 02 is the autoentry true bit.

    Warren