aboutsummaryrefslogtreecommitdiffstats
path: root/include/asm-parisc/io.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/asm-parisc/io.h')
-rw-r--r--include/asm-parisc/io.h16
1 files changed, 5 insertions, 11 deletions
diff --git a/include/asm-parisc/io.h b/include/asm-parisc/io.h
index be0c7234a6da..2fb253255102 100644
--- a/include/asm-parisc/io.h
+++ b/include/asm-parisc/io.h
@@ -26,11 +26,7 @@ extern unsigned long parisc_vmerge_max_size;
26 */ 26 */
27 27
28#ifdef CONFIG_DEBUG_IOREMAP 28#ifdef CONFIG_DEBUG_IOREMAP
29#ifdef CONFIG_64BIT 29#define NYBBLE_SHIFT (BITS_PER_LONG - 4)
30#define NYBBLE_SHIFT 60
31#else
32#define NYBBLE_SHIFT 28
33#endif
34extern void gsc_bad_addr(unsigned long addr); 30extern void gsc_bad_addr(unsigned long addr);
35extern void __raw_bad_addr(const volatile void __iomem *addr); 31extern void __raw_bad_addr(const volatile void __iomem *addr);
36#define gsc_check_addr(addr) \ 32#define gsc_check_addr(addr) \
@@ -181,13 +177,11 @@ extern inline void * ioremap_nocache(unsigned long offset, unsigned long size)
181extern void iounmap(void __iomem *addr); 177extern void iounmap(void __iomem *addr);
182 178
183/* 179/*
184 * USE_HPPA_IOREMAP is the magic flag to enable or disable real ioremap() 180 * CONFIG_HPPA_IOREMAP is the magic flag to enable or disable real ioremap()
185 * functionality. It's currently disabled because it may not work on some 181 * functionality. It's currently disabled because it may not work on some
186 * machines. 182 * machines.
187 */ 183 */
188#define USE_HPPA_IOREMAP 0 184#ifdef CONFIG_HPPA_IOREMAP
189
190#if USE_HPPA_IOREMAP
191static inline unsigned char __raw_readb(const volatile void __iomem *addr) 185static inline unsigned char __raw_readb(const volatile void __iomem *addr)
192{ 186{
193 return (*(volatile unsigned char __force *) (addr)); 187 return (*(volatile unsigned char __force *) (addr));
@@ -221,7 +215,7 @@ static inline void __raw_writeq(unsigned long long b, volatile void __iomem *add
221{ 215{
222 *(volatile unsigned long long __force *) addr = b; 216 *(volatile unsigned long long __force *) addr = b;
223} 217}
224#else /* !USE_HPPA_IOREMAP */ 218#else /* !CONFIG_HPPA_IOREMAP */
225static inline unsigned char __raw_readb(const volatile void __iomem *addr) 219static inline unsigned char __raw_readb(const volatile void __iomem *addr)
226{ 220{
227 __raw_check_addr(addr); 221 __raw_check_addr(addr);
@@ -271,7 +265,7 @@ static inline void __raw_writeq(unsigned long long b, volatile void __iomem *add
271 265
272 gsc_writeq(b, (unsigned long) addr); 266 gsc_writeq(b, (unsigned long) addr);
273} 267}
274#endif /* !USE_HPPA_IOREMAP */ 268#endif /* !CONFIG_HPPA_IOREMAP */
275 269
276/* readb can never be const, so use __fswab instead of le*_to_cpu */ 270/* readb can never be const, so use __fswab instead of le*_to_cpu */
277#define readb(addr) __raw_readb(addr) 271#define readb(addr) __raw_readb(addr)