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

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

 



Hi Martin,

On 7/12/2021 3:35 PM, Martin Blumenstingl wrote:
> Hi Minas,
> 
> On Mon, Jul 12, 2021 at 8:42 AM Minas Harutyunyan
> <Minas.Harutyunyan@xxxxxxxxxxxx> wrote:
> [...]
>>> 3. unplugging the Corsair Voyager and plugging in a USB 3.0 card
>>> reader (nothing automatically happened), then running lsusb -vv and
>>> lsusb -t
>> Could you please set verbose debugging:
>> CONFIG_USB_DWC2_VERBOSE=y
>>
>> and repeat test 3. There are couple of transaction errors and some EP
>> stalled. I want to understand on which device/ep this happen.
> sure, I attached the dmesg output (gzipped, since it's uncompressed
> size is 1.5M) with CONFIG_USB_DWC2_VERBOSE=y
> The lsusb -vv and lsusb -t outputs are the same so I did not attach them again.
> 
> 
> Best regards,
> Martin
> 

Per our understanding this issue is because of power budget and 
autosuspend functionality.

Autosuspend. Please review this patch: "usb: core: hub: Disable 
autosuspend for Cypress CY7C65632"

https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git/commit/?h=usb-next&id=a7d8d1c7a7f73e780aa9ae74926ae5985b2f895f

It's very similar to your case. Actually you already tested 
usbcore.autosuspend=-1 and it's helped you.
Could you please develop same patch for your soldered hub and test it.

Power budget. Old, cheap flash disks required about 200-300ma, but most 
of USB3 devices require 500ma. It could be serious issue to explore this 
devices with USB2 hubs. Even if this type of devices will successfully 
enumerated on EP0 without power problems, after set_interface when 
enabling multiple EP's (i.e. BULK IN and OUT for mass storage) power 
requirements should be increased which can violate USB2 hub port rules.

Thanks,
Minas






[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux