| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (c) 2008-2009 Atheros Communications Inc. | 2 * Copyright (c) 2008-2009 Atheros Communications Inc. |
| 3 * | 3 * |
| 4 * Permission to use, copy, modify, and/or distribute this software for any | 4 * Permission to use, copy, modify, and/or distribute this software for any |
| 5 * purpose with or without fee is hereby granted, provided that the above | 5 * purpose with or without fee is hereby granted, provided that the above |
| 6 * copyright notice and this permission notice appear in all copies. | 6 * copyright notice and this permission notice appear in all copies. |
| 7 * | 7 * |
| 8 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES | 8 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES |
| 9 * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF | 9 * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF |
| 10 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR | 10 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR |
| (...skipping 211 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 222 if ((ads->ds_txstatus9 & AR_TxDone) == 0) | 222 if ((ads->ds_txstatus9 & AR_TxDone) == 0) |
| 223 return -EINPROGRESS; | 223 return -EINPROGRESS; |
| 224 | 224 |
| 225 ts->ts_seqnum = MS(ads->ds_txstatus9, AR_SeqNum); | 225 ts->ts_seqnum = MS(ads->ds_txstatus9, AR_SeqNum); |
| 226 ts->ts_tstamp = ads->AR_SendTimestamp; | 226 ts->ts_tstamp = ads->AR_SendTimestamp; |
| 227 ts->ts_status = 0; | 227 ts->ts_status = 0; |
| 228 ts->ts_flags = 0; | 228 ts->ts_flags = 0; |
| 229 | 229 |
| 230 if (ads->ds_txstatus1 & AR_FrmXmitOK) | 230 if (ads->ds_txstatus1 & AR_FrmXmitOK) |
| 231 ts->ts_status |= ATH9K_TX_ACKED; | 231 ts->ts_status |= ATH9K_TX_ACKED; |
| 232 » if (ads->ds_txstatus1 & AR_ExcessiveRetries) | 232 » else { |
| 233 » » ts->ts_status |= ATH9K_TXERR_XRETRY; | 233 » » if (ads->ds_txstatus1 & AR_ExcessiveRetries) |
| 234 » if (ads->ds_txstatus1 & AR_Filtered) | 234 » » » ts->ts_status |= ATH9K_TXERR_XRETRY; |
| 235 » » ts->ts_status |= ATH9K_TXERR_FILT; | 235 » » if (ads->ds_txstatus1 & AR_Filtered) |
| 236 » if (ads->ds_txstatus1 & AR_FIFOUnderrun) { | 236 » » » ts->ts_status |= ATH9K_TXERR_FILT; |
| 237 » » ts->ts_status |= ATH9K_TXERR_FIFO; | 237 » » if (ads->ds_txstatus1 & AR_FIFOUnderrun) { |
| 238 » » ath9k_hw_updatetxtriglevel(ah, true); | 238 » » » ts->ts_status |= ATH9K_TXERR_FIFO; |
| 239 » » » ath9k_hw_updatetxtriglevel(ah, true); |
| 240 » » } |
| 239 } | 241 } |
| 240 if (ads->ds_txstatus9 & AR_TxOpExceeded) | 242 if (ads->ds_txstatus9 & AR_TxOpExceeded) |
| 241 ts->ts_status |= ATH9K_TXERR_XTXOP; | 243 ts->ts_status |= ATH9K_TXERR_XTXOP; |
| 242 if (ads->ds_txstatus1 & AR_TxTimerExpired) | 244 if (ads->ds_txstatus1 & AR_TxTimerExpired) |
| 243 ts->ts_status |= ATH9K_TXERR_TIMER_EXPIRED; | 245 ts->ts_status |= ATH9K_TXERR_TIMER_EXPIRED; |
| 244 | 246 |
| 245 if (ads->ds_txstatus1 & AR_DescCfgErr) | 247 if (ads->ds_txstatus1 & AR_DescCfgErr) |
| 246 ts->ts_flags |= ATH9K_TX_DESC_CFG_ERR; | 248 ts->ts_flags |= ATH9K_TX_DESC_CFG_ERR; |
| 247 if (ads->ds_txstatus1 & AR_TxDataUnderrun) { | 249 if (ads->ds_txstatus1 & AR_TxDataUnderrun) { |
| 248 ts->ts_flags |= ATH9K_TX_DATA_UNDERRUN; | 250 ts->ts_flags |= ATH9K_TX_DATA_UNDERRUN; |
| (...skipping 223 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 472 ops->proc_txdesc = ar9002_hw_proc_txdesc; | 474 ops->proc_txdesc = ar9002_hw_proc_txdesc; |
| 473 ops->set11n_txdesc = ar9002_hw_set11n_txdesc; | 475 ops->set11n_txdesc = ar9002_hw_set11n_txdesc; |
| 474 ops->set11n_ratescenario = ar9002_hw_set11n_ratescenario; | 476 ops->set11n_ratescenario = ar9002_hw_set11n_ratescenario; |
| 475 ops->set11n_aggr_first = ar9002_hw_set11n_aggr_first; | 477 ops->set11n_aggr_first = ar9002_hw_set11n_aggr_first; |
| 476 ops->set11n_aggr_middle = ar9002_hw_set11n_aggr_middle; | 478 ops->set11n_aggr_middle = ar9002_hw_set11n_aggr_middle; |
| 477 ops->set11n_aggr_last = ar9002_hw_set11n_aggr_last; | 479 ops->set11n_aggr_last = ar9002_hw_set11n_aggr_last; |
| 478 ops->clr11n_aggr = ar9002_hw_clr11n_aggr; | 480 ops->clr11n_aggr = ar9002_hw_clr11n_aggr; |
| 479 ops->set11n_burstduration = ar9002_hw_set11n_burstduration; | 481 ops->set11n_burstduration = ar9002_hw_set11n_burstduration; |
| 480 ops->set11n_virtualmorefrag = ar9002_hw_set11n_virtualmorefrag; | 482 ops->set11n_virtualmorefrag = ar9002_hw_set11n_virtualmorefrag; |
| 481 } | 483 } |
| OLD | NEW |