This patch updates the pci_iomap() kernel-doc to make it clarify the case when read*()/write*() can be called over ioread*/iowrite*(). When driver writers read this documenation sometimes it is assumed you just *need* to use ioread*()/iorwrite*(). We have an exception so lets just clarify this is not true for the exception. lib/iomap.c | 11 ++++++++--- 1 files changed, 8 insertions(+), 3 deletions(-) Signed-off-by: Luis R. Rodriguez <mcgrof@xxxxxxxxx> Luis
diff --git a/lib/iomap.c b/lib/iomap.c index 864f2ec..33651f8 100644 --- a/lib/iomap.c +++ b/lib/iomap.c @@ -247,9 +247,14 @@ EXPORT_SYMBOL(ioport_unmap); * @maxlen: length of the memory to map * * Using this function you will get a __iomem address to your device BAR. - * You can access it using ioread*() and iowrite*(). These functions hide - * the details if this is a MMIO or PIO address space and will just do what - * you expect from them in the correct way. + * If you use pci_iomap() it is recommended you use ioread*() and iowrite*(). If + * your device is MMIO-only and as long as future architectures don't break the + * assumption that pcio_iomap()-returned cookie can be used by read*()/write*() + * then you can use read*()/write*() instead. The ioread*() and iowrite*() + * functions hide the details if this is a MMIO or PIO address space and will + * just do what you expect from them in the correct way. Drivers for MMIO-only + * devices would use this only to save themselves from having to call + * &pci_resource_start(). * * @maxlen specifies the maximum length to map. If you want to get access to * the complete BAR without checking for its length first, pass %0 here.