I’m specifically looking to control PCIe device connections — such as network adapters and similar devices connected via PCIe. My goal is to control when these devices are connected to the system (not controling their functionality)
for controlling usb devices i already developed a pnp driver which can control them, but i want to control all devices connections.
Could anyone recommends on how to achieve this level of control over PCIe device connections?
Look, you can't do ANYTHING about devices connecting. That's a hardware operation Devices connect when they connect. All YOU can do is interfere with the loading of their drivers, and that has to happen above the bus driver for that type of device.
There is no filter device class for "all devices". You have already found that the USB host controller uses a single class for all of the devices it exposes, but other buses (like PCIe) simply don't have that convention. You can try sitting on top of PCI.SYS, but filtering a bus is more complicated than filtering devices. And that does nothing for I2C or Bluetooth devices.