web-dev-qa-db-ja.com

「lsusb」の出力を解釈する方法-これらすべてのLinux Foundationルートハブとは何ですか?

最近、ヘッドセットの問題をトラブルシューティングしているときに、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カードは、USBではなくPCMCIAを介して接続されます。 PCカードとUSBデバイスの両方がlsusbにリストされていますか?

外部Bluetoothを接続していないのに、なぜこのディスプレイが表示されるのですか?

一部のルートハブ1.1と2.0があるのはなぜですか?それは私のUSBポートのいくつかは2.0であり、他は2.0ではないということですか?

ルートハブとは正確には何ですか?空のUSBポートだけですか?

19
some1

USBハブは、1つのコードが1つのUSBポートに差し込まれるデバイスですが、デバイスを差し込むための複数のUSBポートを提供します。それは本質的にUSBマルチプレクサです。

ルートハブ、AFAIKは内部にあるUSBハブです。たとえば、マザーボードにはUSBスロットが1つしかない場合がありますが、マザーボードに内部ルートハブが接続されているため、複数の外部ポートがあります。 (もちろん、これは単純化されています。私はハードウェアの専門家ではありません。)

Bluetoothデバイスは、実際にBluetooth無線トラフィックをブロードキャストするコンピュータ内部のチップです。おそらく、コンピュータのケース内のUSBポートを介して配線されています。

「Linux Foundation」の表示に関しては、ドライバーがどこから来たのだと思います。確信はないけど。

8
strugee

「ルートハブ」は偽装デバイスであり、バス自体を表します。配置されているバスのデバイス番号は常に1です。 「メーカー」は常に「Linux Foundation」である1d6bですが、私が知る限り、ツリーの「ブランチ」の「ルート」を作成するだけです(lsusb -tからわかるように、ワーグナー)。バスの性質(バージョン1.1、2.0、3.0)は、デバイスID(0001、0002、0003)に反映されます。

(微妙な点-実際には物理デバイスである「USBホストコントローラー」がありますが、それ自体はUSBデバイスではありません。通常はPCIデバイスです。たとえば、私のマシンでは、2つのUSBバスと2つのlspciコマンドで表示されるUSBホストコントローラー。これらはLinux FoundationではなくIntelによって作成されています。「USBルートハブ」は物理PCIデバイスを表します。物理デバイスにはUSBではなくPCI識別子 http://www.usblyzer.com/usb-topology.htm

SanDiskデバイスは、PCMCIAスロットとして外界にそれ自体を表示する可能性があります(私は推測します)が、内部的にはUSBバス001に接続されています(バス自体がデバイス001であるため、デバイス002とラベル付けされています)。

同様に、Bluetoothデバイスは内部にあり(苦労して指摘したとおり)、USBバス(この場合はバス004)に接続されています。このバスはUSB 1.1(低速)バスです。 Bluetoothは比較的低速であるため、これは理にかなっています。同じバスには、指紋スキャナーであるAuthenTecデバイスがあり、これも低速です。

したがって、この出力は、3つのデバイスが接続された8つの(!)組み込みUSBバスがあることを示しています。また、2つの高速USBバスと6つの低速USBバスがあります。これらの一部またはすべてに、さまざまなUSB外部デバイスを接続するための外部ポートがある場合があります。デバイスを接続し、lsusbを再度実行して、どのポートがどのバスに接続されているかを確認できます。

22
John F

これをチェックして

lsusb -t

-t物理USBデバイス階層をツリーとしてダンプします

8
Wagner