> From: Adam Jackson <[email protected]> > Date: Wed, 18 Nov 2009 14:28:57 -0500 > > Signed-off-by: Adam Jackson <[email protected]> > --- > include/pciaccess.h | 14 ++++ > src/Makefile.am | 1 + > src/common_io.c | 95 ++++++++++++++++++++++++ > src/linux_sysfs.c | 184 ++++++++++++++++++++++++++++++++++++---------- > src/pciaccess_private.h | 9 +++ > 5 files changed, 263 insertions(+), 40 deletions(-) > create mode 100644 src/common_io.c
Oh, you actually went ahead and implemented this. Cool! I feel a bit guilty now, but I do have a few comments. I think the interface to "open" io should actually allow one to specify a range, much in the same way as pci_device_map_range() does. Perhaps the right way to do this is simply to make pci_device_map_range() accept a PCI_DEV_MAP_FLAG_IO flag. You'd still need to use the pci_io_xxx functions on the returned address to handle x86 machines properly of course. Regarding those pci_io_xxx functions, would it be better to encode the access size a bit more explicit, like the config space access functions? pci_io_read_u8() pci_io_read_u16() pci_io_read_u32() pci_io_write_u8() pci_io_write_u16() pci_io_write_u32() The 'b' in inb/outb is unambiguous, but the 'w' and the 'l' already didn't make sense for 32-bit machines, let alone now that we have 64-bit machines. _______________________________________________ xorg-devel mailing list [email protected] http://lists.x.org/mailman/listinfo/xorg-devel
