lspci # one line per device
lspci -nn # include numeric vendor:device IDs, e.g. [10ec:8125]
lspci -k # show the kernel driver in use and available modules
lspci -v # verbose; -vv for capabilities and link speed (root)
lspci -s 03:00.0 -vv # one device
sudo lspci -vv | grep -E 'LnkCap|LnkSta' # PCIe link speed/width, negotiated vs capable
lspci -k answers "which driver is bound to this card?" A device with no Kernel driver in use: line has no driver loaded. The numeric IDs are what you search for in driver and kernel bug reports. In LnkSta, a link running at a lower speed or width than LnkCap (for example an x16 card running at x4) is a common performance mystery. lspci comes with pciutils. See lshw for a broader inventory.