Lines Matching defs:ntrb
856 slot, xp->ring.ntrb - xp->free_trbs));
861 slot, xp->ring.ntrb - xp->free_trbs));
866 slot, xp->ring.ntrb - xp->free_trbs));
874 if (trb_idx < 0 || trb_idx >= xp->ring.ntrb) {
876 trb_idx, xp->ring.ntrb - 1);
918 ((xx->index + xp->ring.ntrb) - xx->ntrb) % (xp->ring.ntrb - 1);
928 if (++trb0_idx == xp->ring.ntrb)
1045 ((xx->index + xp->ring.ntrb) - xx->ntrb) % (xp->ring.ntrb - 1);
1052 if (trb0_idx++ == (xp->ring.ntrb - 1))
1065 trb0_idx = xp->ring.ntrb - 2;
1116 if (trb_idx < 0 || trb_idx >= sc->sc_cmd_ring.ntrb) {
1118 trb_idx, sc->sc_cmd_ring.ntrb - 1);
1211 int ntrb, i;
1217 printf("%s: xfer=%p done (idx=%d, ntrb=%zd)\n", __func__,
1218 xfer, xx->index, xx->ntrb);
1225 for (ntrb = 0, i = xx->index; ntrb < xx->ntrb; ntrb++, i--) {
1228 i = (xp->ring.ntrb - 1);
1230 xp->free_trbs += xx->ntrb;
1233 xx->ntrb = 0;
1618 xp->free_trbs = xp->ring.ntrb;
1804 xhci_ring_alloc(struct xhci_softc *sc, struct xhci_ring *ring, size_t ntrb,
1810 size = ntrb * sizeof(struct xhci_trb);
1817 ring->ntrb = ntrb;
1835 size = ring->ntrb * sizeof(struct xhci_trb);
1847 struct xhci_trb *trb = &ring->trbs[ring->ntrb - 1];
1864 KASSERT(ring->index < ring->ntrb);
1875 if (ring->index == ring->ntrb) {
1888 KASSERT(ring->index < ring->ntrb);
1892 lnk = &ring->trbs[ring->ntrb - 1];
1893 trb = &ring->trbs[ring->ntrb - 2];
1918 if (ring->index == (ring->ntrb - 1)) {
1945 xx->ntrb += 1;
1950 xx->ntrb += 1;
3041 int s, i, ntrb, zerotd = 0;
3049 ntrb = howmany(xfer->length, XHCI_TRB_MAXSIZE);
3054 ntrb = howmany(xfer->length - len, XHCI_TRB_MAXSIZE) + 1;
3063 if (xp->free_trbs < (ntrb + zerotd))
3071 trb0 = xhci_xfer_get_trb(sc, xfer, &toggle, (ntrb == 1));
3075 flags |= (ntrb == 1) ? XHCI_TRB_IOC : XHCI_TRB_CHAIN;
3091 for (i = ntrb - 1; i > 0; i--) {
3187 int s, i, j, ntrb = xfer->nframes;
3198 if (xx->ntrb > 0)
3211 for (i = 0, ntrb = 0; i < xfer->nframes; i++) {
3213 ntrb += howmany(xfer->frlengths[i], XHCI_TRB_MAXSIZE);
3218 ntrb++;
3223 if (xp->free_trbs < ntrb)
3234 ntrb = howmany(xfer->frlengths[i], XHCI_TRB_MAXSIZE);
3239 ntrb++;
3243 KASSERT(ntrb < 3);
3249 trb = xhci_xfer_get_trb(sc, xfer, &toggle, (ntrb == 1));
3251 DPRINTFN(4, ("%s:%d: ring %p trb0_idx %lu ntrb %d paddr %llx "
3253 &xp->ring.trbs[0], (trb - &xp->ring.trbs[0]), ntrb, paddr,
3265 flags |= (ntrb == 1) ? XHCI_TRB_IOC : XHCI_TRB_CHAIN;
3285 for (j = ntrb - 1; j > 0; j--) {
3294 DPRINTFN(3, ("%s:%d: ring %p trb0_idx %lu ntrb %d "
3296 &xp->ring.trbs[0], (trb - &xp->ring.trbs[0]), ntrb,