Все порты USB на материнской плате работают через одну шину


0

У меня есть материнская плата Gigabyte H87-HD3. Согласно спецификации он поддерживает до 8 портов USB 2.0 / 1.1. Сейчас я пытаюсь подключить устройство, несовместимое с USB 3.0. Он не работает ни на одном из портов USB, ни непосредственно на плате, ни на корпусе, ни синих портах USB 3.0 или других.

При попытке заставить мое устройство работать, мне показалось, что все порты направлены на один контроллер, и мне интересно, если это правильно. Я на Ubuntu, это вывод lsusb -t:

/:  Bus 04.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/6p, 5000M
/:  Bus 03.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/14p, 480M
    |__ Port 5: Dev 2, If 0, Class=Human Interface Device, Driver=usbhid, 12M
    |__ Port 5: Dev 2, If 1, Class=Human Interface Device, Driver=usbhid, 12M
    |__ Port 5: Dev 2, If 2, Class=Human Interface Device, Driver=usbhid, 12M
/:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/2p, 480M
    |__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/8p, 480M
/:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/2p, 480M
    |__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/6p, 480M

Как видите, Bus 03 имеет драйвер xHCI, скорость USB 2.0. Независимо от того, где я подключаю свои устройства, они всегда отображаются под шиной 03. Я пробовал это как с Ubuntu, так и с Windows 10, поэтому я не думаю, что это проблема программного обеспечения.

Может ли кто-нибудь объяснить это мне? Направляет ли плата все на один и тот же автобус? Нет ли надлежащей поддержки USB 2.0, несмотря на спецификацию?


Обычно USB-концентратор интегрируется с хост-контроллером USB, поэтому хост-контроллер USB может обслуживать более одного USB-порта. IOW наличие нескольких портов USB (на материнской плате или даже на SoC) не указывает точное количество хост-контроллеров USB.
опилки

Ответы:


2

У вас очень четко есть 4 разных автобуса. Контроллер USB 3.0 (XHCI) отображается на двух шинах (шины 3 и 4). Это из соображений совместимости, часть контроллера USB 2.0 / 1.0 получает другую шину.

На шине 1 и 2 находятся два контроллера USB 2.0 (EHCI), каждый с двумя портами, один из которых, вероятно, является портом отладки, который не подключен (см. dmesg), А другой напрямую связан с интегрированным концентратором каждый (один с 6 портами). на шине 1 и один с 8 портами на шине 2).

Итак, если вы посмотрите lspci, вы должны увидеть 3 контроллера USB, один XHCI и два EHCI. Очень вероятно, что контроллеры EHCI находятся в южном мосту (проверьте адрес).

Лист данных для Gigabyte H87-HD3 говорит

До 6 портов USB 3.0 / 2.0 (4 порта на задней панели, 2 порта доступны через внутренний USB-разъем)
До 8 портов USB 2.0 / 1.1 (2 порта на задней панели, 6 портов доступны через внутренние USB-разъемы)

Таким образом, 6 портов USB 3.0 находятся там, где они принадлежат, и 6 из этих портов также находятся на шине 3 в режиме совместимости с USB 2.0.

Теперь возможно, что контроллер XHCI имеет 8 дополнительных портов USB 2.0 (посмотрите таблицу данных и проверьте их), и разработчики платы использовали только эти порты и проигнорировали дополнительные 14 портов, которые, вероятно, имеются на южном мосту. В этом случае, действительно, все порты будут маршрутизироваться через один контроллер, и если у вас есть USB-устройство, которое по какой-то причине не нравится этот конкретный контроллер, вам может не повезти.

Но это точно сказать нельзя, хотя, если вы по очереди подключаете работающее устройство USB 2.0 к каждому из 14 портов, и оно в каждом случае обнаруживается на шине 3 с другим номером порта, оно начинает звучать очень вероятно.

Вы пытались подключить внешний концентратор к одному порту и подключить «трудное» устройство к этому концентратору? Это может помочь.


Я попробовал Wi-Fi USB 2.0 во всех доступных портах моего компьютера. Он всегда
До

Как вы думаете, внешний концентратор 2.0 будет принимать устройства только 2.0 в моей конфигурации? Или мне лучше искать отдельную карту расширения USB 2.0 pci?
до

1
Идея использовать концентратор USB 2.0 была для тестирования, потому что большинство людей где-то имеют концентратор или могут заимствовать его. Концентратор USB 3.0 также стоит попробовать, потому что AFAIK он должен переводить с USB 3.0 на USB 2.0, если подключается устройство USB 2.0. В обоих случаях идея состоит в том, чтобы позволить «сложному» устройству общаться с концентратором, а не с контроллером (что бы ни случилось с этим соединением). Если вы все равно что-то покупаете, самое надежное решение - это карта USB 2.0, если у вас есть свободные слоты PCI.
dirkt
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.