Lines Matching refs:sbuf
493 struct ipw_soft_buf *sbuf; in ipw_dma_alloc() local
644 sbuf = &sc->tx_sbuf_list[i]; in ipw_dma_alloc()
645 error = bus_dmamap_create(sc->txbuf_dmat, 0, &sbuf->map); in ipw_dma_alloc()
651 SLIST_INSERT_HEAD(&sc->free_sbuf, sbuf, next); in ipw_dma_alloc()
676 sbuf = &sc->rx_sbuf_list[i]; in ipw_dma_alloc()
679 sbuf->m = m_getcl(M_NOWAIT, MT_DATA, M_PKTHDR); in ipw_dma_alloc()
680 if (sbuf->m == NULL) { in ipw_dma_alloc()
687 error = bus_dmamap_create(sc->rxbuf_dmat, 0, &sbuf->map); in ipw_dma_alloc()
694 error = bus_dmamap_load(sc->rxbuf_dmat, sbuf->map, in ipw_dma_alloc()
695 mtod(sbuf->m, void *), MCLBYTES, ipw_dma_map_addr, in ipw_dma_alloc()
704 sbd->priv = sbuf; in ipw_dma_alloc()
720 struct ipw_soft_buf *sbuf; in ipw_release() local
775 sbuf = &sc->rx_sbuf_list[i]; in ipw_release()
776 if (sbuf->m != NULL) { in ipw_release()
777 bus_dmamap_sync(sc->rxbuf_dmat, sbuf->map, in ipw_release()
779 bus_dmamap_unload(sc->rxbuf_dmat, sbuf->map); in ipw_release()
780 m_freem(sbuf->m); in ipw_release()
782 bus_dmamap_destroy(sc->rxbuf_dmat, sbuf->map); in ipw_release()
981 ipw_rx_cmd_intr(struct ipw_softc *sc, struct ipw_soft_buf *sbuf) in ipw_rx_cmd_intr() argument
985 bus_dmamap_sync(sc->rxbuf_dmat, sbuf->map, BUS_DMASYNC_POSTREAD); in ipw_rx_cmd_intr()
987 cmd = mtod(sbuf->m, struct ipw_cmd *); in ipw_rx_cmd_intr()
999 ipw_rx_newstate_intr(struct ipw_softc *sc, struct ipw_soft_buf *sbuf) in ipw_rx_newstate_intr() argument
1006 bus_dmamap_sync(sc->rxbuf_dmat, sbuf->map, BUS_DMASYNC_POSTREAD); in ipw_rx_newstate_intr()
1008 state = le32toh(*mtod(sbuf->m, uint32_t *)); in ipw_rx_newstate_intr()
1160 struct ipw_soft_bd *sbd, struct ipw_soft_buf *sbuf) in ipw_rx_data_intr() argument
1188 bus_dmamap_sync(sc->rxbuf_dmat, sbuf->map, BUS_DMASYNC_POSTREAD); in ipw_rx_data_intr()
1189 bus_dmamap_unload(sc->rxbuf_dmat, sbuf->map); in ipw_rx_data_intr()
1191 error = bus_dmamap_load(sc->rxbuf_dmat, sbuf->map, mtod(mnew, void *), in ipw_rx_data_intr()
1197 error = bus_dmamap_load(sc->rxbuf_dmat, sbuf->map, in ipw_rx_data_intr()
1198 mtod(sbuf->m, void *), MCLBYTES, ipw_dma_map_addr, in ipw_rx_data_intr()
1213 m = sbuf->m; in ipw_rx_data_intr()
1214 sbuf->m = mnew; in ipw_rx_data_intr()
1248 struct ipw_soft_buf *sbuf; in ipw_rx_intr() local
1261 sbuf = sbd->priv; in ipw_rx_intr()
1265 ipw_rx_cmd_intr(sc, sbuf); in ipw_rx_intr()
1269 ipw_rx_newstate_intr(sc, sbuf); in ipw_rx_intr()
1274 ipw_rx_data_intr(sc, status, sbd, sbuf); in ipw_rx_intr()
1306 struct ipw_soft_buf *sbuf; in ipw_release_sbd() local
1323 sbuf = sbd->priv; in ipw_release_sbd()
1324 bus_dmamap_sync(sc->txbuf_dmat, sbuf->map, in ipw_release_sbd()
1326 bus_dmamap_unload(sc->txbuf_dmat, sbuf->map); in ipw_release_sbd()
1327 SLIST_INSERT_HEAD(&sc->free_sbuf, sbuf, next); in ipw_release_sbd()
1329 ieee80211_tx_complete(sbuf->ni, sbuf->m, 0/*XXX*/); in ipw_release_sbd()
1554 struct ipw_soft_buf *sbuf; in ipw_tx_start() local
1582 sbuf = SLIST_FIRST(&sc->free_sbuf); in ipw_tx_start()
1583 KASSERT(shdr != NULL && sbuf != NULL, ("empty sw hdr/buf pool")); in ipw_tx_start()
1601 error = bus_dmamap_load_mbuf_sg(sc->txbuf_dmat, sbuf->map, m0, segs, in ipw_tx_start()
1619 error = bus_dmamap_load_mbuf_sg(sc->txbuf_dmat, sbuf->map, m0, in ipw_tx_start()
1633 bus_dmamap_unload(sc->txbuf_dmat, sbuf->map); in ipw_tx_start()
1658 sbuf->m = m0; in ipw_tx_start()
1659 sbuf->ni = ni; in ipw_tx_start()
1670 sbd->priv = sbuf; in ipw_tx_start()
1684 bus_dmamap_sync(sc->txbuf_dmat, sbuf->map, BUS_DMASYNC_PREWRITE); in ipw_tx_start()