Lspci Explained
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.
__TOC__
Example usage
Example output on a Linux system: # lspci00:00.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Raven/Raven2 Root Complex00:00.2 IOMMU: Advanced Micro Devices, Inc. [AMD] Raven/Raven2 IOMMU00:01.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 17h (Models 00h-1fh) PCIe Dummy Host Bridge00: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 Bridge00:08.1 PCI bridge: Advanced Micro Devices, Inc. [AMD] Raven/Raven2 Internal PCIe GPP Bridge 0 to Bus A00: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 000:18.1 Host bridge: Advanced Micro Devices, Inc. [AMD] Raven/Raven2 Device 24: Function 100:18.2 Host bridge: Advanced Micro Devices, Inc. [AMD] Raven/Raven2 Device 24: Function 200:18.3 Host bridge: Advanced Micro Devices, Inc. [AMD] Raven/Raven2 Device 24: Function 300:18.4 Host bridge: Advanced Micro Devices, Inc. [AMD] Raven/Raven2 Device 24: Function 400:18.5 Host bridge: Advanced Micro Devices, Inc. [AMD] Raven/Raven2 Device 24: Function 500:18.6 Host bridge: Advanced Micro Devices, Inc. [AMD] Raven/Raven2 Device 24: Function 600:18.7 Host bridge: Advanced Micro Devices, Inc. [AMD] Raven/Raven2 Device 24: Function 701:00.0 Network controller: Realtek Semiconductor Co., Ltd. RTL8822BE 802.11a/b/g/n/ac WiFi adapter02: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 Controller03:00.2 Encryption controller: Advanced Micro Devices, Inc. [AMD] Family 17h (Models 10h-1fh) Platform Security Processor03:00.3 USB controller: Advanced Micro Devices, Inc. [AMD] Raven USB 3.103:00.4 USB controller: Advanced Micro Devices, Inc. [AMD] Raven USB 3.103:00.5 Multimedia controller: Advanced Micro Devices, Inc. [AMD] Raven/Raven2/FireFlight/Renoir Audio Processor03:00.6 Audio device: Advanced Micro Devices, Inc. [AMD] Family 17h (Models 10h-1fh) HD Audio Controller03: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
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:# lsusbBus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hubBus 003 Device 004: ID 06cb:0081 Synaptics, Inc. Bus 003 Device 003: ID 5986:2115 Acer, Inc Integrated CameraBus 003 Device 002: ID 05e3:0608 Genesys Logic, Inc. HubBus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hubBus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hubBus 001 Device 003: ID 0bda:b023 Realtek Semiconductor Corp. RTL8822BE Bluetooth 4.2 AdapterBus 001 Device 002: ID 045e:07fd Microsoft Corp. Nano Transceiver 1.1Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
hwinfo
hwinfo
[3] is for all the hardware.[4] Hwinfo output reports for various computer models are collected in a public GitHub repository.[5]
lshw
lshw
is a subset of what hwinfo presents.[6] [7]
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 "Comprehensive Hardware Analysis, Monitoring and Reporting for Windows and DOS".[8]
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
External links
Notes and References
- Web site: Lspci(8): All PCI devices - Linux man page.
- Web site: lspci(8): all PCI devices - Linux man page. 2021-04-08. linux.die.net.
- Web site: hwinfo(8) — hwinfo — Debian testing — Debian Manpages. 2020-12-17. manpages.debian.org.
- https://h-node.org/wiki/page/en/Discover-your-hardware Discover your hardware
- https://github.com/linuxhw/HWInfo Large collection of hwinfo reports for various computer models
- http://www.binarytides.com/linux-commands-hardware-info/ 16 commands to check hardware information on Linux
- http://www.ezix.org/project/wiki/HardwareLiSter#Howtointerpretlshwsoutput How to interpret lshw output
- Web site: Malík . Martin . HWiNFO - Free System Information, Monitoring and Diagnostics . live . https://web.archive.org/web/20240401142051/https://www.hwinfo.com/ . 2024-04-01 . 2024-04-25 . HWiNFO.