Як інтерпретувати вихід 'lsusb' - Які всі ці кореневі концентратори Linux Foundation?


18

Нещодавно я дізнався про команду lsusb під час усунення проблем із гарнітурою.

Мій ноутбук працює під керуванням debian і в даний момент нічого не підключається до USB, але коли я запускаю команду "lsusb", я все одно отримую зовсім небагато результатів:

root@t500:~# lsusb
Bus 008 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 007 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 006 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004 Device 003: ID 0a5c:2145 Broadcom Corp. Bluetooth with Enhanced Data Rate II
Bus 004 Device 002: ID 08ff:2810 AuthenTec, Inc. AES2810
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 002: ID 0781:b6d0 SanDisk Corp. 
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

Чи може хтось розбити, що це означає більш детально?

Картка SanDisk підключена через PCMCIA, а не USB. Чи вказані в lsusb картки ПК та USB-пристрої?

У мене немає підключеного зовнішнього Bluetooth, навіщо цей дисплей?

Чому деякі кореневі концентратори 1.1, а деякі 2.0? Це означає, що деякі мої порти USB - 2.0, а інші - ні?

Що таке кореневий концентратор, просто порожній порт USB?

Відповіді:


7

USB-концентратор - це пристрій, який має один шнур, який підключається до одного USB-порту, але забезпечує декілька портів USB для підключення пристроїв. По суті це мультиплексор USB.

Кореневий концентратор, AFAIK - це внутрішній USB-концентратор. Наприклад, на материнській платі може бути один слот USB, але є кілька зовнішніх портів, оскільки на материнській платі є внутрішній кореневий концентратор. (Звичайно, це спрощено. Я не фахівець з обладнання.)

Пристрій Bluetooth - це мікросхема всередині вашого комп'ютера, яка фактично транслює трафік радіо Bluetooth. Можливо, його проводять через USB-порт у корпусі комп'ютера.

Що стосується відображення "Linux Foundation", я гадаю, що звідси беруться драйвери. Але я не впевнений.


1
Багато пристроїв підключаються як USB-пристрої, але не підключені до "порту" у значенні порту, як у нас на зовнішній стороні комп'ютера. Вони просто логічно з'єднані через USB (наприклад, шляхи між пристроєм та концентратором USB можуть знаходитися безпосередньо на материнській платі системи, наприклад, дротовий мережевий порт на Raspberry Pi). Вони працюють так само, як вони підключені до стандартних портів USB, але, звичайно, їх неможливо видалити.
Джим МакКензі

21

"Корінний концентратор" є фальшивим пристроєм і представляє саму шину. На будь-якій шині він завжди має номер пристрою 1. "Виробник" - це завжди 1d6b, "Linux Foundation", але, наскільки я можу сказати, це просто створити "корінь" для "гілок" дерева (як ви побачите з lsusb -t, як це запропонував Вагнер). Характер шини (версія 1.1, 2.0, 3.0) відображається - ідентифікатор пристрою (0001, 0002, 0003).

(Тонкий момент - насправді є "USB-хост-контролер" - це фізичний пристрій, але це НЕ сам USB-пристрій! Це звичайно пристрій PCI. Наприклад, на моїй машині у мене є дві шини USB і дві USB-хост-контролери, видимі командою lspci. Їх виготовляє Intel, а не фундація Linux. "Корневий концентратор USB" являє собою фізичний пристрій PCI. Я вважаю, що вся "Linux Foundation" річ виник тому, що фізичний пристрій має PCI, не USB, ідентифікатори. Http://www.usblyzer.com/usb-topology.htm )

Пристрій SanDisk може представляти себе зовнішньому світу як слот PCMCIA (я здогадуюсь), але внутрішньо він підключений до USB-шини 001. (Знову він позначений як Пристрій 002, оскільки сама шина - Пристрій 001.)

Аналогічно, пристрій Bluetooth є внутрішнім (як зазначив strugee) і знову підключається до шини USB, в даному випадку шини 004, яка є шиною USB 1.1 (низькошвидкісна). Це має сенс, оскільки Bluetooth має відносно низьку швидкість. На цій же шині знаходиться пристрій AuthenTec, який є сканером відбитків пальців, знову низькошвидкісний.

Таким чином, цей вихід означає, що у вас є вісім (!) Вбудованих USB-шин із підключеними трьома пристроями. А у вас є дві високошвидкісні USB-шини та шість низькошвидкісних. Деякі або всі з них можуть мати зовнішні порти для підключення до різних зовнішніх пристроїв USB. Ви можете спробувати підключити пристрій та запустити lsusb ще раз, щоб побачити, який порт підключений до якої шини.


1
PS - схоже, що MS Windows також обманює це питання, використовуючи ідентифікатори PCI для USB Root Hubs. Я думаю, немає хорошого рішення, тому "Linux Foundation" один розумний. Рішення MSW ризикує конфліктувати з реальним ідентифікатором пристрою USB, пропонуючи при цьому перевагу в тому, щоб знайти його в реєстрі PCI. (Виявляється, Intel має ідентифікатор постачальника 8086 як для USB, так і для PCI.)
Джон F,

7

Перевір це

lsusb -t

-t скидає фізичну ієрархію USB-пристроїв як дерево

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.