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.

TPS65987D: TPS65987D: TUSB546 TPS65982

Part Number: TPS65987D
Other Parts Discussed in Thread: TPS65982, TUSB546EVM, , TPS65987, TPS65988

Hi Team,

We are working on custom design for  HDMI to type-c alt.[i.e., hdmi over type-c]

Our hardware team has interacted with TI support team and finalised to use

TUSB546EVM comprising TPS65982 as PD controller with TUSB546 crossover switch. But we will replace TPS65982 by TPS65987D in our custom design,

We are planning to implement this design in snapdragon 820 based carrier board running with debian OS with linux kernel version 4.14.96.

We would like to ask few questions on that :

1) Do we need a linux kernel driver for TPS65982(PD controller) or the firmware  flashed inside the TPS65982 will do the required functionality?

2) Is the firmware already loaded or should we flash the firmware to the TPS65982?

3) If firmware has to be flashed, Is there a procedure to flash the firmware in the linux environment?

4) Does the TUSB546  mux require any linux kernel driver or is it just a switch which does not require any linux kernel driver ?

Regards,

deepika.s

  • Hello,

    HDMI over Type-C is not supported by any of our PD controllers. So if HDMI over Type-C is a firm requirement, then unfortunately we cannot support this. My recommendation would be to implement DisplayPort over USB-C. This would be supported by our PD controllers and is more common in the industry than HDMI over Type-C. All of the big NB manufactures implement DP over Type-C for their notebooks/docks even if the dock has an HDMI port on the backside. 

    If you do decide to switch to DP over Type-C, then I would recommend using the TPS65987D and not the TPS65982. The TPS65987D is a newer generation device and the one we recommend for all new projects that want to implement DP alternate mode

  • Thanks for your response Adam Mc Gaffin,

    We have planned to use STDP2600 chip for hdmi to dp conversion.
    TPS65987 as PD controller with TUSB546 crossover switch for DisplayPort over USB-C.
    We are planning to implement the design in snapdragon 820 based carrier board running with debian OS with linux kernel version 4.14.96.
    We would like to ask few questions on that :

    1) Do we need a linux kernel driver for TPS65982/TPS65987 (PD controller) or the firmware  flashed inside the TPS65982 will do the required functionality?

    2) Is the firmware already loaded or should we flash the firmware to the TPS65982?

    3) If firmware has to be flashed, Is there a procedure to flash the firmware in the linux environment?

    4) Does the TUSB546  mux require any linux kernel driver or is it just a switch which does not require any linux kernel driver ?

    Regards,

    deepika.s

  • Hello,

    If you are planning to use DP over USB-C, then you can use the TPS65987D

    As far as loading external firmware, you will need an external EEPROM to load the firmware onto the device. You will use our GUI tool to generate your device configuration, create a binary, and then upload this binary to a SPI flash connected to the TPS65987D. We do not have any drivers to do this for a linux environment. 

  • Thanks for your reply Adam Mc Gaffin,

    As you mensioned , if firmware is loaded by using the GUI tool on to the device, Is any linux driver needed or the firmware alone is enough to do the job.

    Does TUSB546 ( mux) require any driver or it is just a switch.

     Regards,

    deepika.s

  • Hello,

    Want to make a small correction in your statement. You will use the GUI to generate the binary and then upload this binary image to an external EEPROM. 

    The MUX does not require any drivers

  • Thanks for your reply Adam Mc Gaffin,

    As per my understanding,
    The external EEPROM flashed with the firmware/binary is sufficient and no other linux driver is needed for the functioning of pd controller(TPS65987)

    Please let me know if my understanding is correct.

    1) If my understanding is correct, we don't want any customisation of the firmware and we are planning to interface the pd controller with snapdragon processor. Will the firmware be provided from TI or a GUI tool should be used to generate the firmware?

    2) If GUI tool has to be used to generate the firmware, could you please point to the document containing procedure to the create the firmware/binary fromm the GUI tool.

  • Hi Adam,

    Adding to previous queries by Deepika....

    3) Can you tell us in TUSB546EVM which device is the EEPROM you mentioned in your previous reply? Is it W25Q80 (U7)?

  • Hello,

    Please find my responses below:

    1. You will use the GUI to to generate a image to be flashed to the PD controller via an external EEPROM. This image must be created and loaded in order for the PD controller to operate. If you follow the TPS65987EVM page (https://www.ti.com/tool/TPS65987EVM) scroll down to the get started portion and you will see link to our GUI training series 

    2. Refer to above comment

    3. Yes that sounds right. 

  • Thanks for your response Adam Mc Gaffin,

    Using the tool we can create the binary/firmware for flashing to the flash memory connected to the PD controller.

    1) Is there any tool/GUI/procedure for flashing the firmware/binary to the flash memory? Could you please point to the document for loading the firmware to the flash memory?

    2) Also I would like to know that only loading the binary/firmware is sufficient and no linux driver is needed for functioning of PD controller.

    Regards,

    deepika.s

  • Adam,

    Adding to Deepika's queries...

    3. We referred to the videos and documents regarding the TPS6598x configuration tool to understand how to generate the program file and how to load the program file using the GUI.

    But we believe  that the videos and document explained mainly for TPS65988 Evaluation Module in which there is a FTDI chip connected to Micro B connector J9. We also understood that the Hardware interface to Program is Usb connected to J9 and Flash device is FTDI chip.

    In TUSB546EVM neither Micro B nor FTDI chip is present. Only Memory present is SPI flash (U7). And the SPI lines are connected to multiple connectors (J8, J11,J12). So we wanted to know which is the Hardware interface (connector) used to Flash the SPI memory? 

    4. Does the same GUI explained under TPS6598x configuration tool used for TUSB546EVM too?

    5. Can we get pre-programmed PD ICs in TUSB546EVM and for Prototype and Production?

    6. Almost a repetition of Deepika's question : Other than the GUI programming for the Flash, Any scope is there on the Linux Driver side from the Host (Snapdragon Processor in our case) ? 

    We had almost finalized our approach for DP over Type C in our custom board (HDMI to DP converter chip + TUSB546+TPS6598x chips). Just before we finalize our design, we would like to Test connecting our Snapdragon Processor SOM with the respective EVMs (HDMI to DP EVM and TUSB546EVM). As these are pretty costly items, we would like to make sure of the Software concerns very crystal clear before purchasing the EVM. So we expect very detailed and descriptive responses for these queries. 

    Thanks for understanding!

  • Hello,

    Please find my responses below:

    1. There are a number of different tools or methods to flashing a binary image to an external EEPROM. Can use a dediprog or aardvark. This step is not specific to our device. Once you flash the the image to the EEPROM, the PD controller will automatically pull the binary image from the EEPROM during the next power cycle

    2. You do not need a linux driver. The PD FW image on the external EEPROM is sufficient

    For the other questions, I will loop in the individual responsible for this device to better answer your questions

  • Thanks for the reply.

    So from your response, we understood that we shall use programmers like dediprog or aardvark to program EEPROM. We are still not understanding on how to generate binary files. SO to avoid confusions  We request TI to generate and share the Binary file with us for the EVK and for our custom prototype. 

    Regarding my previous Query #3 : checking the schematics of TUSB546EVM, we came to know that J11, J12 are NC. SO It should be J8 used for flashing the EEPROM.

    Also Question 5 looks invalid, because it is EEPROM programming and not PD IC. Also we believe PD does not have any internal flash. Please confirm is that right understanding.

    But we are still concerned on How EEPROM programming can be done for production? The quantity of EEPROM chips will be huge and programming each EEPROM is not practical! 

  • Hello Vijetha,

    Please watch the GUI training series. Generating binary files is addressed in those videos as well as any other GUI related questions you may have. You will need to create your own configuration using the GUI and generate the binary for your custom prototype. TI cannot do this for you. 

    Understand the drawbacks that the EEPROM can have on the system but unfortunately there is no way around this requirement. 

  • Hi,

    The TPS6598x configuration tool was used for TUSB546EVM development. There is a option GUI tool to save the project output as a full flash image and not just flash from the GUI its self refer to the below screenshot.

    From a OS perspective I can only think to look into if USB billboard is supported by your OS. This is outside the scope of TUSB546 and PD controller programming. The USB billboard interface occurs over USB 2 connection.