Lines Matching defs:rx_ring
14613 qwx_dp_rxdma_buf_ring_free(struct qwx_softc *sc, struct dp_rxdma_ring *rx_ring)
14617 for (i = 0; i < rx_ring->bufs_max; i++) {
14618 struct qwx_rx_data *rx_data = &rx_ring->rx_data[i];
14633 free(rx_ring->rx_data, M_DEVBUF,
14634 sizeof(rx_ring->rx_data[0]) * rx_ring->bufs_max);
14635 rx_ring->rx_data = NULL;
14636 rx_ring->bufs_max = 0;
14637 memset(rx_ring->freemap, 0xff, sizeof(rx_ring->freemap));
14644 struct dp_rxdma_ring *rx_ring = &dp->rx_refill_buf_ring;
14647 qwx_dp_rxdma_buf_ring_free(sc, rx_ring);
14649 rx_ring = &dp->rxdma_mon_buf_ring;
14650 qwx_dp_rxdma_buf_ring_free(sc, rx_ring);
14653 rx_ring = &dp->rx_mon_status_refill_ring[i];
14654 qwx_dp_rxdma_buf_ring_free(sc, rx_ring);
14687 qwx_next_free_rxbuf_idx(struct dp_rxdma_ring *rx_ring)
14691 for (i = 0; i < nitems(rx_ring->freemap); i++) {
14692 idx = ffs(rx_ring->freemap[i]);
14702 struct dp_rxdma_ring *rx_ring, int req_entries,
14715 req_entries = MIN(req_entries, rx_ring->bufs_max);
14717 srng = &sc->hal.srng_list[rx_ring->refill_buf_ring.ring_id];
14724 if (!req_entries && (num_free > (rx_ring->bufs_max * 3) / 4))
14746 idx = qwx_next_free_rxbuf_idx(rx_ring);
14750 rx_data = &rx_ring->rx_data[idx];
14776 clrbit(rx_ring->freemap, idx);
14803 struct dp_rxdma_ring *rx_ring, uint32_t ringtype)
14808 num_entries = rx_ring->refill_buf_ring.size /
14811 KASSERT(rx_ring->rx_data == NULL);
14812 rx_ring->rx_data = mallocarray(num_entries, sizeof(rx_ring->rx_data[0]),
14814 if (rx_ring->rx_data == NULL)
14817 rx_ring->bufs_max = num_entries;
14818 memset(rx_ring->freemap, 0xff, sizeof(rx_ring->freemap));
14820 return qwx_dp_rxbufs_replenish(sc, dp->mac_id, rx_ring, num_entries,
14828 struct dp_rxdma_ring *rx_ring;
14834 rx_ring = &dp->rx_refill_buf_ring;
14835 ret = qwx_dp_rxdma_ring_buf_setup(sc, rx_ring, HAL_RXDMA_BUF);
14840 rx_ring = &dp->rxdma_mon_buf_ring;
14841 ret = qwx_dp_rxdma_ring_buf_setup(sc, rx_ring,
14848 rx_ring = &dp->rx_mon_status_refill_ring[i];
14849 ret = qwx_dp_rxdma_ring_buf_setup(sc, rx_ring,
15833 struct dp_rxdma_ring *rx_ring = &dp->rx_refill_buf_ring;
15840 if (buf_id >= rx_ring->bufs_max || isset(rx_ring->freemap, buf_id))
15843 rx_data = &rx_ring->rx_data[buf_id];
15847 setbit(rx_ring->freemap, buf_id);
15887 struct dp_rxdma_ring *rx_ring;
15973 rx_ring = &sc->pdev_dp.rx_refill_buf_ring;
15975 qwx_dp_rxbufs_replenish(sc, i, rx_ring, n_bufs_reaped[i],
16131 struct dp_rxdma_ring *rx_ring;
16167 rx_ring = &sc->pdev_dp.rx_refill_buf_ring;
16168 if (idx >= rx_ring->bufs_max || isset(rx_ring->freemap, idx))
16171 rx_data = &rx_ring->rx_data[idx];
16175 setbit(rx_ring->freemap, idx);
16206 rx_ring = &sc->pdev_dp.rx_refill_buf_ring;
16207 qwx_dp_rxbufs_replenish(sc, i, rx_ring, num_buffs_reaped[i],
16718 struct dp_rxdma_ring *rx_ring;
16754 rx_ring = &pdev_dp->rx_refill_buf_ring;
16755 if (idx >= rx_ring->bufs_max || isset(rx_ring->freemap, idx))
16758 rx_data = &rx_ring->rx_data[idx];
16762 setbit(rx_ring->freemap, idx);
16828 rx_ring = &sc->pdev_dp.rx_refill_buf_ring;
16830 qwx_dp_rxbufs_replenish(sc, i, rx_ring, num_buffs_reaped[i],
16839 struct dp_rxdma_ring *rx_ring, int *buf_idx)
16858 idx = qwx_next_free_rxbuf_idx(rx_ring);
16862 rx_data = &rx_ring->rx_data[idx];
16883 clrbit(rx_ring->freemap, idx);
16897 struct dp_rxdma_ring *rx_ring;
16915 rx_ring = &dp->rx_mon_status_refill_ring[srng_id];
16917 srng = &sc->hal.srng_list[rx_ring->refill_buf_ring.ring_id];
16933 if (buf_idx >= rx_ring->bufs_max ||
16934 isset(rx_ring->freemap, buf_idx)) {
16939 rx_data = &rx_ring->rx_data[buf_idx];
16961 setbit(rx_ring->freemap, buf_idx);
16974 m = qwx_dp_rx_alloc_mon_status_buf(sc, rx_ring, &buf_idx);
16982 rx_data = &rx_ring->rx_data[buf_idx];
17135 struct dp_rxdma_ring *rx_ring;
17154 rx_ring = &sc->pdev_dp.rx_refill_buf_ring;
17180 if (idx >= rx_ring->bufs_max ||
17181 isset(rx_ring->freemap, idx))
17184 rx_data = &rx_ring->rx_data[idx];
17189 setbit(rx_ring->freemap, idx);
17203 qwx_dp_rxbufs_replenish(sc, mac_id, rx_ring, num_buf_freed,