summaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-ebsa110/io.c
diff options
context:
space:
mode:
authorRussell King <rmk+kernel@arm.linux.org.uk>2011-06-10 12:13:05 +0200
committerRussell King <rmk+kernel@arm.linux.org.uk>2012-02-02 18:40:27 +0100
commitbcbbf908e3c6d60f8efb7e2e8f09285bbda9e11e (patch)
treea8c3bfcf22d491f97d7aecd19bfc5348269b6839 /arch/arm/mach-ebsa110/io.c
parentLinux 3.3-rc2 (diff)
downloadlinux-bcbbf908e3c6d60f8efb7e2e8f09285bbda9e11e.tar.xz
linux-bcbbf908e3c6d60f8efb7e2e8f09285bbda9e11e.zip
ARM: ebsa110: move platform definitions out of mach/hardware.h
Stop exposing platform definitions to the entire kernel tree, move them into a private header file instead. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/mach-ebsa110/io.c')
-rw-r--r--arch/arm/mach-ebsa110/io.c20
1 files changed, 20 insertions, 0 deletions
diff --git a/arch/arm/mach-ebsa110/io.c b/arch/arm/mach-ebsa110/io.c
index c52e3047a7eb..756cc377a73d 100644
--- a/arch/arm/mach-ebsa110/io.c
+++ b/arch/arm/mach-ebsa110/io.c
@@ -177,6 +177,26 @@ void writesl(void __iomem *addr, const void *data, int len)
}
EXPORT_SYMBOL(writesl);
+/*
+ * The EBSA110 has a weird "ISA IO" region:
+ *
+ * Region 0 (addr = 0xf0000000 + io << 2)
+ * --------------------------------------------------------
+ * Physical region IO region
+ * f0000fe0 - f0000ffc 3f8 - 3ff ttyS0
+ * f0000e60 - f0000e64 398 - 399
+ * f0000de0 - f0000dfc 378 - 37f lp0
+ * f0000be0 - f0000bfc 2f8 - 2ff ttyS1
+ *
+ * Region 1 (addr = 0xf0000000 + (io & ~1) << 1 + (io & 1))
+ * --------------------------------------------------------
+ * Physical region IO region
+ * f00014f1 a79 pnp write data
+ * f00007c0 - f00007c1 3e0 - 3e1 pcmcia
+ * f00004f1 279 pnp address
+ * f0000440 - f000046c 220 - 236 eth0
+ * f0000405 203 pnp read data
+ */
#define SUPERIO_PORT(p) \
(((p) >> 3) == (0x3f8 >> 3) || \
((p) >> 3) == (0x2f8 >> 3) || \