diff options
author | Linus Torvalds <torvalds@ppc970.osdl.org> | 2005-04-16 18:20:36 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@ppc970.osdl.org> | 2005-04-16 18:20:36 -0400 |
commit | 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 (patch) | |
tree | 0bba044c4ce775e45a88a51686b5d9f90697ea9d /drivers/isdn/hisax/hisax_fcpcipnp.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/isdn/hisax/hisax_fcpcipnp.h')
-rw-r--r-- | drivers/isdn/hisax/hisax_fcpcipnp.h | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/drivers/isdn/hisax/hisax_fcpcipnp.h b/drivers/isdn/hisax/hisax_fcpcipnp.h new file mode 100644 index 000000000000..bd8a22e4d6a2 --- /dev/null +++ b/drivers/isdn/hisax/hisax_fcpcipnp.h | |||
@@ -0,0 +1,58 @@ | |||
1 | #include "hisax_if.h" | ||
2 | #include "hisax_isac.h" | ||
3 | #include <linux/pci.h> | ||
4 | |||
5 | #define HSCX_BUFMAX 4096 | ||
6 | |||
7 | enum { | ||
8 | AVM_FRITZ_PCI, | ||
9 | AVM_FRITZ_PNP, | ||
10 | AVM_FRITZ_PCIV2, | ||
11 | }; | ||
12 | |||
13 | struct hdlc_stat_reg { | ||
14 | #ifdef __BIG_ENDIAN | ||
15 | u_char fill __attribute__((packed)); | ||
16 | u_char mode __attribute__((packed)); | ||
17 | u_char xml __attribute__((packed)); | ||
18 | u_char cmd __attribute__((packed)); | ||
19 | #else | ||
20 | u_char cmd __attribute__((packed)); | ||
21 | u_char xml __attribute__((packed)); | ||
22 | u_char mode __attribute__((packed)); | ||
23 | u_char fill __attribute__((packed)); | ||
24 | #endif | ||
25 | }; | ||
26 | |||
27 | struct fritz_bcs { | ||
28 | struct hisax_b_if b_if; | ||
29 | struct fritz_adapter *adapter; | ||
30 | int mode; | ||
31 | int channel; | ||
32 | |||
33 | union { | ||
34 | u_int ctrl; | ||
35 | struct hdlc_stat_reg sr; | ||
36 | } ctrl; | ||
37 | u_int stat; | ||
38 | int rcvidx; | ||
39 | int fifo_size; | ||
40 | u_char rcvbuf[HSCX_BUFMAX]; /* B-Channel receive Buffer */ | ||
41 | |||
42 | int tx_cnt; /* B-Channel transmit counter */ | ||
43 | struct sk_buff *tx_skb; /* B-Channel transmit Buffer */ | ||
44 | }; | ||
45 | |||
46 | struct fritz_adapter { | ||
47 | int type; | ||
48 | spinlock_t hw_lock; | ||
49 | unsigned int io; | ||
50 | unsigned int irq; | ||
51 | struct isac isac; | ||
52 | |||
53 | struct fritz_bcs bcs[2]; | ||
54 | |||
55 | u32 (*read_hdlc_status) (struct fritz_adapter *adapter, int nr); | ||
56 | void (*write_ctrl) (struct fritz_bcs *bcs, int which); | ||
57 | }; | ||
58 | |||