diff options
author | Wey-Yi Guy <wey-yi.w.guy@intel.com> | 2010-12-08 10:51:50 -0500 |
---|---|---|
committer | Wey-Yi Guy <wey-yi.w.guy@intel.com> | 2010-12-13 18:53:54 -0500 |
commit | 65af8dea26aa89ae4a810bdaa05545a8e670b636 (patch) | |
tree | 48684a81f4b877f9ddf8cab0c5c284b61ba08b3f /drivers/net/wireless/iwlwifi | |
parent | f21dd005df95e0fc6a578342c61b5333ce2abc2b (diff) |
iwlagn: code clean up to remove duplicate code
Multiple devices use almost the same .cfg with minor differences.
Use macro and remove the duplication. By doing this, reduce
the chance for mistake while modify .cfg parameters
Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
Diffstat (limited to 'drivers/net/wireless/iwlwifi')
-rw-r--r-- | drivers/net/wireless/iwlwifi/iwl-1000.c | 65 | ||||
-rw-r--r-- | drivers/net/wireless/iwlwifi/iwl-5000.c | 89 | ||||
-rw-r--r-- | drivers/net/wireless/iwlwifi/iwl-6000.c | 319 |
3 files changed, 151 insertions, 322 deletions
diff --git a/drivers/net/wireless/iwlwifi/iwl-1000.c b/drivers/net/wireless/iwlwifi/iwl-1000.c index 94521d4417a2..ba78bc8a259f 100644 --- a/drivers/net/wireless/iwlwifi/iwl-1000.c +++ b/drivers/net/wireless/iwlwifi/iwl-1000.c | |||
@@ -276,60 +276,49 @@ static struct iwl_ht_params iwl1000_ht_params = { | |||
276 | .use_rts_for_aggregation = true, /* use rts/cts protection */ | 276 | .use_rts_for_aggregation = true, /* use rts/cts protection */ |
277 | }; | 277 | }; |
278 | 278 | ||
279 | #define IWL_DEVICE_1000 \ | ||
280 | .fw_name_pre = IWL1000_FW_PRE, \ | ||
281 | .ucode_api_max = IWL1000_UCODE_API_MAX, \ | ||
282 | .ucode_api_min = IWL1000_UCODE_API_MIN, \ | ||
283 | .eeprom_ver = EEPROM_1000_EEPROM_VERSION, \ | ||
284 | .eeprom_calib_ver = EEPROM_1000_TX_POWER_VERSION, \ | ||
285 | .ops = &iwl1000_ops, \ | ||
286 | .mod_params = &iwlagn_mod_params, \ | ||
287 | .base_params = &iwl1000_base_params, \ | ||
288 | .led_mode = IWL_LED_BLINK | ||
289 | |||
279 | struct iwl_cfg iwl1000_bgn_cfg = { | 290 | struct iwl_cfg iwl1000_bgn_cfg = { |
280 | .name = "Intel(R) Centrino(R) Wireless-N 1000 BGN", | 291 | .name = "Intel(R) Centrino(R) Wireless-N 1000 BGN", |
281 | .fw_name_pre = IWL1000_FW_PRE, | 292 | IWL_DEVICE_1000, |
282 | .ucode_api_max = IWL1000_UCODE_API_MAX, | ||
283 | .ucode_api_min = IWL1000_UCODE_API_MIN, | ||
284 | .eeprom_ver = EEPROM_1000_EEPROM_VERSION, | ||
285 | .eeprom_calib_ver = EEPROM_1000_TX_POWER_VERSION, | ||
286 | .ops = &iwl1000_ops, | ||
287 | .mod_params = &iwlagn_mod_params, | ||
288 | .base_params = &iwl1000_base_params, | ||
289 | .ht_params = &iwl1000_ht_params, | 293 | .ht_params = &iwl1000_ht_params, |
290 | .led_mode = IWL_LED_BLINK, | ||
291 | }; | 294 | }; |
292 | 295 | ||
293 | struct iwl_cfg iwl1000_bg_cfg = { | 296 | struct iwl_cfg iwl1000_bg_cfg = { |
294 | .name = "Intel(R) Centrino(R) Wireless-N 1000 BG", | 297 | .name = "Intel(R) Centrino(R) Wireless-N 1000 BG", |
295 | .fw_name_pre = IWL1000_FW_PRE, | 298 | IWL_DEVICE_1000, |
296 | .ucode_api_max = IWL1000_UCODE_API_MAX, | ||
297 | .ucode_api_min = IWL1000_UCODE_API_MIN, | ||
298 | .eeprom_ver = EEPROM_1000_EEPROM_VERSION, | ||
299 | .eeprom_calib_ver = EEPROM_1000_TX_POWER_VERSION, | ||
300 | .ops = &iwl1000_ops, | ||
301 | .mod_params = &iwlagn_mod_params, | ||
302 | .base_params = &iwl1000_base_params, | ||
303 | .led_mode = IWL_LED_BLINK, | ||
304 | }; | 299 | }; |
305 | 300 | ||
301 | #define IWL_DEVICE_100 \ | ||
302 | .fw_name_pre = IWL100_FW_PRE, \ | ||
303 | .ucode_api_max = IWL100_UCODE_API_MAX, \ | ||
304 | .ucode_api_min = IWL100_UCODE_API_MIN, \ | ||
305 | .eeprom_ver = EEPROM_1000_EEPROM_VERSION, \ | ||
306 | .eeprom_calib_ver = EEPROM_1000_TX_POWER_VERSION, \ | ||
307 | .ops = &iwl1000_ops, \ | ||
308 | .mod_params = &iwlagn_mod_params, \ | ||
309 | .base_params = &iwl1000_base_params, \ | ||
310 | .led_mode = IWL_LED_RF_STATE, \ | ||
311 | .rx_with_siso_diversity = true | ||
312 | |||
306 | struct iwl_cfg iwl100_bgn_cfg = { | 313 | struct iwl_cfg iwl100_bgn_cfg = { |
307 | .name = "Intel(R) Centrino(R) Wireless-N 100 BGN", | 314 | .name = "Intel(R) Centrino(R) Wireless-N 100 BGN", |
308 | .fw_name_pre = IWL100_FW_PRE, | 315 | IWL_DEVICE_100, |
309 | .ucode_api_max = IWL100_UCODE_API_MAX, | ||
310 | .ucode_api_min = IWL100_UCODE_API_MIN, | ||
311 | .eeprom_ver = EEPROM_1000_EEPROM_VERSION, | ||
312 | .eeprom_calib_ver = EEPROM_1000_TX_POWER_VERSION, | ||
313 | .ops = &iwl1000_ops, | ||
314 | .mod_params = &iwlagn_mod_params, | ||
315 | .base_params = &iwl1000_base_params, | ||
316 | .ht_params = &iwl1000_ht_params, | 316 | .ht_params = &iwl1000_ht_params, |
317 | .led_mode = IWL_LED_RF_STATE, | ||
318 | .rx_with_siso_diversity = true, | ||
319 | }; | 317 | }; |
320 | 318 | ||
321 | struct iwl_cfg iwl100_bg_cfg = { | 319 | struct iwl_cfg iwl100_bg_cfg = { |
322 | .name = "Intel(R) Centrino(R) Wireless-N 100 BG", | 320 | .name = "Intel(R) Centrino(R) Wireless-N 100 BG", |
323 | .fw_name_pre = IWL100_FW_PRE, | 321 | IWL_DEVICE_100, |
324 | .ucode_api_max = IWL100_UCODE_API_MAX, | ||
325 | .ucode_api_min = IWL100_UCODE_API_MIN, | ||
326 | .eeprom_ver = EEPROM_1000_EEPROM_VERSION, | ||
327 | .eeprom_calib_ver = EEPROM_1000_TX_POWER_VERSION, | ||
328 | .ops = &iwl1000_ops, | ||
329 | .mod_params = &iwlagn_mod_params, | ||
330 | .base_params = &iwl1000_base_params, | ||
331 | .led_mode = IWL_LED_RF_STATE, | ||
332 | .rx_with_siso_diversity = true, | ||
333 | }; | 322 | }; |
334 | 323 | ||
335 | MODULE_FIRMWARE(IWL1000_MODULE_FIRMWARE(IWL1000_UCODE_API_MAX)); | 324 | MODULE_FIRMWARE(IWL1000_MODULE_FIRMWARE(IWL1000_UCODE_API_MAX)); |
diff --git a/drivers/net/wireless/iwlwifi/iwl-5000.c b/drivers/net/wireless/iwlwifi/iwl-5000.c index 34af9e0cfa43..79ab0a6b1386 100644 --- a/drivers/net/wireless/iwlwifi/iwl-5000.c +++ b/drivers/net/wireless/iwlwifi/iwl-5000.c | |||
@@ -520,65 +520,44 @@ static struct iwl_ht_params iwl5000_ht_params = { | |||
520 | .use_rts_for_aggregation = true, /* use rts/cts protection */ | 520 | .use_rts_for_aggregation = true, /* use rts/cts protection */ |
521 | }; | 521 | }; |
522 | 522 | ||
523 | #define IWL_DEVICE_5000 \ | ||
524 | .fw_name_pre = IWL5000_FW_PRE, \ | ||
525 | .ucode_api_max = IWL5000_UCODE_API_MAX, \ | ||
526 | .ucode_api_min = IWL5000_UCODE_API_MIN, \ | ||
527 | .eeprom_ver = EEPROM_5000_EEPROM_VERSION, \ | ||
528 | .eeprom_calib_ver = EEPROM_5000_TX_POWER_VERSION, \ | ||
529 | .ops = &iwl5000_ops, \ | ||
530 | .mod_params = &iwlagn_mod_params, \ | ||
531 | .base_params = &iwl5000_base_params, \ | ||
532 | .led_mode = IWL_LED_BLINK | ||
533 | |||
523 | struct iwl_cfg iwl5300_agn_cfg = { | 534 | struct iwl_cfg iwl5300_agn_cfg = { |
524 | .name = "Intel(R) Ultimate N WiFi Link 5300 AGN", | 535 | .name = "Intel(R) Ultimate N WiFi Link 5300 AGN", |
525 | .fw_name_pre = IWL5000_FW_PRE, | 536 | IWL_DEVICE_5000, |
526 | .ucode_api_max = IWL5000_UCODE_API_MAX, | ||
527 | .ucode_api_min = IWL5000_UCODE_API_MIN, | ||
528 | .eeprom_ver = EEPROM_5000_EEPROM_VERSION, | ||
529 | .eeprom_calib_ver = EEPROM_5000_TX_POWER_VERSION, | ||
530 | .ops = &iwl5000_ops, | ||
531 | .mod_params = &iwlagn_mod_params, | ||
532 | .base_params = &iwl5000_base_params, | ||
533 | .ht_params = &iwl5000_ht_params, | 537 | .ht_params = &iwl5000_ht_params, |
534 | .led_mode = IWL_LED_BLINK, | ||
535 | }; | 538 | }; |
536 | 539 | ||
537 | struct iwl_cfg iwl5100_bgn_cfg = { | 540 | struct iwl_cfg iwl5100_bgn_cfg = { |
538 | .name = "Intel(R) WiFi Link 5100 BGN", | 541 | .name = "Intel(R) WiFi Link 5100 BGN", |
539 | .fw_name_pre = IWL5000_FW_PRE, | 542 | IWL_DEVICE_5000, |
540 | .ucode_api_max = IWL5000_UCODE_API_MAX, | ||
541 | .ucode_api_min = IWL5000_UCODE_API_MIN, | ||
542 | .valid_tx_ant = ANT_B, /* .cfg overwrite */ | 543 | .valid_tx_ant = ANT_B, /* .cfg overwrite */ |
543 | .valid_rx_ant = ANT_AB, /* .cfg overwrite */ | 544 | .valid_rx_ant = ANT_AB, /* .cfg overwrite */ |
544 | .eeprom_ver = EEPROM_5000_EEPROM_VERSION, | ||
545 | .eeprom_calib_ver = EEPROM_5000_TX_POWER_VERSION, | ||
546 | .ops = &iwl5000_ops, | ||
547 | .mod_params = &iwlagn_mod_params, | ||
548 | .base_params = &iwl5000_base_params, | ||
549 | .ht_params = &iwl5000_ht_params, | 545 | .ht_params = &iwl5000_ht_params, |
550 | .led_mode = IWL_LED_BLINK, | ||
551 | }; | 546 | }; |
552 | 547 | ||
553 | struct iwl_cfg iwl5100_abg_cfg = { | 548 | struct iwl_cfg iwl5100_abg_cfg = { |
554 | .name = "Intel(R) WiFi Link 5100 ABG", | 549 | .name = "Intel(R) WiFi Link 5100 ABG", |
555 | .fw_name_pre = IWL5000_FW_PRE, | 550 | IWL_DEVICE_5000, |
556 | .ucode_api_max = IWL5000_UCODE_API_MAX, | ||
557 | .ucode_api_min = IWL5000_UCODE_API_MIN, | ||
558 | .valid_tx_ant = ANT_B, /* .cfg overwrite */ | 551 | .valid_tx_ant = ANT_B, /* .cfg overwrite */ |
559 | .valid_rx_ant = ANT_AB, /* .cfg overwrite */ | 552 | .valid_rx_ant = ANT_AB, /* .cfg overwrite */ |
560 | .eeprom_ver = EEPROM_5000_EEPROM_VERSION, | ||
561 | .eeprom_calib_ver = EEPROM_5000_TX_POWER_VERSION, | ||
562 | .ops = &iwl5000_ops, | ||
563 | .mod_params = &iwlagn_mod_params, | ||
564 | .base_params = &iwl5000_base_params, | ||
565 | .led_mode = IWL_LED_BLINK, | ||
566 | }; | 553 | }; |
567 | 554 | ||
568 | struct iwl_cfg iwl5100_agn_cfg = { | 555 | struct iwl_cfg iwl5100_agn_cfg = { |
569 | .name = "Intel(R) WiFi Link 5100 AGN", | 556 | .name = "Intel(R) WiFi Link 5100 AGN", |
570 | .fw_name_pre = IWL5000_FW_PRE, | 557 | IWL_DEVICE_5000, |
571 | .ucode_api_max = IWL5000_UCODE_API_MAX, | ||
572 | .ucode_api_min = IWL5000_UCODE_API_MIN, | ||
573 | .valid_tx_ant = ANT_B, /* .cfg overwrite */ | 558 | .valid_tx_ant = ANT_B, /* .cfg overwrite */ |
574 | .valid_rx_ant = ANT_AB, /* .cfg overwrite */ | 559 | .valid_rx_ant = ANT_AB, /* .cfg overwrite */ |
575 | .eeprom_ver = EEPROM_5000_EEPROM_VERSION, | ||
576 | .eeprom_calib_ver = EEPROM_5000_TX_POWER_VERSION, | ||
577 | .ops = &iwl5000_ops, | ||
578 | .mod_params = &iwlagn_mod_params, | ||
579 | .base_params = &iwl5000_base_params, | ||
580 | .ht_params = &iwl5000_ht_params, | 560 | .ht_params = &iwl5000_ht_params, |
581 | .led_mode = IWL_LED_BLINK, | ||
582 | }; | 561 | }; |
583 | 562 | ||
584 | struct iwl_cfg iwl5350_agn_cfg = { | 563 | struct iwl_cfg iwl5350_agn_cfg = { |
@@ -596,35 +575,29 @@ struct iwl_cfg iwl5350_agn_cfg = { | |||
596 | .internal_wimax_coex = true, | 575 | .internal_wimax_coex = true, |
597 | }; | 576 | }; |
598 | 577 | ||
578 | #define IWL_DEVICE_5150 \ | ||
579 | .fw_name_pre = IWL5150_FW_PRE, \ | ||
580 | .ucode_api_max = IWL5150_UCODE_API_MAX, \ | ||
581 | .ucode_api_min = IWL5150_UCODE_API_MIN, \ | ||
582 | .eeprom_ver = EEPROM_5050_EEPROM_VERSION, \ | ||
583 | .eeprom_calib_ver = EEPROM_5050_TX_POWER_VERSION, \ | ||
584 | .ops = &iwl5150_ops, \ | ||
585 | .mod_params = &iwlagn_mod_params, \ | ||
586 | .base_params = &iwl5000_base_params, \ | ||
587 | .need_dc_calib = true, \ | ||
588 | .led_mode = IWL_LED_BLINK, \ | ||
589 | .internal_wimax_coex = true | ||
590 | |||
599 | struct iwl_cfg iwl5150_agn_cfg = { | 591 | struct iwl_cfg iwl5150_agn_cfg = { |
600 | .name = "Intel(R) WiMAX/WiFi Link 5150 AGN", | 592 | .name = "Intel(R) WiMAX/WiFi Link 5150 AGN", |
601 | .fw_name_pre = IWL5150_FW_PRE, | 593 | IWL_DEVICE_5150, |
602 | .ucode_api_max = IWL5150_UCODE_API_MAX, | ||
603 | .ucode_api_min = IWL5150_UCODE_API_MIN, | ||
604 | .eeprom_ver = EEPROM_5050_EEPROM_VERSION, | ||
605 | .eeprom_calib_ver = EEPROM_5050_TX_POWER_VERSION, | ||
606 | .ops = &iwl5150_ops, | ||
607 | .mod_params = &iwlagn_mod_params, | ||
608 | .base_params = &iwl5000_base_params, | ||
609 | .ht_params = &iwl5000_ht_params, | 594 | .ht_params = &iwl5000_ht_params, |
610 | .need_dc_calib = true, | 595 | |
611 | .led_mode = IWL_LED_BLINK, | ||
612 | .internal_wimax_coex = true, | ||
613 | }; | 596 | }; |
614 | 597 | ||
615 | struct iwl_cfg iwl5150_abg_cfg = { | 598 | struct iwl_cfg iwl5150_abg_cfg = { |
616 | .name = "Intel(R) WiMAX/WiFi Link 5150 ABG", | 599 | .name = "Intel(R) WiMAX/WiFi Link 5150 ABG", |
617 | .fw_name_pre = IWL5150_FW_PRE, | 600 | IWL_DEVICE_5150, |
618 | .ucode_api_max = IWL5150_UCODE_API_MAX, | ||
619 | .ucode_api_min = IWL5150_UCODE_API_MIN, | ||
620 | .eeprom_ver = EEPROM_5050_EEPROM_VERSION, | ||
621 | .eeprom_calib_ver = EEPROM_5050_TX_POWER_VERSION, | ||
622 | .ops = &iwl5150_ops, | ||
623 | .mod_params = &iwlagn_mod_params, | ||
624 | .base_params = &iwl5000_base_params, | ||
625 | .need_dc_calib = true, | ||
626 | .led_mode = IWL_LED_BLINK, | ||
627 | .internal_wimax_coex = true, | ||
628 | }; | 601 | }; |
629 | 602 | ||
630 | MODULE_FIRMWARE(IWL5000_MODULE_FIRMWARE(IWL5000_UCODE_API_MAX)); | 603 | MODULE_FIRMWARE(IWL5000_MODULE_FIRMWARE(IWL5000_UCODE_API_MAX)); |
diff --git a/drivers/net/wireless/iwlwifi/iwl-6000.c b/drivers/net/wireless/iwlwifi/iwl-6000.c index fe5f6d0a6539..f4bec3201ef9 100644 --- a/drivers/net/wireless/iwlwifi/iwl-6000.c +++ b/drivers/net/wireless/iwlwifi/iwl-6000.c | |||
@@ -554,235 +554,156 @@ static struct iwl_bt_params iwl6000_bt_params = { | |||
554 | .bt_sco_disable = true, | 554 | .bt_sco_disable = true, |
555 | }; | 555 | }; |
556 | 556 | ||
557 | #define IWL_DEVICE_6005 \ | ||
558 | .fw_name_pre = IWL6000G2A_FW_PRE, \ | ||
559 | .ucode_api_max = IWL6000G2_UCODE_API_MAX, \ | ||
560 | .ucode_api_min = IWL6000G2_UCODE_API_MIN, \ | ||
561 | .eeprom_ver = EEPROM_6000G2_EEPROM_VERSION, \ | ||
562 | .eeprom_calib_ver = EEPROM_6000G2_TX_POWER_VERSION, \ | ||
563 | .ops = &iwl6000_ops, \ | ||
564 | .mod_params = &iwlagn_mod_params, \ | ||
565 | .base_params = &iwl6000_g2_base_params, \ | ||
566 | .need_dc_calib = true, \ | ||
567 | .need_temp_offset_calib = true, \ | ||
568 | .led_mode = IWL_LED_RF_STATE | ||
569 | |||
557 | struct iwl_cfg iwl6005_2agn_cfg = { | 570 | struct iwl_cfg iwl6005_2agn_cfg = { |
558 | .name = "Intel(R) Centrino(R) Advanced-N 6205 AGN", | 571 | .name = "Intel(R) Centrino(R) Advanced-N 6205 AGN", |
559 | .fw_name_pre = IWL6000G2A_FW_PRE, | 572 | IWL_DEVICE_6005, |
560 | .ucode_api_max = IWL6000G2_UCODE_API_MAX, | ||
561 | .ucode_api_min = IWL6000G2_UCODE_API_MIN, | ||
562 | .eeprom_ver = EEPROM_6000G2_EEPROM_VERSION, | ||
563 | .eeprom_calib_ver = EEPROM_6000G2_TX_POWER_VERSION, | ||
564 | .ops = &iwl6000_ops, | ||
565 | .mod_params = &iwlagn_mod_params, | ||
566 | .base_params = &iwl6000_g2_base_params, | ||
567 | .ht_params = &iwl6000_ht_params, | 573 | .ht_params = &iwl6000_ht_params, |
568 | .need_dc_calib = true, | ||
569 | .need_temp_offset_calib = true, | ||
570 | .led_mode = IWL_LED_RF_STATE, | ||
571 | }; | 574 | }; |
572 | 575 | ||
573 | struct iwl_cfg iwl6005_2abg_cfg = { | 576 | struct iwl_cfg iwl6005_2abg_cfg = { |
574 | .name = "Intel(R) Centrino(R) Advanced-N 6205 ABG", | 577 | .name = "Intel(R) Centrino(R) Advanced-N 6205 ABG", |
575 | .fw_name_pre = IWL6000G2A_FW_PRE, | 578 | IWL_DEVICE_6005, |
576 | .ucode_api_max = IWL6000G2_UCODE_API_MAX, | ||
577 | .ucode_api_min = IWL6000G2_UCODE_API_MIN, | ||
578 | .eeprom_ver = EEPROM_6000G2_EEPROM_VERSION, | ||
579 | .eeprom_calib_ver = EEPROM_6000G2_TX_POWER_VERSION, | ||
580 | .ops = &iwl6000_ops, | ||
581 | .mod_params = &iwlagn_mod_params, | ||
582 | .base_params = &iwl6000_g2_base_params, | ||
583 | .need_dc_calib = true, | ||
584 | .need_temp_offset_calib = true, | ||
585 | .led_mode = IWL_LED_RF_STATE, | ||
586 | }; | 579 | }; |
587 | 580 | ||
588 | struct iwl_cfg iwl6005_2bg_cfg = { | 581 | struct iwl_cfg iwl6005_2bg_cfg = { |
589 | .name = "Intel(R) Centrino(R) Advanced-N 6205 BG", | 582 | .name = "Intel(R) Centrino(R) Advanced-N 6205 BG", |
590 | .fw_name_pre = IWL6000G2A_FW_PRE, | 583 | IWL_DEVICE_6005, |
591 | .ucode_api_max = IWL6000G2_UCODE_API_MAX, | 584 | }; |
592 | .ucode_api_min = IWL6000G2_UCODE_API_MIN, | 585 | |
593 | .eeprom_ver = EEPROM_6000G2_EEPROM_VERSION, | 586 | #define IWL_DEVICE_6030 \ |
594 | .eeprom_calib_ver = EEPROM_6000G2_TX_POWER_VERSION, | 587 | .fw_name_pre = IWL6000G2B_FW_PRE, \ |
595 | .ops = &iwl6000_ops, | 588 | .ucode_api_max = IWL6000G2_UCODE_API_MAX, \ |
596 | .mod_params = &iwlagn_mod_params, | 589 | .ucode_api_min = IWL6000G2_UCODE_API_MIN, \ |
597 | .base_params = &iwl6000_g2_base_params, | 590 | .eeprom_ver = EEPROM_6000G2_EEPROM_VERSION, \ |
598 | .need_dc_calib = true, | 591 | .eeprom_calib_ver = EEPROM_6000G2_TX_POWER_VERSION, \ |
599 | .need_temp_offset_calib = true, | 592 | .ops = &iwl6000g2b_ops, \ |
600 | .led_mode = IWL_LED_RF_STATE, | 593 | .mod_params = &iwlagn_mod_params, \ |
601 | }; | 594 | .base_params = &iwl6000_g2_base_params, \ |
595 | .bt_params = &iwl6000_bt_params, \ | ||
596 | .need_dc_calib = true, \ | ||
597 | .need_temp_offset_calib = true, \ | ||
598 | .led_mode = IWL_LED_RF_STATE, \ | ||
599 | .adv_pm = true, \ | ||
600 | /* \ | ||
601 | *Due to bluetooth, we transmit 2.4 GHz probes \ | ||
602 | * only on antenna A \ | ||
603 | */ \ | ||
604 | .scan_tx_antennas[IEEE80211_BAND_2GHZ] = ANT_A | ||
602 | 605 | ||
603 | struct iwl_cfg iwl6030_2agn_cfg = { | 606 | struct iwl_cfg iwl6030_2agn_cfg = { |
604 | .name = "Intel(R) Centrino(R) Advanced-N 6230 AGN", | 607 | .name = "Intel(R) Centrino(R) Advanced-N 6230 AGN", |
605 | .fw_name_pre = IWL6000G2B_FW_PRE, | 608 | IWL_DEVICE_6030, |
606 | .ucode_api_max = IWL6000G2_UCODE_API_MAX, | ||
607 | .ucode_api_min = IWL6000G2_UCODE_API_MIN, | ||
608 | .eeprom_ver = EEPROM_6000G2_EEPROM_VERSION, | ||
609 | .eeprom_calib_ver = EEPROM_6000G2_TX_POWER_VERSION, | ||
610 | .ops = &iwl6000g2b_ops, | ||
611 | .mod_params = &iwlagn_mod_params, | ||
612 | .base_params = &iwl6000_g2_base_params, | ||
613 | .bt_params = &iwl6000_bt_params, | ||
614 | .ht_params = &iwl6000_ht_params, | 609 | .ht_params = &iwl6000_ht_params, |
615 | .need_dc_calib = true, | ||
616 | .need_temp_offset_calib = true, | ||
617 | .led_mode = IWL_LED_RF_STATE, | ||
618 | .adv_pm = true, | ||
619 | /* Due to bluetooth, we transmit 2.4 GHz probes only on antenna A */ | ||
620 | .scan_tx_antennas[IEEE80211_BAND_2GHZ] = ANT_A, | ||
621 | }; | 610 | }; |
622 | 611 | ||
623 | struct iwl_cfg iwl6030_2abg_cfg = { | 612 | struct iwl_cfg iwl6030_2abg_cfg = { |
624 | .name = "Intel(R) Centrino(R) Advanced-N 6230 ABG", | 613 | .name = "Intel(R) Centrino(R) Advanced-N 6230 ABG", |
625 | .fw_name_pre = IWL6000G2B_FW_PRE, | 614 | IWL_DEVICE_6030, |
626 | .ucode_api_max = IWL6000G2_UCODE_API_MAX, | ||
627 | .ucode_api_min = IWL6000G2_UCODE_API_MIN, | ||
628 | .eeprom_ver = EEPROM_6000G2_EEPROM_VERSION, | ||
629 | .eeprom_calib_ver = EEPROM_6000G2_TX_POWER_VERSION, | ||
630 | .ops = &iwl6000g2b_ops, | ||
631 | .mod_params = &iwlagn_mod_params, | ||
632 | .base_params = &iwl6000_g2_base_params, | ||
633 | .bt_params = &iwl6000_bt_params, | ||
634 | .need_dc_calib = true, | ||
635 | .need_temp_offset_calib = true, | ||
636 | .led_mode = IWL_LED_RF_STATE, | ||
637 | .adv_pm = true, | ||
638 | /* Due to bluetooth, we transmit 2.4 GHz probes only on antenna A */ | ||
639 | .scan_tx_antennas[IEEE80211_BAND_2GHZ] = ANT_A, | ||
640 | }; | 615 | }; |
641 | 616 | ||
642 | struct iwl_cfg iwl6030_2bgn_cfg = { | 617 | struct iwl_cfg iwl6030_2bgn_cfg = { |
643 | .name = "Intel(R) Centrino(R) Advanced-N 6230 BGN", | 618 | .name = "Intel(R) Centrino(R) Advanced-N 6230 BGN", |
644 | .fw_name_pre = IWL6000G2B_FW_PRE, | 619 | IWL_DEVICE_6030, |
645 | .ucode_api_max = IWL6000G2_UCODE_API_MAX, | ||
646 | .ucode_api_min = IWL6000G2_UCODE_API_MIN, | ||
647 | .eeprom_ver = EEPROM_6000G2_EEPROM_VERSION, | ||
648 | .eeprom_calib_ver = EEPROM_6000G2_TX_POWER_VERSION, | ||
649 | .ops = &iwl6000g2b_ops, | ||
650 | .mod_params = &iwlagn_mod_params, | ||
651 | .base_params = &iwl6000_g2_base_params, | ||
652 | .bt_params = &iwl6000_bt_params, | ||
653 | .ht_params = &iwl6000_ht_params, | 620 | .ht_params = &iwl6000_ht_params, |
654 | .need_dc_calib = true, | ||
655 | .need_temp_offset_calib = true, | ||
656 | .led_mode = IWL_LED_RF_STATE, | ||
657 | .adv_pm = true, | ||
658 | /* Due to bluetooth, we transmit 2.4 GHz probes only on antenna A */ | ||
659 | .scan_tx_antennas[IEEE80211_BAND_2GHZ] = ANT_A, | ||
660 | }; | 621 | }; |
661 | 622 | ||
662 | struct iwl_cfg iwl6030_2bg_cfg = { | 623 | struct iwl_cfg iwl6030_2bg_cfg = { |
663 | .name = "Intel(R) Centrino(R) Advanced-N 6230 BG", | 624 | .name = "Intel(R) Centrino(R) Advanced-N 6230 BG", |
664 | .fw_name_pre = IWL6000G2B_FW_PRE, | 625 | IWL_DEVICE_6030, |
665 | .ucode_api_max = IWL6000G2_UCODE_API_MAX, | ||
666 | .ucode_api_min = IWL6000G2_UCODE_API_MIN, | ||
667 | .eeprom_ver = EEPROM_6000G2_EEPROM_VERSION, | ||
668 | .eeprom_calib_ver = EEPROM_6000G2_TX_POWER_VERSION, | ||
669 | .ops = &iwl6000g2b_ops, | ||
670 | .mod_params = &iwlagn_mod_params, | ||
671 | .base_params = &iwl6000_g2_base_params, | ||
672 | .bt_params = &iwl6000_bt_params, | ||
673 | .need_dc_calib = true, | ||
674 | .need_temp_offset_calib = true, | ||
675 | .led_mode = IWL_LED_RF_STATE, | ||
676 | .adv_pm = true, | ||
677 | /* Due to bluetooth, we transmit 2.4 GHz probes only on antenna A */ | ||
678 | .scan_tx_antennas[IEEE80211_BAND_2GHZ] = ANT_A, | ||
679 | }; | 626 | }; |
680 | 627 | ||
681 | struct iwl_cfg iwl1030_bgn_cfg = { | 628 | struct iwl_cfg iwl1030_bgn_cfg = { |
682 | .name = "Intel(R) Centrino(R) Wireless-N 1030 BGN", | 629 | .name = "Intel(R) Centrino(R) Wireless-N 1030 BGN", |
683 | .fw_name_pre = IWL6000G2B_FW_PRE, | 630 | IWL_DEVICE_6030, |
684 | .ucode_api_max = IWL6000G2_UCODE_API_MAX, | ||
685 | .ucode_api_min = IWL6000G2_UCODE_API_MIN, | ||
686 | .eeprom_ver = EEPROM_6000G2_EEPROM_VERSION, | ||
687 | .eeprom_calib_ver = EEPROM_6000G2_TX_POWER_VERSION, | ||
688 | .ops = &iwl6000g2b_ops, | ||
689 | .mod_params = &iwlagn_mod_params, | ||
690 | .base_params = &iwl6000_g2_base_params, | ||
691 | .bt_params = &iwl6000_bt_params, | ||
692 | .ht_params = &iwl6000_ht_params, | 631 | .ht_params = &iwl6000_ht_params, |
693 | .need_dc_calib = true, | ||
694 | .need_temp_offset_calib = true, | ||
695 | .led_mode = IWL_LED_RF_STATE, | ||
696 | .adv_pm = true, | ||
697 | /* Due to bluetooth, we transmit 2.4 GHz probes only on antenna A */ | ||
698 | .scan_tx_antennas[IEEE80211_BAND_2GHZ] = ANT_A, | ||
699 | }; | 632 | }; |
700 | 633 | ||
701 | struct iwl_cfg iwl1030_bg_cfg = { | 634 | struct iwl_cfg iwl1030_bg_cfg = { |
702 | .name = "Intel(R) Centrino(R) Wireless-N 1030 BG", | 635 | .name = "Intel(R) Centrino(R) Wireless-N 1030 BG", |
703 | .fw_name_pre = IWL6000G2B_FW_PRE, | 636 | IWL_DEVICE_6030, |
704 | .ucode_api_max = IWL6000G2_UCODE_API_MAX, | 637 | }; |
705 | .ucode_api_min = IWL6000G2_UCODE_API_MIN, | 638 | |
706 | .eeprom_ver = EEPROM_6000G2_EEPROM_VERSION, | 639 | struct iwl_cfg iwl130_bgn_cfg = { |
707 | .eeprom_calib_ver = EEPROM_6000G2_TX_POWER_VERSION, | 640 | .name = "Intel(R) Centrino(R) Wireless-N 130 BGN", |
708 | .ops = &iwl6000g2b_ops, | 641 | IWL_DEVICE_6030, |
709 | .mod_params = &iwlagn_mod_params, | 642 | .ht_params = &iwl6000_ht_params, |
710 | .base_params = &iwl6000_g2_base_params, | 643 | .rx_with_siso_diversity = true, |
711 | .bt_params = &iwl6000_bt_params, | 644 | }; |
712 | .need_dc_calib = true, | 645 | |
713 | .need_temp_offset_calib = true, | 646 | struct iwl_cfg iwl130_bg_cfg = { |
714 | .led_mode = IWL_LED_RF_STATE, | 647 | .name = "Intel(R) Centrino(R) Wireless-N 130 BG", |
715 | .adv_pm = true, | 648 | IWL_DEVICE_6030, |
716 | /* Due to bluetooth, we transmit 2.4 GHz probes only on antenna A */ | 649 | .rx_with_siso_diversity = true, |
717 | .scan_tx_antennas[IEEE80211_BAND_2GHZ] = ANT_A, | ||
718 | }; | 650 | }; |
719 | 651 | ||
720 | /* | 652 | /* |
721 | * "i": Internal configuration, use internal Power Amplifier | 653 | * "i": Internal configuration, use internal Power Amplifier |
722 | */ | 654 | */ |
655 | #define IWL_DEVICE_6000i \ | ||
656 | .fw_name_pre = IWL6000_FW_PRE, \ | ||
657 | .ucode_api_max = IWL6000_UCODE_API_MAX, \ | ||
658 | .ucode_api_min = IWL6000_UCODE_API_MIN, \ | ||
659 | .valid_tx_ant = ANT_BC, /* .cfg overwrite */ \ | ||
660 | .valid_rx_ant = ANT_BC, /* .cfg overwrite */ \ | ||
661 | .eeprom_ver = EEPROM_6000_EEPROM_VERSION, \ | ||
662 | .eeprom_calib_ver = EEPROM_6000_TX_POWER_VERSION, \ | ||
663 | .ops = &iwl6000_ops, \ | ||
664 | .mod_params = &iwlagn_mod_params, \ | ||
665 | .base_params = &iwl6000_base_params, \ | ||
666 | .pa_type = IWL_PA_INTERNAL, \ | ||
667 | .led_mode = IWL_LED_BLINK | ||
668 | |||
723 | struct iwl_cfg iwl6000i_2agn_cfg = { | 669 | struct iwl_cfg iwl6000i_2agn_cfg = { |
724 | .name = "Intel(R) Centrino(R) Advanced-N 6200 AGN", | 670 | .name = "Intel(R) Centrino(R) Advanced-N 6200 AGN", |
725 | .fw_name_pre = IWL6000_FW_PRE, | 671 | IWL_DEVICE_6000i, |
726 | .ucode_api_max = IWL6000_UCODE_API_MAX, | ||
727 | .ucode_api_min = IWL6000_UCODE_API_MIN, | ||
728 | .valid_tx_ant = ANT_BC, /* .cfg overwrite */ | ||
729 | .valid_rx_ant = ANT_BC, /* .cfg overwrite */ | ||
730 | .eeprom_ver = EEPROM_6000_EEPROM_VERSION, | ||
731 | .eeprom_calib_ver = EEPROM_6000_TX_POWER_VERSION, | ||
732 | .ops = &iwl6000_ops, | ||
733 | .mod_params = &iwlagn_mod_params, | ||
734 | .base_params = &iwl6000_base_params, | ||
735 | .ht_params = &iwl6000_ht_params, | 672 | .ht_params = &iwl6000_ht_params, |
736 | .pa_type = IWL_PA_INTERNAL, | ||
737 | .led_mode = IWL_LED_BLINK, | ||
738 | }; | 673 | }; |
739 | 674 | ||
740 | struct iwl_cfg iwl6000i_2abg_cfg = { | 675 | struct iwl_cfg iwl6000i_2abg_cfg = { |
741 | .name = "Intel(R) Centrino(R) Advanced-N 6200 ABG", | 676 | .name = "Intel(R) Centrino(R) Advanced-N 6200 ABG", |
742 | .fw_name_pre = IWL6000_FW_PRE, | 677 | IWL_DEVICE_6000i, |
743 | .ucode_api_max = IWL6000_UCODE_API_MAX, | ||
744 | .ucode_api_min = IWL6000_UCODE_API_MIN, | ||
745 | .valid_tx_ant = ANT_BC, /* .cfg overwrite */ | ||
746 | .valid_rx_ant = ANT_BC, /* .cfg overwrite */ | ||
747 | .eeprom_ver = EEPROM_6000_EEPROM_VERSION, | ||
748 | .eeprom_calib_ver = EEPROM_6000_TX_POWER_VERSION, | ||
749 | .ops = &iwl6000_ops, | ||
750 | .mod_params = &iwlagn_mod_params, | ||
751 | .base_params = &iwl6000_base_params, | ||
752 | .pa_type = IWL_PA_INTERNAL, | ||
753 | .led_mode = IWL_LED_BLINK, | ||
754 | }; | 678 | }; |
755 | 679 | ||
756 | struct iwl_cfg iwl6000i_2bg_cfg = { | 680 | struct iwl_cfg iwl6000i_2bg_cfg = { |
757 | .name = "Intel(R) Centrino(R) Advanced-N 6200 BG", | 681 | .name = "Intel(R) Centrino(R) Advanced-N 6200 BG", |
758 | .fw_name_pre = IWL6000_FW_PRE, | 682 | IWL_DEVICE_6000i, |
759 | .ucode_api_max = IWL6000_UCODE_API_MAX, | 683 | }; |
760 | .ucode_api_min = IWL6000_UCODE_API_MIN, | 684 | |
761 | .valid_tx_ant = ANT_BC, /* .cfg overwrite */ | 685 | #define IWL_DEVICE_6050 \ |
762 | .valid_rx_ant = ANT_BC, /* .cfg overwrite */ | 686 | .fw_name_pre = IWL6050_FW_PRE, \ |
763 | .eeprom_ver = EEPROM_6000_EEPROM_VERSION, | 687 | .ucode_api_max = IWL6050_UCODE_API_MAX, \ |
764 | .eeprom_calib_ver = EEPROM_6000_TX_POWER_VERSION, | 688 | .ucode_api_min = IWL6050_UCODE_API_MIN, \ |
765 | .ops = &iwl6000_ops, | 689 | .ops = &iwl6050_ops, \ |
766 | .mod_params = &iwlagn_mod_params, | 690 | .eeprom_ver = EEPROM_6050_EEPROM_VERSION, \ |
767 | .base_params = &iwl6000_base_params, | 691 | .eeprom_calib_ver = EEPROM_6050_TX_POWER_VERSION, \ |
768 | .pa_type = IWL_PA_INTERNAL, | 692 | .mod_params = &iwlagn_mod_params, \ |
769 | .led_mode = IWL_LED_BLINK, | 693 | .base_params = &iwl6050_base_params, \ |
770 | }; | 694 | .need_dc_calib = true, \ |
695 | .led_mode = IWL_LED_BLINK, \ | ||
696 | .internal_wimax_coex = true | ||
771 | 697 | ||
772 | struct iwl_cfg iwl6050_2agn_cfg = { | 698 | struct iwl_cfg iwl6050_2agn_cfg = { |
773 | .name = "Intel(R) Centrino(R) Advanced-N + WiMAX 6250 AGN", | 699 | .name = "Intel(R) Centrino(R) Advanced-N + WiMAX 6250 AGN", |
774 | .fw_name_pre = IWL6050_FW_PRE, | 700 | IWL_DEVICE_6050, |
775 | .ucode_api_max = IWL6050_UCODE_API_MAX, | ||
776 | .ucode_api_min = IWL6050_UCODE_API_MIN, | ||
777 | .ops = &iwl6050_ops, | ||
778 | .eeprom_ver = EEPROM_6050_EEPROM_VERSION, | ||
779 | .eeprom_calib_ver = EEPROM_6050_TX_POWER_VERSION, | ||
780 | .mod_params = &iwlagn_mod_params, | ||
781 | .base_params = &iwl6050_base_params, | ||
782 | .ht_params = &iwl6000_ht_params, | 701 | .ht_params = &iwl6000_ht_params, |
783 | .need_dc_calib = true, | 702 | }; |
784 | .led_mode = IWL_LED_BLINK, | 703 | |
785 | .internal_wimax_coex = true, | 704 | struct iwl_cfg iwl6050_2abg_cfg = { |
705 | .name = "Intel(R) Centrino(R) Advanced-N + WiMAX 6250 ABG", | ||
706 | IWL_DEVICE_6050, | ||
786 | }; | 707 | }; |
787 | 708 | ||
788 | struct iwl_cfg iwl6150_bgn_cfg = { | 709 | struct iwl_cfg iwl6150_bgn_cfg = { |
@@ -801,21 +722,6 @@ struct iwl_cfg iwl6150_bgn_cfg = { | |||
801 | .internal_wimax_coex = true, | 722 | .internal_wimax_coex = true, |
802 | }; | 723 | }; |
803 | 724 | ||
804 | struct iwl_cfg iwl6050_2abg_cfg = { | ||
805 | .name = "Intel(R) Centrino(R) Advanced-N + WiMAX 6250 ABG", | ||
806 | .fw_name_pre = IWL6050_FW_PRE, | ||
807 | .ucode_api_max = IWL6050_UCODE_API_MAX, | ||
808 | .ucode_api_min = IWL6050_UCODE_API_MIN, | ||
809 | .eeprom_ver = EEPROM_6050_EEPROM_VERSION, | ||
810 | .eeprom_calib_ver = EEPROM_6050_TX_POWER_VERSION, | ||
811 | .ops = &iwl6050_ops, | ||
812 | .mod_params = &iwlagn_mod_params, | ||
813 | .base_params = &iwl6050_base_params, | ||
814 | .need_dc_calib = true, | ||
815 | .led_mode = IWL_LED_BLINK, | ||
816 | .internal_wimax_coex = true, | ||
817 | }; | ||
818 | |||
819 | struct iwl_cfg iwl6000_3agn_cfg = { | 725 | struct iwl_cfg iwl6000_3agn_cfg = { |
820 | .name = "Intel(R) Centrino(R) Ultimate-N 6300 AGN", | 726 | .name = "Intel(R) Centrino(R) Ultimate-N 6300 AGN", |
821 | .fw_name_pre = IWL6000_FW_PRE, | 727 | .fw_name_pre = IWL6000_FW_PRE, |
@@ -831,45 +737,6 @@ struct iwl_cfg iwl6000_3agn_cfg = { | |||
831 | .led_mode = IWL_LED_BLINK, | 737 | .led_mode = IWL_LED_BLINK, |
832 | }; | 738 | }; |
833 | 739 | ||
834 | struct iwl_cfg iwl130_bgn_cfg = { | ||
835 | .name = "Intel(R) Centrino(R) Wireless-N 130 BGN", | ||
836 | .fw_name_pre = IWL6000G2B_FW_PRE, | ||
837 | .ucode_api_max = IWL6000G2_UCODE_API_MAX, | ||
838 | .ucode_api_min = IWL6000G2_UCODE_API_MIN, | ||
839 | .eeprom_ver = EEPROM_6000G2_EEPROM_VERSION, | ||
840 | .eeprom_calib_ver = EEPROM_6000G2_TX_POWER_VERSION, | ||
841 | .ops = &iwl6000g2b_ops, | ||
842 | .mod_params = &iwlagn_mod_params, | ||
843 | .base_params = &iwl6000_g2_base_params, | ||
844 | .bt_params = &iwl6000_bt_params, | ||
845 | .ht_params = &iwl6000_ht_params, | ||
846 | .need_dc_calib = true, | ||
847 | .led_mode = IWL_LED_RF_STATE, | ||
848 | .adv_pm = true, | ||
849 | /* Due to bluetooth, we transmit 2.4 GHz probes only on antenna A */ | ||
850 | .scan_tx_antennas[IEEE80211_BAND_2GHZ] = ANT_A, | ||
851 | .rx_with_siso_diversity = true, | ||
852 | }; | ||
853 | |||
854 | struct iwl_cfg iwl130_bg_cfg = { | ||
855 | .name = "Intel(R) Centrino(R) Wireless-N 130 BG", | ||
856 | .fw_name_pre = IWL6000G2B_FW_PRE, | ||
857 | .ucode_api_max = IWL6000G2_UCODE_API_MAX, | ||
858 | .ucode_api_min = IWL6000G2_UCODE_API_MIN, | ||
859 | .eeprom_ver = EEPROM_6000G2_EEPROM_VERSION, | ||
860 | .eeprom_calib_ver = EEPROM_6000G2_TX_POWER_VERSION, | ||
861 | .ops = &iwl6000g2b_ops, | ||
862 | .mod_params = &iwlagn_mod_params, | ||
863 | .base_params = &iwl6000_g2_base_params, | ||
864 | .bt_params = &iwl6000_bt_params, | ||
865 | .need_dc_calib = true, | ||
866 | .led_mode = IWL_LED_RF_STATE, | ||
867 | .adv_pm = true, | ||
868 | /* Due to bluetooth, we transmit 2.4 GHz probes only on antenna A */ | ||
869 | .scan_tx_antennas[IEEE80211_BAND_2GHZ] = ANT_A, | ||
870 | .rx_with_siso_diversity = true, | ||
871 | }; | ||
872 | |||
873 | MODULE_FIRMWARE(IWL6000_MODULE_FIRMWARE(IWL6000_UCODE_API_MAX)); | 740 | MODULE_FIRMWARE(IWL6000_MODULE_FIRMWARE(IWL6000_UCODE_API_MAX)); |
874 | MODULE_FIRMWARE(IWL6050_MODULE_FIRMWARE(IWL6050_UCODE_API_MAX)); | 741 | MODULE_FIRMWARE(IWL6050_MODULE_FIRMWARE(IWL6050_UCODE_API_MAX)); |
875 | MODULE_FIRMWARE(IWL6000G2A_MODULE_FIRMWARE(IWL6000G2_UCODE_API_MAX)); | 742 | MODULE_FIRMWARE(IWL6000G2A_MODULE_FIRMWARE(IWL6000G2_UCODE_API_MAX)); |