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: USB Type C DRP Mux with TPS25750 PD controller

Part Number: TPS25750
Other Parts Discussed in Thread: TUSB542, HD3SS3220, TPS65987D, TPS65987DDJ, TPS65981

Hello,

We have a project requiring to provide a USB-C DRP port which can provide 5V/15W as a source and self powering as a sink. The DFP data core and UFP data core are separated core. The TPS25750 looks great as the PD controller. The TUSB542 was originally considered as the USB3.1 SS Mux, but it looks that the TUSB542 cannot change it direction dynamically as DFP/UFP. The questions are:

1) Do you have recommendation for the DRP SS Mux to work with TPS25750? Specifically, I think it needs the direction control detected from DFP/UFP other than the SEL_orientation, or 2:2 MUX can be chosen by both DFP/UFP detection and CC orientation.

2) do you have any reference design meeting our requirements?

3) looks HD3SS3220 can control direction but not be able to working with TPS25750 since they have their own CC detection and control respectively, is it correct?

Thanks,

  • Hi George,

    What type of application are you looking to design? Unfortunately, we do not currently have any reference design that match your description. 

     would you be able to help with questions 1 and 3?  I believe the TUSB542 supports DRP but not sure about the dynamic change.

    Thank you,

    Hari

  • Hi Hari, David,

    Thank you for the fast feedback.

    Our application is to provide a single USB Type C port, which can provide 5V/3A source (Source) or self powered (Sink), data DFP or UFP and safely compliance with the other USB-C DFP/UFP/DRP.

    I thought the USB3.0 core cannot dynamically change its roles so we need two cores one for DFP one for UFP. By double checked, It looks that the USB3.0 core can be dynamically changed to Host or Device. So it changes my questions to below:

    1) To implement our application, do you think it makes sense to use TPS2570 as PD controller to decide role, pass Orientation through GPIO to Mux TUSB542, pass DFP/UFP status through GPIO to the USB3.0 core, and software change USB3.0 core to DFP/UFP according to GOIO?

    2) I did not find how to designate specific GPIO to specific event, for example, Cable_Orientation_Event to GPIO0. Is this doable? 

    3) In the " TPS25750 Application Customization Tool", there is no place to set GPIO. Should I use different tools to customize the TPS25750 or I missed something here?

    4) The setting file from the  " TPS25750 Application Customization Tool", fullflash.bin, is it ok to use this file directly program into the EEPROM from Aardvark and boot the TPS25750? 

    5) Without the TPS25750 EVA board, can we still use  "TPS25750 Application Customization Tool", external I2C programmer (Aadvark) to customize GPIOs and program the boot image into EEPROM?

    6) With TPS25750, do you have any recommendation how we can make the USB2.0  core being OTG capable based on the USB-C role detection?

    Thank you.

    Regards,

    George

  • Hi George,

    You should be able to use the TPS25750D for sourcing 5V/3A and sinking power. The PD controller will handle the CC communication, PD negotiations and etc. From there yes you may use a GPIO event as you would like to connect to the TUSB542.

    For the GPIO events, this is a feature we will be supporting, but it is not currently available in the GUI Tool. We plan to release this capability early next year.

    You can use the web GUI Tool to flash directly to the EEPROM, but it will only work via the TIVA IC which is on the EVM, not via Aardvark. However, you can generate the "fullflash.bin" and then use the Flash Center application to program the EEPROM via Aardvark if you prefer that. 

    For OTG mode, you can simply program the TPS25750D as a DRP and as long as you are providing power to the PD controller via VIN_3V3 and PP5V, you can source power in OTG mode.

    Thank you,

    Hari

  • Hi Hari,

    Thank you for your fast response.

    Can you please clarify the followings which not very clear for me:

    2) I did not find how to designate specific GPIO to specific event, for example, Cable_Orientation_Event to GPIO0. Is this doable currently? in other word, if not using "GUI Tools", is there any other way to designate specific GPIO to specific event?

    5) using Flash Center application to program the the "fullflash.bin" into EEPROM address 0X0 can boot up the TPS75750. correct?

    6) With TPS25750, do you have any recommendation how we can make the USB2.0  core being OTG capable based on the USB-C role detection, in terms of the Data path instead of the power role?

    Thanks,

    George

  • Hi George,

    2) No unfortunately, it is not possible to configure the GPIOs to specific events. This feature will be available early next year.

    5) Yes this should work, however the address may not be 0x0, it will depend on the EEPROM. For example, I believe the address for the EEPROM on the EVM is 0x50.

    6) I am not sure how you are planning to use the USB2.0 core for OTG mode, but you may use the GPIO event UFP_Indicator_Event to trigger it, when this feature is available. However, the power role of the PD controller will only depend on the power contract negotiated based on the configurations set using the Application Customization Tool GUI, not on the data role.

    Thank you,

    Hari

  • Hi Hari,

    If we cannot configure the TPS25750 GPIOs to specific events, how should we pass the orientation status to the MUX and UFP/DFP status to the USB3.0 core?

    If TPS25750+ TUSB542 solution  is not currently valid, could you please recommend another solution per the application description in my original email?

    Regarding the 5) Yes this should work, however the address may not be 0x0, it will depend on the EEPROM. For example, I believe the address for the EEPROM on the EVM is 0x50;

    how can I know which EEPROM location I should to program the full.bin to make the EEPROM bootable for the TPS25750? Please point where I can find these information.

    Thank you,

    Regards,

    George Huang

  • Hi Hari,

    Can you please confirm above inquiries? We need a currently available solutions soon.

    Thanks,

    George

  • Hi George,

    As I mentioned earlier, you will not be able to configure GPIO trigger events, therefore another option would be to include an MCU in the system to read the TPS25750 registers to determine the data role. 

    Another solution that you could take a look at would be the TPS65987D with the TUSB542.

    For the EEPROM, the full flash image contains two regions, but you don't need to specify the location as this information is already included in the binary itself. Therefore, yes you can flash starting at address 0x0.

    Thank you,

    Hari

  • Thanks Hari,

    Some further questions:

    1) What is the difference between TPS65987D/TPS65987DDJ/TPS65987DDH? Are they drop-in replaceable?

    2) Is TPS65987DDJ available to map USB-C events to GPIOs?

    3) Does TPS65987DDJ have both Cable Orientation events and UFP/DFP events whih can be mapped to GPIO?

    4) Should I use TPS65981_2_6_7_8 Application Customization Tool to map the TPS65987DDJ  GPIOs to the specific events? it looks that only TPS65987DDH is supported by TPS65981_2_6_7_8 Application Customization Tool.

    Sorry about so many questions, just in case  I miss some important message during the design.

    Thanks,

    George

  • Hi George,

    1. TPS65987D is the general part number, with the DH/DJ ROM versions. We recommend using the TPS65987DDH revision as this is for mass market. The DJ revision is tailored for PC/Notebook TBT applications. I don't think this would apply for this case. 

    2. Yes, the TPS65987DDH is able to map GPIO events. Please see the TPS65987D Technical Reference Manual to see all of the available events.

    3. Yes, you will see it listed on Table 3-74 of the TRM I linked above.

    4. Yes you will use that GUI Tool to configure the registers and configurations such as GPIO Events.

    Thank you,

    Hari

  • Hi Hari,

    Thank you so much for your great support.

    Just two more questions and please close this tricket:

    1) Are all GPIO mapped events polarity configurable, for example, high as DFP or low as DFP?

    2) Can ask for the schematic review in this forum?

    Thanks,

    George

  • Hi George,

    Hari is currently out on holiday and will get back to you when he returns. Thank you for your patience.

    Thanks,

    Emma

  • Hi George,

    For the most part, I believe so. I would recommend checking the full table of GPIO events in the Technical Reference Manual to see the individual events and how they are triggered.

    Yes, you may upload your schematic for review here.

    Thank you,

    Hari