Re: dwc3/xHCI max connection limit

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

 



On Wed, Feb 11, 2015 at 12:54:52PM -0600, Bin Liu wrote:
> Peter,
> 
> On Tue, Feb 10, 2015 at 10:08 PM, Peter Stuge <peter@xxxxxxxx> wrote:
> > Bin Liu wrote:
> >> I have a ARM SoC which has a dwc3 drd controller, to validate if there
> >> is a limit of max device connections, I connected multiple hubs, then
> >> keyboards and mice.
> >>
> >> When plugged in the 32th device, xHCI shows the following message and
> >> the numeration failed.
> >>
> >>         Not enough host controller resources for new device state.
> >>         can't set config #1, error -12
> >>
> >> Then plugging in more keyboards or mice, this message always happened.
> >> But then MSC devices were still enumerated correctly at this point. So
> >> it seems the issue is only related to interrupt transfers?
> >>
> >> I am trying to understand if this is hardware or xHCI driver
> >> limitation. Anyone has any pointers how to debug this issue?
> >
> > I don't know if it is the reason for what you experience above, but
> > xHCI allows for host controller hardware to limit the number of
> > devices that can successfully be attached - which IMO permits xHCI
> > host controllers to be generally incompatible with the USB
> > specification.
> >
> > http://marc.info/?l=linux-usb&m=139654353325844
> 
> Thanks for the pointer. I checked HCSPARAMS1 register on my platform,
> its value is 0x02000440, which means it has 64 device slots. So I
> think my issue is on elsewhere.
> 
> Keep looking...

no, you're hitting the limit alright :-) You said it dies after the 32nd
device right ? I think each device is taking up 2 slots.

Just a guess, probably worth counting how many slots are used by each
device.

-- 
balbi

Attachment: signature.asc
Description: Digital signature


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

  Powered by Linux