summaryrefslogtreecommitdiffstats
path: root/include/asm-mips/mach-ip32
diff options
context:
space:
mode:
authorAtsushi Nemoto <anemo@mba.ocn.ne.jp>2006-02-17 01:36:24 +0900
committerRalf Baechle <ralf@linux-mips.org>2006-03-21 13:27:45 +0000
commita8433137ea9143bb3a2bc18a3407b5a130fdb868 (patch)
treeff40223bf542173015c070a988a4f3b0554f89ea /include/asm-mips/mach-ip32
parentc1449c8fa40859eb269025a7db85b34115205f5b (diff)
downloadop-kernel-dev-a8433137ea9143bb3a2bc18a3407b5a130fdb868.zip
op-kernel-dev-a8433137ea9143bb3a2bc18a3407b5a130fdb868.tar.gz
[MIPS] Make I/O helpers more customizable
1. Move ioswab*() and __mem_ioswab*() to mangle-port.h. This gets rid of CONFIG_SGI_IP22 from include/asm-mips/io.h. 2. Pass a virtual address to *ioswab*(). Then we can provide mach-specific *ioswab*() and can do every evil thing based on its argument. It could be useful on machines which have regions with different endian conversion scheme. 3. Call __swizzle_addr*() _after_ adding mips_io_port_base. This unifies the meaning of the argument of __swizzle_addr*() (always virtual address). Then mach-specific __swizzle_addr*() can do every evil thing based on the argument. Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Diffstat (limited to 'include/asm-mips/mach-ip32')
-rw-r--r--include/asm-mips/mach-ip32/mangle-port.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/include/asm-mips/mach-ip32/mangle-port.h b/include/asm-mips/mach-ip32/mangle-port.h
index 6e25b52..81320eb 100644
--- a/include/asm-mips/mach-ip32/mangle-port.h
+++ b/include/asm-mips/mach-ip32/mangle-port.h
@@ -14,4 +14,13 @@
#define __swizzle_addr_l(port) (port)
#define __swizzle_addr_q(port) (port)
+# define ioswabb(a,x) (x)
+# define __mem_ioswabb(a,x) (x)
+# define ioswabw(a,x) (x)
+# define __mem_ioswabw(a,x) cpu_to_le16(x)
+# define ioswabl(a,x) (x)
+# define __mem_ioswabl(a,x) cpu_to_le32(x)
+# define ioswabq(a,x) (x)
+# define __mem_ioswabq(a,x) cpu_to_le32(x)
+
#endif /* __ASM_MACH_IP32_MANGLE_PORT_H */
OpenPOWER on IntegriCloud