aboutsummaryrefslogtreecommitdiffstats
path: root/arch/hexagon
diff options
context:
space:
mode:
authorRichard Kuo <rkuo@codeaurora.org>2013-03-01 14:16:15 -0500
committerRichard Kuo <rkuo@codeaurora.org>2013-04-30 20:40:25 -0400
commit1ce81f4f8727f42c052fe814f3df20bc92fdb168 (patch)
tree225549486d81dbf948df6d388da8e3328faa4df6 /arch/hexagon
parentf167063a0c4e97dfbd8e42df76e71022bb2bdb7f (diff)
Hexagon: add IOMEM and _relaxed IO macros
Signed-off-by: Richard Kuo <rkuo@codeaurora.org>
Diffstat (limited to 'arch/hexagon')
-rw-r--r--arch/hexagon/include/asm/io.h14
1 files changed, 14 insertions, 0 deletions
diff --git a/arch/hexagon/include/asm/io.h b/arch/hexagon/include/asm/io.h
index e527cfeff5ba..6199ed5f064b 100644
--- a/arch/hexagon/include/asm/io.h
+++ b/arch/hexagon/include/asm/io.h
@@ -40,6 +40,8 @@
40#define IO_SPACE_LIMIT 0xffff 40#define IO_SPACE_LIMIT 0xffff
41#define _IO_BASE ((void __iomem *)0xfe000000) 41#define _IO_BASE ((void __iomem *)0xfe000000)
42 42
43#define IOMEM(x) ((void __force __iomem *)(x))
44
43extern int remap_area_pages(unsigned long start, unsigned long phys_addr, 45extern int remap_area_pages(unsigned long start, unsigned long phys_addr,
44 unsigned long end, unsigned long flags); 46 unsigned long end, unsigned long flags);
45 47
@@ -176,6 +178,18 @@ static inline void writel(u32 data, volatile void __iomem *addr)
176#define __raw_readl readl 178#define __raw_readl readl
177 179
178/* 180/*
181 * http://comments.gmane.org/gmane.linux.ports.arm.kernel/117626
182 */
183
184#define readb_relaxed __raw_readb
185#define readw_relaxed __raw_readw
186#define readl_relaxed __raw_readl
187
188#define writeb_relaxed __raw_writeb
189#define writew_relaxed __raw_writew
190#define writel_relaxed __raw_writel
191
192/*
179 * Need an mtype somewhere in here, for cache type deals? 193 * Need an mtype somewhere in here, for cache type deals?
180 * This is probably too long for an inline. 194 * This is probably too long for an inline.
181 */ 195 */