Commit | Line | Data |
---|---|---|
1da177e4 | 1 | /* |
1da177e4 LT |
2 | * Copyright (C) 2002 Intersil Americas Inc. |
3 | * | |
4 | * This program is free software; you can redistribute it and/or modify | |
5 | * it under the terms of the GNU General Public License as published by | |
6 | * the Free Software Foundation; either version 2 of the License | |
7 | * | |
8 | * This program is distributed in the hope that it will be useful, | |
9 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
10 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
11 | * GNU General Public License for more details. | |
12 | * | |
13 | * You should have received a copy of the GNU General Public License | |
14 | * along with this program; if not, write to the Free Software | |
15 | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
16 | * | |
17 | */ | |
18 | ||
19 | #ifndef _ISLPCI_ETH_H | |
20 | #define _ISLPCI_ETH_H | |
21 | ||
22 | #include "isl_38xx.h" | |
23 | #include "islpci_dev.h" | |
24 | ||
25 | struct rfmon_header { | |
0569056e AV |
26 | __le16 unk0; /* = 0x0000 */ |
27 | __le16 length; /* = 0x1400 */ | |
28 | __le32 clock; /* 1MHz clock */ | |
1da177e4 LT |
29 | u8 flags; |
30 | u8 unk1; | |
31 | u8 rate; | |
32 | u8 unk2; | |
0569056e AV |
33 | __le16 freq; |
34 | __le16 unk3; | |
1da177e4 LT |
35 | u8 rssi; |
36 | u8 padding[3]; | |
ba2d3587 | 37 | } __packed; |
1da177e4 LT |
38 | |
39 | struct rx_annex_header { | |
40 | u8 addr1[ETH_ALEN]; | |
41 | u8 addr2[ETH_ALEN]; | |
42 | struct rfmon_header rfmon; | |
ba2d3587 | 43 | } __packed; |
1da177e4 LT |
44 | |
45 | /* wlan-ng (and hopefully others) AVS header, version one. Fields in | |
46 | * network byte order. */ | |
47 | #define P80211CAPTURE_VERSION 0x80211001 | |
48 | ||
49 | struct avs_80211_1_header { | |
0569056e AV |
50 | __be32 version; |
51 | __be32 length; | |
52 | __be64 mactime; | |
53 | __be64 hosttime; | |
54 | __be32 phytype; | |
55 | __be32 channel; | |
56 | __be32 datarate; | |
57 | __be32 antenna; | |
58 | __be32 priority; | |
59 | __be32 ssi_type; | |
60 | __be32 ssi_signal; | |
61 | __be32 ssi_noise; | |
62 | __be32 preamble; | |
63 | __be32 encoding; | |
1da177e4 LT |
64 | }; |
65 | ||
66 | void islpci_eth_cleanup_transmit(islpci_private *, isl38xx_control_block *); | |
d0cf9c0d | 67 | netdev_tx_t islpci_eth_transmit(struct sk_buff *, struct net_device *); |
1da177e4 LT |
68 | int islpci_eth_receive(islpci_private *); |
69 | void islpci_eth_tx_timeout(struct net_device *); | |
c4028958 | 70 | void islpci_do_reset_and_wake(struct work_struct *); |
1da177e4 LT |
71 | |
72 | #endif /* _ISL_GEN_H */ |