aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/iwlwifi/iwl-5000.c
diff options
context:
space:
mode:
authorRon Rindjunsky <ron.rindjunsky@intel.com>2008-06-09 15:54:35 -0400
committerJohn W. Linville <linville@tuxdriver.com>2008-06-14 12:18:01 -0400
commit4f85f5b39208e755a93f63296ec1224d14121b6c (patch)
tree6a60946481b392c973ca40b0088e7a1c97870150 /drivers/net/wireless/iwlwifi/iwl-5000.c
parenta19d7292dc7f1c7d8704a353f51c7f1529de953b (diff)
iwlwifi: removing IWL4965_HT config
This patch removes CONFIG_IWL4965_HT #ifdefs for iwl 4965 and 5000. 11n feature is stable in those drivers and its mode of operation is determined in mac80211, so this dependency is not needed any more. Signed-off-by: Ron Rindjunsky <ron.rindjunsky@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/iwlwifi/iwl-5000.c')
-rw-r--r--drivers/net/wireless/iwlwifi/iwl-5000.c44
1 files changed, 20 insertions, 24 deletions
diff --git a/drivers/net/wireless/iwlwifi/iwl-5000.c b/drivers/net/wireless/iwlwifi/iwl-5000.c
index 7e525ad45135..65484779bd3d 100644
--- a/drivers/net/wireless/iwlwifi/iwl-5000.c
+++ b/drivers/net/wireless/iwlwifi/iwl-5000.c
@@ -1136,12 +1136,10 @@ static void iwl5000_rx_reply_tx(struct iwl_priv *priv,
1136 struct ieee80211_tx_info *info; 1136 struct ieee80211_tx_info *info;
1137 struct iwl5000_tx_resp *tx_resp = (void *)&pkt->u.raw[0]; 1137 struct iwl5000_tx_resp *tx_resp = (void *)&pkt->u.raw[0];
1138 u32 status = le16_to_cpu(tx_resp->status.status); 1138 u32 status = le16_to_cpu(tx_resp->status.status);
1139#ifdef CONFIG_IWL4965_HT
1140 int tid = MAX_TID_COUNT, sta_id = IWL_INVALID_STATION; 1139 int tid = MAX_TID_COUNT, sta_id = IWL_INVALID_STATION;
1141 u16 fc; 1140 u16 fc;
1142 struct ieee80211_hdr *hdr; 1141 struct ieee80211_hdr *hdr;
1143 u8 *qc = NULL; 1142 u8 *qc = NULL;
1144#endif
1145 1143
1146 if ((index >= txq->q.n_bd) || (iwl_queue_used(&txq->q, index) == 0)) { 1144 if ((index >= txq->q.n_bd) || (iwl_queue_used(&txq->q, index) == 0)) {
1147 IWL_ERROR("Read index for DMA queue txq_id (%d) index %d " 1145 IWL_ERROR("Read index for DMA queue txq_id (%d) index %d "
@@ -1154,7 +1152,6 @@ static void iwl5000_rx_reply_tx(struct iwl_priv *priv,
1154 info = IEEE80211_SKB_CB(txq->txb[txq->q.read_ptr].skb[0]); 1152 info = IEEE80211_SKB_CB(txq->txb[txq->q.read_ptr].skb[0]);
1155 memset(&info->status, 0, sizeof(info->status)); 1153 memset(&info->status, 0, sizeof(info->status));
1156 1154
1157#ifdef CONFIG_IWL4965_HT
1158 hdr = iwl_tx_queue_get_hdr(priv, txq_id, index); 1155 hdr = iwl_tx_queue_get_hdr(priv, txq_id, index);
1159 fc = le16_to_cpu(hdr->frame_control); 1156 fc = le16_to_cpu(hdr->frame_control);
1160 if (ieee80211_is_qos_data(fc)) { 1157 if (ieee80211_is_qos_data(fc)) {
@@ -1205,32 +1202,31 @@ static void iwl5000_rx_reply_tx(struct iwl_priv *priv,
1205 iwl_txq_check_empty(priv, sta_id, tid, txq_id); 1202 iwl_txq_check_empty(priv, sta_id, tid, txq_id);
1206 } 1203 }
1207 } else { 1204 } else {
1208#endif /* CONFIG_IWL4965_HT */ 1205 info->status.retry_count = tx_resp->failure_frame;
1209 1206 info->flags =
1210 info->status.retry_count = tx_resp->failure_frame; 1207 iwl_is_tx_success(status) ? IEEE80211_TX_STAT_ACK : 0;
1211 info->flags = iwl_is_tx_success(status) ? IEEE80211_TX_STAT_ACK : 0; 1208 iwl4965_hwrate_to_tx_control(priv,
1212 iwl4965_hwrate_to_tx_control(priv, le32_to_cpu(tx_resp->rate_n_flags), 1209 le32_to_cpu(tx_resp->rate_n_flags),
1213 info); 1210 info);
1214 1211
1215 IWL_DEBUG_TX("Tx queue %d Status %s (0x%08x) rate_n_flags 0x%x " 1212 IWL_DEBUG_TX("Tx queue %d Status %s (0x%08x) rate_n_flags "
1216 "retries %d\n", txq_id, iwl_get_tx_fail_reason(status), 1213 "0x%x retries %d\n", txq_id,
1217 status, le32_to_cpu(tx_resp->rate_n_flags), 1214 iwl_get_tx_fail_reason(status),
1218 tx_resp->failure_frame); 1215 status, le32_to_cpu(tx_resp->rate_n_flags),
1219 1216 tx_resp->failure_frame);
1220 IWL_DEBUG_TX_REPLY("Tx queue reclaim %d\n", index); 1217
1221#ifdef CONFIG_IWL4965_HT 1218 IWL_DEBUG_TX_REPLY("Tx queue reclaim %d\n", index);
1222 if (index != -1) { 1219 if (index != -1) {
1223 int freed = iwl_tx_queue_reclaim(priv, txq_id, index); 1220 int freed = iwl_tx_queue_reclaim(priv, txq_id, index);
1224 if (tid != MAX_TID_COUNT) 1221 if (tid != MAX_TID_COUNT)
1225 priv->stations[sta_id].tid[tid].tfds_in_queue -= freed; 1222 priv->stations[sta_id].tid[tid].tfds_in_queue -= freed;
1226 if (iwl_queue_space(&txq->q) > txq->q.low_mark && 1223 if (iwl_queue_space(&txq->q) > txq->q.low_mark &&
1227 (txq_id >= 0) && priv->mac80211_registered) 1224 (txq_id >= 0) && priv->mac80211_registered)
1228 ieee80211_wake_queue(priv->hw, txq_id); 1225 ieee80211_wake_queue(priv->hw, txq_id);
1229 if (tid != MAX_TID_COUNT) 1226 if (tid != MAX_TID_COUNT)
1230 iwl_txq_check_empty(priv, sta_id, tid, txq_id); 1227 iwl_txq_check_empty(priv, sta_id, tid, txq_id);
1228 }
1231 } 1229 }
1232 }
1233#endif /* CONFIG_IWL4965_HT */
1234 1230
1235 if (iwl_check_bits(status, TX_ABORT_REQUIRED_MSK)) 1231 if (iwl_check_bits(status, TX_ABORT_REQUIRED_MSK))
1236 IWL_ERROR("TODO: Implement Tx ABORT REQUIRED!!!\n"); 1232 IWL_ERROR("TODO: Implement Tx ABORT REQUIRED!!!\n");