Merge master.kernel.org:/home/rmk/linux-2.6-arm
[linux-2.6] / include / asm-m68k / adb_iop.h
1 /*
2  * ADB through the IOP
3  * Written by Joshua M. Thompson
4  */
5
6 /* IOP number and channel number for ADB */
7
8 #define ADB_IOP         IOP_NUM_ISM
9 #define ADB_CHAN        2
10
11 /* From the A/UX headers...maybe important, maybe not */
12
13 #define ADB_IOP_LISTEN  0x01
14 #define ADB_IOP_TALK    0x02
15 #define ADB_IOP_EXISTS  0x04
16 #define ADB_IOP_FLUSH   0x08
17 #define ADB_IOP_RESET   0x10
18 #define ADB_IOP_INT     0x20
19 #define ADB_IOP_POLL    0x40
20 #define ADB_IOP_UNINT   0x80
21
22 #define AIF_RESET       0x00
23 #define AIF_FLUSH       0x01
24 #define AIF_LISTEN      0x08
25 #define AIF_TALK        0x0C
26
27 /* Flag bits in struct adb_iopmsg */
28
29 #define ADB_IOP_EXPLICIT        0x80    /* nonzero if explicit command */
30 #define ADB_IOP_AUTOPOLL        0x40    /* auto/SRQ polling enabled    */
31 #define ADB_IOP_SRQ             0x04    /* SRQ detected                */
32 #define ADB_IOP_TIMEOUT         0x02    /* nonzero if timeout          */
33
34 #ifndef __ASSEMBLY__
35
36 struct adb_iopmsg {
37         __u8 flags;             /* ADB flags         */
38         __u8 count;             /* no. of data bytes */
39         __u8 cmd;               /* ADB command       */
40         __u8 data[8];           /* ADB data          */
41         __u8 spare[21];         /* spare             */
42 };
43
44 #endif /* __ASSEMBLY__ */