sdm               556 dev/ic/sili.c  	struct sili_dmamem		*sdm;
sdm               559 dev/ic/sili.c  	sdm = malloc(sizeof(struct sili_dmamem), M_DEVBUF, M_WAITOK);
sdm               560 dev/ic/sili.c  	bzero(sdm, sizeof(struct sili_dmamem));
sdm               561 dev/ic/sili.c  	sdm->sdm_size = size;
sdm               564 dev/ic/sili.c  	    BUS_DMA_WAITOK | BUS_DMA_ALLOCNOW, &sdm->sdm_map) != 0)
sdm               567 dev/ic/sili.c  	if (bus_dmamem_alloc(sc->sc_dmat, size, align, 0, &sdm->sdm_seg,
sdm               571 dev/ic/sili.c  	if (bus_dmamem_map(sc->sc_dmat, &sdm->sdm_seg, nsegs, size,
sdm               572 dev/ic/sili.c  	    &sdm->sdm_kva, BUS_DMA_NOWAIT) != 0)
sdm               575 dev/ic/sili.c  	if (bus_dmamap_load(sc->sc_dmat, sdm->sdm_map, sdm->sdm_kva, size,
sdm               579 dev/ic/sili.c  	bzero(sdm->sdm_kva, size);
sdm               581 dev/ic/sili.c  	return (sdm);
sdm               584 dev/ic/sili.c  	bus_dmamem_unmap(sc->sc_dmat, sdm->sdm_kva, size);
sdm               586 dev/ic/sili.c  	bus_dmamem_free(sc->sc_dmat, &sdm->sdm_seg, 1);
sdm               588 dev/ic/sili.c  	bus_dmamap_destroy(sc->sc_dmat, sdm->sdm_map);
sdm               590 dev/ic/sili.c  	free(sdm, M_DEVBUF);
sdm               596 dev/ic/sili.c  sili_dmamem_free(struct sili_softc *sc, struct sili_dmamem *sdm)
sdm               598 dev/ic/sili.c  	bus_dmamap_unload(sc->sc_dmat, sdm->sdm_map);
sdm               599 dev/ic/sili.c  	bus_dmamem_unmap(sc->sc_dmat, sdm->sdm_kva, sdm->sdm_size);
sdm               600 dev/ic/sili.c  	bus_dmamem_free(sc->sc_dmat, &sdm->sdm_seg, 1);
sdm               601 dev/ic/sili.c  	bus_dmamap_destroy(sc->sc_dmat, sdm->sdm_map);
sdm               602 dev/ic/sili.c  	free(sdm, M_DEVBUF);