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.

Hercules RM48L952 USB1.PortPower (Terminal K2)

Other Parts Discussed in Thread: RM48L952

Hi,

  We are using the TI RM48L952. Under the TI datasheet, chapter 29, section 29.2 Is the USB section. There were several registers with bits defined related to port power. Which register and field would we use to toggle terminal K2. USB1.PortPower High or Low.

Thank You.

  • Hi Tammy,

    Super - glad you got them.  Just to double check - you found the control of port power as part of the OHCI controller, correct?

    ie.. you don't have to go around the OHCI controller and configure these pins in a GIO mode, they are directly controlled by the port status and control registers of the OHCI controller... 

  • Hi Anthony. Thank you. Yes, K2 is multiplexed to USB1.PortPower. The hardware engineer wanted to test something and wanted me to force K2 down as USB1.PortPower (not gio), because of strange problems with the USBH port. Is it possible to drive K2 low via software? If so, which USB register and bit? The datasheet wasn't clear on which is tied to terminal K2 in USB mode. Thank you again.
  • Hi Tammy,

    I see.  So if I just wanted to check the functionality of the power switch on my board, I would probably configure K2 as GIOB[1] (default) and control the pin through the GIOB register set.  {for a quick bench test}.

    But for your USB stack software - you probably should be using the OHCI registers.   There are some global registers like HCRHDESCRIPTORA, HCRHDESCRIPTORB, and HCRHSTATUS that control port power,   and also HCRPORTSTATUS0.

    There are options to control port power on a per port or a global (all ports together) in the controller.   If you're only using one of the 2 root hub ports on the chip it probably makes no difference which you use but you'd need to pick one and use the appropriate control bits.

    Hopefully - the USB stack vendor already supports these registers - but you might check this to confirm.

    The OHCI registers are 'harder' in my opinion anyway to poke at on the bench though,  so your HW engineer is probably better poking at GIOB.
    If you haven't read the OHCI spec yet - you'll notice when you get to these registers that the same bits function differently on reads v.s. writes, so it's like having a write only register and a read only register (with different content) at the same address.   Just means you need to read the bit descriptions pretty carefully.   That's why for the bench checkout I'd go with the GIO.

    If you're seeing something 'strange' you probably want to see if the Overcurrent protection is turned on, and if it's being tripped.  Because I believe the overcurrent signal can automatically flip port power off on ... if you're seeing power getting turned off unexpectedly.   This overcurrent feature is also part of the OHCI spec and controlled by the same registers.