Lines Matching refs:rxd
1230 struct sis_rxdesc *rxd;
1286 rxd = &sc->sis_rxdesc[i];
1287 rxd->rx_m = NULL;
1288 error = bus_dmamap_create(sc->sis_rx_tag, 0, &rxd->rx_dmamap);
1314 struct sis_rxdesc *rxd;
1320 rxd = &sc->sis_rxdesc[i];
1321 if (rxd->rx_dmamap)
1322 bus_dmamap_destroy(sc->sis_rx_tag, rxd->rx_dmamap);
1373 struct sis_rxdesc *rxd;
1395 rxd = &sc->sis_rxdesc[i];
1396 rxd->rx_desc = &sc->sis_rx_list[i];
1401 rxd->rx_desc->sis_next = htole32(SIS_ADDR_LO(next));
1402 error = sis_newbuf(sc, rxd);
1416 sis_newbuf(struct sis_softc *sc, struct sis_rxdesc *rxd)
1438 if (rxd->rx_m != NULL) {
1439 bus_dmamap_sync(sc->sis_rx_tag, rxd->rx_dmamap,
1441 bus_dmamap_unload(sc->sis_rx_tag, rxd->rx_dmamap);
1443 map = rxd->rx_dmamap;
1444 rxd->rx_dmamap = sc->sis_rx_sparemap;
1446 bus_dmamap_sync(sc->sis_rx_tag, rxd->rx_dmamap, BUS_DMASYNC_PREREAD);
1447 rxd->rx_m = m;
1448 rxd->rx_desc->sis_ptr = htole32(SIS_ADDR_LO(segs[0].ds_addr));
1449 rxd->rx_desc->sis_cmdsts = htole32(SIS_RXLEN);
1454 sis_discard_rxbuf(struct sis_rxdesc *rxd)
1457 rxd->rx_desc->sis_cmdsts = htole32(SIS_RXLEN);
1486 struct sis_rxdesc *rxd;
1512 rxd = &sc->sis_rxdesc[rx_cons];
1523 sis_discard_rxbuf(rxd);
1528 m = rxd->rx_m;
1529 if (sis_newbuf(sc, rxd) != 0) {
1531 sis_discard_rxbuf(rxd);
2224 struct sis_rxdesc *rxd;
2250 rxd = &sc->sis_rxdesc[i];
2251 if (rxd->rx_m != NULL) {
2252 bus_dmamap_sync(sc->sis_rx_tag, rxd->rx_dmamap,
2254 bus_dmamap_unload(sc->sis_rx_tag, rxd->rx_dmamap);
2255 m_freem(rxd->rx_m);
2256 rxd->rx_m = NULL;