Lines Matching refs:kr_cdata

660 	prod = sc->kr_cdata.kr_tx_prod;
661 txd = &sc->kr_cdata.kr_txdesc[prod];
662 error = bus_dmamap_load_mbuf_sg(sc->kr_cdata.kr_tx_tag, txd->tx_dmamap,
675 if (sc->kr_cdata.kr_tx_cnt + nsegs >= (KR_TX_RING_CNT - 1)) {
676 bus_dmamap_unload(sc->kr_cdata.kr_tx_tag, txd->tx_dmamap);
681 bus_dmamap_sync(sc->kr_cdata.kr_tx_tag, txd->tx_dmamap,
704 sc->kr_cdata.kr_tx_cnt++;
718 sc->kr_cdata.kr_tx_prod = prod;
721 bus_dmamap_sync(sc->kr_cdata.kr_tx_ring_tag,
722 sc->kr_cdata.kr_tx_ring_map,
759 sc->kr_cdata.kr_tx_cnt < KR_TX_RING_CNT - 2; ) {
984 &sc->kr_cdata.kr_parent_tag);
991 sc->kr_cdata.kr_parent_tag, /* parent */
1001 &sc->kr_cdata.kr_tx_ring_tag);
1009 sc->kr_cdata.kr_parent_tag, /* parent */
1019 &sc->kr_cdata.kr_rx_ring_tag);
1027 sc->kr_cdata.kr_parent_tag, /* parent */
1037 &sc->kr_cdata.kr_tx_tag);
1045 sc->kr_cdata.kr_parent_tag, /* parent */
1055 &sc->kr_cdata.kr_rx_tag);
1062 error = bus_dmamem_alloc(sc->kr_cdata.kr_tx_ring_tag,
1064 BUS_DMA_COHERENT | BUS_DMA_ZERO, &sc->kr_cdata.kr_tx_ring_map);
1072 error = bus_dmamap_load(sc->kr_cdata.kr_tx_ring_tag,
1073 sc->kr_cdata.kr_tx_ring_map, sc->kr_rdata.kr_tx_ring,
1083 error = bus_dmamem_alloc(sc->kr_cdata.kr_rx_ring_tag,
1085 BUS_DMA_COHERENT | BUS_DMA_ZERO, &sc->kr_cdata.kr_rx_ring_map);
1093 error = bus_dmamap_load(sc->kr_cdata.kr_rx_ring_tag,
1094 sc->kr_cdata.kr_rx_ring_map, sc->kr_rdata.kr_rx_ring,
1105 txd = &sc->kr_cdata.kr_txdesc[i];
1108 error = bus_dmamap_create(sc->kr_cdata.kr_tx_tag, 0,
1117 if ((error = bus_dmamap_create(sc->kr_cdata.kr_rx_tag, 0,
1118 &sc->kr_cdata.kr_rx_sparemap)) != 0) {
1124 rxd = &sc->kr_cdata.kr_rxdesc[i];
1127 error = bus_dmamap_create(sc->kr_cdata.kr_rx_tag, 0,
1148 if (sc->kr_cdata.kr_tx_ring_tag) {
1149 if (sc->kr_cdata.kr_tx_ring_map)
1150 bus_dmamap_unload(sc->kr_cdata.kr_tx_ring_tag,
1151 sc->kr_cdata.kr_tx_ring_map);
1152 if (sc->kr_cdata.kr_tx_ring_map &&
1154 bus_dmamem_free(sc->kr_cdata.kr_tx_ring_tag,
1156 sc->kr_cdata.kr_tx_ring_map);
1158 sc->kr_cdata.kr_tx_ring_map = NULL;
1159 bus_dma_tag_destroy(sc->kr_cdata.kr_tx_ring_tag);
1160 sc->kr_cdata.kr_tx_ring_tag = NULL;
1163 if (sc->kr_cdata.kr_rx_ring_tag) {
1164 if (sc->kr_cdata.kr_rx_ring_map)
1165 bus_dmamap_unload(sc->kr_cdata.kr_rx_ring_tag,
1166 sc->kr_cdata.kr_rx_ring_map);
1167 if (sc->kr_cdata.kr_rx_ring_map &&
1169 bus_dmamem_free(sc->kr_cdata.kr_rx_ring_tag,
1171 sc->kr_cdata.kr_rx_ring_map);
1173 sc->kr_cdata.kr_rx_ring_map = NULL;
1174 bus_dma_tag_destroy(sc->kr_cdata.kr_rx_ring_tag);
1175 sc->kr_cdata.kr_rx_ring_tag = NULL;
1178 if (sc->kr_cdata.kr_tx_tag) {
1180 txd = &sc->kr_cdata.kr_txdesc[i];
1182 bus_dmamap_destroy(sc->kr_cdata.kr_tx_tag,
1187 bus_dma_tag_destroy(sc->kr_cdata.kr_tx_tag);
1188 sc->kr_cdata.kr_tx_tag = NULL;
1191 if (sc->kr_cdata.kr_rx_tag) {
1193 rxd = &sc->kr_cdata.kr_rxdesc[i];
1195 bus_dmamap_destroy(sc->kr_cdata.kr_rx_tag,
1200 if (sc->kr_cdata.kr_rx_sparemap) {
1201 bus_dmamap_destroy(sc->kr_cdata.kr_rx_tag,
1202 sc->kr_cdata.kr_rx_sparemap);
1203 sc->kr_cdata.kr_rx_sparemap = 0;
1205 bus_dma_tag_destroy(sc->kr_cdata.kr_rx_tag);
1206 sc->kr_cdata.kr_rx_tag = NULL;
1209 if (sc->kr_cdata.kr_parent_tag) {
1210 bus_dma_tag_destroy(sc->kr_cdata.kr_parent_tag);
1211 sc->kr_cdata.kr_parent_tag = NULL;
1226 sc->kr_cdata.kr_tx_prod = 0;
1227 sc->kr_cdata.kr_tx_cons = 0;
1228 sc->kr_cdata.kr_tx_cnt = 0;
1229 sc->kr_cdata.kr_tx_pkts = 0;
1242 txd = &sc->kr_cdata.kr_txdesc[i];
1246 bus_dmamap_sync(sc->kr_cdata.kr_tx_ring_tag,
1247 sc->kr_cdata.kr_tx_ring_map,
1266 sc->kr_cdata.kr_rx_cons = 0;
1271 rxd = &sc->kr_cdata.kr_rxdesc[i];
1288 bus_dmamap_sync(sc->kr_cdata.kr_rx_ring_tag,
1289 sc->kr_cdata.kr_rx_ring_map,
1314 if (bus_dmamap_load_mbuf_sg(sc->kr_cdata.kr_rx_tag,
1315 sc->kr_cdata.kr_rx_sparemap, m, segs, &nsegs, 0) != 0) {
1321 rxd = &sc->kr_cdata.kr_rxdesc[idx];
1323 bus_dmamap_sync(sc->kr_cdata.kr_rx_tag, rxd->rx_dmamap,
1325 bus_dmamap_unload(sc->kr_cdata.kr_rx_tag, rxd->rx_dmamap);
1328 rxd->rx_dmamap = sc->kr_cdata.kr_rx_sparemap;
1329 sc->kr_cdata.kr_rx_sparemap = map;
1330 bus_dmamap_sync(sc->kr_cdata.kr_rx_tag, rxd->rx_dmamap,
1369 cons = sc->kr_cdata.kr_tx_cons;
1370 prod = sc->kr_cdata.kr_tx_prod;
1374 bus_dmamap_sync(sc->kr_cdata.kr_tx_ring_tag,
1375 sc->kr_cdata.kr_tx_ring_map,
1391 sc->kr_cdata.kr_tx_cnt--;
1394 txd = &sc->kr_cdata.kr_txdesc[cons];
1406 bus_dmamap_sync(sc->kr_cdata.kr_tx_tag, txd->tx_dmamap,
1408 bus_dmamap_unload(sc->kr_cdata.kr_tx_tag, txd->tx_dmamap);
1422 sc->kr_cdata.kr_tx_cons = cons;
1424 bus_dmamap_sync(sc->kr_cdata.kr_tx_ring_tag,
1425 sc->kr_cdata.kr_tx_ring_map, BUS_DMASYNC_PREWRITE);
1440 cons = sc->kr_cdata.kr_rx_cons;
1442 bus_dmamap_sync(sc->kr_cdata.kr_rx_ring_tag,
1443 sc->kr_cdata.kr_rx_ring_map,
1448 rxd = &sc->kr_cdata.kr_rxdesc[cons];
1469 bus_dmamap_sync(sc->kr_cdata.kr_rx_tag, rxd->rx_dmamap,
1503 bus_dmamap_sync(sc->kr_cdata.kr_rx_ring_tag,
1504 sc->kr_cdata.kr_rx_ring_map,
1510 sc->kr_cdata.kr_rx_cons = cons;
1512 bus_dmamap_sync(sc->kr_cdata.kr_rx_ring_tag,
1513 sc->kr_cdata.kr_rx_ring_map,
1544 KR_RX_RING_ADDR(sc, sc->kr_cdata.kr_rx_cons));