ath10k: simplify Rx loop
Since htt_rx_mpdu_status isn't used anymore (instead attention flags are used) simplify the loop. Signed-off-by: Michal Kazior <michal.kazior@tieto.com> Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
This commit is contained in:
parent
9aa505d20b
commit
d540690d3a
|
@ -1197,8 +1197,7 @@ static void ath10k_htt_rx_handler(struct ath10k_htt *htt,
|
||||||
int fw_desc_len;
|
int fw_desc_len;
|
||||||
u8 *fw_desc;
|
u8 *fw_desc;
|
||||||
bool channel_set;
|
bool channel_set;
|
||||||
int i, j;
|
int i, ret, mpdu_count = 0;
|
||||||
int ret;
|
|
||||||
|
|
||||||
lockdep_assert_held(&htt->rx_ring.lock);
|
lockdep_assert_held(&htt->rx_ring.lock);
|
||||||
|
|
||||||
|
@ -1237,14 +1236,15 @@ static void ath10k_htt_rx_handler(struct ath10k_htt *htt,
|
||||||
(sizeof(struct htt_rx_indication_mpdu_range) *
|
(sizeof(struct htt_rx_indication_mpdu_range) *
|
||||||
num_mpdu_ranges));
|
num_mpdu_ranges));
|
||||||
|
|
||||||
for (i = 0; i < num_mpdu_ranges; i++) {
|
for (i = 0; i < num_mpdu_ranges; i++)
|
||||||
for (j = 0; j < mpdu_ranges[i].mpdu_count; j++) {
|
mpdu_count += mpdu_ranges[i].mpdu_count;
|
||||||
|
|
||||||
|
while (mpdu_count--) {
|
||||||
attention = 0;
|
attention = 0;
|
||||||
__skb_queue_head_init(&amsdu);
|
__skb_queue_head_init(&amsdu);
|
||||||
ret = ath10k_htt_rx_amsdu_pop(htt, &fw_desc,
|
ret = ath10k_htt_rx_amsdu_pop(htt, &fw_desc,
|
||||||
&fw_desc_len, &amsdu,
|
&fw_desc_len, &amsdu,
|
||||||
&attention);
|
&attention);
|
||||||
|
|
||||||
if (ret < 0) {
|
if (ret < 0) {
|
||||||
ath10k_warn(ar, "failed to pop amsdu from htt rx ring %d\n",
|
ath10k_warn(ar, "failed to pop amsdu from htt rx ring %d\n",
|
||||||
ret);
|
ret);
|
||||||
|
@ -1253,8 +1253,7 @@ static void ath10k_htt_rx_handler(struct ath10k_htt *htt,
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!ath10k_htt_rx_amsdu_allowed(htt, skb_peek(&amsdu),
|
if (!ath10k_htt_rx_amsdu_allowed(htt, skb_peek(&amsdu),
|
||||||
channel_set,
|
channel_set, attention)) {
|
||||||
attention)) {
|
|
||||||
__skb_queue_purge(&amsdu);
|
__skb_queue_purge(&amsdu);
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
@ -1282,7 +1281,6 @@ static void ath10k_htt_rx_handler(struct ath10k_htt *htt,
|
||||||
ath10k_htt_rx_msdu(htt, rx_status,
|
ath10k_htt_rx_msdu(htt, rx_status,
|
||||||
__skb_dequeue(&amsdu));
|
__skb_dequeue(&amsdu));
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
tasklet_schedule(&htt->rx_replenish_task);
|
tasklet_schedule(&htt->rx_replenish_task);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue