ath10k: remove supported chain mask
authorRajkumar Manoharan <rmanohar@qti.qualcomm.com>
Tue, 27 Oct 2015 12:21:11 +0000 (17:51 +0530)
committerKalle Valo <kvalo@qca.qualcomm.com>
Thu, 29 Oct 2015 11:00:34 +0000 (13:00 +0200)
Removing supported chainmask fields as it can be always derived
from num_rf_chains.

Signed-off-by: Rajkumar Manoharan <rmanohar@qti.qualcomm.com>
Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
drivers/net/wireless/ath/ath10k/core.h
drivers/net/wireless/ath/ath10k/mac.c
drivers/net/wireless/ath/ath10k/wmi.c

index 501ac568c9a6109e104cb1225c4e391ce96655bf..4a230158990241f1a6ab27659f9a2817791c85d8 100644 (file)
@@ -745,8 +745,6 @@ struct ath10k {
        int num_started_vdevs;
 
        /* Protected by conf-mutex */
-       u8 supp_tx_chainmask;
-       u8 supp_rx_chainmask;
        u8 cfg_tx_chainmask;
        u8 cfg_rx_chainmask;
 
index 769d7d83077045f693bc6a49167280bf6508d863..352e80bc3f167396d0d0824685ba4065f17910c5 100644 (file)
@@ -3736,13 +3736,8 @@ static int ath10k_get_antenna(struct ieee80211_hw *hw, u32 *tx_ant, u32 *rx_ant)
 
        mutex_lock(&ar->conf_mutex);
 
-       if (ar->cfg_tx_chainmask) {
-               *tx_ant = ar->cfg_tx_chainmask;
-               *rx_ant = ar->cfg_rx_chainmask;
-       } else {
-               *tx_ant = ar->supp_tx_chainmask;
-               *rx_ant = ar->supp_rx_chainmask;
-       }
+       *tx_ant = ar->cfg_tx_chainmask;
+       *rx_ant = ar->cfg_rx_chainmask;
 
        mutex_unlock(&ar->conf_mutex);
 
@@ -3884,9 +3879,7 @@ static int ath10k_start(struct ieee80211_hw *hw)
                }
        }
 
-       if (ar->cfg_tx_chainmask)
-               __ath10k_set_antenna(ar, ar->cfg_tx_chainmask,
-                                    ar->cfg_rx_chainmask);
+       __ath10k_set_antenna(ar, ar->cfg_tx_chainmask, ar->cfg_rx_chainmask);
 
        /*
         * By default FW set ARP frames ac to voice (6). In that case ARP
@@ -7169,8 +7162,8 @@ int ath10k_mac_register(struct ath10k *ar)
                BIT(NL80211_IFTYPE_AP) |
                BIT(NL80211_IFTYPE_MESH_POINT);
 
-       ar->hw->wiphy->available_antennas_rx = ar->supp_rx_chainmask;
-       ar->hw->wiphy->available_antennas_tx = ar->supp_tx_chainmask;
+       ar->hw->wiphy->available_antennas_rx = ar->cfg_rx_chainmask;
+       ar->hw->wiphy->available_antennas_tx = ar->cfg_tx_chainmask;
 
        if (!test_bit(ATH10K_FW_FEATURE_NO_P2P, ar->fw_features))
                ar->hw->wiphy->interface_modes |=
index 8e05e7350ee07a17718db1c5495ada98ba633bb8..7569db0f69b5eed8f69d65c3e881f56bf54129b4 100644 (file)
@@ -4460,8 +4460,10 @@ static void ath10k_wmi_event_service_ready_work(struct work_struct *work)
                ar->num_rf_chains = ar->max_spatial_stream;
        }
 
-       ar->supp_tx_chainmask = (1 << ar->num_rf_chains) - 1;
-       ar->supp_rx_chainmask = (1 << ar->num_rf_chains) - 1;
+       if (!ar->cfg_tx_chainmask) {
+               ar->cfg_tx_chainmask = (1 << ar->num_rf_chains) - 1;
+               ar->cfg_rx_chainmask = (1 << ar->num_rf_chains) - 1;
+       }
 
        if (strlen(ar->hw->wiphy->fw_version) == 0) {
                snprintf(ar->hw->wiphy->fw_version,