aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/3c527.h
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@ppc970.osdl.org>2005-04-16 18:20:36 -0400
committerLinus Torvalds <torvalds@ppc970.osdl.org>2005-04-16 18:20:36 -0400
commit1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 (patch)
tree0bba044c4ce775e45a88a51686b5d9f90697ea9d /drivers/net/3c527.h
Linux-2.6.12-rc2v2.6.12-rc2
Initial git repository build. I'm not bothering with the full history, even though we have it. We can create a separate "historical" git archive of that later if we want to, and in the meantime it's about 3.2GB when imported into git - space that would just make the early git days unnecessarily complicated, when we don't have a lot of good infrastructure for it. Let it rip!
Diffstat (limited to 'drivers/net/3c527.h')
-rw-r--r--drivers/net/3c527.h81
1 files changed, 81 insertions, 0 deletions
diff --git a/drivers/net/3c527.h b/drivers/net/3c527.h
new file mode 100644
index 000000000000..c10f009ce9b6
--- /dev/null
+++ b/drivers/net/3c527.h
@@ -0,0 +1,81 @@
1/*
2 * 3COM "EtherLink MC/32" Descriptions
3 */
4
5/*
6 * Registers
7 */
8
9#define HOST_CMD 0
10#define HOST_CMD_START_RX (1<<3)
11#define HOST_CMD_SUSPND_RX (3<<3)
12#define HOST_CMD_RESTRT_RX (5<<3)
13
14#define HOST_CMD_SUSPND_TX 3
15#define HOST_CMD_RESTRT_TX 5
16
17
18#define HOST_STATUS 2
19#define HOST_STATUS_CRR (1<<6)
20#define HOST_STATUS_CWR (1<<5)
21
22
23#define HOST_CTRL 6
24#define HOST_CTRL_ATTN (1<<7)
25#define HOST_CTRL_RESET (1<<6)
26#define HOST_CTRL_INTE (1<<2)
27
28#define HOST_RAMPAGE 8
29
30#define HALTED 0
31#define RUNNING 1
32
33struct mc32_mailbox
34{
35 u16 mbox __attribute((packed));
36 u16 data[1] __attribute((packed));
37};
38
39struct skb_header
40{
41 u8 status __attribute((packed));
42 u8 control __attribute((packed));
43 u16 next __attribute((packed)); /* Do not change! */
44 u16 length __attribute((packed));
45 u32 data __attribute((packed));
46};
47
48struct mc32_stats
49{
50 /* RX Errors */
51 u32 rx_crc_errors __attribute((packed));
52 u32 rx_alignment_errors __attribute((packed));
53 u32 rx_overrun_errors __attribute((packed));
54 u32 rx_tooshort_errors __attribute((packed));
55 u32 rx_toolong_errors __attribute((packed));
56 u32 rx_outofresource_errors __attribute((packed));
57
58 u32 rx_discarded __attribute((packed)); /* via card pattern match filter */
59
60 /* TX Errors */
61 u32 tx_max_collisions __attribute((packed));
62 u32 tx_carrier_errors __attribute((packed));
63 u32 tx_underrun_errors __attribute((packed));
64 u32 tx_cts_errors __attribute((packed));
65 u32 tx_timeout_errors __attribute((packed)) ;
66
67 /* various cruft */
68 u32 dataA[6] __attribute((packed));
69 u16 dataB[5] __attribute((packed));
70 u32 dataC[14] __attribute((packed));
71};
72
73#define STATUS_MASK 0x0F
74#define COMPLETED (1<<7)
75#define COMPLETED_OK (1<<6)
76#define BUFFER_BUSY (1<<5)
77
78#define CONTROL_EOP (1<<7) /* End Of Packet */
79#define CONTROL_EOL (1<<6) /* End of List */
80
81#define MCA_MC32_ID 0x0041 /* Our MCA ident */