aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/wl12xx/wl12xx_80211.h
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/net/wireless/wl12xx/wl12xx_80211.h')
-rw-r--r--drivers/net/wireless/wl12xx/wl12xx_80211.h25
1 files changed, 18 insertions, 7 deletions
diff --git a/drivers/net/wireless/wl12xx/wl12xx_80211.h b/drivers/net/wireless/wl12xx/wl12xx_80211.h
index 184628027213..18fe542360f2 100644
--- a/drivers/net/wireless/wl12xx/wl12xx_80211.h
+++ b/drivers/net/wireless/wl12xx/wl12xx_80211.h
@@ -2,6 +2,7 @@
2#define __WL12XX_80211_H__ 2#define __WL12XX_80211_H__
3 3
4#include <linux/if_ether.h> /* ETH_ALEN */ 4#include <linux/if_ether.h> /* ETH_ALEN */
5#include <linux/if_arp.h>
5 6
6/* RATES */ 7/* RATES */
7#define IEEE80211_CCK_RATE_1MB 0x02 8#define IEEE80211_CCK_RATE_1MB 0x02
@@ -54,7 +55,6 @@
54 55
55/* This really should be 8, but not for our firmware */ 56/* This really should be 8, but not for our firmware */
56#define MAX_SUPPORTED_RATES 32 57#define MAX_SUPPORTED_RATES 32
57#define COUNTRY_STRING_LEN 3
58#define MAX_COUNTRY_TRIPLETS 32 58#define MAX_COUNTRY_TRIPLETS 32
59 59
60/* Headers */ 60/* Headers */
@@ -98,7 +98,7 @@ struct country_triplet {
98 98
99struct wl12xx_ie_country { 99struct wl12xx_ie_country {
100 struct wl12xx_ie_header header; 100 struct wl12xx_ie_header header;
101 u8 country_string[COUNTRY_STRING_LEN]; 101 u8 country_string[IEEE80211_COUNTRY_STRING_LEN];
102 struct country_triplet triplets[MAX_COUNTRY_TRIPLETS]; 102 struct country_triplet triplets[MAX_COUNTRY_TRIPLETS];
103} __packed; 103} __packed;
104 104
@@ -133,11 +133,17 @@ struct wl12xx_qos_null_data_template {
133 __le16 qos_ctl; 133 __le16 qos_ctl;
134} __packed; 134} __packed;
135 135
136struct wl12xx_probe_req_template { 136struct wl12xx_arp_rsp_template {
137 struct ieee80211_header header; 137 struct ieee80211_hdr_3addr hdr;
138 struct wl12xx_ie_ssid ssid; 138
139 struct wl12xx_ie_rates rates; 139 u8 llc_hdr[sizeof(rfc1042_header)];
140 struct wl12xx_ie_rates ext_rates; 140 __be16 llc_type;
141
142 struct arphdr arp_hdr;
143 u8 sender_hw[ETH_ALEN];
144 __be32 sender_ip;
145 u8 target_hw[ETH_ALEN];
146 __be32 target_ip;
141} __packed; 147} __packed;
142 148
143 149
@@ -153,4 +159,9 @@ struct wl12xx_probe_resp_template {
153 struct wl12xx_ie_country country; 159 struct wl12xx_ie_country country;
154} __packed; 160} __packed;
155 161
162struct wl12xx_disconn_template {
163 struct ieee80211_header header;
164 __le16 disconn_reason;
165} __packed;
166
156#endif 167#endif