Re: Not enough host controller resources for new device state

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

 



On Mon, November 23, 2015 2:43 am, Alan Stern wrote:
> On Sun, 22 Nov 2015, Patrick Shirkey wrote:
>
>> > It _is_ possible to disable xHCI at the system level.  By sending the
>> > proper command to the appropriate sysfs file, you can unbind the
>> > xhci-hcd driver from the xHCI controller.  This will disable the
>> > controller, and so all further USB communications will run no faster
>> > than High Speed.  (Or if your computer doesn't have an EHCI
>> controller,
>> > you won't get any further USB communications at all.)
>> >
>>
>> Is there a method to determine if the system has multiple or single
>> controllers available?
>
> lspci will tell you.
>
>> Do you or anyone else here have a link to the sysfs command to unbind
>> the
>> controller?
>
> If you provide the output from "lspci", I will tell you what command to
> use.
>

Here's the USB info from lspci.

# lspci

00:14.0 USB controller: Intel Corporation 8 Series/C220 Series Chipset
Family USB xHCI (rev 05)
00:16.0 Communication controller: Intel Corporation 8 Series/C220 Series
Chipset Family MEI Controller #1 (rev 04)
00:1a.0 USB controller: Intel Corporation 8 Series/C220 Series Chipset
Family USB EHCI #2 (rev 05)
00:1d.0 USB controller: Intel Corporation 8 Series/C220 Series Chipset
Family USB EHCI #1 (rev 05)



>> > Actually it's a little more complicated than that.  Some systems have
>> a
>> > software-settable switch that determines whether devices will connect
>> > to the xHCI or the EHCI controller.  On such systems, Linux sets the
>> > switch to use xHCI, unless the kernel was built without xHCI support.
>> > Therefore, although it is possible to force the use of EHCI on such
>> > systems, in order to do so you have to rebuild the kernel.
>> >
>>
>>
>> In regards to the last item can you provide some more details on why the
>> software switch is only set if the kernel module is enable/disabled?
>>
>> I assume it has something to do with compiler flags and run time
>> efficiency?
>
> No, it's simpler than that.  If the kernel is built without support for
> xHCI, it would be foolish to connect devices to the xHCI controller --
> then the system wouldn't be able to communicate with them!
>
> Conversely, if the kernel does have support for xHCI, we assume that
> the user will prefer xHCI over EHCI if the motherboard has xHCI.
> Therefore the switch does get set to connect devices to the xHCI
> controller.
>

Obviously the solution above should suffice for my purposes but out of
interest is it viable to make the switch accessible to run time
configuration?





--
Patrick Shirkey
Boost Hardware Ltd
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



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

  Powered by Linux