Lines Matching refs:pidx
272 nm_txq->pidx = nm_txq->cidx = 0;
361 j /= 8; /* driver pidx to hardware pidx */
416 /* Wait for hw pidx to catch up ... */
417 while (be16toh(nm_txq->pidx) != spg->pidx)
421 while (spg->pidx != spg->cidx)
487 #define NMIDXDIFF(q, idx) IDXDIFF((q)->pidx, (q)->idx, (q)->sidx)
495 MPASS(nm_txq->pidx != nm_txq->dbidx);
517 __func__, nm_txq->doorbells, n, nm_txq->pidx, nm_txq));
538 nm_txq->dbidx = nm_txq->pidx;
554 struct fw_eth_tx_pkts_wr *wr = (void *)&nm_txq->desc[nm_txq->pidx];
565 wr = (void *)&nm_txq->desc[nm_txq->pidx];
608 nm_txq->pidx += npkt_to_ndesc(n);
609 MPASS(nm_txq->pidx <= nm_txq->sidx);
610 if (__predict_false(nm_txq->pidx == nm_txq->sidx)) {
616 nm_txq->pidx = 0;
624 nm_txq->equeqidx = nm_txq->pidx;
625 nm_txq->equiqidx = nm_txq->pidx;
634 nm_txq->equeqidx = nm_txq->pidx;
635 nm_txq->equiqidx = nm_txq->pidx;
638 nm_txq->equeqidx = nm_txq->pidx;
648 /* How many contiguous free descriptors starting at pidx */
653 if (nm_txq->cidx > nm_txq->pidx)
654 return (nm_txq->cidx - nm_txq->pidx - 1);
656 return (nm_txq->sidx - nm_txq->pidx);
658 return (nm_txq->sidx - nm_txq->pidx - 1);
708 * to kring->rhead. Note that the driver's pidx moves independent of
709 * netmap's kring->nr_hwcur (pidx counts descriptors and the relation
737 /* Send n packets and update nm_txq->pidx and kring->nr_hwcur */
743 MPASS(nm_txq->dbidx == nm_txq->pidx);
854 * The freelist's cidx/pidx drives netmap's rx cidx/pidx. So