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.

RM48 HDK Schematic - USB.SUSPEND

Expert 1485 points

Other Parts Discussed in Thread: TUSB1105, RM48L952, RM48L950

We are implementing TI # TUSB1105 on our module.  On the RM48 HDK schematic, there appears to be 10K pull-up resistors on USB.SUSPEND and USB.RCV from the MCU.  Are these needed?  Are any additional external pull-up or pull-down resistors needed?

  • Rustin,

    The HDK implements multiple functions on the same set of pins, so I am not sure whether the pullup is there for the MibSPICS or the USB port.

    However, it appears that the most critical pins on the TUSB1105 will be:

      - SUSPND

      - OE\

     - SOFTCON (if device)

    SUSPND and OE\ should be pulled up by default until the MCU has booted and can decide through software whether or not to drive them actively.

    USB isn't the primary function for the pins that it uses, so the default pullup/pulldown doesn't match what USB wants and you'll need to override.

    Looking at the terminal functions table of the RM48L952 datasheet, the SUPSND on port 1 has an internal pullup but the port 2 SUSPEND and both TXEN pins have internal pulldowns.  So those three pins will need an external pullup resistor strong enough to override the pulldown.

    You also want to make sure you have control of VBUS if you are a host, so that's the PortPower signal.  That goes to your power switch which is different than the TUSB1105 so can't comment on whether the pull direction is ok.  I need to check on the polarity of this signal and get back to you as it's not clear in the TRM.

    The last one is the PUENO signal which will be '1' when you want to turn on the pullup resistor in the device's phy.  That drives softcon.  You probably want to wait until the TMS570 has booted before signalling a connection to the host, so SOFTCON on the phy would be used and should be pulled down by default after reset. PUENO has an internal pulldown though so you don't need to have an external one.    If you are using the USB host I think you just tie SOFTCON to '0' since the host should never pullup the bus lines.  In this case however you will need pulldowns on D+,D- which isn't shown in the TUSB1105 datasheet;  you might consult the usb standard for the best placement of these.

    Best Regards,

    Anthony

     

  • Looking at both the RM48L950 and RM48L952 datasheets, there are discrepancies or missing information regarding pullup / pulldowns.  For example, USB1.SUSPEND is shown to have mux options of MIBSPINCS[1], N2HET1[17], MII_COL, and USB1.SUSPEND.  If you look at Table 2-5 of the datasheet, N2HET1[17] shows a default pull-down state with 20uA default pull (programmable).  If you look at Table 2-12, MIBSPINCS[1] shows a default pull-up state with 20uA default pull (programmable).  If you look at Tables 2-14 (MII_COL) and 2-15 (USB1.SUSPEND), they show a default pull-up state with undefined pull type.

    What is correct?

    On a separate note, is there anything in MCU or any associated software drivers requiring the use of port power / over current for proper operation as a host?  In our application, we are communicating with a USB SOM daughter board which will already be powered, so we would not require the control and overcurrent detection of the typical USB host powering application.

  • Rustin,

    Hi, sorry for the error in the datasheet.  We'll get that corrected.

    Pin 130 / Ball F3 has a buffer that is programmable in strength as either 2mA Zero Dominant or 8mA drive,  and it has a 20uA programmable pullup/pulldown.

    The default state of the pull resistor is pull UP.

    I think you should be OK without port power / overcurrent if this is a closed system.  Overcurrent certainly. 

    Port power could be a little tricky.   Just because your SOM may be powered, this doesn't mean that it's USB transceiver isn't bus powered.  So you should check this. 

    Also, if the device is on and doesn't see any activity for 3ms it needs to recognize this as Suspend but then the host should not try to resume it for another 2ms. 

    You can make the device exit suspend with a bus reset though, and that may be perfectly ok for your application.

    Which vendor are you planning to use for a USB stack?  (don't need to answer this if you don't want)...  Point is that you might want to also ask the vendor of the USB stack this question.  

    Best Regards,

    Anthony