Lines Matching defs:rxr

939 	struct vmxnet3_rxring *rxr;
952 rxr = &rxq->vxrxq_cmd_ring[i];
953 rxr->vxrxr_rid = i;
954 rxr->vxrxr_ndesc = sc->vmx_nrxdescs;
955 rxr->vxrxr_rxbuf = malloc(rxr->vxrxr_ndesc *
957 if (rxr->vxrxr_rxbuf == NULL)
1044 struct vmxnet3_rxring *rxr;
1051 rxr = &rxq->vxrxq_cmd_ring[i];
1053 if (rxr->vxrxr_rxbuf != NULL) {
1054 free(rxr->vxrxr_rxbuf, M_DEVBUF);
1055 rxr->vxrxr_rxbuf = NULL;
1297 struct vmxnet3_rxring *rxr;
1310 rxr = &rxq->vxrxq_cmd_ring[i];
1312 descsz = rxr->vxrxr_ndesc *
1314 compsz += rxr->vxrxr_ndesc *
1327 &rxr->vxrxr_rxtag);
1336 &rxr->vxrxr_dma);
1343 rxr->vxrxr_rxd =
1344 (struct vmxnet3_rxdesc *) rxr->vxrxr_dma.dma_vaddr;
1357 rxr = &rxq->vxrxq_cmd_ring[i];
1359 error = bus_dmamap_create(rxr->vxrxr_rxtag, 0,
1360 &rxr->vxrxr_spare_dmap);
1368 for (j = 0; j < rxr->vxrxr_ndesc; j++) {
1369 error = bus_dmamap_create(rxr->vxrxr_rxtag, 0,
1370 &rxr->vxrxr_rxbuf[j].vrxb_dmamap);
1390 struct vmxnet3_rxring *rxr;
1402 rxr = &rxq->vxrxq_cmd_ring[i];
1404 if (rxr->vxrxr_spare_dmap != NULL) {
1405 bus_dmamap_destroy(rxr->vxrxr_rxtag,
1406 rxr->vxrxr_spare_dmap);
1407 rxr->vxrxr_spare_dmap = NULL;
1410 for (j = 0; j < rxr->vxrxr_ndesc; j++) {
1411 rxb = &rxr->vxrxr_rxbuf[j];
1413 bus_dmamap_destroy(rxr->vxrxr_rxtag,
1426 rxr = &rxq->vxrxq_cmd_ring[i];
1428 if (rxr->vxrxr_rxd != NULL) {
1429 vmxnet3_dma_free(sc, &rxr->vxrxr_dma);
1430 rxr->vxrxr_rxd = NULL;
1433 if (rxr->vxrxr_rxtag != NULL) {
1434 bus_dma_tag_destroy(rxr->vxrxr_rxtag);
1435 rxr->vxrxr_rxtag = NULL;
1867 vmxnet3_newbuf(struct vmxnet3_softc *sc, struct vmxnet3_rxring *rxr)
1879 tag = rxr->vxrxr_rxtag;
1880 dmap = rxr->vxrxr_spare_dmap;
1881 idx = rxr->vxrxr_fill;
1882 rxd = &rxr->vxrxr_rxd[idx];
1883 rxb = &rxr->vxrxr_rxbuf[idx];
1887 if (rxr->vxrxr_rid != 0)
1891 if (rxr->vxrxr_rid == 0 && (idx % sc->vmx_rx_max_chain) == 0) {
1943 rxr->vxrxr_spare_dmap = rxb->vrxb_dmamap;
1950 rxd->gen = rxr->vxrxr_gen;
1952 vmxnet3_rxr_increment_fill(rxr);
1958 struct vmxnet3_rxring *rxr, int idx)
1962 rxd = &rxr->vxrxr_rxd[idx];
1963 rxd->gen = rxr->vxrxr_gen;
1964 vmxnet3_rxr_increment_fill(rxr);
1971 struct vmxnet3_rxring *rxr;
1993 rxr = &rxq->vxrxq_cmd_ring[0];
1995 rxr = &rxq->vxrxq_cmd_ring[1];
1996 vmxnet3_rxq_eof_discard(rxq, rxr, idx);
2083 struct vmxnet3_rxring *rxr;
2122 rxr = &rxq->vxrxq_cmd_ring[0];
2124 rxr = &rxq->vxrxq_cmd_ring[1];
2125 rxd = &rxr->vxrxr_rxd[idx];
2127 m = rxr->vxrxr_rxbuf[idx].vrxb_m;
2136 if (__predict_false(rxr->vxrxr_fill != idx)) {
2137 while (rxr->vxrxr_fill != idx) {
2138 rxr->vxrxr_rxd[rxr->vxrxr_fill].gen =
2139 rxr->vxrxr_gen;
2140 vmxnet3_rxr_increment_fill(rxr);
2147 KASSERT(rxr == &rxq->vxrxq_cmd_ring[0],
2157 vmxnet3_rxq_eof_discard(rxq, rxr, idx);
2161 if (vmxnet3_newbuf(sc, rxr) != 0) {
2163 vmxnet3_rxq_eof_discard(rxq, rxr, idx);
2180 if (vmxnet3_newbuf(sc, rxr) != 0) {
2182 vmxnet3_rxq_eof_discard(rxq, rxr, idx);
2210 idx = (idx + 1) % rxr->vxrxr_ndesc;
2335 struct vmxnet3_rxring *rxr;
2346 rxr = &rxq->vxrxq_cmd_ring[i];
2348 for (j = 0; j < rxr->vxrxr_ndesc; j++) {
2349 rxb = &rxr->vxrxr_rxbuf[j];
2354 bus_dmamap_sync(rxr->vxrxr_rxtag, rxb->vrxb_dmamap,
2356 bus_dmamap_unload(rxr->vxrxr_rxtag, rxb->vrxb_dmamap);
2434 struct vmxnet3_rxring *rxr;
2468 rxr = &rxq->vxrxq_cmd_ring[i];
2469 rxr->vxrxr_fill = 0;
2470 rxr->vxrxr_gen = VMXNET3_INIT_GEN;
2471 bzero(rxr->vxrxr_rxd,
2472 rxr->vxrxr_ndesc * sizeof(struct vmxnet3_rxdesc));
2474 for (idx = 0; idx < rxr->vxrxr_ndesc; idx++) {
2475 error = vmxnet3_newbuf(sc, rxr);
2482 rxr = &rxq->vxrxq_cmd_ring[i];
2483 rxr->vxrxr_fill = 0;
2484 rxr->vxrxr_gen = 0;
2485 bzero(rxr->vxrxr_rxd,
2486 rxr->vxrxr_ndesc * sizeof(struct vmxnet3_rxdesc));