mirror of https://gitee.com/openkylin/linux.git
io-mapping: Fixup for different names of writecombine
Somehow architectures can't agree on this. And for good measure make sure we have a fallback which should work everywhere (fingers crossed). v2: Make it compile properly, needs a defined() for the #elif. Fixes:ac96b55669
("io-mapping.h: s/PAGE_KERNEL_IO/PAGE_KERNEL/") Cc: 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 Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Joonas Lahtinen <joonas.lahtinen@linux.intel.com> Signed-off-by: Daniel Vetter <daniel.vetter@intel.com> Link: http://patchwork.freedesktop.org/patch/msgid/20160823202233.4681-1-daniel.vetter@ffwll.ch (cherry picked from commit80c33624e4
)
This commit is contained in:
parent
bcaaa0c431
commit
351243897b
|
@ -123,7 +123,13 @@ io_mapping_init_wc(struct io_mapping *iomap,
|
|||
iomap->base = base;
|
||||
iomap->size = size;
|
||||
iomap->iomem = ioremap_wc(base, size);
|
||||
#if defined(pgprot_noncached_wc) /* archs can't agree on a name ... */
|
||||
iomap->prot = pgprot_noncached_wc(PAGE_KERNEL);
|
||||
#elif defined(pgprot_writecombine)
|
||||
iomap->prot = pgprot_writecombine(PAGE_KERNEL);
|
||||
#else
|
||||
iomap->prot = pgprot_noncached(PAGE_KERNEL);
|
||||
#endif
|
||||
|
||||
return iomap;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue