Hi Guys,
I cannot believe that I am asking for this in 2025
!!
I need a tool to be able to read/write PCIe config space properly. Every tool that I know of is actually very old. What do you guys use. I never had the need for writing to config space until now.
!pci was good enough for that. But now I need to be able to write to the config space.
Any help appreciated.
Thanks
Aj
This driver maps a given IO address in the process space. What’s left to implement is parsing the MCFG table after GetSystemFirmwareTable.
1 Like
If you mean accessing the config space of YOUR device, from the driver for that device, then you can fetch the BUS_INTERFACE_STANDARD interface from the PCI driver and use GetBusData and SetBusData, or IRP_MN_READ_CONFIG and IRP_MN_WRITE_CONFIG.
If you mean accessing the config space of arbitrary devices, then that is not supported, although of course there are hackery methods.
1 Like
Really? I can’t believe that anyone would think this is a good idea, given what we know these days about security.
Sure… let’s just people arbitrarily read and write all over various parts of the device space in a running system. Great idea! What could go wrong!!?!?
Once I had to do this on a certain Intel platform, and they provided the kernel address of mapping of PCIe devices config. space. Not sure how to get this address on other platforms and newer Windows.
Check https://rweverything.com
So at the risk of stating the obvious, if this is for a specific device, write a very simple wdf function driver to get access to the device config space.
1 Like