with lspci I can see things like:
Slot: 00:02.0
Class: PCI bridge [0604]
Vendor: Red Hat, Inc. [1b36]
Device: QEMU PCIe Root port [000c]
Driver: pcieport
In dmesg I can see pcieport 0000:00:02.0: pciehp: Slot #0 AttnBtn+ PwrCtrl+ MRL- AttnInd+ PwrInd+ HotPlug+ Surprise+ Interlock+ NoCompl- IbPresDis- LLActRep+
However, cat /lib/modules/$(uname -r)/modules.builtin | grep pci
does not show any of them. depmod -v
neither.
So I guess, these 2 drivers are actually static builtin in the kernel which is not module. In kernel config (/boot/config-$(uname -r)
) I can see CONFIG_HOTPLUG_PCI_PCIE=y
. But I do not even know this flag till I dig into the kernel source code. I wonder is there any easy way to list all the driver names of static builtins?