tx.c (8be98d2f2a0a262f8bf8a0bc1fdf522b3c7aab17) tx.c (fb5f6a0e8063b7a84d6d44ef353846ccd7708d2e)
1/*
2 * Atheros CARL9170 driver
3 *
4 * 802.11 xmit & status routines
5 *
6 * Copyright 2008, Johannes Berg <johannes@sipsolutions.net>
7 * Copyright 2009, 2010, Christian Lamparter <chunkeey@googlemail.com>
8 *

--- 261 unchanged lines hidden (view full) ---

270 txinfo = container_of((void *) arinfo, struct ieee80211_tx_info,
271 rate_driver_data);
272 skb = container_of((void *) txinfo, struct sk_buff, cb);
273
274 ar = arinfo->ar;
275 if (WARN_ON_ONCE(!ar))
276 return;
277
1/*
2 * Atheros CARL9170 driver
3 *
4 * 802.11 xmit & status routines
5 *
6 * Copyright 2008, Johannes Berg <johannes@sipsolutions.net>
7 * Copyright 2009, 2010, Christian Lamparter <chunkeey@googlemail.com>
8 *

--- 261 unchanged lines hidden (view full) ---

270 txinfo = container_of((void *) arinfo, struct ieee80211_tx_info,
271 rate_driver_data);
272 skb = container_of((void *) txinfo, struct sk_buff, cb);
273
274 ar = arinfo->ar;
275 if (WARN_ON_ONCE(!ar))
276 return;
277
278 BUILD_BUG_ON(
279 offsetof(struct ieee80211_tx_info, status.ack_signal) != 20);
278 /*
279 * This does not call ieee80211_tx_info_clear_status() because
280 * carl9170_tx_fill_rateinfo() has filled the rate information
281 * before we get to this point.
282 */
283 memset_after(&txinfo->status, 0, rates);
280
284
281 memset(&txinfo->status.ack_signal, 0,
282 sizeof(struct ieee80211_tx_info) -
283 offsetof(struct ieee80211_tx_info, status.ack_signal));
284
285 if (atomic_read(&ar->tx_total_queued))
286 ar->tx_schedule = true;
287
288 if (txinfo->flags & IEEE80211_TX_CTL_AMPDU) {
289 if (!atomic_read(&ar->tx_ampdu_upload))
290 ar->tx_ampdu_schedule = true;
291
292 if (txinfo->flags & IEEE80211_TX_STAT_AMPDU) {

--- 1423 unchanged lines hidden ---
285 if (atomic_read(&ar->tx_total_queued))
286 ar->tx_schedule = true;
287
288 if (txinfo->flags & IEEE80211_TX_CTL_AMPDU) {
289 if (!atomic_read(&ar->tx_ampdu_upload))
290 ar->tx_ampdu_schedule = true;
291
292 if (txinfo->flags & IEEE80211_TX_STAT_AMPDU) {

--- 1423 unchanged lines hidden ---