|
@@ -0,0 +1,61 @@
|
|
|
+/*
|
|
|
+ * linux/include/asm-m68k/io.h
|
|
|
+ *
|
|
|
+ * 4/1/00 RZ: - rewritten to avoid clashes between ISA/PCI and other
|
|
|
+ * IO access
|
|
|
+ * - added Q40 support
|
|
|
+ * - added skeleton for GG-II and Amiga PCMCIA
|
|
|
+ * 2/3/01 RZ: - moved a few more defs into raw_io.h
|
|
|
+ *
|
|
|
+ * inX/outX should not be used by any driver unless it does
|
|
|
+ * ISA access. Other drivers should use function defined in raw_io.h
|
|
|
+ * or define its own macros on top of these.
|
|
|
+ *
|
|
|
+ * inX(),outX() are for ISA I/O
|
|
|
+ * isa_readX(),isa_writeX() are for ISA memory
|
|
|
+ */
|
|
|
+
|
|
|
+#ifndef _IO_H
|
|
|
+#define _IO_H
|
|
|
+
|
|
|
+#ifdef __KERNEL__
|
|
|
+
|
|
|
+#include <linux/compiler.h>
|
|
|
+#include <asm/raw_io.h>
|
|
|
+#include <asm/virtconvert.h>
|
|
|
+
|
|
|
+#include <asm-generic/iomap.h>
|
|
|
+
|
|
|
+#ifdef CONFIG_ATARI
|
|
|
+#include <asm/atarihw.h>
|
|
|
+#endif
|
|
|
+
|
|
|
+
|
|
|
+/*
|
|
|
+ * IO/MEM definitions for various ISA bridges
|
|
|
+ */
|
|
|
+
|
|
|
+
|
|
|
+#ifdef CONFIG_Q40
|
|
|
+
|
|
|
+#define q40_isa_io_base 0xff400000
|
|
|
+#define q40_isa_mem_base 0xff800000
|
|
|
+
|
|
|
+#define Q40_ISA_IO_B(ioaddr) (q40_isa_io_base+1+4*((unsigned long)(ioaddr)))
|
|
|
+#define Q40_ISA_IO_W(ioaddr) (q40_isa_io_base+ 4*((unsigned long)(ioaddr)))
|
|
|
+#define Q40_ISA_MEM_B(madr) (q40_isa_mem_base+1+4*((unsigned long)(madr)))
|
|
|
+#define Q40_ISA_MEM_W(madr) (q40_isa_mem_base+ 4*((unsigned long)(madr)))
|
|
|
+
|
|
|
+#define MULTI_ISA 0
|
|
|
+#endif /* Q40 */
|
|
|
+
|
|
|
+#ifdef CONFIG_AMIGA_PCMCIA
|
|
|
+#include <asm/amigayle.h>
|
|
|
+
|
|
|
+#define AG_ISA_IO_B(ioaddr) ( GAYLE_IO+(ioaddr)+(((ioaddr)&1)*GAYLE_ODD) )
|
|
|
+#define AG_ISA_IO_W(ioaddr) ( GAYLE_IO+(ioaddr) )
|
|
|
+
|
|
|
+#ifndef MULTI_ISA
|
|
|
+#define MULTI_ISA 0
|
|
|
+#else
|
|
|
+#undef MULTI_ISA
|