Lines Matching refs:batch
265 static void qi_batch_flush_descs(struct intel_iommu *iommu, struct qi_batch *batch) in qi_batch_flush_descs() argument
267 if (!iommu || !batch->index) in qi_batch_flush_descs()
270 qi_submit_sync(iommu, batch->descs, batch->index, 0); in qi_batch_flush_descs()
273 memset(batch, 0, sizeof(*batch)); in qi_batch_flush_descs()
276 static void qi_batch_increment_index(struct intel_iommu *iommu, struct qi_batch *batch) in qi_batch_increment_index() argument
278 if (++batch->index == QI_MAX_BATCHED_DESC_COUNT) in qi_batch_increment_index()
279 qi_batch_flush_descs(iommu, batch); in qi_batch_increment_index()
284 struct qi_batch *batch) in qi_batch_add_iotlb() argument
286 qi_desc_iotlb(iommu, did, addr, size_order, type, &batch->descs[batch->index]); in qi_batch_add_iotlb()
287 qi_batch_increment_index(iommu, batch); in qi_batch_add_iotlb()
292 struct qi_batch *batch) in qi_batch_add_dev_iotlb() argument
301 qi_desc_dev_iotlb(sid, pfsid, qdep, addr, mask, &batch->descs[batch->index]); in qi_batch_add_dev_iotlb()
302 qi_batch_increment_index(iommu, batch); in qi_batch_add_dev_iotlb()
307 struct qi_batch *batch) in qi_batch_add_piotlb() argument
317 qi_desc_piotlb(did, pasid, addr, npages, ih, &batch->descs[batch->index]); in qi_batch_add_piotlb()
318 qi_batch_increment_index(iommu, batch); in qi_batch_add_piotlb()
323 unsigned int size_order, struct qi_batch *batch) in qi_batch_add_pasid_dev_iotlb() argument
334 &batch->descs[batch->index]); in qi_batch_add_pasid_dev_iotlb()
335 qi_batch_increment_index(iommu, batch); in qi_batch_add_pasid_dev_iotlb()