Lines Matching defs:qdm
293 struct qcscm_dmamem *qdm;
304 qdm = qcscm_dmamem_alloc(sc, PAGE_SIZE, 8);
305 if (qdm == NULL)
309 memcpy(QCSCM_DMA_KVA(qdm), name, strlen(name));
315 args[0] = QCSCM_DMA_DVA(qdm);
330 qcscm_dmamem_free(sc, qdm);
399 struct qcscm_dmamem *qdm;
410 qdm = qcscm_dmamem_alloc(sc, round_page(reqsize + respsize), 8);
411 if (qdm == NULL)
414 req = QCSCM_DMA_KVA(qdm) + reqoff;
427 QCSCM_DMA_DVA(qdm) + reqoff, reqsize,
428 QCSCM_DMA_DVA(qdm) + respoff, respsize);
430 qcscm_dmamem_free(sc, qdm);
434 resp = QCSCM_DMA_KVA(qdm) + respoff;
437 qcscm_dmamem_free(sc, qdm);
447 qcscm_dmamem_free(sc, qdm);
453 qcscm_dmamem_free(sc, qdm);
462 qcscm_dmamem_free(sc, qdm);
468 qcscm_dmamem_free(sc, qdm);
475 qcscm_dmamem_free(sc, qdm);
505 struct qcscm_dmamem *qdm;
517 qdm = qcscm_dmamem_alloc(sc, round_page(reqsize + respsize), 8);
518 if (qdm == NULL)
521 req = QCSCM_DMA_KVA(qdm) + reqoff;
537 QCSCM_DMA_DVA(qdm) + reqoff, reqsize,
538 QCSCM_DMA_DVA(qdm) + respoff, respsize);
540 qcscm_dmamem_free(sc, qdm);
544 resp = QCSCM_DMA_KVA(qdm) + respoff;
547 qcscm_dmamem_free(sc, qdm);
553 qcscm_dmamem_free(sc, qdm);
557 qcscm_dmamem_free(sc, qdm);
586 struct qcscm_dmamem *qdm;
597 qdm = qcscm_dmamem_alloc(sc, round_page(reqsize + respsize), 8);
598 if (qdm == NULL)
601 req = QCSCM_DMA_KVA(qdm) + reqoff;
613 QCSCM_DMA_DVA(qdm) + reqoff, reqsize,
614 QCSCM_DMA_DVA(qdm) + respoff, respsize);
616 qcscm_dmamem_free(sc, qdm);
620 resp = QCSCM_DMA_KVA(qdm) + respoff;
623 qcscm_dmamem_free(sc, qdm);
631 qcscm_dmamem_free(sc, qdm);
637 qcscm_dmamem_free(sc, qdm);
642 qcscm_dmamem_free(sc, qdm);
648 qcscm_dmamem_free(sc, qdm);
656 qcscm_dmamem_free(sc, qdm);
956 struct qcscm_dmamem *qdm;
959 qdm = malloc(sizeof(*qdm), M_DEVBUF, M_WAITOK | M_ZERO);
960 qdm->qdm_size = size;
963 BUS_DMA_WAITOK | BUS_DMA_ALLOCNOW, &qdm->qdm_map) != 0)
967 &qdm->qdm_seg, 1, &nsegs, BUS_DMA_WAITOK, 0, 0xffffffff) != 0)
970 if (bus_dmamem_map(sc->sc_dmat, &qdm->qdm_seg, nsegs, size,
971 &qdm->qdm_kva, BUS_DMA_WAITOK | BUS_DMA_COHERENT) != 0)
974 if (bus_dmamap_load(sc->sc_dmat, qdm->qdm_map, qdm->qdm_kva, size,
978 bzero(qdm->qdm_kva, size);
980 return (qdm);
983 bus_dmamem_unmap(sc->sc_dmat, qdm->qdm_kva, size);
985 bus_dmamem_free(sc->sc_dmat, &qdm->qdm_seg, 1);
987 bus_dmamap_destroy(sc->sc_dmat, qdm->qdm_map);
989 free(qdm, M_DEVBUF, sizeof(*qdm));
995 qcscm_dmamem_free(struct qcscm_softc *sc, struct qcscm_dmamem *qdm)
997 bus_dmamem_unmap(sc->sc_dmat, qdm->qdm_kva, qdm->qdm_size);
998 bus_dmamem_free(sc->sc_dmat, &qdm->qdm_seg, 1);
999 bus_dmamap_destroy(sc->sc_dmat, qdm->qdm_map);
1000 free(qdm, M_DEVBUF, sizeof(*qdm));