mdm               733 dev/ic/mpi.c   	struct mpi_dmamem		*mdm;
mdm               736 dev/ic/mpi.c   	mdm = malloc(sizeof(struct mpi_dmamem), M_DEVBUF, M_NOWAIT);
mdm               737 dev/ic/mpi.c   	if (mdm == NULL)
mdm               740 dev/ic/mpi.c   	bzero(mdm, sizeof(struct mpi_dmamem));
mdm               741 dev/ic/mpi.c   	mdm->mdm_size = size;
mdm               744 dev/ic/mpi.c   	    BUS_DMA_NOWAIT | BUS_DMA_ALLOCNOW, &mdm->mdm_map) != 0)
mdm               747 dev/ic/mpi.c   	if (bus_dmamem_alloc(sc->sc_dmat, size, PAGE_SIZE, 0, &mdm->mdm_seg,
mdm               751 dev/ic/mpi.c   	if (bus_dmamem_map(sc->sc_dmat, &mdm->mdm_seg, nsegs, size,
mdm               752 dev/ic/mpi.c   	    &mdm->mdm_kva, BUS_DMA_NOWAIT) != 0)
mdm               755 dev/ic/mpi.c   	if (bus_dmamap_load(sc->sc_dmat, mdm->mdm_map, mdm->mdm_kva, size,
mdm               759 dev/ic/mpi.c   	bzero(mdm->mdm_kva, size);
mdm               763 dev/ic/mpi.c   	    DEVNAME(sc), size, mdm->mdm_map, nsegs, mdm->mdm_seg, mdm->mdm_kva);
mdm               765 dev/ic/mpi.c   	return (mdm);
mdm               768 dev/ic/mpi.c   	bus_dmamem_unmap(sc->sc_dmat, mdm->mdm_kva, size);
mdm               770 dev/ic/mpi.c   	bus_dmamem_free(sc->sc_dmat, &mdm->mdm_seg, 1);
mdm               772 dev/ic/mpi.c   	bus_dmamap_destroy(sc->sc_dmat, mdm->mdm_map);
mdm               774 dev/ic/mpi.c   	free(mdm, M_DEVBUF);
mdm               780 dev/ic/mpi.c   mpi_dmamem_free(struct mpi_softc *sc, struct mpi_dmamem *mdm)
mdm               782 dev/ic/mpi.c   	DNPRINTF(MPI_D_MEM, "%s: mpi_dmamem_free %#x\n", DEVNAME(sc), mdm);
mdm               784 dev/ic/mpi.c   	bus_dmamap_unload(sc->sc_dmat, mdm->mdm_map);
mdm               785 dev/ic/mpi.c   	bus_dmamem_unmap(sc->sc_dmat, mdm->mdm_kva, mdm->mdm_size);
mdm               786 dev/ic/mpi.c   	bus_dmamem_free(sc->sc_dmat, &mdm->mdm_seg, 1);
mdm               787 dev/ic/mpi.c   	bus_dmamap_destroy(sc->sc_dmat, mdm->mdm_map);
mdm               788 dev/ic/mpi.c   	free(mdm, M_DEVBUF);