Linux-2.6.12-rc2
[linux-2.6.git] / drivers / net / tokenring / madgemc.h
1 /* 
2  * madgemc.h: Header for the madgemc tms380tr module
3  *
4  * Authors:
5  * - Adam Fritzler <mid@auk.cx>
6  */
7
8 #ifndef __LINUX_MADGEMC_H
9 #define __LINUX_MADGEMC_H
10
11 #ifdef __KERNEL__
12
13 #define MADGEMC16_CARDNAME "Madge Smart 16/4 MC16 Ringnode"
14 #define MADGEMC32_CARDNAME "Madge Smart 16/4 MC32 Ringnode"
15
16 /* 
17  * Bit definitions for the POS config registers
18  */
19 #define MC16_POS0_ADDR1 0x20
20 #define MC16_POS2_ADDR2 0x04
21 #define MC16_POS3_ADDR3 0x20
22
23 #define MC_CONTROL_REG0         ((long)-8) /* 0x00 */
24 #define MC_CONTROL_REG1         ((long)-7) /* 0x01 */
25 #define MC_ADAPTER_POS_REG0     ((long)-6) /* 0x02 */
26 #define MC_ADAPTER_POS_REG1     ((long)-5) /* 0x03 */
27 #define MC_ADAPTER_POS_REG2     ((long)-4) /* 0x04 */
28 #define MC_ADAPTER_REG5_UNUSED  ((long)-3) /* 0x05 */
29 #define MC_ADAPTER_REG6_UNUSED  ((long)-2) /* 0x06 */
30 #define MC_CONTROL_REG7         ((long)-1) /* 0x07 */
31
32 #define MC_CONTROL_REG0_UNKNOWN1        0x01
33 #define MC_CONTROL_REG0_UNKNOWN2        0x02
34 #define MC_CONTROL_REG0_SIFSEL          0x04
35 #define MC_CONTROL_REG0_PAGE            0x08
36 #define MC_CONTROL_REG0_TESTINTERRUPT   0x10
37 #define MC_CONTROL_REG0_UNKNOWN20       0x20
38 #define MC_CONTROL_REG0_SINTR           0x40
39 #define MC_CONTROL_REG0_UNKNOWN80       0x80
40
41 #define MC_CONTROL_REG1_SINTEN          0x01
42 #define MC_CONTROL_REG1_BITOFDEATH      0x02
43 #define MC_CONTROL_REG1_NSRESET         0x04
44 #define MC_CONTROL_REG1_UNKNOWN8        0x08
45 #define MC_CONTROL_REG1_UNKNOWN10       0x10
46 #define MC_CONTROL_REG1_UNKNOWN20       0x20
47 #define MC_CONTROL_REG1_SRSX            0x40
48 #define MC_CONTROL_REG1_SPEED_SEL       0x80
49
50 #define MC_CONTROL_REG7_CABLESTP        0x00
51 #define MC_CONTROL_REG7_CABLEUTP        0x01
52
53 /*
54  * ROM Page Zero
55  */
56 #define MC_ROM_MANUFACTURERID           0x00
57 #define MC_ROM_ADAPTERID                0x01
58 #define MC_ROM_REVISION                 0x02
59 #define MC_ROM_CONFIG0                  0x03
60 #define MC_ROM_CONFIG1                  0x04
61 #define MC_ROM_CONFIG2                  0x05
62
63 /*
64  * ROM Page One
65  */
66 #define MC_ROM_UNUSED_BYTE              0x00
67 #define MC_ROM_BIA_START                0x01
68
69 #endif /* __KERNEL__ */
70 #endif /* __LINUX_MADGEMC_H */