Hello! > Add the new utility 'readpci' in order to allow users to read and write the > register address space located in the BAR designator + offset. > > The reason that this app is better than what is generally available on the > internet (there are several) is that this app integrates with the libpci > and further benefits from pciutils-like arguments and device > specifications. I do not think we need a separate utility for that – let's extend setpci instead. The register syntax already supports directly addressed configuration space, capabilities and extended capabilities, so let us add memory-mapped regions. All the rest (specifying offset and access width) is already there. Also, what do we do on non-Linux systems? mmap of memory-mapped regions is certainly not available everywhere. So the proper way is to add an API for that to libpci, even if it will be implemented only on Linux at first. Are there some architectures where MMIO in user space requires some kind of magic to avoid cache coherency issues? Martin