aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/iwlwifi/iwl-3945.h
diff options
context:
space:
mode:
authorChristoph Hellwig <hch@lst.de>2008-01-27 19:41:47 -0500
committerDavid S. Miller <davem@davemloft.net>2008-01-28 18:04:35 -0500
commitbb8c093bdea62f2ae371b98ebff81b0407852faf (patch)
tree7937a70c333356a85b344f883608eeaf93dd3d2b /drivers/net/wireless/iwlwifi/iwl-3945.h
parent403ab56b1c2786b0e1d58c27f5ce667b529c7faa (diff)
iwlwifi: cleanup namespace
Prefix all symbols with iwl3945_ or iwl4965_ and thus allow building the driver into the kernel. Also remove all the useless default statements in Kconfig while we're at it. Signed-off-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Zhu Yi <yi.zhu@intel.com> Signed-off-by: Reinette Chatre <reinette.chatre@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/wireless/iwlwifi/iwl-3945.h')
-rw-r--r--drivers/net/wireless/iwlwifi/iwl-3945.h376
1 files changed, 188 insertions, 188 deletions
diff --git a/drivers/net/wireless/iwlwifi/iwl-3945.h b/drivers/net/wireless/iwlwifi/iwl-3945.h
index d1616bf9bc8e..e5b345de3c61 100644
--- a/drivers/net/wireless/iwlwifi/iwl-3945.h
+++ b/drivers/net/wireless/iwlwifi/iwl-3945.h
@@ -31,10 +31,10 @@
31#include <linux/kernel.h> 31#include <linux/kernel.h>
32#include <net/ieee80211_radiotap.h> 32#include <net/ieee80211_radiotap.h>
33 33
34struct iwl_priv; 34struct iwl3945_priv;
35 35
36/* Hardware specific file defines the PCI IDs table for that hardware module */ 36/* Hardware specific file defines the PCI IDs table for that hardware module */
37extern struct pci_device_id iwl_hw_card_ids[]; 37extern struct pci_device_id iwl3945_hw_card_ids[];
38 38
39#define DRV_NAME "iwl3945" 39#define DRV_NAME "iwl3945"
40#include "iwl-3945-hw.h" 40#include "iwl-3945-hw.h"
@@ -55,10 +55,10 @@ extern struct pci_device_id iwl_hw_card_ids[];
55#define IWL_NOISE_MEAS_NOT_AVAILABLE (-127) 55#define IWL_NOISE_MEAS_NOT_AVAILABLE (-127)
56 56
57/* Module parameters accessible from iwl-*.c */ 57/* Module parameters accessible from iwl-*.c */
58extern int iwl_param_hwcrypto; 58extern int iwl3945_param_hwcrypto;
59extern int iwl_param_queues_num; 59extern int iwl3945_param_queues_num;
60 60
61enum iwl_antenna { 61enum iwl3945_antenna {
62 IWL_ANTENNA_DIVERSITY, 62 IWL_ANTENNA_DIVERSITY,
63 IWL_ANTENNA_MAIN, 63 IWL_ANTENNA_MAIN,
64 IWL_ANTENNA_AUX 64 IWL_ANTENNA_AUX
@@ -81,13 +81,13 @@ enum iwl_antenna {
81#define DEFAULT_SHORT_RETRY_LIMIT 7U 81#define DEFAULT_SHORT_RETRY_LIMIT 7U
82#define DEFAULT_LONG_RETRY_LIMIT 4U 82#define DEFAULT_LONG_RETRY_LIMIT 4U
83 83
84struct iwl_rx_mem_buffer { 84struct iwl3945_rx_mem_buffer {
85 dma_addr_t dma_addr; 85 dma_addr_t dma_addr;
86 struct sk_buff *skb; 86 struct sk_buff *skb;
87 struct list_head list; 87 struct list_head list;
88}; 88};
89 89
90struct iwl_rt_rx_hdr { 90struct iwl3945_rt_rx_hdr {
91 struct ieee80211_radiotap_header rt_hdr; 91 struct ieee80211_radiotap_header rt_hdr;
92 __le64 rt_tsf; /* TSF */ 92 __le64 rt_tsf; /* TSF */
93 u8 rt_flags; /* radiotap packet flags */ 93 u8 rt_flags; /* radiotap packet flags */
@@ -100,7 +100,7 @@ struct iwl_rt_rx_hdr {
100 u8 payload[0]; /* payload... */ 100 u8 payload[0]; /* payload... */
101} __attribute__ ((packed)); 101} __attribute__ ((packed));
102 102
103struct iwl_rt_tx_hdr { 103struct iwl3945_rt_tx_hdr {
104 struct ieee80211_radiotap_header rt_hdr; 104 struct ieee80211_radiotap_header rt_hdr;
105 u8 rt_rate; /* rate in 500kb/s */ 105 u8 rt_rate; /* rate in 500kb/s */
106 __le16 rt_channel; /* channel in mHz */ 106 __le16 rt_channel; /* channel in mHz */
@@ -115,7 +115,7 @@ struct iwl_rt_tx_hdr {
115 * 115 *
116 * Contains common data for Rx and Tx queues 116 * Contains common data for Rx and Tx queues
117 */ 117 */
118struct iwl_queue { 118struct iwl3945_queue {
119 int n_bd; /* number of BDs in this queue */ 119 int n_bd; /* number of BDs in this queue */
120 int write_ptr; /* 1-st empty entry (index) host_w*/ 120 int write_ptr; /* 1-st empty entry (index) host_w*/
121 int read_ptr; /* last used entry (index) host_r*/ 121 int read_ptr; /* last used entry (index) host_r*/
@@ -130,24 +130,24 @@ struct iwl_queue {
130 130
131#define MAX_NUM_OF_TBS (20) 131#define MAX_NUM_OF_TBS (20)
132 132
133struct iwl_tx_info { 133struct iwl3945_tx_info {
134 struct ieee80211_tx_status status; 134 struct ieee80211_tx_status status;
135 struct sk_buff *skb[MAX_NUM_OF_TBS]; 135 struct sk_buff *skb[MAX_NUM_OF_TBS];
136}; 136};
137 137
138/** 138/**
139 * struct iwl_tx_queue - Tx Queue for DMA 139 * struct iwl3945_tx_queue - Tx Queue for DMA
140 * @need_update: need to update read/write index 140 * @need_update: need to update read/write index
141 * @shed_retry: queue is HT AGG enabled 141 * @shed_retry: queue is HT AGG enabled
142 * 142 *
143 * Queue consists of circular buffer of BD's and required locking structures. 143 * Queue consists of circular buffer of BD's and required locking structures.
144 */ 144 */
145struct iwl_tx_queue { 145struct iwl3945_tx_queue {
146 struct iwl_queue q; 146 struct iwl3945_queue q;
147 struct iwl_tfd_frame *bd; 147 struct iwl3945_tfd_frame *bd;
148 struct iwl_cmd *cmd; 148 struct iwl3945_cmd *cmd;
149 dma_addr_t dma_addr_cmd; 149 dma_addr_t dma_addr_cmd;
150 struct iwl_tx_info *txb; 150 struct iwl3945_tx_info *txb;
151 int need_update; 151 int need_update;
152 int sched_retry; 152 int sched_retry;
153 int active; 153 int active;
@@ -155,12 +155,12 @@ struct iwl_tx_queue {
155 155
156#define IWL_NUM_SCAN_RATES (2) 156#define IWL_NUM_SCAN_RATES (2)
157 157
158struct iwl_channel_tgd_info { 158struct iwl3945_channel_tgd_info {
159 u8 type; 159 u8 type;
160 s8 max_power; 160 s8 max_power;
161}; 161};
162 162
163struct iwl_channel_tgh_info { 163struct iwl3945_channel_tgh_info {
164 s64 last_radar_time; 164 s64 last_radar_time;
165}; 165};
166 166
@@ -171,8 +171,8 @@ struct iwl_channel_tgh_info {
171 * -- spectrum management 171 * -- spectrum management
172 * -- user preference (e.g. iwconfig) 172 * -- user preference (e.g. iwconfig)
173 * when requested power is set, base power index must also be set. */ 173 * when requested power is set, base power index must also be set. */
174struct iwl_channel_power_info { 174struct iwl3945_channel_power_info {
175 struct iwl_tx_power tpc; /* actual radio and DSP gain settings */ 175 struct iwl3945_tx_power tpc; /* actual radio and DSP gain settings */
176 s8 power_table_index; /* actual (compenst'd) index into gain table */ 176 s8 power_table_index; /* actual (compenst'd) index into gain table */
177 s8 base_power_index; /* gain index for power at factory temp. */ 177 s8 base_power_index; /* gain index for power at factory temp. */
178 s8 requested_power; /* power (dBm) requested for this chnl/rate */ 178 s8 requested_power; /* power (dBm) requested for this chnl/rate */
@@ -180,8 +180,8 @@ struct iwl_channel_power_info {
180 180
181/* current scan Tx power values to use, one for each scan rate for each 181/* current scan Tx power values to use, one for each scan rate for each
182 * channel. */ 182 * channel. */
183struct iwl_scan_power_info { 183struct iwl3945_scan_power_info {
184 struct iwl_tx_power tpc; /* actual radio and DSP gain settings */ 184 struct iwl3945_tx_power tpc; /* actual radio and DSP gain settings */
185 s8 power_table_index; /* actual (compenst'd) index into gain table */ 185 s8 power_table_index; /* actual (compenst'd) index into gain table */
186 s8 requested_power; /* scan pwr (dBm) requested for chnl/rate */ 186 s8 requested_power; /* scan pwr (dBm) requested for chnl/rate */
187}; 187};
@@ -201,11 +201,11 @@ struct iwl_scan_power_info {
201 */ 201 */
202#define IWL4965_MAX_RATE (33) 202#define IWL4965_MAX_RATE (33)
203 203
204struct iwl_channel_info { 204struct iwl3945_channel_info {
205 struct iwl_channel_tgd_info tgd; 205 struct iwl3945_channel_tgd_info tgd;
206 struct iwl_channel_tgh_info tgh; 206 struct iwl3945_channel_tgh_info tgh;
207 struct iwl_eeprom_channel eeprom; /* EEPROM regulatory limit */ 207 struct iwl3945_eeprom_channel eeprom; /* EEPROM regulatory limit */
208 struct iwl_eeprom_channel fat_eeprom; /* EEPROM regulatory limit for 208 struct iwl3945_eeprom_channel fat_eeprom; /* EEPROM regulatory limit for
209 * FAT channel */ 209 * FAT channel */
210 210
211 u8 channel; /* channel number */ 211 u8 channel; /* channel number */
@@ -222,13 +222,13 @@ struct iwl_channel_info {
222 /* Radio/DSP gain settings for each "normal" data Tx rate. 222 /* Radio/DSP gain settings for each "normal" data Tx rate.
223 * These include, in addition to RF and DSP gain, a few fields for 223 * These include, in addition to RF and DSP gain, a few fields for
224 * remembering/modifying gain settings (indexes). */ 224 * remembering/modifying gain settings (indexes). */
225 struct iwl_channel_power_info power_info[IWL4965_MAX_RATE]; 225 struct iwl3945_channel_power_info power_info[IWL4965_MAX_RATE];
226 226
227 /* Radio/DSP gain settings for each scan rate, for directed scans. */ 227 /* Radio/DSP gain settings for each scan rate, for directed scans. */
228 struct iwl_scan_power_info scan_pwr_info[IWL_NUM_SCAN_RATES]; 228 struct iwl3945_scan_power_info scan_pwr_info[IWL_NUM_SCAN_RATES];
229}; 229};
230 230
231struct iwl_clip_group { 231struct iwl3945_clip_group {
232 /* maximum power level to prevent clipping for each rate, derived by 232 /* maximum power level to prevent clipping for each rate, derived by
233 * us from this band's saturation power in EEPROM */ 233 * us from this band's saturation power in EEPROM */
234 const s8 clip_powers[IWL_MAX_RATES]; 234 const s8 clip_powers[IWL_MAX_RATES];
@@ -249,8 +249,8 @@ struct iwl_clip_group {
249 249
250/* Power management (not Tx power) structures */ 250/* Power management (not Tx power) structures */
251 251
252struct iwl_power_vec_entry { 252struct iwl3945_power_vec_entry {
253 struct iwl_powertable_cmd cmd; 253 struct iwl3945_powertable_cmd cmd;
254 u8 no_dtim; 254 u8 no_dtim;
255}; 255};
256#define IWL_POWER_RANGE_0 (0) 256#define IWL_POWER_RANGE_0 (0)
@@ -266,10 +266,10 @@ struct iwl_power_vec_entry {
266#define IWL_POWER_ENABLED 0x10 266#define IWL_POWER_ENABLED 0x10
267#define IWL_POWER_LEVEL(x) ((x) & IWL_POWER_MASK) 267#define IWL_POWER_LEVEL(x) ((x) & IWL_POWER_MASK)
268 268
269struct iwl_power_mgr { 269struct iwl3945_power_mgr {
270 spinlock_t lock; 270 spinlock_t lock;
271 struct iwl_power_vec_entry pwr_range_0[IWL_POWER_AC]; 271 struct iwl3945_power_vec_entry pwr_range_0[IWL_POWER_AC];
272 struct iwl_power_vec_entry pwr_range_1[IWL_POWER_AC]; 272 struct iwl3945_power_vec_entry pwr_range_1[IWL_POWER_AC];
273 u8 active_index; 273 u8 active_index;
274 u32 dtim_val; 274 u32 dtim_val;
275}; 275};
@@ -279,10 +279,10 @@ struct iwl_power_mgr {
279#define IEEE80211_HLEN (IEEE80211_4ADDR_LEN) 279#define IEEE80211_HLEN (IEEE80211_4ADDR_LEN)
280#define IEEE80211_FRAME_LEN (IEEE80211_DATA_LEN + IEEE80211_HLEN) 280#define IEEE80211_FRAME_LEN (IEEE80211_DATA_LEN + IEEE80211_HLEN)
281 281
282struct iwl_frame { 282struct iwl3945_frame {
283 union { 283 union {
284 struct ieee80211_hdr frame; 284 struct ieee80211_hdr frame;
285 struct iwl_tx_beacon_cmd beacon; 285 struct iwl3945_tx_beacon_cmd beacon;
286 u8 raw[IEEE80211_FRAME_LEN]; 286 u8 raw[IEEE80211_FRAME_LEN];
287 u8 cmd[360]; 287 u8 cmd[360];
288 } u; 288 } u;
@@ -308,15 +308,15 @@ enum {
308 CMD_WANT_SKB = (1 << 2), 308 CMD_WANT_SKB = (1 << 2),
309}; 309};
310 310
311struct iwl_cmd; 311struct iwl3945_cmd;
312struct iwl_priv; 312struct iwl3945_priv;
313 313
314struct iwl_cmd_meta { 314struct iwl3945_cmd_meta {
315 struct iwl_cmd_meta *source; 315 struct iwl3945_cmd_meta *source;
316 union { 316 union {
317 struct sk_buff *skb; 317 struct sk_buff *skb;
318 int (*callback)(struct iwl_priv *priv, 318 int (*callback)(struct iwl3945_priv *priv,
319 struct iwl_cmd *cmd, struct sk_buff *skb); 319 struct iwl3945_cmd *cmd, struct sk_buff *skb);
320 } __attribute__ ((packed)) u; 320 } __attribute__ ((packed)) u;
321 321
322 /* The CMD_SIZE_HUGE flag bit indicates that the command 322 /* The CMD_SIZE_HUGE flag bit indicates that the command
@@ -325,37 +325,37 @@ struct iwl_cmd_meta {
325 325
326} __attribute__ ((packed)); 326} __attribute__ ((packed));
327 327
328struct iwl_cmd { 328struct iwl3945_cmd {
329 struct iwl_cmd_meta meta; 329 struct iwl3945_cmd_meta meta;
330 struct iwl_cmd_header hdr; 330 struct iwl3945_cmd_header hdr;
331 union { 331 union {
332 struct iwl_addsta_cmd addsta; 332 struct iwl3945_addsta_cmd addsta;
333 struct iwl_led_cmd led; 333 struct iwl3945_led_cmd led;
334 u32 flags; 334 u32 flags;
335 u8 val8; 335 u8 val8;
336 u16 val16; 336 u16 val16;
337 u32 val32; 337 u32 val32;
338 struct iwl_bt_cmd bt; 338 struct iwl3945_bt_cmd bt;
339 struct iwl_rxon_time_cmd rxon_time; 339 struct iwl3945_rxon_time_cmd rxon_time;
340 struct iwl_powertable_cmd powertable; 340 struct iwl3945_powertable_cmd powertable;
341 struct iwl_qosparam_cmd qosparam; 341 struct iwl3945_qosparam_cmd qosparam;
342 struct iwl_tx_cmd tx; 342 struct iwl3945_tx_cmd tx;
343 struct iwl_tx_beacon_cmd tx_beacon; 343 struct iwl3945_tx_beacon_cmd tx_beacon;
344 struct iwl_rxon_assoc_cmd rxon_assoc; 344 struct iwl3945_rxon_assoc_cmd rxon_assoc;
345 u8 *indirect; 345 u8 *indirect;
346 u8 payload[360]; 346 u8 payload[360];
347 } __attribute__ ((packed)) cmd; 347 } __attribute__ ((packed)) cmd;
348} __attribute__ ((packed)); 348} __attribute__ ((packed));
349 349
350struct iwl_host_cmd { 350struct iwl3945_host_cmd {
351 u8 id; 351 u8 id;
352 u16 len; 352 u16 len;
353 struct iwl_cmd_meta meta; 353 struct iwl3945_cmd_meta meta;
354 const void *data; 354 const void *data;
355}; 355};
356 356
357#define TFD_MAX_PAYLOAD_SIZE (sizeof(struct iwl_cmd) - \ 357#define TFD_MAX_PAYLOAD_SIZE (sizeof(struct iwl3945_cmd) - \
358 sizeof(struct iwl_cmd_meta)) 358 sizeof(struct iwl3945_cmd_meta))
359 359
360/* 360/*
361 * RX related structures and functions 361 * RX related structures and functions
@@ -368,7 +368,7 @@ struct iwl_host_cmd {
368#define SUP_RATE_11G_MAX_NUM_CHANNELS 12 368#define SUP_RATE_11G_MAX_NUM_CHANNELS 12
369 369
370/** 370/**
371 * struct iwl_rx_queue - Rx queue 371 * struct iwl3945_rx_queue - Rx queue
372 * @processed: Internal index to last handled Rx packet 372 * @processed: Internal index to last handled Rx packet
373 * @read: Shared index to newest available Rx buffer 373 * @read: Shared index to newest available Rx buffer
374 * @write: Shared index to oldest written Rx packet 374 * @write: Shared index to oldest written Rx packet
@@ -377,13 +377,13 @@ struct iwl_host_cmd {
377 * @rx_used: List of Rx buffers with no SKB 377 * @rx_used: List of Rx buffers with no SKB
378 * @need_update: flag to indicate we need to update read/write index 378 * @need_update: flag to indicate we need to update read/write index
379 * 379 *
380 * NOTE: rx_free and rx_used are used as a FIFO for iwl_rx_mem_buffers 380 * NOTE: rx_free and rx_used are used as a FIFO for iwl3945_rx_mem_buffers
381 */ 381 */
382struct iwl_rx_queue { 382struct iwl3945_rx_queue {
383 __le32 *bd; 383 __le32 *bd;
384 dma_addr_t dma_addr; 384 dma_addr_t dma_addr;
385 struct iwl_rx_mem_buffer pool[RX_QUEUE_SIZE + RX_FREE_BUFFERS]; 385 struct iwl3945_rx_mem_buffer pool[RX_QUEUE_SIZE + RX_FREE_BUFFERS];
386 struct iwl_rx_mem_buffer *queue[RX_QUEUE_SIZE]; 386 struct iwl3945_rx_mem_buffer *queue[RX_QUEUE_SIZE];
387 u32 processed; 387 u32 processed;
388 u32 read; 388 u32 read;
389 u32 write; 389 u32 write;
@@ -427,17 +427,17 @@ struct iwl_rx_queue {
427#define IWL_INVALID_RATE 0xFF 427#define IWL_INVALID_RATE 0xFF
428#define IWL_INVALID_VALUE -1 428#define IWL_INVALID_VALUE -1
429 429
430struct iwl_tid_data { 430struct iwl3945_tid_data {
431 u16 seq_number; 431 u16 seq_number;
432}; 432};
433 433
434struct iwl_hw_key { 434struct iwl3945_hw_key {
435 enum ieee80211_key_alg alg; 435 enum ieee80211_key_alg alg;
436 int keylen; 436 int keylen;
437 u8 key[32]; 437 u8 key[32];
438}; 438};
439 439
440union iwl_ht_rate_supp { 440union iwl3945_ht_rate_supp {
441 u16 rates; 441 u16 rates;
442 struct { 442 struct {
443 u8 siso_rate; 443 u8 siso_rate;
@@ -472,7 +472,7 @@ struct sta_ht_info {
472 472
473#ifdef CONFIG_IWL3945_QOS 473#ifdef CONFIG_IWL3945_QOS
474 474
475union iwl_qos_capabity { 475union iwl3945_qos_capabity {
476 struct { 476 struct {
477 u8 edca_count:4; /* bit 0-3 */ 477 u8 edca_count:4; /* bit 0-3 */
478 u8 q_ack:1; /* bit 4 */ 478 u8 q_ack:1; /* bit 4 */
@@ -493,20 +493,20 @@ union iwl_qos_capabity {
493}; 493};
494 494
495/* QoS structures */ 495/* QoS structures */
496struct iwl_qos_info { 496struct iwl3945_qos_info {
497 int qos_enable; 497 int qos_enable;
498 int qos_active; 498 int qos_active;
499 union iwl_qos_capabity qos_cap; 499 union iwl3945_qos_capabity qos_cap;
500 struct iwl_qosparam_cmd def_qos_parm; 500 struct iwl3945_qosparam_cmd def_qos_parm;
501}; 501};
502#endif /*CONFIG_IWL3945_QOS */ 502#endif /*CONFIG_IWL3945_QOS */
503 503
504#define STA_PS_STATUS_WAKE 0 504#define STA_PS_STATUS_WAKE 0
505#define STA_PS_STATUS_SLEEP 1 505#define STA_PS_STATUS_SLEEP 1
506 506
507struct iwl_station_entry { 507struct iwl3945_station_entry {
508 struct iwl_addsta_cmd sta; 508 struct iwl3945_addsta_cmd sta;
509 struct iwl_tid_data tid[MAX_TID_COUNT]; 509 struct iwl3945_tid_data tid[MAX_TID_COUNT];
510 union { 510 union {
511 struct { 511 struct {
512 u8 rate; 512 u8 rate;
@@ -516,7 +516,7 @@ struct iwl_station_entry {
516 } current_rate; 516 } current_rate;
517 u8 used; 517 u8 used;
518 u8 ps_status; 518 u8 ps_status;
519 struct iwl_hw_key keyinfo; 519 struct iwl3945_hw_key keyinfo;
520}; 520};
521 521
522/* one for each uCode image (inst/data, boot/init/runtime) */ 522/* one for each uCode image (inst/data, boot/init/runtime) */
@@ -527,7 +527,7 @@ struct fw_desc {
527}; 527};
528 528
529/* uCode file layout */ 529/* uCode file layout */
530struct iwl_ucode { 530struct iwl3945_ucode {
531 __le32 ver; /* major/minor/subminor */ 531 __le32 ver; /* major/minor/subminor */
532 __le32 inst_size; /* bytes of runtime instructions */ 532 __le32 inst_size; /* bytes of runtime instructions */
533 __le32 data_size; /* bytes of runtime data */ 533 __le32 data_size; /* bytes of runtime data */
@@ -539,7 +539,7 @@ struct iwl_ucode {
539 539
540#define IWL_IBSS_MAC_HASH_SIZE 32 540#define IWL_IBSS_MAC_HASH_SIZE 32
541 541
542struct iwl_ibss_seq { 542struct iwl3945_ibss_seq {
543 u8 mac[ETH_ALEN]; 543 u8 mac[ETH_ALEN];
544 u16 seq_num; 544 u16 seq_num;
545 u16 frag_num; 545 u16 frag_num;
@@ -547,7 +547,7 @@ struct iwl_ibss_seq {
547 struct list_head list; 547 struct list_head list;
548}; 548};
549 549
550struct iwl_driver_hw_info { 550struct iwl3945_driver_hw_info {
551 u16 max_txq_num; 551 u16 max_txq_num;
552 u16 ac_queue_count; 552 u16 ac_queue_count;
553 u16 tx_cmd_len; 553 u16 tx_cmd_len;
@@ -573,10 +573,10 @@ struct iwl_driver_hw_info {
573#define HT_SHORT_GI_40MHZ_ONLY (1 << 1) 573#define HT_SHORT_GI_40MHZ_ONLY (1 << 1)
574 574
575 575
576#define IWL_RX_HDR(x) ((struct iwl_rx_frame_hdr *)(\ 576#define IWL_RX_HDR(x) ((struct iwl3945_rx_frame_hdr *)(\
577 x->u.rx_frame.stats.payload + \ 577 x->u.rx_frame.stats.payload + \
578 x->u.rx_frame.stats.phy_count)) 578 x->u.rx_frame.stats.phy_count))
579#define IWL_RX_END(x) ((struct iwl_rx_frame_end *)(\ 579#define IWL_RX_END(x) ((struct iwl3945_rx_frame_end *)(\
580 IWL_RX_HDR(x)->payload + \ 580 IWL_RX_HDR(x)->payload + \
581 le16_to_cpu(IWL_RX_HDR(x)->len))) 581 le16_to_cpu(IWL_RX_HDR(x)->len)))
582#define IWL_RX_STATS(x) (&x->u.rx_frame.stats) 582#define IWL_RX_STATS(x) (&x->u.rx_frame.stats)
@@ -589,61 +589,61 @@ struct iwl_driver_hw_info {
589 * for use by iwl-*.c 589 * for use by iwl-*.c
590 * 590 *
591 *****************************************************************************/ 591 *****************************************************************************/
592struct iwl_addsta_cmd; 592struct iwl3945_addsta_cmd;
593extern int iwl_send_add_station(struct iwl_priv *priv, 593extern int iwl3945_send_add_station(struct iwl3945_priv *priv,
594 struct iwl_addsta_cmd *sta, u8 flags); 594 struct iwl3945_addsta_cmd *sta, u8 flags);
595extern u8 iwl_add_station(struct iwl_priv *priv, const u8 *bssid, 595extern u8 iwl3945_add_station(struct iwl3945_priv *priv, const u8 *bssid,
596 int is_ap, u8 flags); 596 int is_ap, u8 flags);
597extern int iwl_is_network_packet(struct iwl_priv *priv, 597extern int iwl3945_is_network_packet(struct iwl3945_priv *priv,
598 struct ieee80211_hdr *header); 598 struct ieee80211_hdr *header);
599extern int iwl_power_init_handle(struct iwl_priv *priv); 599extern int iwl3945_power_init_handle(struct iwl3945_priv *priv);
600extern int iwl_eeprom_init(struct iwl_priv *priv); 600extern int iwl3945_eeprom_init(struct iwl3945_priv *priv);
601#ifdef CONFIG_IWL3945_DEBUG 601#ifdef CONFIG_IWL3945_DEBUG
602extern void iwl_report_frame(struct iwl_priv *priv, 602extern void iwl3945_report_frame(struct iwl3945_priv *priv,
603 struct iwl_rx_packet *pkt, 603 struct iwl3945_rx_packet *pkt,
604 struct ieee80211_hdr *header, int group100); 604 struct ieee80211_hdr *header, int group100);
605#else 605#else
606static inline void iwl_report_frame(struct iwl_priv *priv, 606static inline void iwl3945_report_frame(struct iwl3945_priv *priv,
607 struct iwl_rx_packet *pkt, 607 struct iwl3945_rx_packet *pkt,
608 struct ieee80211_hdr *header, 608 struct ieee80211_hdr *header,
609 int group100) {} 609 int group100) {}
610#endif 610#endif
611extern void iwl_handle_data_packet_monitor(struct iwl_priv *priv, 611extern void iwl3945_handle_data_packet_monitor(struct iwl3945_priv *priv,
612 struct iwl_rx_mem_buffer *rxb, 612 struct iwl3945_rx_mem_buffer *rxb,
613 void *data, short len, 613 void *data, short len,
614 struct ieee80211_rx_status *stats, 614 struct ieee80211_rx_status *stats,
615 u16 phy_flags); 615 u16 phy_flags);
616extern int is_duplicate_packet(struct iwl_priv *priv, struct ieee80211_hdr 616extern int iwl3945_is_duplicate_packet(struct iwl3945_priv *priv,
617 *header); 617 struct ieee80211_hdr *header);
618extern int iwl_rx_queue_alloc(struct iwl_priv *priv); 618extern int iwl3945_rx_queue_alloc(struct iwl3945_priv *priv);
619extern void iwl_rx_queue_reset(struct iwl_priv *priv, 619extern void iwl3945_rx_queue_reset(struct iwl3945_priv *priv,
620 struct iwl_rx_queue *rxq); 620 struct iwl3945_rx_queue *rxq);
621extern int iwl_calc_db_from_ratio(int sig_ratio); 621extern int iwl3945_calc_db_from_ratio(int sig_ratio);
622extern int iwl_calc_sig_qual(int rssi_dbm, int noise_dbm); 622extern int iwl3945_calc_sig_qual(int rssi_dbm, int noise_dbm);
623extern int iwl_tx_queue_init(struct iwl_priv *priv, 623extern int iwl3945_tx_queue_init(struct iwl3945_priv *priv,
624 struct iwl_tx_queue *txq, int count, u32 id); 624 struct iwl3945_tx_queue *txq, int count, u32 id);
625extern void iwl_rx_replenish(void *data); 625extern void iwl3945_rx_replenish(void *data);
626extern void iwl_tx_queue_free(struct iwl_priv *priv, struct iwl_tx_queue *txq); 626extern void iwl3945_tx_queue_free(struct iwl3945_priv *priv, struct iwl3945_tx_queue *txq);
627extern int iwl_send_cmd_pdu(struct iwl_priv *priv, u8 id, u16 len, 627extern int iwl3945_send_cmd_pdu(struct iwl3945_priv *priv, u8 id, u16 len,
628 const void *data); 628 const void *data);
629extern int __must_check iwl_send_cmd(struct iwl_priv *priv, 629extern int __must_check iwl3945_send_cmd(struct iwl3945_priv *priv,
630 struct iwl_host_cmd *cmd); 630 struct iwl3945_host_cmd *cmd);
631extern unsigned int iwl_fill_beacon_frame(struct iwl_priv *priv, 631extern unsigned int iwl3945_fill_beacon_frame(struct iwl3945_priv *priv,
632 struct ieee80211_hdr *hdr, 632 struct ieee80211_hdr *hdr,
633 const u8 *dest, int left); 633 const u8 *dest, int left);
634extern int iwl_rx_queue_update_write_ptr(struct iwl_priv *priv, 634extern int iwl3945_rx_queue_update_write_ptr(struct iwl3945_priv *priv,
635 struct iwl_rx_queue *q); 635 struct iwl3945_rx_queue *q);
636extern int iwl_send_statistics_request(struct iwl_priv *priv); 636extern int iwl3945_send_statistics_request(struct iwl3945_priv *priv);
637extern void iwl_set_decrypted_flag(struct iwl_priv *priv, struct sk_buff *skb, 637extern void iwl3945_set_decrypted_flag(struct iwl3945_priv *priv, struct sk_buff *skb,
638 u32 decrypt_res, 638 u32 decrypt_res,
639 struct ieee80211_rx_status *stats); 639 struct ieee80211_rx_status *stats);
640extern const u8 BROADCAST_ADDR[ETH_ALEN]; 640extern const u8 iwl3945_broadcast_addr[ETH_ALEN];
641 641
642/* 642/*
643 * Currently used by iwl-3945-rs... look at restructuring so that it doesn't 643 * Currently used by iwl-3945-rs... look at restructuring so that it doesn't
644 * call this... todo... fix that. 644 * call this... todo... fix that.
645*/ 645*/
646extern u8 iwl_sync_station(struct iwl_priv *priv, int sta_id, 646extern u8 iwl3945_sync_station(struct iwl3945_priv *priv, int sta_id,
647 u16 tx_rate, u8 flags); 647 u16 tx_rate, u8 flags);
648 648
649/****************************************************************************** 649/******************************************************************************
@@ -655,65 +655,65 @@ extern u8 iwl_sync_station(struct iwl_priv *priv, int sta_id,
655 * which is why they are in the hardware specific files (vs. iwl-base.c) 655 * which is why they are in the hardware specific files (vs. iwl-base.c)
656 * 656 *
657 * Naming convention -- 657 * Naming convention --
658 * iwl_ <-- Its part of iwlwifi (should be changed to iwl_) 658 * iwl3945_ <-- Its part of iwlwifi (should be changed to iwl3945_)
659 * iwl_hw_ <-- Hardware specific (implemented in iwl-XXXX.c by all HW) 659 * iwl3945_hw_ <-- Hardware specific (implemented in iwl-XXXX.c by all HW)
660 * iwlXXXX_ <-- Hardware specific (implemented in iwl-XXXX.c for XXXX) 660 * iwlXXXX_ <-- Hardware specific (implemented in iwl-XXXX.c for XXXX)
661 * iwl_bg_ <-- Called from work queue context 661 * iwl3945_bg_ <-- Called from work queue context
662 * iwl_mac_ <-- mac80211 callback 662 * iwl3945_mac_ <-- mac80211 callback
663 * 663 *
664 ****************************************************************************/ 664 ****************************************************************************/
665extern void iwl_hw_rx_handler_setup(struct iwl_priv *priv); 665extern void iwl3945_hw_rx_handler_setup(struct iwl3945_priv *priv);
666extern void iwl_hw_setup_deferred_work(struct iwl_priv *priv); 666extern void iwl3945_hw_setup_deferred_work(struct iwl3945_priv *priv);
667extern void iwl_hw_cancel_deferred_work(struct iwl_priv *priv); 667extern void iwl3945_hw_cancel_deferred_work(struct iwl3945_priv *priv);
668extern int iwl_hw_rxq_stop(struct iwl_priv *priv); 668extern int iwl3945_hw_rxq_stop(struct iwl3945_priv *priv);
669extern int iwl_hw_set_hw_setting(struct iwl_priv *priv); 669extern int iwl3945_hw_set_hw_setting(struct iwl3945_priv *priv);
670extern int iwl_hw_nic_init(struct iwl_priv *priv); 670extern int iwl3945_hw_nic_init(struct iwl3945_priv *priv);
671extern int iwl_hw_nic_stop_master(struct iwl_priv *priv); 671extern int iwl3945_hw_nic_stop_master(struct iwl3945_priv *priv);
672extern void iwl_hw_txq_ctx_free(struct iwl_priv *priv); 672extern void iwl3945_hw_txq_ctx_free(struct iwl3945_priv *priv);
673extern void iwl_hw_txq_ctx_stop(struct iwl_priv *priv); 673extern void iwl3945_hw_txq_ctx_stop(struct iwl3945_priv *priv);
674extern int iwl_hw_nic_reset(struct iwl_priv *priv); 674extern int iwl3945_hw_nic_reset(struct iwl3945_priv *priv);
675extern int iwl_hw_txq_attach_buf_to_tfd(struct iwl_priv *priv, void *tfd, 675extern int iwl3945_hw_txq_attach_buf_to_tfd(struct iwl3945_priv *priv, void *tfd,
676 dma_addr_t addr, u16 len); 676 dma_addr_t addr, u16 len);
677extern int iwl_hw_txq_free_tfd(struct iwl_priv *priv, struct iwl_tx_queue *txq); 677extern int iwl3945_hw_txq_free_tfd(struct iwl3945_priv *priv, struct iwl3945_tx_queue *txq);
678extern int iwl_hw_get_temperature(struct iwl_priv *priv); 678extern int iwl3945_hw_get_temperature(struct iwl3945_priv *priv);
679extern int iwl_hw_tx_queue_init(struct iwl_priv *priv, 679extern int iwl3945_hw_tx_queue_init(struct iwl3945_priv *priv,
680 struct iwl_tx_queue *txq); 680 struct iwl3945_tx_queue *txq);
681extern unsigned int iwl_hw_get_beacon_cmd(struct iwl_priv *priv, 681extern unsigned int iwl3945_hw_get_beacon_cmd(struct iwl3945_priv *priv,
682 struct iwl_frame *frame, u8 rate); 682 struct iwl3945_frame *frame, u8 rate);
683extern int iwl_hw_get_rx_read(struct iwl_priv *priv); 683extern int iwl3945_hw_get_rx_read(struct iwl3945_priv *priv);
684extern void iwl_hw_build_tx_cmd_rate(struct iwl_priv *priv, 684extern void iwl3945_hw_build_tx_cmd_rate(struct iwl3945_priv *priv,
685 struct iwl_cmd *cmd, 685 struct iwl3945_cmd *cmd,
686 struct ieee80211_tx_control *ctrl, 686 struct ieee80211_tx_control *ctrl,
687 struct ieee80211_hdr *hdr, 687 struct ieee80211_hdr *hdr,
688 int sta_id, int tx_id); 688 int sta_id, int tx_id);
689extern int iwl_hw_reg_send_txpower(struct iwl_priv *priv); 689extern int iwl3945_hw_reg_send_txpower(struct iwl3945_priv *priv);
690extern int iwl_hw_reg_set_txpower(struct iwl_priv *priv, s8 power); 690extern int iwl3945_hw_reg_set_txpower(struct iwl3945_priv *priv, s8 power);
691extern void iwl_hw_rx_statistics(struct iwl_priv *priv, 691extern void iwl3945_hw_rx_statistics(struct iwl3945_priv *priv,
692 struct iwl_rx_mem_buffer *rxb); 692 struct iwl3945_rx_mem_buffer *rxb);
693extern void iwl_disable_events(struct iwl_priv *priv); 693extern void iwl3945_disable_events(struct iwl3945_priv *priv);
694extern int iwl4965_get_temperature(const struct iwl_priv *priv); 694extern int iwl4965_get_temperature(const struct iwl3945_priv *priv);
695 695
696/** 696/**
697 * iwl_hw_find_station - Find station id for a given BSSID 697 * iwl3945_hw_find_station - Find station id for a given BSSID
698 * @bssid: MAC address of station ID to find 698 * @bssid: MAC address of station ID to find
699 * 699 *
700 * NOTE: This should not be hardware specific but the code has 700 * NOTE: This should not be hardware specific but the code has
701 * not yet been merged into a single common layer for managing the 701 * not yet been merged into a single common layer for managing the
702 * station tables. 702 * station tables.
703 */ 703 */
704extern u8 iwl_hw_find_station(struct iwl_priv *priv, const u8 *bssid); 704extern u8 iwl3945_hw_find_station(struct iwl3945_priv *priv, const u8 *bssid);
705 705
706extern int iwl_hw_channel_switch(struct iwl_priv *priv, u16 channel); 706extern int iwl3945_hw_channel_switch(struct iwl3945_priv *priv, u16 channel);
707 707
708/* 708/*
709 * Forward declare iwl-3945.c functions for iwl-base.c 709 * Forward declare iwl-3945.c functions for iwl-base.c
710 */ 710 */
711extern int iwl_eeprom_acquire_semaphore(struct iwl_priv *priv); 711extern int iwl3945_eeprom_acquire_semaphore(struct iwl3945_priv *priv);
712extern __le32 iwl3945_get_antenna_flags(const struct iwl_priv *priv); 712extern __le32 iwl3945_get_antenna_flags(const struct iwl3945_priv *priv);
713extern int iwl3945_init_hw_rate_table(struct iwl_priv *priv); 713extern int iwl3945_init_hw_rate_table(struct iwl3945_priv *priv);
714extern void iwl3945_reg_txpower_periodic(struct iwl_priv *priv); 714extern void iwl3945_reg_txpower_periodic(struct iwl3945_priv *priv);
715extern int iwl3945_txpower_set_from_eeprom(struct iwl_priv *priv); 715extern int iwl3945_txpower_set_from_eeprom(struct iwl3945_priv *priv);
716extern u8 iwl3945_sync_sta(struct iwl_priv *priv, int sta_id, 716extern u8 iwl3945_sync_sta(struct iwl3945_priv *priv, int sta_id,
717 u16 tx_rate, u8 flags); 717 u16 tx_rate, u8 flags);
718 718
719 719
@@ -726,7 +726,7 @@ enum {
726 726
727#endif 727#endif
728 728
729struct iwl_priv { 729struct iwl3945_priv {
730 730
731 /* ieee device used by generic ieee processing code */ 731 /* ieee device used by generic ieee processing code */
732 struct ieee80211_hw *hw; 732 struct ieee80211_hw *hw;
@@ -740,27 +740,27 @@ struct iwl_priv {
740 u8 phymode; 740 u8 phymode;
741 int alloc_rxb_skb; 741 int alloc_rxb_skb;
742 742
743 void (*rx_handlers[REPLY_MAX])(struct iwl_priv *priv, 743 void (*rx_handlers[REPLY_MAX])(struct iwl3945_priv *priv,
744 struct iwl_rx_mem_buffer *rxb); 744 struct iwl3945_rx_mem_buffer *rxb);
745 745
746 const struct ieee80211_hw_mode *modes; 746 const struct ieee80211_hw_mode *modes;
747 747
748#ifdef CONFIG_IWL3945_SPECTRUM_MEASUREMENT 748#ifdef CONFIG_IWL3945_SPECTRUM_MEASUREMENT
749 /* spectrum measurement report caching */ 749 /* spectrum measurement report caching */
750 struct iwl_spectrum_notification measure_report; 750 struct iwl3945_spectrum_notification measure_report;
751 u8 measurement_status; 751 u8 measurement_status;
752#endif 752#endif
753 /* ucode beacon time */ 753 /* ucode beacon time */
754 u32 ucode_beacon_time; 754 u32 ucode_beacon_time;
755 755
756 /* we allocate array of iwl_channel_info for NIC's valid channels. 756 /* we allocate array of iwl3945_channel_info for NIC's valid channels.
757 * Access via channel # using indirect index array */ 757 * Access via channel # using indirect index array */
758 struct iwl_channel_info *channel_info; /* channel info array */ 758 struct iwl3945_channel_info *channel_info; /* channel info array */
759 u8 channel_count; /* # of channels */ 759 u8 channel_count; /* # of channels */
760 760
761 /* each calibration channel group in the EEPROM has a derived 761 /* each calibration channel group in the EEPROM has a derived
762 * clip setting for each rate. */ 762 * clip setting for each rate. */
763 const struct iwl_clip_group clip_groups[5]; 763 const struct iwl3945_clip_group clip_groups[5];
764 764
765 /* thermal calibration */ 765 /* thermal calibration */
766 s32 temperature; /* degrees Kelvin */ 766 s32 temperature; /* degrees Kelvin */
@@ -775,7 +775,7 @@ struct iwl_priv {
775 int one_direct_scan; 775 int one_direct_scan;
776 u8 direct_ssid_len; 776 u8 direct_ssid_len;
777 u8 direct_ssid[IW_ESSID_MAX_SIZE]; 777 u8 direct_ssid[IW_ESSID_MAX_SIZE];
778 struct iwl_scan_cmd *scan; 778 struct iwl3945_scan_cmd *scan;
779 u8 only_active_channel; 779 u8 only_active_channel;
780 780
781 /* spinlock */ 781 /* spinlock */
@@ -798,26 +798,26 @@ struct iwl_priv {
798 struct fw_desc ucode_boot; /* bootstrap inst */ 798 struct fw_desc ucode_boot; /* bootstrap inst */
799 799
800 800
801 struct iwl_rxon_time_cmd rxon_timing; 801 struct iwl3945_rxon_time_cmd rxon_timing;
802 802
803 /* We declare this const so it can only be 803 /* We declare this const so it can only be
804 * changed via explicit cast within the 804 * changed via explicit cast within the
805 * routines that actually update the physical 805 * routines that actually update the physical
806 * hardware */ 806 * hardware */
807 const struct iwl_rxon_cmd active_rxon; 807 const struct iwl3945_rxon_cmd active_rxon;
808 struct iwl_rxon_cmd staging_rxon; 808 struct iwl3945_rxon_cmd staging_rxon;
809 809
810 int error_recovering; 810 int error_recovering;
811 struct iwl_rxon_cmd recovery_rxon; 811 struct iwl3945_rxon_cmd recovery_rxon;
812 812
813 /* 1st responses from initialize and runtime uCode images. 813 /* 1st responses from initialize and runtime uCode images.
814 * 4965's initialize alive response contains some calibration data. */ 814 * 4965's initialize alive response contains some calibration data. */
815 struct iwl_init_alive_resp card_alive_init; 815 struct iwl3945_init_alive_resp card_alive_init;
816 struct iwl_alive_resp card_alive; 816 struct iwl3945_alive_resp card_alive;
817 817
818#ifdef LED 818#ifdef LED
819 /* LED related variables */ 819 /* LED related variables */
820 struct iwl_activity_blink activity; 820 struct iwl3945_activity_blink activity;
821 unsigned long led_packets; 821 unsigned long led_packets;
822 int led_state; 822 int led_state;
823#endif 823#endif
@@ -836,8 +836,8 @@ struct iwl_priv {
836 int activity_timer_active; 836 int activity_timer_active;
837 837
838 /* Rx and Tx DMA processing queues */ 838 /* Rx and Tx DMA processing queues */
839 struct iwl_rx_queue rxq; 839 struct iwl3945_rx_queue rxq;
840 struct iwl_tx_queue txq[IWL_MAX_NUM_QUEUES]; 840 struct iwl3945_tx_queue txq[IWL_MAX_NUM_QUEUES];
841 841
842 unsigned long status; 842 unsigned long status;
843 u32 config; 843 u32 config;
@@ -845,9 +845,9 @@ struct iwl_priv {
845 int last_rx_rssi; /* From Rx packet statisitics */ 845 int last_rx_rssi; /* From Rx packet statisitics */
846 int last_rx_noise; /* From beacon statistics */ 846 int last_rx_noise; /* From beacon statistics */
847 847
848 struct iwl_power_mgr power_data; 848 struct iwl3945_power_mgr power_data;
849 849
850 struct iwl_notif_statistics statistics; 850 struct iwl3945_notif_statistics statistics;
851 unsigned long last_statistics_time; 851 unsigned long last_statistics_time;
852 852
853 /* context information */ 853 /* context information */
@@ -864,7 +864,7 @@ struct iwl_priv {
864 /*station table variables */ 864 /*station table variables */
865 spinlock_t sta_lock; 865 spinlock_t sta_lock;
866 int num_stations; 866 int num_stations;
867 struct iwl_station_entry stations[IWL_STATION_COUNT]; 867 struct iwl3945_station_entry stations[IWL_STATION_COUNT];
868 868
869 /* Indication if ieee80211_ops->open has been called */ 869 /* Indication if ieee80211_ops->open has been called */
870 int is_open; 870 int is_open;
@@ -885,7 +885,7 @@ struct iwl_priv {
885 struct list_head ibss_mac_hash[IWL_IBSS_MAC_HASH_SIZE]; 885 struct list_head ibss_mac_hash[IWL_IBSS_MAC_HASH_SIZE];
886 886
887 /* eeprom */ 887 /* eeprom */
888 struct iwl_eeprom eeprom; 888 struct iwl3945_eeprom eeprom;
889 889
890 int iw_mode; 890 int iw_mode;
891 891
@@ -895,7 +895,7 @@ struct iwl_priv {
895 u32 timestamp0; 895 u32 timestamp0;
896 u32 timestamp1; 896 u32 timestamp1;
897 u16 beacon_int; 897 u16 beacon_int;
898 struct iwl_driver_hw_info hw_setting; 898 struct iwl3945_driver_hw_info hw_setting;
899 int interface_id; 899 int interface_id;
900 900
901 /* Current association information needed to configure the 901 /* Current association information needed to configure the
@@ -905,7 +905,7 @@ struct iwl_priv {
905 u8 ps_mode; 905 u8 ps_mode;
906 906
907#ifdef CONFIG_IWL3945_QOS 907#ifdef CONFIG_IWL3945_QOS
908 struct iwl_qos_info qos_data; 908 struct iwl3945_qos_info qos_data;
909#endif /*CONFIG_IWL3945_QOS */ 909#endif /*CONFIG_IWL3945_QOS */
910 910
911 struct workqueue_struct *workqueue; 911 struct workqueue_struct *workqueue;
@@ -946,55 +946,55 @@ struct iwl_priv {
946 u32 framecnt_to_us; 946 u32 framecnt_to_us;
947 atomic_t restrict_refcnt; 947 atomic_t restrict_refcnt;
948#endif 948#endif
949}; /*iwl_priv */ 949}; /*iwl3945_priv */
950 950
951static inline int iwl_is_associated(struct iwl_priv *priv) 951static inline int iwl3945_is_associated(struct iwl3945_priv *priv)
952{ 952{
953 return (priv->active_rxon.filter_flags & RXON_FILTER_ASSOC_MSK) ? 1 : 0; 953 return (priv->active_rxon.filter_flags & RXON_FILTER_ASSOC_MSK) ? 1 : 0;
954} 954}
955 955
956static inline int is_channel_valid(const struct iwl_channel_info *ch_info) 956static inline int is_channel_valid(const struct iwl3945_channel_info *ch_info)
957{ 957{
958 if (ch_info == NULL) 958 if (ch_info == NULL)
959 return 0; 959 return 0;
960 return (ch_info->flags & EEPROM_CHANNEL_VALID) ? 1 : 0; 960 return (ch_info->flags & EEPROM_CHANNEL_VALID) ? 1 : 0;
961} 961}
962 962
963static inline int is_channel_narrow(const struct iwl_channel_info *ch_info) 963static inline int is_channel_narrow(const struct iwl3945_channel_info *ch_info)
964{ 964{
965 return (ch_info->flags & EEPROM_CHANNEL_NARROW) ? 1 : 0; 965 return (ch_info->flags & EEPROM_CHANNEL_NARROW) ? 1 : 0;
966} 966}
967 967
968static inline int is_channel_radar(const struct iwl_channel_info *ch_info) 968static inline int is_channel_radar(const struct iwl3945_channel_info *ch_info)
969{ 969{
970 return (ch_info->flags & EEPROM_CHANNEL_RADAR) ? 1 : 0; 970 return (ch_info->flags & EEPROM_CHANNEL_RADAR) ? 1 : 0;
971} 971}
972 972
973static inline u8 is_channel_a_band(const struct iwl_channel_info *ch_info) 973static inline u8 is_channel_a_band(const struct iwl3945_channel_info *ch_info)
974{ 974{
975 return ch_info->phymode == MODE_IEEE80211A; 975 return ch_info->phymode == MODE_IEEE80211A;
976} 976}
977 977
978static inline u8 is_channel_bg_band(const struct iwl_channel_info *ch_info) 978static inline u8 is_channel_bg_band(const struct iwl3945_channel_info *ch_info)
979{ 979{
980 return ((ch_info->phymode == MODE_IEEE80211B) || 980 return ((ch_info->phymode == MODE_IEEE80211B) ||
981 (ch_info->phymode == MODE_IEEE80211G)); 981 (ch_info->phymode == MODE_IEEE80211G));
982} 982}
983 983
984static inline int is_channel_passive(const struct iwl_channel_info *ch) 984static inline int is_channel_passive(const struct iwl3945_channel_info *ch)
985{ 985{
986 return (!(ch->flags & EEPROM_CHANNEL_ACTIVE)) ? 1 : 0; 986 return (!(ch->flags & EEPROM_CHANNEL_ACTIVE)) ? 1 : 0;
987} 987}
988 988
989static inline int is_channel_ibss(const struct iwl_channel_info *ch) 989static inline int is_channel_ibss(const struct iwl3945_channel_info *ch)
990{ 990{
991 return ((ch->flags & EEPROM_CHANNEL_IBSS)) ? 1 : 0; 991 return ((ch->flags & EEPROM_CHANNEL_IBSS)) ? 1 : 0;
992} 992}
993 993
994extern const struct iwl_channel_info *iwl_get_channel_info( 994extern const struct iwl3945_channel_info *iwl3945_get_channel_info(
995 const struct iwl_priv *priv, int phymode, u16 channel); 995 const struct iwl3945_priv *priv, int phymode, u16 channel);
996 996
997/* Requires full declaration of iwl_priv before including */ 997/* Requires full declaration of iwl3945_priv before including */
998#include "iwl-3945-io.h" 998#include "iwl-3945-io.h"
999 999
1000#endif 1000#endif