ODROID-C1/-C2 USB Detection only triggered by some devices

Matt Corallo oc2udbzfd at mattcorallo.com
Sun Jun 27 18:24:45 PDT 2021



On 6/27/21 21:16, Alan Stern wrote:
> On Sun, Jun 27, 2021 at 09:05:25PM -0400, Matt Corallo wrote:
>>
>>
>> On 6/27/21 20:58, Alan Stern wrote:
>>> On Sun, Jun 27, 2021 at 08:32:21PM -0400, Matt Corallo wrote:
>>>> On an ODROID-C1/C2 device, using the dwc2 driver, only some devices cause USB bus to enumerate devices.
>>>>
>>>> Specifically, both on boot and during normal operation, if some devices are
>>>> plugged in, all USB devices are detected, but if those devices are removed,
>>>> no detection of any devices occurs.
>>>
>>> So if you boot with no devices plugged in, and then you plug in (say) a
>>> flash drive, it doesn't get detected?
>>
>> There is a separate and long-standing bug on the ODROID-C1 and ODROID-C2
>> devices where hotplug doesn't work reliably, which is why I mentioned
>> rebooting. This specific bug all works identically whether booting fresh
>> with the devices or testing hotplug (which sometimes works with lsusb -vvv).
> 
> That doesn't answer my question.  If no devices are plugged in (either
> at boot or during normal operation), and then you plug in a device like
> a flash drive, does it get detected?  What you wrote seems to imply that
> it does not.

That is correct, nothing gets auto-detected after boot. lsusb -vvv *does* cause devices in the second group below to be 
reliably detected, and the first group only if at least one of the devices in the second group are present.

>>>> I sadly don't have a lot more to go on, but xdarklight on IRC (I believe ==
>>>> Martin, CC'd) confirmed the findings with a grab bag of USB devices he had
>>>> sitting around as well, and may be able to provide CONFIG_USB_DWC2_DEBUG
>>>> output.
>>>>
>>>> Any further guidance on where to look to debug this issue would be appreciated.
>>>>
>>>> As a sample, some devices which, when plugged in (either alone or together)
>>>> do not cause any USB device detection (see attached lsusb -v files):
>>>>
>>>> Samsung T7 USB 3 drive
>>>> Samsung-Branded Silicon Motion USB 3 Flash Drive
>>>>
>>>> Some devices which, when plugged in cause all USB devices to be detected:
>>>>
>>>> Mushkin-Branded Kingston USB 3 Flash Drive
>>>> Kingston-Branded Kingston USB 2 Flash Drive
>>>> USB-3 MicroSD Card reader (lsusb/testing by xdarklight)
>>>> SanDisk USB 3 Flash Drive (lsusb/testign by xdkarlight)
>>>
>>> This could simply be a question of power.  Most of the flash drives and
>>> the card reader probably don't require very much power, whereas some of
>>> them need more.  You can this, to some extent, in the MaxPower fields of
>>> the lsusb -v listings.
>>
>> That seems strange, though, given that the first group of devices appear and
>> work totally fine, but only when something from the second group of devices
>> is plugged in. If the second group is not present, then the first group of
>> devices do not appear at all.
> 
> You mean that only devices in the first group are affected by this bug?
> Devices in the second group are always detected correctly regardless of
> what else is plugged in?  (This contradicts what you wrote above.)


Correct. Ignoring hotplug (ie on fresh boot or lsusb -vvv), the devices in the second group work great. The devices in 
the first group do too, but only if a device from the second group is present.

Sorry for the confusion,
Matt



More information about the linux-amlogic mailing list