Lines Matching refs:tx

356 	mutex_init(&vrp->tx.lock, NULL, MUTEX_DRIVER, NULL);
395 mutex_destroy(&vrp->tx.lock);
433 mutex_destroy(&vrp->tx.lock);
788 vrp->tx.ndesc = VR_TX_N_DESC;
799 if (vr_alloc_ring(vrp, &vrp->txring, vrp->tx.ndesc) != VR_SUCCESS) {
805 vrp->tx.ring = vrp->txring.desc;
813 vr_free_ring(&vrp->txring, vrp->tx.ndesc);
1031 vrp->tx.wp = &vrp->tx.ring[0];
1032 vrp->tx.cp = &vrp->tx.ring[0];
1037 vrp->tx.stallticks = 0;
1038 vrp->tx.resched = 0;
1043 vrp->tx.nfree = vrp->tx.ndesc;
1048 for (i = 0; i < vrp->tx.ndesc; i++) {
1050 &vrp->tx.ring[i].dmabuf,
1055 vr_free_dmabuf(&vrp->tx.ring[i].dmabuf);
1063 for (i = 0; i < vrp->tx.ndesc; i++) {
1064 wp = &vrp->tx.ring[i];
1087 for (i = 0; i < vrp->tx.ndesc; i++)
1088 vr_free_dmabuf(&vrp->tx.ring[i].dmabuf);
1255 mutex_enter(&vrp->tx.lock);
1257 tx_resched = vrp->tx.resched;
1258 vrp->tx.resched = 0;
1259 mutex_exit(&vrp->tx.lock);
1271 mutex_enter(&vrp->tx.lock);
1273 mutex_exit(&vrp->tx.lock);
1297 * The request can come from the periodic tx check or from the interrupt
1318 * Restart transmissions if we were waiting for tx descriptors.
1340 mutex_enter(&vrp->tx.lock);
1344 mutex_exit(&vrp->tx.lock);
1488 mutex_enter(&vrp->tx.lock);
1490 if (vrp->tx.nfree == 0) {
1492 vrp->tx.resched = 1;
1499 vrp->tx.nfree--;
1501 mutex_exit(&vrp->tx.lock);
1533 wp = vrp->tx.wp;
1570 vrp->tx.intr_distance++;
1572 if (vrp->tx.intr_distance >= VR_TX_MAX_INTR_DISTANCE) {
1576 vrp->tx.intr_distance = 0;
1599 vrp->tx.stallticks = 1;
1600 vrp->tx.wp = wp->next;
1612 ASSERT(mutex_owned(&vrp->tx.lock));
1615 dirty = vrp->tx.ndesc - vrp->tx.nfree;
1616 for (cp = vrp->tx.cp; dirty > 0; cp = cp->next) {
1671 vrp->tx.cp = cp;
1674 vrp->tx.nfree += freed;
1675 vrp->tx.stallticks = 0;
1693 mutex_enter(&vrp->tx.lock);
1694 if (vrp->tx.resched == 1) {
1695 if (vrp->tx.stallticks >= VR_MAXTXCHECKS) {
1709 vrp->tx.stallticks += 1;
1712 mutex_exit(&vrp->tx.lock);
1879 VR_PUT32(vrp->acc_reg, VR_TXADDR, vrp->tx.wp->paddr);
1979 mutex_enter(&vrp->tx.lock);
1985 mutex_exit(&vrp->tx.lock);
2261 mutex_enter(&vrp->tx.lock);
2287 mutex_exit(&vrp->tx.lock);
3139 (knp++)->value.ui32 = vrp->tx.nfree;