Jak interpretować dane wyjściowe polecenia „lsusb” - jakie są te wszystkie koncentratory root Linux Foundation?

18

Niedawno dowiedziałem się o poleceniu lsusb podczas rozwiązywania problemu z zestawem słuchawkowym.

Mój laptop działa w systemie debian i obecnie nie ma niczego podłączonego do portu USB, ale po uruchomieniu polecenia „lsusb” nadal otrzymuję całkiem sporo danych wyjściowych:

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

Czy ktoś mógłby rozbić, co to oznacza bardziej szczegółowo?

Karta SanDisk jest podłączona przez PCMCIA, a nie USB. Czy w lsusb są wymienione zarówno karty PC, jak i urządzenia USB?

Nie mam podłączonego zewnętrznego bluetooth, dlaczego ten ekran miałby być wyświetlany?

Dlaczego niektóre główne koncentratory 1.1, a niektóre 2.0? Czy to oznacza, że ​​niektóre z moich portów USB to 2.0, a inne nie?

Czym dokładnie jest hub główny, tylko pusty port USB?

some1
źródło

Odpowiedzi:

7

Koncentrator USB to urządzenie, które ma jeden przewód, który można podłączyć do jednego portu USB, ale zapewnia wiele portów USB, do których można podłączyć urządzenia. Zasadniczo jest to multiplekser USB.

Koncentrator główny AFAIK to koncentrator USB, który jest wewnętrzny. Na przykład może być tylko jedno gniazdo USB na płycie głównej, ale istnieje wiele portów zewnętrznych, ponieważ do płyty głównej podłączony jest wewnętrzny koncentrator główny. (Jest to oczywiście uproszczone. Nie jestem ekspertem od sprzętu.)

Urządzenie Bluetooth to układ scalony wewnątrz komputera, który faktycznie transmituje ruch radiowy Bluetooth. Prawdopodobnie jest podłączony do portu USB w obudowie komputera.

Jeśli chodzi o wyświetlanie „Linux Foundation”, domyślam się, że stąd pochodzą sterowniki. Ale nie jestem pewien.

strugee
źródło
1
Wiele urządzeń jest przewodowych jako urządzenia USB, ale nie są podłączone do „portu” w sensie portu, jaki mamy na zewnątrz komputera. Są po prostu logicznie połączone przez USB (np. Ścieżki między urządzeniem a koncentratorem USB mogą znajdować się bezpośrednio na płycie głównej systemu, np. Przewodowym porcie sieciowym w Raspberry Pi). Działają tak, jakby były podłączone do standardowych portów USB, ale oczywiście nie można ich usunąć.
Jim MacKenzie
21

„Węzeł główny” jest fałszywym urządzeniem i reprezentuje samą magistralę. Zawsze ma numer urządzenia 1 na dowolnej magistrali, na której siedzi. „Producentem” jest zawsze 1d6b, „Linux Foundation”, ale o ile wiem, to po prostu utworzenie „roota” dla „gałęzi” drzewa (jak zobaczymy z lsusb -t, jak sugeruje Wagner). Charakter magistrali (wersja 1.1, 2.0, 3.0) odzwierciedla identyfikator urządzenia (0001, 0002, 0003).

(Subtelna uwaga - w rzeczywistości istnieje „kontroler hosta USB”, który jest urządzeniem fizycznym - ale sam NIE jest urządzeniem USB! Zwykle jest to urządzenie PCI. Na przykład na mojej maszynie mam dwie magistrale USB i dwie Kontrolery hosta USB widoczne za pomocą polecenia lspci. Są wykonane przez firmę Intel, a nie Linux Foundation. „Główny koncentrator USB” reprezentuje fizyczne urządzenie PCI. Uważam, że cała sprawa „Linux Foundation” powstała, ponieważ urządzenie fizyczne ma Identyfikatory PCI, a nie USB. Http://www.usblyzer.com/usb-topology.htm )

Urządzenie SanDisk może prezentować się światu zewnętrznemu jako gniazdo PCMCIA (tak sądzę), ale wewnętrznie jest podłączone do magistrali USB 001. (Ponownie jest oznaczone jako Urządzenie 002, ponieważ sama magistrala to Urządzenie 001).

Podobnie, urządzenie Bluetooth jest wewnętrzne (jak zauważył strugee) i ponownie jest podłączone do magistrali USB, w tym przypadku do magistrali 004, która jest magistralą USB 1.1 (o niskiej prędkości). Ma to sens, ponieważ Bluetooth ma stosunkowo niską prędkość. Na tej samej magistrali znajduje się urządzenie AuthenTec, które jest czytnikiem linii papilarnych, również wolno.

To wyjście wskazuje, że masz osiem (!) Wbudowanych magistrali USB, do których podłączone są trzy urządzenia. I masz dwie szybkie magistrale USB i sześć wolnych. Niektóre lub wszystkie z nich mogą mieć porty zewnętrzne do podłączania różnych urządzeń zewnętrznych USB. Możesz spróbować podłączyć urządzenie i ponownie uruchomić lsusb, aby zobaczyć, który port jest podłączony do której magistrali.

John F.
źródło
1
PS - wygląda na to, że MS Windows również oszukiwa w tym pytaniu, używając identyfikatorów PCI dla głównych hubów USB. Podejrzewam, że nie ma dobrego rozwiązania, więc „Linux Foundation” jest rozsądne. Rozwiązanie MSW może powodować konflikt z prawdziwym identyfikatorem urządzenia USB, oferując jednocześnie możliwość sprawdzenia go w rejestrze PCI. (Okazuje się, że Intel ma identyfikator dostawcy 8086 zarówno dla USB, jak i PCI.)
John F
7

Sprawdź to

lsusb -t

-t Zrzuć fizyczną hierarchię urządzeń USB jako drzewo

Wagner
źródło