lspci

lspci is a command on Unix-like operating systems that prints ("lists") detailed information about all PCI buses and devices in the system.[1] It is based on a common portable library libpci which offers access to the PCI configuration space on a variety of operating systems.

Developer(s)Martin Mareš
Initial release7 February 1998 (1998-02-07)
Stable release
3.8.0 / 18 April 2022 (2022-04-18)
Repository
Written inC
Operating systemLinux, Unix-like, Microsoft Windows, KolibriOS
PlatformAll ports can work on at least x86 (32-bit and/or 64-bit); the Linux, FreeBSD, NetBSD, OpenBSD, and AIX ports can also work on other CPU architectures.
TypeUtility software
LicenseGNU General Public License
Websitemj.ucw.cz/sw/pciutils

Example usage

Example output on a Linux system:

# lspci
00:00.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Raven/Raven2 Root Complex
00:00.2 IOMMU: Advanced Micro Devices, Inc. [AMD] Raven/Raven2 IOMMU
00:01.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 17h (Models 00h-1fh) PCIe Dummy Host Bridge
00:01.2 PCI bridge: Advanced Micro Devices, Inc. [AMD] Raven/Raven2 PCIe GPP Bridge [6:0]
00:01.7 PCI bridge: Advanced Micro Devices, Inc. [AMD] Raven/Raven2 PCIe GPP Bridge [6:0]
00:08.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 17h (Models 00h-1fh) PCIe Dummy Host Bridge
00:08.1 PCI bridge: Advanced Micro Devices, Inc. [AMD] Raven/Raven2 Internal PCIe GPP Bridge 0 to Bus A
00:14.0 SMBus: Advanced Micro Devices, Inc. [AMD] FCH SMBus Controller (rev 61)
00:14.3 ISA bridge: Advanced Micro Devices, Inc. [AMD] FCH LPC Bridge (rev 51)
00:18.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Raven/Raven2 Device 24: Function 0
00:18.1 Host bridge: Advanced Micro Devices, Inc. [AMD] Raven/Raven2 Device 24: Function 1
00:18.2 Host bridge: Advanced Micro Devices, Inc. [AMD] Raven/Raven2 Device 24: Function 2
00:18.3 Host bridge: Advanced Micro Devices, Inc. [AMD] Raven/Raven2 Device 24: Function 3
00:18.4 Host bridge: Advanced Micro Devices, Inc. [AMD] Raven/Raven2 Device 24: Function 4
00:18.5 Host bridge: Advanced Micro Devices, Inc. [AMD] Raven/Raven2 Device 24: Function 5
00:18.6 Host bridge: Advanced Micro Devices, Inc. [AMD] Raven/Raven2 Device 24: Function 6
00:18.7 Host bridge: Advanced Micro Devices, Inc. [AMD] Raven/Raven2 Device 24: Function 7
01:00.0 Network controller: Realtek Semiconductor Co., Ltd. RTL8822BE 802.11a/b/g/n/ac WiFi adapter
02:00.0 Non-Volatile memory controller: Sandisk Corp PC SN520 NVMe SSD (rev 01)
03:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Raven Ridge [Radeon Vega Series / Radeon Vega Mobile Series] (rev c3)
03:00.1 Audio device: Advanced Micro Devices, Inc. [AMD/ATI] Raven/Raven2/Fenghuang HDMI/DP Audio Controller
03:00.2 Encryption controller: Advanced Micro Devices, Inc. [AMD] Family 17h (Models 10h-1fh) Platform Security Processor
03:00.3 USB controller: Advanced Micro Devices, Inc. [AMD] Raven USB 3.1
03:00.4 USB controller: Advanced Micro Devices, Inc. [AMD] Raven USB 3.1
03:00.5 Multimedia controller: Advanced Micro Devices, Inc. [AMD] Raven/Raven2/FireFlight/Renoir Audio Processor
03:00.6 Audio device: Advanced Micro Devices, Inc. [AMD] Family 17h (Models 10h-1fh) HD Audio Controller
03:00.7 Non-VGA unclassified device: Advanced Micro Devices, Inc. [AMD] Raven/Raven2/Renoir Non-Sensor Fusion Hub KMDF driver

Using lspci -v, lspci -vv, or lspci -vvv will display increasingly verbose details for all devices. -d [<vendor>]:[<device>] option specifies the vendor and device ID of the devices to display. Note that ":" can not be omitted, while the omitted <vendor> or <device> indicates "any value".[2]

If many devices are shown as unknown (e.g. "Unknown device 2830 (rev 02)"), issuing the command update-pciids will usually correct this.

lsusb

lsusb[3] is a similar command for USB buses and devices. To make use of all the features of this program, a system needs to use Linux kernel which supports the /proc/bus/usb interface (e.g., Linux kernel 2.3.15 or newer).

Example output on a Linux system:

# lsusb
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 004: ID 06cb:0081 Synaptics, Inc. 
Bus 003 Device 003: ID 5986:2115 Acer, Inc Integrated Camera
Bus 003 Device 002: ID 05e3:0608 Genesys Logic, Inc. Hub
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 003: ID 0bda:b023 Realtek Semiconductor Corp. RTL8822BE Bluetooth 4.2 Adapter
Bus 001 Device 002: ID 045e:07fd Microsoft Corp. Nano Transceiver 1.1
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

hwinfo

hwinfo[4] is for all the hardware.[5] Hwinfo output reports for various computer models are collected in a public GitHub repository.[6]

lshw

lshw is a subset of what hwinfo presents.[7][8]

Other platforms

The equivalent command for FreeBSD is pciconf -l. pciconf can also perform other functions such as reading and writing PCI registers. For more information, see the man page.

The HWiNFO tool, which is not related to the hwinfo tool mentioned above, can be downloaded in binary form at no cost. It is claimed to be a "system information and diagnostics comprehensive hardware analysis, monitoring and reporting for Windows and DOS".

Similar commands

  • dmesg prints the message buffer of the kernel.
  • uname prints the name, version and other details about the current machine and the operating system.
  • lsscsi prints information about mass storage devices.

See also

References

  1. "Lspci(8): All PCI devices - Linux man page".
  2. "lspci(8): all PCI devices - Linux man page". linux.die.net. Retrieved 2021-04-08.
  3. lsusb(8)  Linux Administration and Privileged Commands Manual
  4. "hwinfo(8) — hwinfo — Debian testing — Debian Manpages". manpages.debian.org. Retrieved 2020-12-17.
  5. Discover your hardware in Linux, H-node.org
  6. Large collection of hwinfo reports for various computer models
  7. 16 commands to check hardware information on Linux on BinaryTides.com, April 2014
  8. How to interpret lshw output on Ezix.org; retrieved in October 2016
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.