iwlagn: remove pointless return variables
[pandora-kernel.git] / drivers / net / wireless / iwlwifi / iwl-agn-rs.c
index d03b473..97abc10 100644 (file)
@@ -115,13 +115,18 @@ const struct iwl_rate_info iwl_rates[IWL_RATE_COUNT] = {
        /* FIXME:RS:          ^^    should be INV (legacy) */
 };
 
+static inline u8 rs_extract_rate(u32 rate_n_flags)
+{
+       return (u8)(rate_n_flags & RATE_MCS_RATE_MSK);
+}
+
 static int iwl_hwrate_to_plcp_idx(u32 rate_n_flags)
 {
        int idx = 0;
 
        /* HT rate format */
        if (rate_n_flags & RATE_MCS_HT_MSK) {
-               idx = (rate_n_flags & 0xff);
+               idx = rs_extract_rate(rate_n_flags);
 
                if (idx >= IWL_RATE_MIMO3_6M_PLCP)
                        idx = idx - IWL_RATE_MIMO3_6M_PLCP;
@@ -138,7 +143,8 @@ static int iwl_hwrate_to_plcp_idx(u32 rate_n_flags)
        /* legacy rate format, search for match in table */
        } else {
                for (idx = 0; idx < ARRAY_SIZE(iwl_rates); idx++)
-                       if (iwl_rates[idx].plcp == (rate_n_flags & 0xFF))
+                       if (iwl_rates[idx].plcp ==
+                                       rs_extract_rate(rate_n_flags))
                                return idx;
        }
 
@@ -239,11 +245,6 @@ static const struct iwl_rate_mcs_info iwl_rate_mcs[IWL_RATE_COUNT] = {
 
 #define MCS_INDEX_PER_STREAM   (8)
 
-static inline u8 rs_extract_rate(u32 rate_n_flags)
-{
-       return (u8)(rate_n_flags & 0xFF);
-}
-
 static void rs_rate_scale_clear_window(struct iwl_rate_scale_data *window)
 {
        window->data = 0;
@@ -2770,16 +2771,13 @@ static void rs_get_rate(void *priv_r, struct ieee80211_sta *sta, void *priv_sta,
 static void *rs_alloc_sta(void *priv_rate, struct ieee80211_sta *sta,
                          gfp_t gfp)
 {
-       struct iwl_lq_sta *lq_sta;
        struct iwl_station_priv *sta_priv = (struct iwl_station_priv *) sta->drv_priv;
        struct iwl_priv *priv;
 
        priv = (struct iwl_priv *)priv_rate;
        IWL_DEBUG_RATE(priv, "create station rate scale window\n");
 
-       lq_sta = &sta_priv->lq_sta;
-
-       return lq_sta;
+       return &sta_priv->lq_sta;
 }
 
 /*
@@ -2912,7 +2910,8 @@ static void rs_fill_link_cmd(struct iwl_priv *priv,
                ant_toggle_cnt = 1;
                repeat_rate = IWL_NUMBER_TRY;
        } else {
-               repeat_rate = IWL_HT_NUMBER_TRY;
+               repeat_rate = min(IWL_HT_NUMBER_TRY,
+                                 LINK_QUAL_AGG_DISABLE_START_DEF - 1);
        }
 
        lq_cmd->general_params.mimo_delimiter =
@@ -3257,7 +3256,6 @@ static ssize_t rs_sta_dbgfs_rate_scale_data_read(struct file *file,
 {
        char buff[120];
        int desc = 0;
-       ssize_t ret;
 
        struct iwl_lq_sta *lq_sta = file->private_data;
        struct iwl_priv *priv;
@@ -3274,8 +3272,7 @@ static ssize_t rs_sta_dbgfs_rate_scale_data_read(struct file *file,
                                "Bit Rate= %d Mb/s\n",
                                iwl_rates[lq_sta->last_txrate_idx].ieee >> 1);
 
-       ret = simple_read_from_buffer(user_buf, count, ppos, buff, desc);
-       return ret;
+       return simple_read_from_buffer(user_buf, count, ppos, buff, desc);
 }
 
 static const struct file_operations rs_sta_dbgfs_rate_scale_data_ops = {