Lines Matching refs:prm
580 event.fault.prm.addr = (u64)desc->addr << VTD_PAGE_SHIFT;
581 event.fault.prm.pasid = desc->pasid;
582 event.fault.prm.grpid = desc->prg_index;
583 event.fault.prm.perm = prq_to_iommu_prot(desc);
586 event.fault.prm.flags |= IOMMU_FAULT_PAGE_REQUEST_LAST_PAGE;
588 event.fault.prm.flags |= IOMMU_FAULT_PAGE_REQUEST_PASID_VALID;
589 event.fault.prm.flags |= IOMMU_FAULT_PAGE_RESPONSE_NEEDS_PASID;
598 event.fault.prm.flags |= IOMMU_FAULT_PAGE_REQUEST_LAST_PAGE;
599 event.fault.prm.flags |= IOMMU_FAULT_PAGE_REQUEST_PRIV_DATA;
600 event.fault.prm.private_data[0] = desc->priv_data[0];
601 event.fault.prm.private_data[1] = desc->priv_data[1];
607 event.fault.prm.private_data[0] = ktime_to_ns(ktime_get());
753 struct iommu_fault_page_request *prm;
772 prm = &evt->fault.prm;
774 pasid_present = prm->flags & IOMMU_FAULT_PAGE_REQUEST_PASID_VALID;
775 private_present = prm->flags & IOMMU_FAULT_PAGE_REQUEST_PRIV_DATA;
776 last_page = prm->flags & IOMMU_FAULT_PAGE_REQUEST_LAST_PAGE;
783 if (prm->pasid == 0 || prm->pasid >= PASID_MAX) {
797 desc.qw0 = QI_PGRP_PASID(prm->pasid) | QI_PGRP_DID(sid) |
802 desc.qw1 = QI_PGRP_IDX(prm->grpid) | QI_PGRP_LPIG(last_page);
807 desc.qw2 = prm->private_data[0];
808 desc.qw3 = prm->private_data[1];
809 } else if (prm->private_data[0]) {
811 ktime_to_ns(ktime_get()) - prm->private_data[0]);