Почему lsusb показывает устройства, подключенные к порту USB 3 как подключенные к корневому концентратору USB2?
Я использую Ubuntu на Dell Chromebook 11, который имеет два порта USB 3 и устройство чтения карт SD. Я пытался установить, будет ли считыватель SD-карт поддерживать скорость USB 3 (и, следовательно, стоит ли покупать карту SD со скоростью 130 МБ / с), но я не могу сказать, физически ли он подключен к USB 3 внутри.
Один из способов, который я решил сделать, - запустить lsusb после подключения SD-карты - однако, если я подключу устройство USB2 к одному из портов USB 3, оно все равно будет подключено к концентратору USB 2. Если я подключу устройство USB 3 к тому же порту, оно будет отображаться как подключенное к концентратору USB 3.
- Почему lsusb показывает, что устройства USB2, подключенные к порту USB3, подключены к корню USB 2?
- Есть ли способ получить физическое, а не логическое отображение портов USB на концентраторы?
- Возвращаясь к моей первоначальной причине, чтобы посмотреть на это, есть ли способ сказать, на какую скорость способен внутренний считыватель SD-карт, прежде чем покупать его?
2 ответа
Почему lsusb показывает, что устройства USB2, подключенные к порту USB3, подключены к корню USB 2?
Ответ:
В USB 3.0 архитектура с двумя шинами используется для одновременного выполнения операций USB 2.0 (Full Speed, Low Speed или High Speed) и USB 3.0 (SuperSpeed), обеспечивая обратную совместимость.
Источник: https://en.wikipedia.org/wiki/USB_3.0
Например, на машине с двумя портами USB 2.0 и одним портом USB 3.0 вывод lsusb
команда показывает:
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 2.0 root hub
Bus 003 Device 002: ID 8087:8004 Intel Corp.
Bus 003 Device 001: ID 1d6b:0008 Linux Foundation 2.0 root hub
Bus 001 Device 002: ID 058f:6386 Alcor Micro Corp. Multi Flash Reader
Bus 002 Device 001: ID 1d6b:0007 Linux Foundation 3.0 root hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Дополнительный корневой концентратор USB 2.0 является частью корневого концентратора USB 3.0 и доступен для обратной совместимости со стандартами USB2.0. В результате при подключении устройств USB2 к порту USB3 они отображаются подключенными к корневому концентратору 2.0.
Есть ли способ получить физическое, а не логическое отображение портов USB на концентраторы?
Ответ: использовать lsusb -t
-t Tells lsusb to dump the physical USB device hierarchy as a tree.
Источник: lsusb
справочная страница
Возвращаясь к моей первоначальной причине, чтобы посмотреть на это, есть ли способ сказать, на какую скорость способен внутренний считыватель SD-карт, прежде чем покупать его?
Это можно сделать с помощью следующих шагов. Здесь мы рассматриваем ноутбук со встроенным кард-ридером от Alcor Micro Corp.
использование
lsusb
команда$ lsusb Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 2.0 root hub Bus 003 Device 002: ID 8087:8004 Intel Corp. Bus 003 Device 001: ID 1d6b:0008 Linux Foundation 2.0 root hub Bus 001 Device 002: ID 058f:6386 Alcor Micro Corp. Multi Flash Reader Bus 002 Device 001: ID 1d6b:0007 Linux Foundation 3.0 root hub Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Узнайте номер шины считывателя карт. В этом примере это
001
использование
lsusb -t
$ lsusb -t /: Bus 01.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/14p, 480M |__ Port 5: Dev 2, If 0, Class=Mass Storage, Driver=usb-storage, 480M
В конце каждой строки согласованная скорость связи для каждого устройства указывается в Мбит / с.
Скорость 480 Мбит / с называется Hi-Speed и используется с USB2.0.
Для USB 3.0 согласованная скорость передачи данных составляет 5000 Мбит / с и называется "SuperSpeed" (5 Гбит / с).
Источник: https://en.wikipedia.org/wiki/USB
Результат: кардридер от Alcor Micro Corp поддерживает стандарты USB 2.0, а не стандарты USB 3.0, так как в выводе упоминалось 480M.
От man
страница:
DESCRIPTION
lsusb is a utility for displaying information about USB buses in the
system and the devices connected to them.
Я предлагаю вам использовать lshw
(возможно, вам придется sudo apt-get install lshw
первый). От lshw
man
страница:
DESCRIPTION
lshw is a small tool to extract detailed information on the hardware
configuration of the machine. It can report exact memory configuration,
firmware version, mainboard configuration, CPU version and speed, cache
configuration, bus speed, etc. on DMI-capable x86 or IA-64 systems and
on some PowerPC machines (PowerMac G4 is known to work).
It currently supports DMI (x86 and IA-64 only), OpenFirmware device
tree (PowerPC only), PCI/AGP, CPUID (x86), IDE/ATA/ATAPI, PCMCIA (only
tested on x86), SCSI and USB.