retour vers Linux
Sommaire |
/usr/bin/lsusb
paquet:usbutils
cette commande permet d'afficher des informations relatives aux bus USB du système et aux périphériques qui y sont connectés.
voir man lsusb
lsusb
Bus 001 Device 002: ID 1b1c:1a03 Corsair Bus 002 Device 002: ID 046d:0994 Logitech, Inc. QuickCam Orbit/Sphere AF Bus 002 Device 004: ID 0bb4:0ff9 HTC (High Tech Computer Corp.) Desire / Desire HD / Hero (Charge Mode) Bus 008 Device 002: ID 046d:c505 Logitech, Inc. Cordless Mouse+Keyboard Receiver Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Pour avoir le détail sur un périphérique particulier, passer en root.
Et, par exemple,pour le detail de la QuickCam Sphere de la 2eme ligne:
-v pour le detail
-d avec l'identifiant vendeur suivi de ":" et de l'identifiant de périphérique. ( a la suite d' ID de la commande simple lsusb)
sudo lsusb -v -d 046d:0994
Bus 002 Device 002: ID 046d:0994 Logitech, Inc. QuickCam Orbit/Sphere AF Device Descriptor: bLength 18 bDescriptorType 1 bcdUSB 2.00 bDeviceClass 239 Miscellaneous Device bDeviceSubClass 2 ? bDeviceProtocol 1 Interface Association bMaxPacketSize0 64 idVendor 0x046d Logitech, Inc. idProduct 0x0994 QuickCam Orbit/Sphere AF bcdDevice 0.08 [... Il y a plus de 916 ligne, je vous les passe] bDeviceClass 239 Miscellaneous Device bDeviceSubClass 2 ? bDeviceProtocol 1 Interface Association bMaxPacketSize0 64 bNumConfigurations 1 Device Status: 0x0000 (Bus Powered)
Avec l'option -d vous pouvez lister tout les périphérique d'un constructeur, ou l'inverse, tout les constructeurs d'un périphérique. Ici, la liste des périphériques de chez logitech (on sait par lsusb que l'idendentifiant du constructeur est le premier nombre après ID du résultat de la commande lsusb):
lsusb -d 046d:
Bus 002 Device 002: ID 046d:0994 Logitech, Inc. QuickCam Orbit/Sphere AF Bus 008 Device 002: ID 046d:c505 Logitech, Inc. Cordless Mouse+Keyboard Receiver
Avec l'option -t nous allons afficher l'arborescence hiérarchique des périphériques connectés (ports usb, périphérique(s) connecté a ce port, vitesse max de transmission, classes des périphériques et pilotes associés aux périphériques). Option -t n'est pas compatible avec les autres options et les annule.
lsusb -t
/: Bus 08.Port 1: Dev 1, Class=root_hub, Driver=uhci_hcd/2p, 12M |__ Port 1: Dev 2, If 0, Class=HID, Driver=usbhid, 1.5M |__ Port 1: Dev 2, If 1, Class=HID, Driver=usbhid, 1.5M /: Bus 07.Port 1: Dev 1, Class=root_hub, Driver=uhci_hcd/2p, 12M /: Bus 06.Port 1: Dev 1, Class=root_hub, Driver=uhci_hcd/2p, 12M /: Bus 05.Port 1: Dev 1, Class=root_hub, Driver=uhci_hcd/2p, 12M /: Bus 04.Port 1: Dev 1, Class=root_hub, Driver=uhci_hcd/2p, 12M /: Bus 03.Port 1: Dev 1, Class=root_hub, Driver=uhci_hcd/2p, 12M /: Bus 02.Port 1: Dev 1, Class=root_hub, Driver=ehci_hcd/6p, 480M |__ Port 4: Dev 2, If 0, Class='bInterfaceClass 0x0e not yet handled', Driver=uvcvideo, 480M |__ Port 4: Dev 2, If 1, Class='bInterfaceClass 0x0e not yet handled', Driver=uvcvideo, 480M |__ Port 4: Dev 2, If 2, Class=audio, Driver=snd-usb-audio, 480M |__ Port 4: Dev 2, If 3, Class=audio, Driver=snd-usb-audio, 480M |__ Port 6: Dev 4, If 0, Class=stor., Driver=usb-storage, 480M /: Bus 01.Port 1: Dev 1, Class=root_hub, Driver=ehci_hcd/6p, 480M
On voit ici rattaché au bus 02 le port 4 et le port 6. Ce sont 2 périphériques différents. Isolons le port 4:
lsusb -t | grep "Port 4"
|__ Port 4: Dev 2, If 0, Class='bInterfaceClass 0x0e not yet handled', Driver=uvcvideo, 480M |__ Port 4: Dev 2, If 1, Class='bInterfaceClass 0x0e not yet handled', Driver=uvcvideo, 480M |__ Port 4: Dev 2, If 2, Class=audio, Driver=snd-usb-audio, 480M |__ Port 4: Dev 2, If 3, Class=audio, Driver=snd-usb-audio, 480M
Tout cela correspond au périphérique "Logitech, Inc. QuickCam Orbit/Sphere AF". Et on voit 2 Drivers differents: uvcvideo et snd-usb-audio
soit la video webcam et le son.
Fichier contenant la correspondance entre id d'entreprise=nom d'entreprise et id de peripherique=nom de periphérique (les nom de la dernière colonne que vous renvoi lsusb)
/usr/share/misc/usb.ids
paquet:usbutils
/usr/share/kde4/apps/kcmusb/usb.ids
paquet:kinfocenter
/var/lib/misc/usb.ids
La dernière version peut être trouvé sur http://www.linux-usb.org/usb.ids
/usr/sbin/update-usbids.sh
paquet:usbutils
met a jour le fichier /usr/share/misc/usb.ids a partir de la page http://www.linux-usb.org/usb.ids
/proc/bus/usb
/usr/sbin/update-usbids
paquet:usbutils
met a jour le fichier /usr/share/misc/usb.ids a partir de la page http://www.linux-usb.org/usb.ids
la commande est lspci | grep -i usb. Sur ma carte mère AsRock X79 Extrême 11 cela donne:
lspci | grep -i usb 00:1a.0 USB controller: Intel Corporation C600/X79 series chipset USB2 Enhanced Host Controller #2 (rev 06) 00:1d.0 USB controller: Intel Corporation C600/X79 series chipset USB2 Enhanced Host Controller #1 (rev 06) 14:00.0 USB controller: Texas Instruments TUSB73x0 SuperSpeed USB 3.0 xHCI Host Controller (rev 02) 15:00.0 USB controller: Texas Instruments TUSB73x0 SuperSpeed USB 3.0 xHCI Host Controller (rev 02)
J'ai donc 2 types de controleurs:
Je note les premier caractères correspondant ici au bus:slot.fonction soit 00:1a.0 et 00:1d.0 pour l'usb2 et 14:00.0 et 15:00.0 pour l'usb3. Pour avoir plus d'info je regarde le man lspci:
lspci -ks 14:00.0 14:00.0 USB controller: Texas Instruments TUSB73x0 SuperSpeed USB 3.0 xHCI Host Controller (rev 02) Subsystem: ASRock Incorporation Device 8241 Kernel driver in use: xhci_hcdIci, clairement indiqué nous avons xhci_hcd
sudo lspci -vs 14:00.0 14:00.0 USB controller: Texas Instruments TUSB73x0 SuperSpeed USB 3.0 xHCI Host Controller (rev 02) (prog-if 30 [XHCI]) Subsystem: ASRock Incorporation Device 8241 Flags: bus master, fast devsel, latency 0, IRQ 18 Memory at fbb00000 (64-bit, non-prefetchable) [size=64K] Memory at fbb10000 (64-bit, non-prefetchable) [size=8K] Capabilities: [40] Power Management version 3 Capabilities: [48] MSI: Enable- Count=1/8 Maskable- 64bit+ Capabilities: [70] Express Endpoint, MSI 00 Capabilities: [c0] MSI-X: Enable+ Count=8 Masked- Capabilities: [100] Advanced Error Reporting Capabilities: [150] Device Serial Number 08-00-28-00-00-20-00-00 Kernel driver in use: xhci_hcd
sudo lspci -vvvs 14:00.0
14:00.0 USB controller: Texas Instruments TUSB73x0 SuperSpeed USB 3.0 xHCI Host Controller (rev 02) (prog-if 30 [XHCI])
Subsystem: ASRock Incorporation Device 8241 Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+ Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 0, Cache Line Size: 64 bytes Interrupt: pin A routed to IRQ 18 Region 0: Memory at fbb00000 (64-bit, non-prefetchable) [size=64K] Region 2: Memory at fbb10000 (64-bit, non-prefetchable) [size=8K] Capabilities: [40] Power Management version 3 Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=100mA PME(D0+,D1+,D2+,D3hot+,D3cold+) Status: D0 NoSoftRst+ PME-Enable- DSel=0 DScale=0 PME- Capabilities: [48] MSI: Enable- Count=1/8 Maskable- 64bit+ Address: 0000000000000000 Data: 0000 Capabilities: [70] Express (v2) Endpoint, MSI 00 DevCap: MaxPayload 1024 bytes, PhantFunc 0, Latency L0s unlimited, L1 unlimited ExtTag- AttnBtn- AttnInd- PwrInd- RBE+ FLReset- DevCtl: Report errors: Correctable- Non-Fatal- Fatal- Unsupported- RlxdOrd- ExtTag- PhantFunc- AuxPwr- NoSnoop- MaxPayload 128 bytes, MaxReadReq 512 bytes DevSta: CorrErr+ UncorrErr- FatalErr- UnsuppReq+ AuxPwr+ TransPend- LnkCap: Port #0, Speed 5GT/s, Width x1, ASPM L0s L1, Exit Latency L0s <512ns, L1 <64us ClockPM+ Surprise- LLActRep- BwNot- LnkCtl: ASPM Disabled; RCB 64 bytes Disabled- CommClk+ ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt- LnkSta: Speed 5GT/s, Width x1, TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt- DevCap2: Completion Timeout: Not Supported, TimeoutDis+, LTR-, OBFF Not Supported DevCtl2: Completion Timeout: 50us to 50ms, TimeoutDis-, LTR-, OBFF Disabled LnkCtl2: Target Link Speed: 5GT/s, EnterCompliance- SpeedDis- Transmit Margin: Normal Operating Range, EnterModifiedCompliance- ComplianceSOS- Compliance De-emphasis: -6dB LnkSta2: Current De-emphasis Level: -6dB, EqualizationComplete-, EqualizationPhase1- EqualizationPhase2-, EqualizationPhase3-, LinkEqualizationRequest- Capabilities: [c0] MSI-X: Enable+ Count=8 Masked- Vector table: BAR=2 offset=00000000 PBA: BAR=2 offset=00001000 Capabilities: [100 v2] Advanced Error Reporting UESta: DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol- UEMsk: DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol- UESvrt: DLP+ SDES+ TLP- FCP+ CmpltTO- CmpltAbrt- UnxCmplt- RxOF+ MalfTLP+ ECRC- UnsupReq- ACSViol- CESta: RxErr- BadTLP- BadDLLP- Rollover- Timeout- NonFatalErr+ CEMsk: RxErr- BadTLP- BadDLLP- Rollover- Timeout- NonFatalErr+ AERCap: First Error Pointer: 00, GenCap+ CGenEn- ChkCap+ ChkEn- Capabilities: [150 v1] Device Serial Number 08-00-28-00-00-20-00-00 Kernel driver in use: xhci_hcd