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.

TPS65950/TWL4030 OTG in host mode not driving VBUS

Other Parts Discussed in Thread: TPS65950

Hi,

Sorry if this is the wrong forum for this question. I've already posted a similar question in the OMAP-forum
but got no answer, so I try here instead. I am not a harware person so please bear with my ignorance:)

Trying to use the OTG as host. The board has a TWL4030 (which I assume is compatible with TPS65950).

My situation is:

* Beagleboard (rev.B7) using TWL4030 OTG port.
* OTG-port is connected to a mini-A connector (yes, ID pin is grounded!!!!).
* OTG-port --> mini-A --> mini-B --> USB self powered Hub.
* VBAT = 4.2 V 

* USB-OTG (host) works in Linux (2.6.33).  Self powered Hub is detected.
* USB-OTG (host) DON'T work in U-Boot (usb reset time out). Self powered Hub is NOT detected.

I have noticed the following in U-Boot:

* VBUS is only driven to 4.2 V when bit DRVVBUS is activated.
* As soon as session is started (DEVCTL.SESSION=1) VBUS falls down to 0 V.
* DEVCTL.HOSTMODE is never set, leading to timeout for command 'usb reset'.
* Experimented with register TESTMODE (bit FORCE_HOST) with no luck. 

I have noticed the following in Linux:

* VBUS is driven to 5.1 V.

Why is VBUS never near 5 V in U-Boot but 4.2V (which seems to be same level as VBAT)?
The Linux kernel have no problems with the same hardware and cable configuration. 

I've instrumented the code in U-Boot and tried to follow the sequence and function twl4030_usb_ulpi_init() is getting called.
I've also tried to compare the U-Boot code with kernel code and it looks like the init-sequence is the same. But I'am missing something.

Once Linux has been started It is possible to restart and halt in U-Boot. This time everything works OK and it is
possible to use command 'usb reset', which detects the Hub. This probably works because the VBUS is left at 5.1 V during the restart. 

Any hints would be appreciated.