summaryrefslogtreecommitdiff
path: root/arch/csky/include
diff options
context:
space:
mode:
authorChristoph Hellwig <hch@lst.de>2019-08-13 11:41:57 +0200
committerChristoph Hellwig <hch@lst.de>2019-11-12 11:37:52 +0100
commit0055f67b596c3a8963192a42e25797b0e7fc0e92 (patch)
treeb1251af84d567baad073d1e4e79196cc6493fe84 /arch/csky/include
parent1246b8146c550641b3217eef65792685ca2dcdc5 (diff)
csky: use generic ioremap
Use the generic ioremap_prot and iounmap helpers. Signed-off-by: Christoph Hellwig <hch@lst.de> Acked-by: Guo Ren <guoren@kernel.org>
Diffstat (limited to 'arch/csky/include')
-rw-r--r--arch/csky/include/asm/io.h8
-rw-r--r--arch/csky/include/asm/pgtable.h4
2 files changed, 7 insertions, 5 deletions
diff --git a/arch/csky/include/asm/io.h b/arch/csky/include/asm/io.h
index f572605d5ad5..332f51bc68fb 100644
--- a/arch/csky/include/asm/io.h
+++ b/arch/csky/include/asm/io.h
@@ -36,11 +36,9 @@
/*
* I/O memory mapping functions.
*/
-extern void __iomem *__ioremap(phys_addr_t addr, size_t size, pgprot_t prot);
-extern void iounmap(void *addr);
-
-#define ioremap(addr, size) __ioremap((addr), (size), pgprot_noncached(PAGE_KERNEL))
-#define ioremap_wc(addr, size) __ioremap((addr), (size), pgprot_writecombine(PAGE_KERNEL))
+#define ioremap_wc(addr, size) \
+ ioremap_prot((addr), (size), \
+ (_PAGE_IOREMAP & ~_CACHE_MASK) | _CACHE_UNCACHED)
#include <asm-generic/io.h>
diff --git a/arch/csky/include/asm/pgtable.h b/arch/csky/include/asm/pgtable.h
index 7c21985c60dc..4b2a41e15f2e 100644
--- a/arch/csky/include/asm/pgtable.h
+++ b/arch/csky/include/asm/pgtable.h
@@ -86,6 +86,10 @@
#define PAGE_USERIO __pgprot(_PAGE_PRESENT | _PAGE_READ | _PAGE_WRITE | \
_CACHE_CACHED)
+#define _PAGE_IOREMAP \
+ (_PAGE_PRESENT | __READABLE | __WRITEABLE | _PAGE_GLOBAL | \
+ _CACHE_UNCACHED | _PAGE_SO)
+
#define __P000 PAGE_NONE
#define __P001 PAGE_READONLY
#define __P010 PAGE_COPY