Skip to content

lspci Command Cheat Sheet

lspci is a utility for displaying information about PCI buses in the system and devices connected to them. It is widely used to identify hardware and checking driver status.


Synopsis

lspci [options]

Basic Usage

List All PCI Devices

lspci

Output:

00:00.0 Host bridge: Intel Corporation ...
00:02.0 VGA compatible controller: NVIDIA Corporation ...
01:00.0 Ethernet controller: Realtek Semiconductor ...


Identifying Drivers

Show Kernel Drivers (-k)

Most useful flag. Shows which kernel driver is handling the device and which modules are available.

lspci -k
Output:
00:02.0 VGA compatible controller: NVIDIA Corporation...
    Kernel driver in use: nvidia
    Kernel modules: nvidiafb, nouveau, nvidia_drm

This tells you if your GPU is running on standard nouveau or proprietary nvidia drivers.


Verbosity

Verbose Output (-v)

Shows capabilities, interrupts, and memory regions.

lspci -v

Very Verbose (-vv)

Shows detailed internal status control registers.

lspci -vv

Hardware Identification

Show Numeric IDs (-n)

Shows Vendor:Device codes instead of names. Converting names relies on local database (pci.ids).

lspci -n
# Output: 00:02.0 0300: 10de:1c03 (rev a1)

Both Numbers and Names (-nn)

Best of both worlds.

lspci -nn

Specific Device Search (-d)

Filter by Vendor:Device.

# Find only NVIDIA devices (Vendor 10de)
lspci -d 10de:

Tree View (-t)

Shows a diagram of the bus, bridges, and devices.

lspci -t

Database

Update PCI ID Database

If lspci shows "Unknown device", update the local list.

sudo update-pciids
lspci -nn | grep -i net

Notes

  • Slot Format: [domain:]bus:device.function (e.g., 0000:00:02.0).
  • Use lsusb for USB devices.