diff options
Diffstat (limited to 'drivers/net/wireless/iwlwifi/iwl-3945.h')
-rw-r--r-- | drivers/net/wireless/iwlwifi/iwl-3945.h | 40 |
1 files changed, 18 insertions, 22 deletions
diff --git a/drivers/net/wireless/iwlwifi/iwl-3945.h b/drivers/net/wireless/iwlwifi/iwl-3945.h index bdd32475b99c..2c0ddc5110c6 100644 --- a/drivers/net/wireless/iwlwifi/iwl-3945.h +++ b/drivers/net/wireless/iwlwifi/iwl-3945.h | |||
@@ -19,7 +19,7 @@ | |||
19 | * file called LICENSE. | 19 | * file called LICENSE. |
20 | * | 20 | * |
21 | * Contact Information: | 21 | * Contact Information: |
22 | * James P. Ketrenos <ipw2100-admin@linux.intel.com> | 22 | * Intel Linux Wireless <ilw@linux.intel.com> |
23 | * Intel Corporation, 5200 N.E. Elam Young Parkway, Hillsboro, OR 97124-6497 | 23 | * Intel Corporation, 5200 N.E. Elam Young Parkway, Hillsboro, OR 97124-6497 |
24 | * | 24 | * |
25 | *****************************************************************************/ | 25 | *****************************************************************************/ |
@@ -50,11 +50,15 @@ extern struct pci_device_id iwl3945_hw_card_ids[]; | |||
50 | #include "iwl-3945-debug.h" | 50 | #include "iwl-3945-debug.h" |
51 | #include "iwl-3945-led.h" | 51 | #include "iwl-3945-led.h" |
52 | 52 | ||
53 | /* Change firmware file name, using "-" and incrementing number, | 53 | /* Highest firmware API version supported */ |
54 | * *only* when uCode interface or architecture changes so that it | 54 | #define IWL3945_UCODE_API_MAX 2 |
55 | * is not compatible with earlier drivers. | 55 | |
56 | * This number will also appear in << 8 position of 1st dword of uCode file */ | 56 | /* Lowest firmware API version supported */ |
57 | #define IWL3945_UCODE_API "-1" | 57 | #define IWL3945_UCODE_API_MIN 1 |
58 | |||
59 | #define IWL3945_FW_PRE "iwlwifi-3945-" | ||
60 | #define _IWL3945_MODULE_FIRMWARE(api) IWL3945_FW_PRE #api ".ucode" | ||
61 | #define IWL3945_MODULE_FIRMWARE(api) _IWL3945_MODULE_FIRMWARE(api) | ||
58 | 62 | ||
59 | /* Default noise level to report when noise measurement is not available. | 63 | /* Default noise level to report when noise measurement is not available. |
60 | * This may be because we're: | 64 | * This may be because we're: |
@@ -401,12 +405,6 @@ struct iwl3945_rx_queue { | |||
401 | 405 | ||
402 | #define SCAN_INTERVAL 100 | 406 | #define SCAN_INTERVAL 100 |
403 | 407 | ||
404 | #define MAX_A_CHANNELS 252 | ||
405 | #define MIN_A_CHANNELS 7 | ||
406 | |||
407 | #define MAX_B_CHANNELS 14 | ||
408 | #define MIN_B_CHANNELS 1 | ||
409 | |||
410 | #define STATUS_HCMD_ACTIVE 0 /* host command in progress */ | 408 | #define STATUS_HCMD_ACTIVE 0 /* host command in progress */ |
411 | #define STATUS_HCMD_SYNC_ACTIVE 1 /* sync host command in progress */ | 409 | #define STATUS_HCMD_SYNC_ACTIVE 1 /* sync host command in progress */ |
412 | #define STATUS_INT_ENABLED 2 | 410 | #define STATUS_INT_ENABLED 2 |
@@ -472,7 +470,6 @@ union iwl3945_qos_capabity { | |||
472 | 470 | ||
473 | /* QoS structures */ | 471 | /* QoS structures */ |
474 | struct iwl3945_qos_info { | 472 | struct iwl3945_qos_info { |
475 | int qos_enable; | ||
476 | int qos_active; | 473 | int qos_active; |
477 | union iwl3945_qos_capabity qos_cap; | 474 | union iwl3945_qos_capabity qos_cap; |
478 | struct iwl3945_qosparam_cmd def_qos_parm; | 475 | struct iwl3945_qosparam_cmd def_qos_parm; |
@@ -505,7 +502,7 @@ struct fw_desc { | |||
505 | 502 | ||
506 | /* uCode file layout */ | 503 | /* uCode file layout */ |
507 | struct iwl3945_ucode { | 504 | struct iwl3945_ucode { |
508 | __le32 ver; /* major/minor/subminor */ | 505 | __le32 ver; /* major/minor/API/serial */ |
509 | __le32 inst_size; /* bytes of runtime instructions */ | 506 | __le32 inst_size; /* bytes of runtime instructions */ |
510 | __le32 data_size; /* bytes of runtime data */ | 507 | __le32 data_size; /* bytes of runtime data */ |
511 | __le32 init_size; /* bytes of initialization instructions */ | 508 | __le32 init_size; /* bytes of initialization instructions */ |
@@ -587,8 +584,7 @@ extern int iwl3945_send_cmd_pdu(struct iwl3945_priv *priv, u8 id, u16 len, | |||
587 | extern int __must_check iwl3945_send_cmd(struct iwl3945_priv *priv, | 584 | extern int __must_check iwl3945_send_cmd(struct iwl3945_priv *priv, |
588 | struct iwl3945_host_cmd *cmd); | 585 | struct iwl3945_host_cmd *cmd); |
589 | extern unsigned int iwl3945_fill_beacon_frame(struct iwl3945_priv *priv, | 586 | extern unsigned int iwl3945_fill_beacon_frame(struct iwl3945_priv *priv, |
590 | struct ieee80211_hdr *hdr, | 587 | struct ieee80211_hdr *hdr,int left); |
591 | const u8 *dest, int left); | ||
592 | extern int iwl3945_rx_queue_update_write_ptr(struct iwl3945_priv *priv, | 588 | extern int iwl3945_rx_queue_update_write_ptr(struct iwl3945_priv *priv, |
593 | struct iwl3945_rx_queue *q); | 589 | struct iwl3945_rx_queue *q); |
594 | extern int iwl3945_send_statistics_request(struct iwl3945_priv *priv); | 590 | extern int iwl3945_send_statistics_request(struct iwl3945_priv *priv); |
@@ -762,6 +758,8 @@ struct iwl3945_priv { | |||
762 | void __iomem *hw_base; | 758 | void __iomem *hw_base; |
763 | 759 | ||
764 | /* uCode images, save to reload in case of failure */ | 760 | /* uCode images, save to reload in case of failure */ |
761 | u32 ucode_ver; /* ucode version, copy of | ||
762 | iwl3945_ucode.ver */ | ||
765 | struct fw_desc ucode_code; /* runtime inst */ | 763 | struct fw_desc ucode_code; /* runtime inst */ |
766 | struct fw_desc ucode_data; /* runtime data original */ | 764 | struct fw_desc ucode_data; /* runtime data original */ |
767 | struct fw_desc ucode_data_backup; /* runtime data save/restore */ | 765 | struct fw_desc ucode_data_backup; /* runtime data save/restore */ |
@@ -804,6 +802,8 @@ struct iwl3945_priv { | |||
804 | u16 active_rate; | 802 | u16 active_rate; |
805 | u16 active_rate_basic; | 803 | u16 active_rate_basic; |
806 | 804 | ||
805 | u32 sta_supp_rates; | ||
806 | |||
807 | u8 call_post_assoc_from_beacon; | 807 | u8 call_post_assoc_from_beacon; |
808 | /* Rate scaling data */ | 808 | /* Rate scaling data */ |
809 | s8 data_retry_limit; | 809 | s8 data_retry_limit; |
@@ -828,8 +828,6 @@ struct iwl3945_priv { | |||
828 | unsigned long last_statistics_time; | 828 | unsigned long last_statistics_time; |
829 | 829 | ||
830 | /* context information */ | 830 | /* context information */ |
831 | u8 essid[IW_ESSID_MAX_SIZE]; | ||
832 | u8 essid_len; | ||
833 | u16 rates_mask; | 831 | u16 rates_mask; |
834 | 832 | ||
835 | u32 power_mode; | 833 | u32 power_mode; |
@@ -888,7 +886,6 @@ struct iwl3945_priv { | |||
888 | struct work_struct report_work; | 886 | struct work_struct report_work; |
889 | struct work_struct request_scan; | 887 | struct work_struct request_scan; |
890 | struct work_struct beacon_update; | 888 | struct work_struct beacon_update; |
891 | struct work_struct set_monitor; | ||
892 | 889 | ||
893 | struct tasklet_struct irq_tasklet; | 890 | struct tasklet_struct irq_tasklet; |
894 | 891 | ||
@@ -903,9 +900,6 @@ struct iwl3945_priv { | |||
903 | s8 user_txpower_limit; | 900 | s8 user_txpower_limit; |
904 | s8 max_channel_txpower_limit; | 901 | s8 max_channel_txpower_limit; |
905 | 902 | ||
906 | #ifdef CONFIG_PM | ||
907 | u32 pm_state[16]; | ||
908 | #endif | ||
909 | 903 | ||
910 | #ifdef CONFIG_IWL3945_DEBUG | 904 | #ifdef CONFIG_IWL3945_DEBUG |
911 | /* debugging info */ | 905 | /* debugging info */ |
@@ -954,6 +948,8 @@ static inline int is_channel_ibss(const struct iwl3945_channel_info *ch) | |||
954 | extern const struct iwl3945_channel_info *iwl3945_get_channel_info( | 948 | extern const struct iwl3945_channel_info *iwl3945_get_channel_info( |
955 | const struct iwl3945_priv *priv, enum ieee80211_band band, u16 channel); | 949 | const struct iwl3945_priv *priv, enum ieee80211_band band, u16 channel); |
956 | 950 | ||
951 | extern int iwl3945_rs_next_rate(struct iwl3945_priv *priv, int rate); | ||
952 | |||
957 | /* Requires full declaration of iwl3945_priv before including */ | 953 | /* Requires full declaration of iwl3945_priv before including */ |
958 | #include "iwl-3945-io.h" | 954 | #include "iwl-3945-io.h" |
959 | 955 | ||