disable debug.
[AROS.git] / arch / m68k-amiga / hidd / gayle_ata / interface_pio.h
blob40327e19960d225f2533c798a53a04245afa5a6d
2 #ifndef INTERFACE_PIO_H
3 #define INTERFACE_PIO_H
5 #include <asm/io.h>
6 #include <exec/types.h>
7 /*
8 * Standard Amiga Gayle Definitions
9 */
10 #define GAYLE_BASE_1200 0xda0000 /* 0xda0000.W, 0xda0004.B, 0xda0008.B ... */
11 #define GAYLE_IRQ_1200 0xda9000
12 #define GAYLE_INT_1200 0xdaa000
14 #define GAYLE_BASE_4000 0xdd2022 /* 0xdd2020.W, 0xdd2026.B, 0xdd202a.B ... (argh!) */
15 #define GAYLE_IRQ_4000 0xdd3020
17 #define GAYLE_IRQ_IDE 0x80
18 #define GAYLE_INT_IDE 0x80
21 * Elbox FastATA Gayle Extensions
23 #define GAYLE_BASE_FASTATA (GAYLE_BASE_1200 + 0x2000)
24 #define GAYLE_BASE_FASTATA_PIO0 (0x0) /* the different PIO modes are handled at different .. */
25 #define GAYLE_BASE_FASTATA_PIO3 (0x10000) /* .. register offsets - see below for register def's */
26 #define GAYLE_BASE_FASTATA_PIO4 (0x14000)
27 #define GAYLE_BASE_FASTATA_PIO5 (0x12000)
28 #define GAYLE_IRQ_FASTATA (GAYLE_IRQ_1200)
30 #define GAYLE_FASTATA_PORTSIZE 0x1000
32 #define GAYLE_FASTATA_PIO_DATA 0x0
33 #define GAYLE_FASTATA_PIO_ERR 0x4
34 #define GAYLE_FASTATA_PIO_NSECT 0x8
35 #define GAYLE_FASTATA_PIO_SECT 0xC
36 #define GAYLE_FASTATA_PIO_LOCYL 0x10
37 #define GAYLE_FASTATA_PIO_HICYL 0x14
38 #define GAYLE_FASTATA_PIO_SEL 0x18
39 #define GAYLE_FASTATA_PIO_STAT 0x1C
41 #define GAYLE_FASTATA_LONGDATA 0x0
42 #define GAYLE_FASTATA_ERR 0x200
43 #define GAYLE_FASTATA_DATA 0x208
44 #define GAYLE_FASTATA_NSECT 0x400
45 #define GAYLE_FASTATA_SECT 0x600
46 #define GAYLE_FASTATA_LOCYL 0x800
47 #define GAYLE_FASTATA_HICYL 0xA00
48 #define GAYLE_FASTATA_SEL 0xC00
49 #define GAYLE_FASTATA_STAT 0xE00
51 struct pio_data
53 UBYTE *dataport;
54 UBYTE *port;
55 UBYTE *altport;
58 extern const APTR bus_FuncTable[];
59 extern const APTR pio_FuncTable[];
61 #endif /* !INTERFACE_PIO_H */