[PATCH] ARM: fix __io macro for PCMCIA
Rob Herring
robherring2 at gmail.com
Tue Apr 3 23:11:52 EDT 2012
From: Rob Herring <rob.herring at calxeda.com>
With commit c334bc1 (ARM: make mach/io.h include optional), PCMCIA was
broken as PCMCIA depends on __io() being just a cast. This needs a better
fix with a fixed i/o address mapping, but for now we just restore things
to the previous behavior.
Signed-off-by: Rob Herring <rob.herring at calxeda.com>
Cc: Joachim Eastwood <joachim.eastwood at jotron.com>
Cc: Paul Parsons <lost.distance at yahoo.com>
---
arch/arm/include/asm/io.h | 6 ++++--
1 files changed, 4 insertions(+), 2 deletions(-)
diff --git a/arch/arm/include/asm/io.h b/arch/arm/include/asm/io.h
index df0ac0b..00262a4 100644
--- a/arch/arm/include/asm/io.h
+++ b/arch/arm/include/asm/io.h
@@ -118,6 +118,8 @@ static inline void __iomem *__typesafe_io(unsigned long addr)
*/
#ifdef CONFIG_NEED_MACH_IO_H
#include <mach/io.h>
+#elif defined(CONFIG_PCCARD)
+#define __io(a) __typesafe_io(a)
#else
#define __io(a) ({ (void)(a); __typesafe_io(0); })
#endif
@@ -134,9 +136,9 @@ static inline void __iomem *__typesafe_io(unsigned long addr)
* readb() et.al. on such platforms.
*/
#ifndef IO_SPACE_LIMIT
-#if defined(CONFIG_PCMCIA_SOC_COMMON) || defined(CONFIG_PCMCIA_SOC_COMMON_MODULE)
+#if defined(CONFIG_PCCARD)
#define IO_SPACE_LIMIT ((resource_size_t)0xffffffff)
-#elif defined(CONFIG_PCI) || defined(CONFIG_ISA) || defined(CONFIG_PCCARD)
+#elif defined(CONFIG_PCI) || defined(CONFIG_ISA)
#define IO_SPACE_LIMIT ((resource_size_t)0xffff)
#else
#define IO_SPACE_LIMIT ((resource_size_t)0)
--
1.7.5.4
More information about the linux-arm-kernel
mailing list