Lines Matching refs:rx
63 if (sc->rx.rxlink) in ath_rx_buf_link()
64 *sc->rx.rxlink = bf->bf_daddr; in ath_rx_buf_link()
68 sc->rx.rxlink = &ds->ds_link; in ath_rx_buf_link()
74 if (sc->rx.buf_hold) in ath_rx_buf_relink()
75 ath_rx_buf_link(sc, sc->rx.buf_hold, flush); in ath_rx_buf_relink()
77 sc->rx.buf_hold = bf; in ath_rx_buf_relink()
84 sc->rx.defant = antenna; in ath_setdefantenna()
85 sc->rx.rxotherant = 0; in ath_setdefantenna()
118 rx_edma = &sc->rx.rx_edma[qtype]; in ath_rx_edma_buf_link()
122 bf = list_first_entry(&sc->rx.rxbuf, struct ath_rxbuf, list); in ath_rx_edma_buf_link()
144 if (list_empty(&sc->rx.rxbuf)) { in ath_rx_addbuffer_edma()
149 list_for_each_entry_safe(bf, tbf, &sc->rx.rxbuf, list) in ath_rx_addbuffer_edma()
162 rx_edma = &sc->rx.rx_edma[qtype]; in ath_rx_remove_buffer()
167 list_add_tail(&bf->list, &sc->rx.rxbuf); in ath_rx_remove_buffer()
180 list_for_each_entry(bf, &sc->rx.rxbuf, list) { in ath_rx_edma_cleanup()
210 ath_rx_edma_init_queue(&sc->rx.rx_edma[ATH9K_RX_QUEUE_LP], in ath_rx_edma_init()
212 ath_rx_edma_init_queue(&sc->rx.rx_edma[ATH9K_RX_QUEUE_HP], in ath_rx_edma_init()
220 INIT_LIST_HEAD(&sc->rx.rxbuf); in ath_rx_edma_init()
246 list_add_tail(&bf->list, &sc->rx.rxbuf); in ath_rx_edma_init()
291 error = ath_descdma_setup(sc, &sc->rx.rxdma, &sc->rx.rxbuf, in ath_rx_init()
300 list_for_each_entry(bf, &sc->rx.rxbuf, list) { in ath_rx_init()
323 sc->rx.rxlink = NULL; in ath_rx_init()
343 list_for_each_entry(bf, &sc->rx.rxbuf, list) { in ath_rx_cleanup()
452 if (list_empty(&sc->rx.rxbuf)) in ath_startrecv()
455 sc->rx.buf_hold = NULL; in ath_startrecv()
456 sc->rx.rxlink = NULL; in ath_startrecv()
457 list_for_each_entry_safe(bf, tbf, &sc->rx.rxbuf, list) { in ath_startrecv()
462 if (list_empty(&sc->rx.rxbuf)) in ath_startrecv()
465 bf = list_first_entry(&sc->rx.rxbuf, struct ath_rxbuf, list); in ath_startrecv()
495 sc->rx.rxlink = NULL; in ath_stoprecv()
634 struct ath_rx_edma *rx_edma = &sc->rx.rx_edma[qtype]; in ath_edma_get_buffers()
662 list_add_tail(&bf->list, &sc->rx.rxbuf); in ath_edma_get_buffers()
671 list_add_tail(&bf->list, &sc->rx.rxbuf); in ath_edma_get_buffers()
706 if (list_empty(&sc->rx.rxbuf)) { in ath_get_next_rx_buf()
707 sc->rx.rxlink = NULL; in ath_get_next_rx_buf()
711 bf = list_first_entry(&sc->rx.rxbuf, struct ath_rxbuf, list); in ath_get_next_rx_buf()
712 if (bf == sc->rx.buf_hold) in ath_get_next_rx_buf()
735 if (list_is_last(&bf->list, &sc->rx.rxbuf)) { in ath_get_next_rx_buf()
736 sc->rx.rxlink = NULL; in ath_get_next_rx_buf()
820 bool discard_current = sc->rx.discard_next; in ath9k_rx_skb_preprocess()
829 sc->rx.discard_next = false; in ath9k_rx_skb_preprocess()
930 sc->rx.num_pkts++; in ath9k_rx_skb_preprocess()
936 sc->rx.discard_next = rx_stats->rs_more; in ath9k_rx_skb_preprocess()
964 if (sc->rx.defant != rs->rs_antenna) { in ath9k_antenna_check()
965 if (++sc->rx.rxotherant >= 3) in ath9k_antenna_check()
968 sc->rx.rxotherant = 0; in ath9k_antenna_check()
985 rxs->ampdu_reference = sc->rx.ampdu_ref; in ath9k_apply_ampdu_details()
989 sc->rx.ampdu_ref++; in ath9k_apply_ampdu_details()
1045 if (sc->rx.frag) in ath_rx_tasklet()
1046 hdr_skb = sc->rx.frag; in ath_rx_tasklet()
1101 if (sc->rx.frag) { in ath_rx_tasklet()
1103 dev_kfree_skb_any(sc->rx.frag); in ath_rx_tasklet()
1108 sc->rx.frag = skb; in ath_rx_tasklet()
1112 if (sc->rx.frag) { in ath_rx_tasklet()
1121 sc->rx.frag = NULL; in ath_rx_tasklet()
1151 if (sc->rx.frag) { in ath_rx_tasklet()
1152 dev_kfree_skb_any(sc->rx.frag); in ath_rx_tasklet()
1153 sc->rx.frag = NULL; in ath_rx_tasklet()
1156 list_add_tail(&bf->list, &sc->rx.rxbuf); in ath_rx_tasklet()