Bagaimana menafsirkan output dari 'lsusb' - Apa saja hub root Linux Foundation ini?

18

Baru-baru ini saya mengetahui tentang perintah lsusb ketika memecahkan masalah headset ..

Laptop saya menjalankan debian dan tidak memiliki apa pun yang terhubung ke USB saat ini, tetapi ketika saya menjalankan perintah "lsusb", saya masih mendapatkan sedikit output:

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

Bisakah seseorang merinci apa artinya ini secara lebih rinci?

Kartu SanDisk terhubung melalui PCMCIA, bukan USB. Apakah kartu PC dan perangkat USB terdaftar di lsusb?

Saya tidak memiliki bluetooth eksternal yang terhubung, mengapa tampilan ini?

Mengapa beberapa hub root 1.1, dan 2.0? Apakah itu berarti beberapa port USB saya adalah 2.0 dan yang lainnya tidak?

Apa sebenarnya hub root, hanya port USB kosong?

seseorang1
sumber

Jawaban:

7

Hub USB adalah perangkat yang memiliki satu kabel yang dihubungkan ke satu port USB, tetapi menyediakan beberapa port USB untuk Anda gunakan untuk menghubungkan perangkat. Ini pada dasarnya adalah multiplexer USB.

Hub root, AFAIK, adalah hub USB yang internal. Misalnya, mungkin hanya ada satu slot USB di motherboard Anda, tetapi ada beberapa port eksternal karena ada hub root internal dicolokkan ke motherboard. (Ini disederhanakan, tentu saja. Saya bukan ahli perangkat keras.)

Perangkat Bluetooth adalah chip di dalam komputer Anda yang benar-benar menyiarkan lalu lintas radio Bluetooth. Mungkin, itu ditransfer melalui port USB di dalam kasing komputer.

Berkenaan dengan tampilan "Linux Foundation", dugaan saya adalah dari sanalah driver berasal. Tapi saya tidak yakin.

strugee
sumber
1
Banyak perangkat yang ditransfer sebagai perangkat USB, tetapi tidak terhubung ke "port" dalam arti port seperti yang kita miliki di bagian luar komputer. Mereka hanya terhubung secara logis oleh USB (misalnya jalur antara perangkat dan hub USB mungkin langsung pada motherboard sistem, seperti port jaringan kabel pada Raspberry Pi). Mereka bekerja seperti mereka dicolokkan ke port USB standar, tetapi tentu saja tidak dapat dihapus.
Jim MacKenzie
21

"Root hub" adalah perangkat palsu dan mewakili bus itu sendiri. Selalu memiliki nomor perangkat 1 pada bus apa pun yang didudukinya. "Pembuat" selalu 1d6b, "Linux Foundation," tetapi sejauh yang saya tahu, itu hanya untuk membuat "root" untuk "cabang" pohon (seperti yang akan Anda lihat dari lsusb -t, seperti yang disarankan oleh Wagner). Sifat bus (versi 1.1, 2.0, 3.0) tercermin adalah ID perangkat (0001, 0002, 0003).

(Titik halus - sebenarnya ada "USB Host Controller" yang merupakan perangkat fisik - tetapi BUKAN itu sendiri perangkat USB! Ini biasanya perangkat PCI. Misalnya, pada mesin saya, saya memiliki dua bus USB, dan dua USB Host Controllers terlihat oleh perintah lspci. Itu dibuat oleh Intel, bukan Linux Foundation. "USB root hub" mewakili perangkat PCI fisik. Saya percaya bahwa keseluruhan "Linux Foundation" muncul karena perangkat fisik memiliki PCI, bukan USB, pengidentifikasi. Http://www.usblyzer.com/usb-topology.htm )

Perangkat SanDisk mungkin menampilkan dirinya ke dunia luar sebagai slot PCMCIA (saya kira) tetapi secara internal terhubung ke USB Bus 001. (Sekali lagi, ini dilabeli sebagai Perangkat 002 karena bus itu sendiri adalah Perangkat 001.)

Demikian pula, perangkat Bluetooth bersifat internal (seperti yang dicatat orang tegap) dan sekali lagi terhubung ke bus USB, dalam hal ini Bus 004, yang merupakan bus USB 1.1 (kecepatan rendah). Masuk akal, karena Bluetooth berkecepatan relatif rendah. Di bus yang sama adalah perangkat AuthenTec, yang merupakan pemindai sidik jari, lagi-lagi berkecepatan rendah.

Jadi output ini menunjukkan bahwa Anda memiliki delapan bus USB (!), Dengan tiga perangkat yang terhubung dengannya. Dan Anda memiliki dua bus USB kecepatan tinggi dan enam bus kecepatan rendah. Beberapa atau semua ini mungkin memiliki port eksternal untuk menghubungkan berbagai perangkat eksternal USB. Anda dapat mencoba mencolokkan perangkat dan menjalankan lsusb lagi untuk melihat port mana yang terhubung ke bus mana.

John F
sumber
1
PS - sepertinya MS Windows juga menipu pertanyaan ini, menggunakan pengidentifikasi PCI untuk USB Root Hubs. Tidak ada solusi yang baik, saya kira, jadi "Linux Foundation" yang masuk akal. Solusi MSW berisiko bertentangan dengan ID perangkat USB nyata, sambil menawarkan keuntungan karena dapat mencarinya di registri PCI. (Ternyata Intel memiliki ID vendor 8086 untuk USB dan PCI.)
John F
7

Periksa ini

lsusb -t

-t Dump hierarki perangkat USB fisik sebagai pohon

Wagner
sumber