io-mapping.h: s/PAGE_KERNEL_IO/PAGE_KERNEL/
authorChris Wilson <chris@chris-wilson.co.uk>
Tue, 23 Aug 2016 15:50:24 +0000 (16:50 +0100)
committerDaniel Vetter <daniel.vetter@ffwll.ch>
Wed, 24 Aug 2016 07:43:40 +0000 (09:43 +0200)
PAGE_KERNEL_IO is an x86-ism. Though it is used to define the pgprot_t
used for the iomapped region, it itself is just PAGE_KERNEL. On all
other arches, PAGE_KERNEL_IO is undefined so in a general header we must
refrain from using it.

v2: include pgtable for pgprot_combine()

Reported-by: Stephen Rothwell <sfr@canb.auug.org.au>
Fixes: cafaf14a5d8f ("io-mapping: Always create a struct to hold metadata about the io-mapping")
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Daniel Vetter <daniel.vetter@ffwll.ch>
Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
Cc: linux-mm@kvack.org
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Link: http://patchwork.freedesktop.org/patch/msgid/20160823155024.22379-1-chris@chris-wilson.co.uk
(cherry picked from commit ac96b5566926af83463ddcf4655856033c092f26)

include/linux/io-mapping.h

index b4c4b5c4216dd5105a253dcf269097a6eff9023b..a87dd7fffc0af461d16d325b010903e89e237289 100644 (file)
@@ -112,7 +112,7 @@ io_mapping_unmap(void __iomem *vaddr)
 #else
 
 #include <linux/uaccess.h>
-#include <asm/pgtable_types.h>
+#include <asm/pgtable.h>
 
 /* Create the io_mapping object*/
 static inline struct io_mapping *
@@ -123,7 +123,7 @@ io_mapping_init_wc(struct io_mapping *iomap,
        iomap->base = base;
        iomap->size = size;
        iomap->iomem = ioremap_wc(base, size);
-       iomap->prot = pgprot_writecombine(PAGE_KERNEL_IO);
+       iomap->prot = pgprot_writecombine(PAGE_KERNEL);
 
        return iomap;
 }