aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/p54
diff options
context:
space:
mode:
authorChristian Lamparter <chunkeey@web.de>2009-03-24 22:11:58 -0400
committerJohn W. Linville <linville@tuxdriver.com>2009-04-22 16:54:36 -0400
commitcf3a9579f61c643c15c172da0baf5429578b0ba3 (patch)
tree0f48228b61e2d4fbb1d6972a2271444d001921de /drivers/net/wireless/p54
parentae3d2462f89db4592ea71e8f6e326d4b38dc952c (diff)
p54: clean up p54.h's struct p54_common
This patch rearrange and regroups most elements in p54_common. Signed-off-by: Christian Lamparter <chunkeey@web.de> Acked-by: Larry Finger <Larry.Finger@lwfinger.net> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/p54')
-rw-r--r--drivers/net/wireless/p54/p54.h67
1 files changed, 42 insertions, 25 deletions
diff --git a/drivers/net/wireless/p54/p54.h b/drivers/net/wireless/p54/p54.h
index ecf8b6ed5a47..04d95a143383 100644
--- a/drivers/net/wireless/p54/p54.h
+++ b/drivers/net/wireless/p54/p54.h
@@ -133,55 +133,72 @@ struct p54_led_dev {
133 133
134struct p54_common { 134struct p54_common {
135 struct ieee80211_hw *hw; 135 struct ieee80211_hw *hw;
136 u32 rx_start;
137 u32 rx_end;
138 struct sk_buff_head tx_queue;
139 void (*tx)(struct ieee80211_hw *dev, struct sk_buff *skb); 136 void (*tx)(struct ieee80211_hw *dev, struct sk_buff *skb);
140 int (*open)(struct ieee80211_hw *dev); 137 int (*open)(struct ieee80211_hw *dev);
141 void (*stop)(struct ieee80211_hw *dev); 138 void (*stop)(struct ieee80211_hw *dev);
142 int mode; 139 struct sk_buff_head tx_queue;
140 struct mutex conf_mutex;
141
142 /* memory management (as seen by the firmware) */
143 u32 rx_start;
144 u32 rx_end;
143 u16 rx_mtu; 145 u16 rx_mtu;
144 u8 headroom; 146 u8 headroom;
145 u8 tailroom; 147 u8 tailroom;
146 struct mutex conf_mutex; 148
147 u8 mac_addr[ETH_ALEN]; 149 /* firmware/hardware info */
148 u8 bssid[ETH_ALEN]; 150 unsigned int tx_hdr_len;
151 unsigned int fw_var;
152 unsigned int fw_interface;
153 u8 version;
154
155 /* (e)DCF / QOS state */
156 bool use_short_slot;
157 struct ieee80211_tx_queue_stats tx_stats[8];
158 struct p54_edcf_queue_param qos_params[8];
159
160 /* Radio data */
161 u16 rxhw;
149 u8 rx_diversity_mask; 162 u8 rx_diversity_mask;
150 u8 tx_diversity_mask; 163 u8 tx_diversity_mask;
164 unsigned int output_power;
165 int noise;
166 /* calibration, output power limit and rssi<->dBm conversation data */
151 struct pda_iq_autocal_entry *iq_autocal; 167 struct pda_iq_autocal_entry *iq_autocal;
152 unsigned int iq_autocal_len; 168 unsigned int iq_autocal_len;
153 struct p54_cal_database *output_limit;
154 struct p54_cal_database *curve_data; 169 struct p54_cal_database *curve_data;
170 struct p54_cal_database *output_limit;
155 struct p54_rssi_linear_approximation rssical_db[IEEE80211_NUM_BANDS]; 171 struct p54_rssi_linear_approximation rssical_db[IEEE80211_NUM_BANDS];
172
173 /* BBP/MAC state */
174 u8 mac_addr[ETH_ALEN];
175 u8 bssid[ETH_ALEN];
176 u16 wakeup_timer;
156 unsigned int filter_flags; 177 unsigned int filter_flags;
157 bool use_short_slot; 178 int mode;
158 u16 rxhw; 179 u32 tsf_low32, tsf_high32;
159 u8 version;
160 unsigned int tx_hdr_len;
161 unsigned int fw_var;
162 unsigned int fw_interface;
163 unsigned int output_power;
164 u32 tsf_low32;
165 u32 tsf_high32;
166 u32 basic_rate_mask; 180 u32 basic_rate_mask;
167 u16 wakeup_timer;
168 u16 aid; 181 u16 aid;
169 struct ieee80211_tx_queue_stats tx_stats[8];
170 struct p54_edcf_queue_param qos_params[8];
171 struct ieee80211_low_level_stats stats;
172 struct delayed_work work;
173 struct sk_buff *cached_beacon; 182 struct sk_buff *cached_beacon;
174 int noise; 183
175 void *eeprom; 184 /* cryptographic engine information */
176 struct completion eeprom_comp;
177 u8 privacy_caps; 185 u8 privacy_caps;
178 u8 rx_keycache_size; 186 u8 rx_keycache_size;
187
179 /* LED management */ 188 /* LED management */
180#ifdef CONFIG_P54_LEDS 189#ifdef CONFIG_P54_LEDS
181 struct p54_led_dev assoc_led; 190 struct p54_led_dev assoc_led;
182 struct p54_led_dev tx_led; 191 struct p54_led_dev tx_led;
183#endif /* CONFIG_P54_LEDS */ 192#endif /* CONFIG_P54_LEDS */
184 u16 softled_state; /* bit field of glowing LEDs */ 193 u16 softled_state; /* bit field of glowing LEDs */
194
195 /* statistics */
196 struct ieee80211_low_level_stats stats;
197 struct delayed_work work;
198
199 /* eeprom handling */
200 void *eeprom;
201 struct completion eeprom_comp;
185}; 202};
186 203
187int p54_rx(struct ieee80211_hw *dev, struct sk_buff *skb); 204int p54_rx(struct ieee80211_hw *dev, struct sk_buff *skb);