Hi, These set of patches is the 2nd attempt at an API for PIO drivers. Following James' suggestion on a kmap-like API, the pio_* functions no longer look like the dma_map_* API. There are situations where the page structure isn't available (the USB HCD drivers) and I introduced the pio_begin()/pio_end() functions that take care of the cache flushing. I added another example for the mmci.c driver that is currently using flush_dcache_page(). Thanks. Catalin Marinas (5): pio-mapping: Add generic support for PIO mapping API pio-mapping: Add ARM support for the PIO mapping API pio-mapping: Use the PIO mapping API in libata-sff.c pio-mapping: Use the PIO mapping API in the ISP1760 HCD driver pio-mapping: Use the PIO mapping API in the MMCI PL18x driver arch/arm/Kconfig | 3 ++ arch/arm/include/asm/pio-mapping.h | 66 ++++++++++++++++++++++++++++++++++++ drivers/ata/libata-sff.c | 7 +++- drivers/mmc/host/mmci.c | 17 ++++----- drivers/mmc/host/mmci.h | 13 +++++-- drivers/usb/host/isp1760-hcd.c | 7 ++++ include/linux/pio-mapping.h | 65 +++++++++++++++++++++++++++++++++++ 7 files changed, 164 insertions(+), 14 deletions(-) create mode 100644 arch/arm/include/asm/pio-mapping.h create mode 100644 include/linux/pio-mapping.h -- Catalin -- To unsubscribe from this list: send the line "unsubscribe linux-arch" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html