Home · Kontakt · Impressum
contents index previous up next
Next: 16.2.3 IRQs, I/O-Ports und Up: 16.2 PC-Busarchitekturen Previous: 16.2.1 PCI


16.2.2 lspci

Neben den höheren Datenraten unterstützt PCI auch die Hardwareerkennung. Jedes PCI-Gerät enthält einen Code, der seinen Typ, seinen Hersteller und sein Modell angibt. Diese Informationen können über den Befehl lspci abgefragt werden.

lspci [OPTIONEN]

Die Informationen über die PCI-Busse liefert der Kernel über das virtuelle Verzeichnis /proc/bus/pci. Die Schnittstelle existiert seit Kernelversion 2.1.82. Das Verzeichnis enthält für jeden Bus ein Unterverzeichnis mit Informationsdateien für die Geräte und eine Datei /proc/bus/pci/device, die eine Liste aller PCI-Geräte enthält.

enterprise:~ # lspci
00:00.0 Host bridge: VIA Technologies, Inc. VT82C693A/694x [Apollo PRO133x] (rev 02)
00:01.0 PCI bridge: VIA Technologies, Inc. VT82C598/694x [Apollo MVP3/Pro133x AGP]
00:04.0 ISA bridge: VIA Technologies, Inc. VT82C686 [Apollo Super South] (rev 22)
00:04.1 IDE interface: VIA Technologies, Inc. VT82C586A/B/VT82C686/A/B/VT8233/A/C/VT8235
 PIPC Bus Master IDE (rev 10)
00:04.2 USB Controller: VIA Technologies, Inc. USB (rev 10)
00:04.3 USB Controller: VIA Technologies, Inc. USB (rev 10)
00:04.4 Host bridge: VIA Technologies, Inc. VT82C686 [Apollo Super ACPI] (rev 30)
00:04.5 Multimedia audio controller: VIA Technologies, Inc. VT82C686 AC97 Audio Controller
 (rev 20)
00:0a.0 Ethernet controller: Intel Corp. 82557/8/9 [Ethernet Pro 100] (rev 08)
01:00.0 VGA compatible controller: nVidia Corporation NV5M64 [RIVA TNT2 Model 64/Model 64
 Pro] (rev 15)

Am Anfang jeder Zeile ist die PCI-ID angegeben, die die Position des jeweiligen Geräts auf dem PCI-Bus wiedergibt. Hersteller, Typ und Modell der Karte werden in Form von ID-Nummer abgespeichert. Eine Tabelle dieser Nummern und ihrer Zuordnung zu Herstellern, Typen und Modellen befindet sich in der Datei /usr/share/pci.ids.

Optionen
-b Darstellung der IRQ und Adressen aus Sicht des PCI-Bus
-d [HID]:[GID] Zeigt nur die Geräte mit angegeben Hersteller- und Geräte-ID.
-i DATEI Benutzt eine andere Datei als PCI-ID-Datenbank.
-m Ausgabe im maschinenlesbaren Format
-n Zeigt nur die Hersteller- und Geräte-Codes an
-p DIR Benutzt ein anderes Verzeichnis für die PCI-Bus-Informationen
-s [B:][S][.F] Zeigt nur die Geräte mit den spezifizierten Bus, Slot und Funktion. Alle Nummern sind hexadezimal.
-t Darstellung in Baumform
-v Ausführlichere Informationen
-vv Sehr ausführliche Informationen
-x Hexadezimaler Dump der 64 Bytes des PCI-Konfigurationsspeichers
 

Um ausführlichere Informationen zu bekommen, können Sie den Schalter -v verwenden.

enterprise:~ # lspci -v
00:00.0 Host bridge: VIA Technologies, Inc. VT82C693A/694x [Apollo PRO133x] (rev 02)
        Subsystem: Asustek Computer, Inc.: Unknown device 8023
        Flags: bus master, medium devsel, latency 0
        Memory at e4000000 (32-bit, prefetchable) [size=64M]
        Capabilities: [a0] AGP version 2.0

00:01.0 PCI bridge: VIA Technologies, Inc. VT82C598/694x [Apollo MVP3/Pro133x AGP] 
        (prog-if 00 [Normal decode])
...
Ähnliche Informationen erhalten Sie ebenfalls über eine Schnittstelle aus dem Verzeichnis /proc. Die virtuelle Datei /proc/pci zeigt Ihnen ebenfalls Informationen aus dem PCI-Bus. Diese sind im Gegensatz zu /proc/bus/pci/devices für Menschen lesbar gestaltet.

Für eine bessere Übersicht der PCI-Busse können Sie sich mit dem Schalter -t eine baumartige Struktur der Verbindung anzeigen lassen.

enterprise:~ # lspci -t
-[00]-+-00.0
      +-01.0-[01]----00.0
      +-04.0
      +-04.1
      +-04.2
      +-04.3
      +-04.4
      +-04.5
      \-0a.0

Das obige Beispiel ist etwas langweilig. Allein vom AGP-Port zweigt ein PCI-Bus ab. Dies ist natürlich die Grafikkarte.

Um die Informationen zu sehen, die die PCI-Geräte zurückgeben ohne die Übersetzung aus der PCI-Geräte-Datenbank zu benutzen, können Sie den Schalter -n verwenden.

enterprise:~ # lspci -n
00:00.0 Class 0600: 1106:0691 (rev 02)
00:01.0 Class 0604: 1106:8598
00:04.0 Class 0601: 1106:0686 (rev 22)
00:04.1 Class 0101: 1106:0571 (rev 10)
00:04.2 Class 0c03: 1106:3038 (rev 10)
00:04.3 Class 0c03: 1106:3038 (rev 10)
00:04.4 Class 0600: 1106:3057 (rev 30)
00:04.5 Class 0401: 1106:3058 (rev 20)
00:0a.0 Class 0200: 8086:1229 (rev 08)
01:00.0 Class 0300: 10de:002d (rev 15)


contents index previous up next
Next: 16.2.3 IRQs, I/O-Ports und Up: 16.2 PC-Busarchitekturen Previous: 16.2.1 PCI
  © 2004 by IT-Dozent Ole Vanhoefer · Zum Seitenanfang