Hi Tony,

2014-11-17 19:04 GMT+01:00 Tony Lindgren <t...@atomide.com>:
> * Enric Balletbo Serra <eballe...@gmail.com> [141117 07:15]:
>>  Hi all,
>>
>> I'm trying to use the USB OTG driver of OMAP3 processor in HOST mode
>> when it's configured in dual role mode (CONFIG_USB_MUSB_DUAL_ROLE=y)
>>
>> The test case that I'm trying to solve is as follows.
>>
>> 1) Boot the board.
>> 2) Put the USB ID pin to ground
>> 3) Connect a pendrive.
>>
>> In such case doesn't work as expected and pendrive is never detected.
>>
>> Enabling debug information, I see that the phyter (twl4030) is
>> constantly polling the STS_HW_CONDITIONS register, who reports:
>>
>>   twl4030_usb 48070000.i2c:twl@48:twl4030-usb: HW_CONDITIONS 0x54/84; link 1
>>
>> The STS_HW_CONDITIONS register reports:
>>
>> Bit 2: STS_USB : 1: USB is plugged in.
>> Bit 4: STS_WAKEUP1: Level status of WAKEUP1 pad (active high) = nSLEEP1
>> Bit 6: STS_WAKEUP3: Level status of WAKEUP3 pad (active high) = CLKREQ
>>
>> I guess that in this case the state machine is waiting for VBUS, and
>> looks for bit 7 STS_VBUS (Level status of VBUS port), but this never
>> occurs. Using an oscilloscope I checked VBUS level and I can confirm
>> that it's a 0 level.
>>
>> My understand is that in this case the driver should enable VBUS but I
>> didn't find where is the best place to do this and why is not doing
>> this already. Any clue on this?
>
> Just tested v3.18-rc5 with beagleboard xm, and the host mode
> enumerates the devices, then may fail with "insufficient bus power"
> at least for the WLAN device I tried with.
>

Is this with following options ?

CONFIG_USB_MUSB_DUAL_ROLE=y
# CONFIG_USB_MUSB_HOST is not set
# CONFIG_USB_MUSB_GADGET is not set

Because with these options doesn't work for me. It only works if I
don't use dual role mode

CONFIG_USB_MUSB_HOST=y
CONFIG_USB_MUSB_DUAL_ROLE is not set

> I noticed that this only works with CONFIG_USB_MUSB_HDRC and
> CONFIG_TWL4030_USB built into the kernel. No luck so far with them
> as loadable modules for some reason. Looks like also USB gadgets
> fail with MUSB as modules.
>

It's weird, for me fails in both cases, built-in and with loadable
modules. Connecting the OTG Cable Adapter with a pendrive reports

[   51.462432] twl4030_usb 48070000.i2c:twl@48:twl4030-usb:
HW_CONDITIONS 0x54/84; link 1
[   51.470916] twl4030_usb 48070000.i2c:twl@48:twl4030-usb:
twl4030_usb_runtime_resume
[   51.487274] musb-hdrc musb-hdrc.0.auto: ID GND
[   52.480712] twl4030_usb 48070000.i2c:twl@48:twl4030-usb:
HW_CONDITIONS 0x54/84; link 1
[   53.489044] twl4030_usb 48070000.i2c:twl@48:twl4030-usb:
HW_CONDITIONS 0x54/84; link 1

And then polls until I disconnect the OTG Cable Adapter with the pendrive.

[   71.488983] twl4030_usb 48070000.i2c:twl@48:twl4030-usb:
HW_CONDITIONS 0x54/84; link 1
[   71.778930] twl4030_usb 48070000.i2c:twl@48:twl4030-usb:
HW_CONDITIONS 0x50/80; link 4
[   71.787536] musb-hdrc musb-hdrc.0.auto: VBUS Disconnect
[   72.489044] twl4030_usb 48070000.i2c:twl@48:twl4030-usb:
HW_CONDITIONS 0x50/80; link 4
[   74.088714] twl4030_usb 48070000.i2c:twl@48:twl4030-usb:
twl4030_usb_runtime_suspend


> And on the 37xx EVM, I've never had any luck getting any twl4030_usb
> interrupts for some reason.
>

Regards,

Enric

> Regards,
>
> Tony
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to