Lines Matching refs:dmareq

344 #define	OBJSIZE		dmareq->dmar_object.dmao_size
821 check_dma_attr(struct ddi_dma_req *dmareq, ddi_dma_attr_t *dma_attr, in check_dma_attr() argument
832 if ((dmareq->dmar_flags & DDI_DMA_PARTIAL) == 0) in check_dma_attr()
839 if (!((addrlow + dmareq->dmar_object.dmao_size == 0) && in check_dma_attr()
841 if ((dmareq->dmar_flags & DDI_DMA_PARTIAL) == 0) in check_dma_attr()
851 ddi_dma_handle_t handle, struct ddi_dma_req *dmareq, in iommu_dma_bindhdl() argument
876 size = (uint32_t)dmareq->dmar_object.dmao_size; in iommu_dma_bindhdl()
878 rval = check_dma_attr(dmareq, dma_attr, &size); in iommu_dma_bindhdl()
884 mp->dmai_rflags = (dmareq->dmar_flags & DMP_DDIFLAGS) | in iommu_dma_bindhdl()
887 switch (dmareq->dmar_object.dmao_type) { in iommu_dma_bindhdl()
890 addr = (uintptr_t)dmareq->dmar_object.dmao_obj.virt_obj.v_addr; in iommu_dma_bindhdl()
892 pplist = dmareq->dmar_object.dmao_obj.virt_obj.v_priv; in iommu_dma_bindhdl()
906 pp = dmareq->dmar_object.dmao_obj.pp_obj.pp_pp; in iommu_dma_bindhdl()
907 offset = dmareq->dmar_object.dmao_obj.pp_obj.pp_offset; in iommu_dma_bindhdl()
965 mp->dmai_object = dmareq->dmar_object; in iommu_dma_bindhdl()
972 dmareq->dmar_fp == DDI_DMA_SLEEP ? VM_SLEEP : VM_NOSLEEP); in iommu_dma_bindhdl()
1053 dmareq->dmar_fp == DDI_DMA_SLEEP ? VM_SLEEP : VM_NOSLEEP); in iommu_dma_bindhdl()
1057 if (dmareq->dmar_fp == DDI_DMA_SLEEP) in iommu_dma_bindhdl()
1092 (dmareq->dmar_object.dmao_size + (size - 1)) / size; in iommu_dma_bindhdl()
1113 dmareq->dmar_fp != DDI_DMA_DONTWAIT) { in iommu_dma_bindhdl()
1114 ddi_set_callback(dmareq->dmar_fp, in iommu_dma_bindhdl()
1115 dmareq->dmar_arg, &softsp->dvma_call_list_id); in iommu_dma_bindhdl()
1329 struct ddi_dma_req *dmareq = (struct ddi_dma_req *)offp; in iommu_dma_mctl() local
1341 dma_lim = dmareq->dmar_limits; in iommu_dma_mctl()
1353 np = dmareq->dmar_object.dmao_size; in iommu_dma_mctl()
1374 dmareq->dmar_fp == DDI_DMA_SLEEP ? VM_SLEEP : VM_NOSLEEP); in iommu_dma_mctl()