Lines Matching refs:tq

1034 	struct bwn_pio_txqueue *tq;
1047 tq = bwn_pio_select(mac, M_WME_GETAC(m));
1048 if (tq->tq_free == 0 || pktlen > tq->tq_size ||
1049 pktlen > (tq->tq_size - tq->tq_used))
1085 struct bwn_pio_txqueue *tq;
1098 tq = bwn_pio_select(mac, M_WME_GETAC(m));
1099 KASSERT(!TAILQ_EMPTY(&tq->tq_pktlist), ("%s: fail", __func__));
1100 tp = TAILQ_FIRST(&tq->tq_pktlist);
1104 error = bwn_set_txhdr(mac, ni, m, &txhdr, BWN_PIO_COOKIE(tq, tp));
1110 TAILQ_REMOVE(&tq->tq_pktlist, tp, tp_list);
1111 tq->tq_used += roundup(m->m_pkthdr.len + BWN_HDRSIZE(mac), 4);
1112 tq->tq_free--;
1132 ctl32 = bwn_pio_write_multi_4(mac, tq,
1133 (BWN_PIO_READ_4(mac, tq, BWN_PIO8_TXCTL) |
1137 ctl32 = bwn_pio_write_multi_4(mac, tq, ctl32,
1139 bwn_pio_write_4(mac, tq, BWN_PIO_TXCTL,
1142 ctl16 = bwn_pio_write_multi_2(mac, tq,
1143 (bwn_pio_read_2(mac, tq, BWN_PIO_TXCTL) |
1146 ctl16 = bwn_pio_write_mbuf_2(mac, tq, ctl16, m);
1147 BWN_PIO_WRITE_2(mac, tq, BWN_PIO_TXCTL,
2641 bwn_pio_set_txqueue(struct bwn_mac *mac, struct bwn_pio_txqueue *tq,
2648 tq->tq_base = bwn_pio_idx2base(mac, index) + BWN_PIO_TXQOFFSET(mac);
2649 tq->tq_index = index;
2651 tq->tq_free = BWN_PIO_MAX_TXPACKETS;
2653 tq->tq_size = 1920;
2655 tq->tq_size = bwn_pio_read_2(mac, tq, BWN_PIO_TXQBUFSIZE);
2656 tq->tq_size -= 80;
2659 TAILQ_INIT(&tq->tq_pktlist);
2660 for (i = 0; i < N(tq->tq_pkts); i++) {
2661 tp = &(tq->tq_pkts[i]);
2663 tp->tp_queue = tq;
2664 TAILQ_INSERT_TAIL(&tq->tq_pktlist, tp, tp_list);
2714 bwn_destroy_pioqueue_tx(struct bwn_pio_txqueue *tq)
2716 if (tq == NULL)
2718 bwn_pio_cancel_tx_packets(tq);
2729 bwn_pio_read_2(struct bwn_mac *mac, struct bwn_pio_txqueue *tq,
2733 return (BWN_READ_2(mac, tq->tq_base + offset));
2759 bwn_pio_cancel_tx_packets(struct bwn_pio_txqueue *tq)
2764 for (i = 0; i < N(tq->tq_pkts); i++) {
2765 tp = &(tq->tq_pkts[i]);
6201 struct bwn_pio_txqueue *tq;
6207 tq = bwn_pio_parse_cookie(mac, status->cookie, &tp);
6208 if (tq == NULL)
6211 tq->tq_used -= roundup(tp->tp_m->m_pkthdr.len + BWN_HDRSIZE(mac), 4);
6212 tq->tq_free++;
6224 TAILQ_INSERT_TAIL(&tq->tq_pktlist, tp, tp_list);
6752 bwn_pio_write_multi_4(struct bwn_mac *mac, struct bwn_pio_txqueue *tq,
6761 bwn_pio_write_4(mac, tq, BWN_PIO8_TXCTL, ctl);
6763 bus_write_multi_4(sc->sc_mem_res, tq->tq_base + BWN_PIO8_TXDATA,
6781 bwn_pio_write_4(mac, tq, BWN_PIO8_TXCTL, ctl);
6782 bwn_pio_write_4(mac, tq, BWN_PIO8_TXDATA, value);
6789 bwn_pio_write_4(struct bwn_mac *mac, struct bwn_pio_txqueue *tq,
6793 BWN_WRITE_4(mac, tq->tq_base + offset, value);
6797 bwn_pio_write_multi_2(struct bwn_mac *mac, struct bwn_pio_txqueue *tq,
6804 BWN_PIO_WRITE_2(mac, tq, BWN_PIO_TXCTL, ctl);
6806 bus_write_multi_2(sc->sc_mem_res, tq->tq_base + BWN_PIO_TXDATA,
6810 BWN_PIO_WRITE_2(mac, tq, BWN_PIO_TXCTL, ctl);
6811 BWN_PIO_WRITE_2(mac, tq, BWN_PIO_TXDATA, data[len - 1]);
6818 bwn_pio_write_mbuf_2(struct bwn_mac *mac, struct bwn_pio_txqueue *tq,
6827 BWN_PIO_WRITE_2(mac, tq, BWN_PIO_TXCTL, ctl);
6836 BWN_PIO_WRITE_2(mac, tq, BWN_PIO_TXDATA, data);
6843 BWN_PIO_WRITE_2(mac, tq, BWN_PIO_TXCTL, ctl);
6844 BWN_PIO_WRITE_2(mac, tq, BWN_PIO_TXDATA, data);
6910 struct bwn_pio_txqueue *tq = NULL;
6915 tq = &pio->wme[WME_AC_BK];
6918 tq = &pio->wme[WME_AC_BE];
6921 tq = &pio->wme[WME_AC_VI];
6924 tq = &pio->wme[WME_AC_VO];
6927 tq = &pio->mcast;
6930 KASSERT(tq != NULL, ("%s:%d: fail", __func__, __LINE__));
6931 if (tq == NULL)
6934 KASSERT(index < N(tq->tq_pkts), ("%s:%d: fail", __func__, __LINE__));
6935 if (index >= N(tq->tq_pkts))
6937 *pack = &tq->tq_pkts[index];
6939 return (tq);