diff options
author | Shanyu Zhao <shanyu.zhao@intel.com> | 2010-06-29 20:27:27 -0400 |
---|---|---|
committer | Wey-Yi Guy <wey-yi.w.guy@intel.com> | 2010-07-09 13:16:39 -0400 |
commit | 0326433995ad43b64ebabdd2390a5d11f33f025b (patch) | |
tree | 44e1357c740f1936c9990646df29a6a4c3cab17e /drivers/net/wireless | |
parent | 3cc7b544bde2f87da84a0bd3a8e2cd17a3024442 (diff) |
iwlwifi: enable 6050 series Gen2 devices
To enable 6050 series Gen 2 devices:
1) new PCI_IDs are added;
2) new EEPROM version and calibration version numbers defined;
3) new hardware REV number defined;
Signed-off-by: Shanyu Zhao <shanyu.zhao@intel.com>
Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
Diffstat (limited to 'drivers/net/wireless')
-rw-r--r-- | drivers/net/wireless/iwlwifi/iwl-6000.c | 38 | ||||
-rw-r--r-- | drivers/net/wireless/iwlwifi/iwl-agn.c | 8 | ||||
-rw-r--r-- | drivers/net/wireless/iwlwifi/iwl-agn.h | 1 | ||||
-rw-r--r-- | drivers/net/wireless/iwlwifi/iwl-csr.h | 1 | ||||
-rw-r--r-- | drivers/net/wireless/iwlwifi/iwl-eeprom.h | 4 |
5 files changed, 52 insertions, 0 deletions
diff --git a/drivers/net/wireless/iwlwifi/iwl-6000.c b/drivers/net/wireless/iwlwifi/iwl-6000.c index 59681c5eeb9f..095521952bbe 100644 --- a/drivers/net/wireless/iwlwifi/iwl-6000.c +++ b/drivers/net/wireless/iwlwifi/iwl-6000.c | |||
@@ -829,6 +829,44 @@ struct iwl_cfg iwl6050_2agn_cfg = { | |||
829 | .need_dc_calib = true, | 829 | .need_dc_calib = true, |
830 | }; | 830 | }; |
831 | 831 | ||
832 | struct iwl_cfg iwl6050g2_bgn_cfg = { | ||
833 | .name = "6050 Series 1x2 BGN Gen2", | ||
834 | .fw_name_pre = IWL6050_FW_PRE, | ||
835 | .ucode_api_max = IWL6050_UCODE_API_MAX, | ||
836 | .ucode_api_min = IWL6050_UCODE_API_MIN, | ||
837 | .sku = IWL_SKU_G|IWL_SKU_N, | ||
838 | .ops = &iwl6000_ops, | ||
839 | .eeprom_size = OTP_LOW_IMAGE_SIZE, | ||
840 | .eeprom_ver = EEPROM_6050G2_EEPROM_VERSION, | ||
841 | .eeprom_calib_ver = EEPROM_6050G2_TX_POWER_VERSION, | ||
842 | .num_of_queues = IWLAGN_NUM_QUEUES, | ||
843 | .num_of_ampdu_queues = IWLAGN_NUM_AMPDU_QUEUES, | ||
844 | .mod_params = &iwlagn_mod_params, | ||
845 | .valid_tx_ant = ANT_A, | ||
846 | .valid_rx_ant = ANT_AB, | ||
847 | .pll_cfg_val = 0, | ||
848 | .set_l0s = true, | ||
849 | .use_bsm = false, | ||
850 | .pa_type = IWL_PA_SYSTEM, | ||
851 | .max_ll_items = OTP_MAX_LL_ITEMS_6x50, | ||
852 | .shadow_ram_support = true, | ||
853 | .ht_greenfield_support = true, | ||
854 | .led_compensation = 51, | ||
855 | .use_rts_for_ht = true, /* use rts/cts protection */ | ||
856 | .chain_noise_num_beacons = IWL_CAL_NUM_BEACONS, | ||
857 | .supports_idle = true, | ||
858 | .adv_thermal_throttle = true, | ||
859 | .support_ct_kill_exit = true, | ||
860 | .plcp_delta_threshold = IWL_MAX_PLCP_ERR_THRESHOLD_DEF, | ||
861 | .chain_noise_scale = 1500, | ||
862 | .monitor_recover_period = IWL_MONITORING_PERIOD, | ||
863 | .max_event_log_size = 1024, | ||
864 | .ucode_tracing = true, | ||
865 | .sensitivity_calib_by_driver = true, | ||
866 | .chain_noise_calib_by_driver = true, | ||
867 | .need_dc_calib = true, | ||
868 | }; | ||
869 | |||
832 | struct iwl_cfg iwl6050_2abg_cfg = { | 870 | struct iwl_cfg iwl6050_2abg_cfg = { |
833 | .name = "Intel(R) Centrino(R) Advanced-N + WiMAX 6250 ABG", | 871 | .name = "Intel(R) Centrino(R) Advanced-N + WiMAX 6250 ABG", |
834 | .fw_name_pre = IWL6050_FW_PRE, | 872 | .fw_name_pre = IWL6050_FW_PRE, |
diff --git a/drivers/net/wireless/iwlwifi/iwl-agn.c b/drivers/net/wireless/iwlwifi/iwl-agn.c index 66c83b24884f..b5d19398de00 100644 --- a/drivers/net/wireless/iwlwifi/iwl-agn.c +++ b/drivers/net/wireless/iwlwifi/iwl-agn.c | |||
@@ -4323,6 +4323,14 @@ static DEFINE_PCI_DEVICE_TABLE(iwl_hw_card_ids) = { | |||
4323 | {IWL_PCI_DEVICE(0x0089, 0x1311, iwl6050_2agn_cfg)}, | 4323 | {IWL_PCI_DEVICE(0x0089, 0x1311, iwl6050_2agn_cfg)}, |
4324 | {IWL_PCI_DEVICE(0x0089, 0x1316, iwl6050_2abg_cfg)}, | 4324 | {IWL_PCI_DEVICE(0x0089, 0x1316, iwl6050_2abg_cfg)}, |
4325 | 4325 | ||
4326 | /* 6x50 WiFi/WiMax Series Gen2 */ | ||
4327 | {IWL_PCI_DEVICE(0x0885, 0x1305, iwl6050g2_bgn_cfg)}, | ||
4328 | {IWL_PCI_DEVICE(0x0885, 0x1306, iwl6050g2_bgn_cfg)}, | ||
4329 | {IWL_PCI_DEVICE(0x0885, 0x1325, iwl6050g2_bgn_cfg)}, | ||
4330 | {IWL_PCI_DEVICE(0x0885, 0x1326, iwl6050g2_bgn_cfg)}, | ||
4331 | {IWL_PCI_DEVICE(0x0886, 0x1315, iwl6050g2_bgn_cfg)}, | ||
4332 | {IWL_PCI_DEVICE(0x0886, 0x1316, iwl6050g2_bgn_cfg)}, | ||
4333 | |||
4326 | /* 1000 Series WiFi */ | 4334 | /* 1000 Series WiFi */ |
4327 | {IWL_PCI_DEVICE(0x0083, 0x1205, iwl1000_bgn_cfg)}, | 4335 | {IWL_PCI_DEVICE(0x0083, 0x1205, iwl1000_bgn_cfg)}, |
4328 | {IWL_PCI_DEVICE(0x0083, 0x1305, iwl1000_bgn_cfg)}, | 4336 | {IWL_PCI_DEVICE(0x0083, 0x1305, iwl1000_bgn_cfg)}, |
diff --git a/drivers/net/wireless/iwlwifi/iwl-agn.h b/drivers/net/wireless/iwlwifi/iwl-agn.h index 5c46b2cd8e91..cc6464dc72e5 100644 --- a/drivers/net/wireless/iwlwifi/iwl-agn.h +++ b/drivers/net/wireless/iwlwifi/iwl-agn.h | |||
@@ -89,6 +89,7 @@ extern struct iwl_cfg iwl6000i_2bg_cfg; | |||
89 | extern struct iwl_cfg iwl6000_3agn_cfg; | 89 | extern struct iwl_cfg iwl6000_3agn_cfg; |
90 | extern struct iwl_cfg iwl6050_2agn_cfg; | 90 | extern struct iwl_cfg iwl6050_2agn_cfg; |
91 | extern struct iwl_cfg iwl6050_2abg_cfg; | 91 | extern struct iwl_cfg iwl6050_2abg_cfg; |
92 | extern struct iwl_cfg iwl6050g2_bgn_cfg; | ||
92 | extern struct iwl_cfg iwl1000_bgn_cfg; | 93 | extern struct iwl_cfg iwl1000_bgn_cfg; |
93 | extern struct iwl_cfg iwl1000_bg_cfg; | 94 | extern struct iwl_cfg iwl1000_bg_cfg; |
94 | 95 | ||
diff --git a/drivers/net/wireless/iwlwifi/iwl-csr.h b/drivers/net/wireless/iwlwifi/iwl-csr.h index 254c35ae8b38..ecf98e7ac4ed 100644 --- a/drivers/net/wireless/iwlwifi/iwl-csr.h +++ b/drivers/net/wireless/iwlwifi/iwl-csr.h | |||
@@ -298,6 +298,7 @@ | |||
298 | #define CSR_HW_REV_TYPE_1000 (0x0000060) | 298 | #define CSR_HW_REV_TYPE_1000 (0x0000060) |
299 | #define CSR_HW_REV_TYPE_6x00 (0x0000070) | 299 | #define CSR_HW_REV_TYPE_6x00 (0x0000070) |
300 | #define CSR_HW_REV_TYPE_6x50 (0x0000080) | 300 | #define CSR_HW_REV_TYPE_6x50 (0x0000080) |
301 | #define CSR_HW_REV_TYPE_6x50g2 (0x0000084) | ||
301 | #define CSR_HW_REV_TYPE_6x00g2 (0x00000B0) | 302 | #define CSR_HW_REV_TYPE_6x00g2 (0x00000B0) |
302 | #define CSR_HW_REV_TYPE_NONE (0x00000F0) | 303 | #define CSR_HW_REV_TYPE_NONE (0x00000F0) |
303 | 304 | ||
diff --git a/drivers/net/wireless/iwlwifi/iwl-eeprom.h b/drivers/net/wireless/iwlwifi/iwl-eeprom.h index 95aa202c85e3..f8b707d0d8a2 100644 --- a/drivers/net/wireless/iwlwifi/iwl-eeprom.h +++ b/drivers/net/wireless/iwlwifi/iwl-eeprom.h | |||
@@ -276,6 +276,10 @@ struct iwl_eeprom_enhanced_txpwr { | |||
276 | #define EEPROM_6050_TX_POWER_VERSION (4) | 276 | #define EEPROM_6050_TX_POWER_VERSION (4) |
277 | #define EEPROM_6050_EEPROM_VERSION (0x532) | 277 | #define EEPROM_6050_EEPROM_VERSION (0x532) |
278 | 278 | ||
279 | /* 6x50g2 Specific */ | ||
280 | #define EEPROM_6050G2_TX_POWER_VERSION (6) | ||
281 | #define EEPROM_6050G2_EEPROM_VERSION (0x553) | ||
282 | |||
279 | /* 6x00g2 Specific */ | 283 | /* 6x00g2 Specific */ |
280 | #define EEPROM_6000G2_TX_POWER_VERSION (6) | 284 | #define EEPROM_6000G2_TX_POWER_VERSION (6) |
281 | #define EEPROM_6000G2_EEPROM_VERSION (0x709) | 285 | #define EEPROM_6000G2_EEPROM_VERSION (0x709) |