ehci-omap unresponsive when used with external hub

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



I have been troubleshooting an issue with USB which appears to happen
with  AM3517, OMAP3530,  and DM3730 in which the USB doesn't detect
removal or connection of USB devices and interrupts stop occurring.

In every case, I have the OMAP3 EHCI connected to a USB3220
transceiver which is treated as configured in the device tree as
usb-nop-xceiv with reset-gpios configured to enable it.

When I connect and disconnect peripherals like thumb drives,
keyboards, mice, etc., directly to the USB port, the system seems to
behave as I would expect.  If I connect a hub with a device already
connected to it, the system recognizes the attached device

peripheral -> external hub -> transceiver -> omap3-ehci

If I disconnect the hub from the OMAP, it also sees the disconnection
and subsequent reconnection.

However, if I connect a hub with nothing attached to the hub, I get
the following message:

ehci-omap 48064800.ehci: suspend root hub

At this point, no disconnection or reconnection are ever recognized,
and no further interrupts are recorded on the ehci-omap from
/proc/interrupts.

If I pass "optargs usbcore.autosuspend=-1" to as a command line
parameter, the system works as expected.  I have been able to
replicate this issue with multiple external hubs, and I am beginning
to test this work-around with different hubs, but it seems like
disabling autosuspend is a hack.

I was wondering if there might be a better solution and/or suggestions
as to what needs to happen to poll the USB occasionally to see if
there are devices present.

Thanks

adam




[Index of Archives]     [Linux Arm (vger)]     [ARM Kernel]     [ARM MSM]     [Linux Tegra]     [Linux WPAN Networking]     [Linux Wireless Networking]     [Maemo Users]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Trails]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux