J'utilise Ubuntu sur un Dell Chromebook 11, doté de deux ports USB 3 et d'un lecteur de carte SD. J'essayais d'établir si le lecteur de carte SD serait capable de vitesses USB 3 (et donc s'il valait la peine d'acheter une carte SD de 130 Mo/s), mais je ne peux pas dire s'il est physiquement connecté à l'USB 3 en interne.
Une des solutions envisageables consiste à exécuter lsusb après avoir branché une carte SD. Toutefois, si je connecte un périphérique USB2 à l’un des ports USB 3, il apparaît quand même comme étant connecté au concentrateur USB 2. Si je mets un périphérique USB 3 dans le même port, il apparaît comme étant connecté au concentrateur USB 3.
Pourquoi lsusb indique-t-il que les périphériques USB2 connectés à un port USB3 sont connectés à la racine USB 2?
Répondre :
En USB 3.0, l’architecture à double bus est utilisée pour permettre aux opérations USB 2.0 (pleine vitesse, basse vitesse ou haute vitesse) et USB 3.0 (SuperSpeed) de se dérouler simultanément, offrant ainsi une compatibilité descendante.
Source: https://en.wikipedia.org/wiki/USB_3.
Par exemple, sur une machine contenant deux ports USB 2.0 et un port USB 3.0, la sortie de la commande lsusb
indique:
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
Le concentrateur racine USB 2.0 supplémentaire fait partie du concentrateur racine USB 3.0 et est disponible dans ce pays pour assurer une compatibilité ascendante avec les normes USB 2.0. Par conséquent, lorsque vous connectez des périphériques USB2 au port USB3, ils sont affichés comme connectés au concentrateur racine 2.0.
Est-il possible d'obtenir le mappage physique plutôt que logique des ports USB vers les concentrateurs?
Réponse: Utilisez lsusb -t
-t Tells lsusb to dump the physical USB device hierarchy as a tree.
Source: lsusb
page de manuel
Pour revenir à ma raison initiale d’examiner cette question, existe-t-il un moyen de savoir à quelle vitesse le lecteur de carte SD interne est capable avant d’en acheter un?
Cela peut être fait en utilisant les étapes suivantes. Nous envisageons ici un ordinateur portable avec lecteur de carte intégré de Alcor Micro Corp.
Utilisez la commande 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
Découvrez le numéro de bus du lecteur de carte. Dans cet exemple, il s'agit de 001
Utilisez 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
À la fin de chaque ligne, la vitesse de communication négociée pour chaque périphérique est indiquée en Mbits/s.
Le 480Mbit/s s’appelle "Hi-Speed" et s’utilise avec USB 2.0.
Pour l'USB 3.0, la vitesse de communication négociée est de 5000 Mbit/s, appelée "SuperSpeed" (5 Gbit/s).
Source: https://en.wikipedia.org/wiki/USB
Résultat: le lecteur de cartes d'Alcor Micro Corp prend en charge les normes USB 2.0 et non les normes USB 3.0, car 480M a été mentionné dans la sortie.
De la page man
:
DESCRIPTION
lsusb is a utility for displaying information about USB buses in the
system and the devices connected to them.
Je vous suggère d'utiliser lshw
(vous devrez peut-être Sudo apt-get install lshw
en premier). De la page 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.