16 #include <linux/export.h>
21 static void ar9003_hw_rx_enable(
struct ath_hw *
hw)
65 checksum = (
u16) (((checksum & 0xffff) + (checksum >> 16)) & 0xffff);
169 static void ar9003_hw_set_desc_link(
void *ds,
u32 ds_link)
175 ads->
ctl10 |= ar9003_calc_ptr_chksum(ads);
178 static bool ar9003_hw_get_isr(
struct ath_hw *ah,
enum ath9k_int *masked)
187 if (ath9k_hw_mci_is_enabled(ah))
192 if (async_cause & async_mask) {
203 if (!isr && !sync_cause && !async_cause)
230 isr &= ~AR_ISR_BCNMISC;
237 if (isr == 0xffffffff) {
244 if (ah->
config.rx_intr_mitigation)
248 if (ah->
config.tx_intr_mitigation)
292 isr &= ~AR_ISR_GENTMR;
313 ath9k_debug_sync_cause(common, sync_cause);
322 "received PCI FATAL interrupt\n");
326 "received PCI PERR interrupt\n");
339 "AR_INTR_SYNC_LOCAL_TIMEOUT\n");
348 static int ar9003_hw_proc_txdesc(
struct ath_hw *ah,
void *ds,
364 ath_dbg(ath9k_hw_common(ah), XMIT,
365 "Tx Descriptor error %x\n", ads->
ds_info);
366 memset(ads, 0,
sizeof(*ads));
423 memset(ads, 0,
sizeof(*ads));
434 ops->
get_isr = ar9003_hw_get_isr;
568 ath_dbg(ath9k_hw_common(ah), XMIT,
569 "TS Start 0x%x End 0x%x Virt %p, Size %d\n",