aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/iwlwifi/iwl-6000.c
diff options
context:
space:
mode:
authorWey-Yi Guy <wey-yi.w.guy@intel.com>2010-11-15 16:43:07 -0500
committerWey-Yi Guy <wey-yi.w.guy@intel.com>2010-11-24 19:57:55 -0500
commitdbbf1755b09eef8ff6dd21c8dafe1606f051ce12 (patch)
treebf0b1c6786b879255e991be1052a37991d634eb7 /drivers/net/wireless/iwlwifi/iwl-6000.c
parent4b7384f936817489a4172b9c5d946f63f479ca15 (diff)
iwlwifi: use antenna information in EEPROM
The valid tx/rx antenna information is part of EEPROM, so use it to configure the device. For few cases, the EEPROM did not reflect the correct antenna, but it is too late to modify the EEPROM, so overwrite with .cfg parameters Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
Diffstat (limited to 'drivers/net/wireless/iwlwifi/iwl-6000.c')
-rw-r--r--drivers/net/wireless/iwlwifi/iwl-6000.c42
1 files changed, 6 insertions, 36 deletions
diff --git a/drivers/net/wireless/iwlwifi/iwl-6000.c b/drivers/net/wireless/iwlwifi/iwl-6000.c
index 93e3fe92f389..a3a055f7fd43 100644
--- a/drivers/net/wireless/iwlwifi/iwl-6000.c
+++ b/drivers/net/wireless/iwlwifi/iwl-6000.c
@@ -557,8 +557,6 @@ struct iwl_cfg iwl6000g2a_2agn_cfg = {
557 .fw_name_pre = IWL6000G2A_FW_PRE, 557 .fw_name_pre = IWL6000G2A_FW_PRE,
558 .ucode_api_max = IWL6000G2_UCODE_API_MAX, 558 .ucode_api_max = IWL6000G2_UCODE_API_MAX,
559 .ucode_api_min = IWL6000G2_UCODE_API_MIN, 559 .ucode_api_min = IWL6000G2_UCODE_API_MIN,
560 .valid_tx_ant = ANT_AB,
561 .valid_rx_ant = ANT_AB,
562 .eeprom_ver = EEPROM_6000G2_EEPROM_VERSION, 560 .eeprom_ver = EEPROM_6000G2_EEPROM_VERSION,
563 .eeprom_calib_ver = EEPROM_6000G2_TX_POWER_VERSION, 561 .eeprom_calib_ver = EEPROM_6000G2_TX_POWER_VERSION,
564 .ops = &iwl6000_ops, 562 .ops = &iwl6000_ops,
@@ -575,8 +573,6 @@ struct iwl_cfg iwl6000g2a_2abg_cfg = {
575 .fw_name_pre = IWL6000G2A_FW_PRE, 573 .fw_name_pre = IWL6000G2A_FW_PRE,
576 .ucode_api_max = IWL6000G2_UCODE_API_MAX, 574 .ucode_api_max = IWL6000G2_UCODE_API_MAX,
577 .ucode_api_min = IWL6000G2_UCODE_API_MIN, 575 .ucode_api_min = IWL6000G2_UCODE_API_MIN,
578 .valid_tx_ant = ANT_AB,
579 .valid_rx_ant = ANT_AB,
580 .eeprom_ver = EEPROM_6000G2_EEPROM_VERSION, 576 .eeprom_ver = EEPROM_6000G2_EEPROM_VERSION,
581 .eeprom_calib_ver = EEPROM_6000G2_TX_POWER_VERSION, 577 .eeprom_calib_ver = EEPROM_6000G2_TX_POWER_VERSION,
582 .ops = &iwl6000_ops, 578 .ops = &iwl6000_ops,
@@ -592,8 +588,6 @@ struct iwl_cfg iwl6000g2a_2bg_cfg = {
592 .fw_name_pre = IWL6000G2A_FW_PRE, 588 .fw_name_pre = IWL6000G2A_FW_PRE,
593 .ucode_api_max = IWL6000G2_UCODE_API_MAX, 589 .ucode_api_max = IWL6000G2_UCODE_API_MAX,
594 .ucode_api_min = IWL6000G2_UCODE_API_MIN, 590 .ucode_api_min = IWL6000G2_UCODE_API_MIN,
595 .valid_tx_ant = ANT_AB,
596 .valid_rx_ant = ANT_AB,
597 .eeprom_ver = EEPROM_6000G2_EEPROM_VERSION, 591 .eeprom_ver = EEPROM_6000G2_EEPROM_VERSION,
598 .eeprom_calib_ver = EEPROM_6000G2_TX_POWER_VERSION, 592 .eeprom_calib_ver = EEPROM_6000G2_TX_POWER_VERSION,
599 .ops = &iwl6000_ops, 593 .ops = &iwl6000_ops,
@@ -609,8 +603,6 @@ struct iwl_cfg iwl6000g2b_2agn_cfg = {
609 .fw_name_pre = IWL6000G2B_FW_PRE, 603 .fw_name_pre = IWL6000G2B_FW_PRE,
610 .ucode_api_max = IWL6000G2_UCODE_API_MAX, 604 .ucode_api_max = IWL6000G2_UCODE_API_MAX,
611 .ucode_api_min = IWL6000G2_UCODE_API_MIN, 605 .ucode_api_min = IWL6000G2_UCODE_API_MIN,
612 .valid_tx_ant = ANT_AB,
613 .valid_rx_ant = ANT_AB,
614 .eeprom_ver = EEPROM_6000G2_EEPROM_VERSION, 606 .eeprom_ver = EEPROM_6000G2_EEPROM_VERSION,
615 .eeprom_calib_ver = EEPROM_6000G2_TX_POWER_VERSION, 607 .eeprom_calib_ver = EEPROM_6000G2_TX_POWER_VERSION,
616 .ops = &iwl6000g2b_ops, 608 .ops = &iwl6000g2b_ops,
@@ -631,8 +623,6 @@ struct iwl_cfg iwl6000g2b_2abg_cfg = {
631 .fw_name_pre = IWL6000G2B_FW_PRE, 623 .fw_name_pre = IWL6000G2B_FW_PRE,
632 .ucode_api_max = IWL6000G2_UCODE_API_MAX, 624 .ucode_api_max = IWL6000G2_UCODE_API_MAX,
633 .ucode_api_min = IWL6000G2_UCODE_API_MIN, 625 .ucode_api_min = IWL6000G2_UCODE_API_MIN,
634 .valid_tx_ant = ANT_AB,
635 .valid_rx_ant = ANT_AB,
636 .eeprom_ver = EEPROM_6000G2_EEPROM_VERSION, 626 .eeprom_ver = EEPROM_6000G2_EEPROM_VERSION,
637 .eeprom_calib_ver = EEPROM_6000G2_TX_POWER_VERSION, 627 .eeprom_calib_ver = EEPROM_6000G2_TX_POWER_VERSION,
638 .ops = &iwl6000g2b_ops, 628 .ops = &iwl6000g2b_ops,
@@ -652,8 +642,6 @@ struct iwl_cfg iwl6000g2b_2bgn_cfg = {
652 .fw_name_pre = IWL6000G2B_FW_PRE, 642 .fw_name_pre = IWL6000G2B_FW_PRE,
653 .ucode_api_max = IWL6000G2_UCODE_API_MAX, 643 .ucode_api_max = IWL6000G2_UCODE_API_MAX,
654 .ucode_api_min = IWL6000G2_UCODE_API_MIN, 644 .ucode_api_min = IWL6000G2_UCODE_API_MIN,
655 .valid_tx_ant = ANT_AB,
656 .valid_rx_ant = ANT_AB,
657 .eeprom_ver = EEPROM_6000G2_EEPROM_VERSION, 645 .eeprom_ver = EEPROM_6000G2_EEPROM_VERSION,
658 .eeprom_calib_ver = EEPROM_6000G2_TX_POWER_VERSION, 646 .eeprom_calib_ver = EEPROM_6000G2_TX_POWER_VERSION,
659 .ops = &iwl6000g2b_ops, 647 .ops = &iwl6000g2b_ops,
@@ -674,8 +662,6 @@ struct iwl_cfg iwl6000g2b_2bg_cfg = {
674 .fw_name_pre = IWL6000G2B_FW_PRE, 662 .fw_name_pre = IWL6000G2B_FW_PRE,
675 .ucode_api_max = IWL6000G2_UCODE_API_MAX, 663 .ucode_api_max = IWL6000G2_UCODE_API_MAX,
676 .ucode_api_min = IWL6000G2_UCODE_API_MIN, 664 .ucode_api_min = IWL6000G2_UCODE_API_MIN,
677 .valid_tx_ant = ANT_AB,
678 .valid_rx_ant = ANT_AB,
679 .eeprom_ver = EEPROM_6000G2_EEPROM_VERSION, 665 .eeprom_ver = EEPROM_6000G2_EEPROM_VERSION,
680 .eeprom_calib_ver = EEPROM_6000G2_TX_POWER_VERSION, 666 .eeprom_calib_ver = EEPROM_6000G2_TX_POWER_VERSION,
681 .ops = &iwl6000g2b_ops, 667 .ops = &iwl6000g2b_ops,
@@ -695,8 +681,6 @@ struct iwl_cfg iwl6000g2b_bgn_cfg = {
695 .fw_name_pre = IWL6000G2B_FW_PRE, 681 .fw_name_pre = IWL6000G2B_FW_PRE,
696 .ucode_api_max = IWL6000G2_UCODE_API_MAX, 682 .ucode_api_max = IWL6000G2_UCODE_API_MAX,
697 .ucode_api_min = IWL6000G2_UCODE_API_MIN, 683 .ucode_api_min = IWL6000G2_UCODE_API_MIN,
698 .valid_tx_ant = ANT_A,
699 .valid_rx_ant = ANT_AB,
700 .eeprom_ver = EEPROM_6000G2_EEPROM_VERSION, 684 .eeprom_ver = EEPROM_6000G2_EEPROM_VERSION,
701 .eeprom_calib_ver = EEPROM_6000G2_TX_POWER_VERSION, 685 .eeprom_calib_ver = EEPROM_6000G2_TX_POWER_VERSION,
702 .ops = &iwl6000g2b_ops, 686 .ops = &iwl6000g2b_ops,
@@ -717,8 +701,6 @@ struct iwl_cfg iwl6000g2b_bg_cfg = {
717 .fw_name_pre = IWL6000G2B_FW_PRE, 701 .fw_name_pre = IWL6000G2B_FW_PRE,
718 .ucode_api_max = IWL6000G2_UCODE_API_MAX, 702 .ucode_api_max = IWL6000G2_UCODE_API_MAX,
719 .ucode_api_min = IWL6000G2_UCODE_API_MIN, 703 .ucode_api_min = IWL6000G2_UCODE_API_MIN,
720 .valid_tx_ant = ANT_A,
721 .valid_rx_ant = ANT_AB,
722 .eeprom_ver = EEPROM_6000G2_EEPROM_VERSION, 704 .eeprom_ver = EEPROM_6000G2_EEPROM_VERSION,
723 .eeprom_calib_ver = EEPROM_6000G2_TX_POWER_VERSION, 705 .eeprom_calib_ver = EEPROM_6000G2_TX_POWER_VERSION,
724 .ops = &iwl6000g2b_ops, 706 .ops = &iwl6000g2b_ops,
@@ -741,8 +723,8 @@ struct iwl_cfg iwl6000i_2agn_cfg = {
741 .fw_name_pre = IWL6000_FW_PRE, 723 .fw_name_pre = IWL6000_FW_PRE,
742 .ucode_api_max = IWL6000_UCODE_API_MAX, 724 .ucode_api_max = IWL6000_UCODE_API_MAX,
743 .ucode_api_min = IWL6000_UCODE_API_MIN, 725 .ucode_api_min = IWL6000_UCODE_API_MIN,
744 .valid_tx_ant = ANT_BC, 726 .valid_tx_ant = ANT_BC, /* .cfg overwrite */
745 .valid_rx_ant = ANT_BC, 727 .valid_rx_ant = ANT_BC, /* .cfg overwrite */
746 .eeprom_ver = EEPROM_6000_EEPROM_VERSION, 728 .eeprom_ver = EEPROM_6000_EEPROM_VERSION,
747 .eeprom_calib_ver = EEPROM_6000_TX_POWER_VERSION, 729 .eeprom_calib_ver = EEPROM_6000_TX_POWER_VERSION,
748 .ops = &iwl6000_ops, 730 .ops = &iwl6000_ops,
@@ -758,8 +740,8 @@ struct iwl_cfg iwl6000i_2abg_cfg = {
758 .fw_name_pre = IWL6000_FW_PRE, 740 .fw_name_pre = IWL6000_FW_PRE,
759 .ucode_api_max = IWL6000_UCODE_API_MAX, 741 .ucode_api_max = IWL6000_UCODE_API_MAX,
760 .ucode_api_min = IWL6000_UCODE_API_MIN, 742 .ucode_api_min = IWL6000_UCODE_API_MIN,
761 .valid_tx_ant = ANT_BC, 743 .valid_tx_ant = ANT_BC, /* .cfg overwrite */
762 .valid_rx_ant = ANT_BC, 744 .valid_rx_ant = ANT_BC, /* .cfg overwrite */
763 .eeprom_ver = EEPROM_6000_EEPROM_VERSION, 745 .eeprom_ver = EEPROM_6000_EEPROM_VERSION,
764 .eeprom_calib_ver = EEPROM_6000_TX_POWER_VERSION, 746 .eeprom_calib_ver = EEPROM_6000_TX_POWER_VERSION,
765 .ops = &iwl6000_ops, 747 .ops = &iwl6000_ops,
@@ -774,8 +756,8 @@ struct iwl_cfg iwl6000i_2bg_cfg = {
774 .fw_name_pre = IWL6000_FW_PRE, 756 .fw_name_pre = IWL6000_FW_PRE,
775 .ucode_api_max = IWL6000_UCODE_API_MAX, 757 .ucode_api_max = IWL6000_UCODE_API_MAX,
776 .ucode_api_min = IWL6000_UCODE_API_MIN, 758 .ucode_api_min = IWL6000_UCODE_API_MIN,
777 .valid_tx_ant = ANT_BC, 759 .valid_tx_ant = ANT_BC, /* .cfg overwrite */
778 .valid_rx_ant = ANT_BC, 760 .valid_rx_ant = ANT_BC, /* .cfg overwrite */
779 .eeprom_ver = EEPROM_6000_EEPROM_VERSION, 761 .eeprom_ver = EEPROM_6000_EEPROM_VERSION,
780 .eeprom_calib_ver = EEPROM_6000_TX_POWER_VERSION, 762 .eeprom_calib_ver = EEPROM_6000_TX_POWER_VERSION,
781 .ops = &iwl6000_ops, 763 .ops = &iwl6000_ops,
@@ -790,8 +772,6 @@ struct iwl_cfg iwl6050_2agn_cfg = {
790 .fw_name_pre = IWL6050_FW_PRE, 772 .fw_name_pre = IWL6050_FW_PRE,
791 .ucode_api_max = IWL6050_UCODE_API_MAX, 773 .ucode_api_max = IWL6050_UCODE_API_MAX,
792 .ucode_api_min = IWL6050_UCODE_API_MIN, 774 .ucode_api_min = IWL6050_UCODE_API_MIN,
793 .valid_tx_ant = ANT_AB,
794 .valid_rx_ant = ANT_AB,
795 .ops = &iwl6050_ops, 775 .ops = &iwl6050_ops,
796 .eeprom_ver = EEPROM_6050_EEPROM_VERSION, 776 .eeprom_ver = EEPROM_6050_EEPROM_VERSION,
797 .eeprom_calib_ver = EEPROM_6050_TX_POWER_VERSION, 777 .eeprom_calib_ver = EEPROM_6050_TX_POWER_VERSION,
@@ -807,8 +787,6 @@ struct iwl_cfg iwl6050g2_bgn_cfg = {
807 .fw_name_pre = IWL6050_FW_PRE, 787 .fw_name_pre = IWL6050_FW_PRE,
808 .ucode_api_max = IWL6050_UCODE_API_MAX, 788 .ucode_api_max = IWL6050_UCODE_API_MAX,
809 .ucode_api_min = IWL6050_UCODE_API_MIN, 789 .ucode_api_min = IWL6050_UCODE_API_MIN,
810 .valid_tx_ant = ANT_A,
811 .valid_rx_ant = ANT_AB,
812 .eeprom_ver = EEPROM_6050G2_EEPROM_VERSION, 790 .eeprom_ver = EEPROM_6050G2_EEPROM_VERSION,
813 .eeprom_calib_ver = EEPROM_6050G2_TX_POWER_VERSION, 791 .eeprom_calib_ver = EEPROM_6050G2_TX_POWER_VERSION,
814 .ops = &iwl6050g2_ops, 792 .ops = &iwl6050g2_ops,
@@ -824,8 +802,6 @@ struct iwl_cfg iwl6050_2abg_cfg = {
824 .fw_name_pre = IWL6050_FW_PRE, 802 .fw_name_pre = IWL6050_FW_PRE,
825 .ucode_api_max = IWL6050_UCODE_API_MAX, 803 .ucode_api_max = IWL6050_UCODE_API_MAX,
826 .ucode_api_min = IWL6050_UCODE_API_MIN, 804 .ucode_api_min = IWL6050_UCODE_API_MIN,
827 .valid_tx_ant = ANT_AB,
828 .valid_rx_ant = ANT_AB,
829 .eeprom_ver = EEPROM_6050_EEPROM_VERSION, 805 .eeprom_ver = EEPROM_6050_EEPROM_VERSION,
830 .eeprom_calib_ver = EEPROM_6050_TX_POWER_VERSION, 806 .eeprom_calib_ver = EEPROM_6050_TX_POWER_VERSION,
831 .ops = &iwl6050_ops, 807 .ops = &iwl6050_ops,
@@ -840,8 +816,6 @@ struct iwl_cfg iwl6000_3agn_cfg = {
840 .fw_name_pre = IWL6000_FW_PRE, 816 .fw_name_pre = IWL6000_FW_PRE,
841 .ucode_api_max = IWL6000_UCODE_API_MAX, 817 .ucode_api_max = IWL6000_UCODE_API_MAX,
842 .ucode_api_min = IWL6000_UCODE_API_MIN, 818 .ucode_api_min = IWL6000_UCODE_API_MIN,
843 .valid_tx_ant = ANT_ABC,
844 .valid_rx_ant = ANT_ABC,
845 .eeprom_ver = EEPROM_6000_EEPROM_VERSION, 819 .eeprom_ver = EEPROM_6000_EEPROM_VERSION,
846 .eeprom_calib_ver = EEPROM_6000_TX_POWER_VERSION, 820 .eeprom_calib_ver = EEPROM_6000_TX_POWER_VERSION,
847 .ops = &iwl6000_ops, 821 .ops = &iwl6000_ops,
@@ -857,8 +831,6 @@ struct iwl_cfg iwl130_bgn_cfg = {
857 .fw_name_pre = IWL6000G2B_FW_PRE, 831 .fw_name_pre = IWL6000G2B_FW_PRE,
858 .ucode_api_max = IWL6000G2_UCODE_API_MAX, 832 .ucode_api_max = IWL6000G2_UCODE_API_MAX,
859 .ucode_api_min = IWL6000G2_UCODE_API_MIN, 833 .ucode_api_min = IWL6000G2_UCODE_API_MIN,
860 .valid_tx_ant = ANT_A,
861 .valid_rx_ant = ANT_A,
862 .eeprom_ver = EEPROM_6000G2_EEPROM_VERSION, 834 .eeprom_ver = EEPROM_6000G2_EEPROM_VERSION,
863 .eeprom_calib_ver = EEPROM_6000G2_TX_POWER_VERSION, 835 .eeprom_calib_ver = EEPROM_6000G2_TX_POWER_VERSION,
864 .ops = &iwl6000g2b_ops, 836 .ops = &iwl6000g2b_ops,
@@ -878,8 +850,6 @@ struct iwl_cfg iwl130_bg_cfg = {
878 .fw_name_pre = IWL6000G2B_FW_PRE, 850 .fw_name_pre = IWL6000G2B_FW_PRE,
879 .ucode_api_max = IWL6000G2_UCODE_API_MAX, 851 .ucode_api_max = IWL6000G2_UCODE_API_MAX,
880 .ucode_api_min = IWL6000G2_UCODE_API_MIN, 852 .ucode_api_min = IWL6000G2_UCODE_API_MIN,
881 .valid_tx_ant = ANT_A,
882 .valid_rx_ant = ANT_A,
883 .eeprom_ver = EEPROM_6000G2_EEPROM_VERSION, 853 .eeprom_ver = EEPROM_6000G2_EEPROM_VERSION,
884 .eeprom_calib_ver = EEPROM_6000G2_TX_POWER_VERSION, 854 .eeprom_calib_ver = EEPROM_6000G2_TX_POWER_VERSION,
885 .ops = &iwl6000g2b_ops, 855 .ops = &iwl6000g2b_ops,