[PARISC] Add CONFIG_HPPA_IOREMAP to conditionally enable ioremap

Instead of making it a #define in asm/io.h, allow user to select
to turn on IOREMAP from the config menu.

Signed-off-by: Helge Deller <deller@parisc-linux.org>
Signed-off-by: Kyle McMartin <kyle@parisc-linux.org>
diff --git a/include/asm-parisc/io.h b/include/asm-parisc/io.h
index be0c723..2fb2532 100644
--- a/include/asm-parisc/io.h
+++ b/include/asm-parisc/io.h
@@ -26,11 +26,7 @@
  */
 
 #ifdef CONFIG_DEBUG_IOREMAP
-#ifdef CONFIG_64BIT
-#define NYBBLE_SHIFT 60
-#else
-#define NYBBLE_SHIFT 28
-#endif
+#define NYBBLE_SHIFT (BITS_PER_LONG - 4)
 extern void gsc_bad_addr(unsigned long addr);
 extern void __raw_bad_addr(const volatile void __iomem *addr);
 #define gsc_check_addr(addr)					\
@@ -181,13 +177,11 @@
 extern void iounmap(void __iomem *addr);
 
 /*
- * USE_HPPA_IOREMAP is the magic flag to enable or disable real ioremap()
+ * CONFIG_HPPA_IOREMAP is the magic flag to enable or disable real ioremap()
  * functionality.  It's currently disabled because it may not work on some
  * machines.
  */
-#define USE_HPPA_IOREMAP 0
-
-#if USE_HPPA_IOREMAP
+#ifdef CONFIG_HPPA_IOREMAP
 static inline unsigned char __raw_readb(const volatile void __iomem *addr)
 {
 	return (*(volatile unsigned char __force *) (addr));
@@ -221,7 +215,7 @@
 {
 	*(volatile unsigned long long __force *) addr = b;
 }
-#else /* !USE_HPPA_IOREMAP */
+#else /* !CONFIG_HPPA_IOREMAP */
 static inline unsigned char __raw_readb(const volatile void __iomem *addr)
 {
 	__raw_check_addr(addr);
@@ -271,7 +265,7 @@
 
 	gsc_writeq(b, (unsigned long) addr);
 }
-#endif /* !USE_HPPA_IOREMAP */
+#endif /* !CONFIG_HPPA_IOREMAP */
 
 /* readb can never be const, so use __fswab instead of le*_to_cpu */
 #define readb(addr) __raw_readb(addr)