Home
last modified time | relevance | path

Searched refs:pasid (Results 1 – 25 of 139) sorted by relevance

123456

/drivers/misc/ocxl/
A Dtrace.h45 __entry->pasid = pasid;
50 __entry->pasid,
65 __entry->pasid = pasid;
70 __entry->pasid,
90 __entry->pasid = pasid;
98 __entry->pasid,
124 __entry->pasid = pasid;
129 __entry->pasid,
185 __entry->pasid = pasid;
192 __entry->pasid,
[all …]
A Dcontext.c10 int pasid; in ocxl_context_alloc() local
19 pasid = idr_alloc(&afu->contexts_idr, ctx, afu->pasid_base, in ocxl_context_alloc()
21 if (pasid < 0) { in ocxl_context_alloc()
24 return pasid; in ocxl_context_alloc()
29 ctx->pasid = pasid; in ocxl_context_alloc()
129 pasid_off = ctx->pasid - ctx->afu->pasid_base; in map_pp_mmio()
148 ctx->pasid, vmf->address, offset); in ocxl_mmap_fault()
231 rc = ocxl_config_terminate_pasid(dev, afu_control_pos, ctx->pasid); in ocxl_context_detach()
233 trace_ocxl_terminate_pasid(ctx->pasid, rc); in ocxl_context_detach()
251 rc = ocxl_link_remove_pe(ctx->afu->fn->link, ctx->pasid); in ocxl_context_detach()
[all …]
A Dlink.c550 if (pasid > SPA_PASID_MAX) in ocxl_link_add_pe()
554 pe_handle = pasid & SPA_PE_MASK; in ocxl_link_add_pe()
576 pe->pasid = cpu_to_be32(pasid << (31 - 19)); in ocxl_link_add_pe()
595 trace_ocxl_init_mmu_notifier(pasid, mm->context.id); in ocxl_link_add_pe()
638 if (pasid > SPA_PASID_MAX) in ocxl_link_update_pe()
641 pe_handle = pasid & SPA_PE_MASK; in ocxl_link_update_pe()
667 int ocxl_link_remove_pe(void *link_handle, int pasid) in ocxl_link_remove_pe() argument
675 if (pasid > SPA_PASID_MAX) in ocxl_link_remove_pe()
696 pe_handle = pasid & SPA_PE_MASK; in ocxl_link_remove_pe()
706 trace_ocxl_context_remove(current->pid, spa->spa_mem, pasid, in ocxl_link_remove_pe()
[all …]
/drivers/iommu/intel/
A Dpasid.c143 dir_index = pasid >> PASID_PDE_SHIFT; in intel_pasid_get_entry()
144 index = pasid & PASID_PTE_MASK; in intel_pasid_get_entry()
197 u16 did, u32 pasid) in pasid_cache_invalidation_with_pasid() argument
202 QI_PC_PASID(pasid) | QI_PC_TYPE; in pasid_cache_invalidation_with_pasid()
234 if (pasid == IOMMU_NO_PASID) in devtlb_invalidation_with_pasid()
241 u32 pasid, bool fault_ignore) in intel_pasid_tear_down_entry() argument
299 u32 pasid, u16 did) in pasid_flush_caches() argument
322 u32 pasid, u16 did, in intel_pasid_flush_present() argument
484 struct device *dev, u32 pasid) in intel_pasid_setup_second_level() argument
529 u32 pasid) in intel_pasid_replace_second_level() argument
[all …]
A Dcache.c25 ioasid_t pasid, enum cache_tag_type type) in cache_tage_match() argument
30 if (tag->domain_id != domain_id || tag->pasid != pasid) in cache_tage_match()
44 ioasid_t pasid, enum cache_tag_type type) in cache_tag_assign() argument
59 tag->pasid = pasid; in cache_tag_assign()
94 struct device *dev, ioasid_t pasid, in cache_tag_unassign() argument
136 struct device *dev, ioasid_t pasid) in __cache_tag_assign_domain() argument
157 struct device *dev, ioasid_t pasid) in __cache_tag_unassign_domain() argument
168 struct device *dev, ioasid_t pasid) in __cache_tag_assign_parent_domain() argument
223 struct device *dev, ioasid_t pasid) in cache_tag_assign_domain() argument
350 u32 pasid, u16 qdep, u64 addr, in qi_batch_add_pasid_dev_iotlb() argument
[all …]
A Dpasid.h292 phys_addr_t fsptptr, u32 pasid, u16 did,
296 struct device *dev, u32 pasid);
298 struct device *dev, u32 pasid,
301 struct device *dev, u32 pasid);
303 u32 pasid, struct dmar_domain *domain);
306 u32 pasid, u16 did, u16 old_did, int flags);
310 u32 pasid);
313 u32 pasid);
315 struct device *dev, u32 pasid,
319 struct device *dev, u32 pasid,
[all …]
A Dprq.c24 u64 pasid:20; member
60 void intel_iommu_drain_pasid_prq(struct device *dev, u32 pasid) in intel_iommu_drain_pasid_prq() argument
91 (req->pasid_present && pasid != req->pasid) || in intel_iommu_drain_pasid_prq()
92 (!req->pasid_present && pasid != IOMMU_NO_PASID)) { in intel_iommu_drain_pasid_prq()
111 if (pasid == IOMMU_NO_PASID) { in intel_iommu_drain_pasid_prq()
116 qi_desc_piotlb(did, pasid, 0, -1, 0, &desc[1]); in intel_iommu_drain_pasid_prq()
117 qi_desc_dev_iotlb_pasid(sid, info->pfsid, pasid, info->ats_qdep, in intel_iommu_drain_pasid_prq()
149 desc.qw0 = QI_PGRP_PASID(req->pasid) | in handle_bad_prq_event()
184 event.fault.prm.pasid = desc->pasid; in intel_prq_report()
390 desc.qw0 = QI_PGRP_PASID(prm->pasid) | QI_PGRP_DID(sid) | in intel_iommu_page_response()
A Dtrace.h101 __field(u32, pasid)
109 __entry->pasid = tag->pasid;
119 __entry->domain_id, __entry->pasid, __entry->users
142 __field(u32, pasid)
154 __entry->pasid = tag->pasid;
162 __get_str(iommu), __get_str(dev), __entry->pasid,
A Dnested.c141 struct device *dev, ioasid_t pasid, in domain_setup_nested() argument
145 return intel_pasid_setup_nested(iommu, dev, pasid, domain); in domain_setup_nested()
146 return intel_pasid_replace_nested(iommu, dev, pasid, in domain_setup_nested()
152 struct device *dev, ioasid_t pasid, in intel_nested_set_dev_pasid() argument
171 dev_pasid = domain_add_dev_pasid(domain, dev, pasid); in intel_nested_set_dev_pasid()
179 ret = domain_setup_nested(iommu, dmar_domain, dev, pasid, old); in intel_nested_set_dev_pasid()
183 domain_remove_dev_pasid(old, dev, pasid); in intel_nested_set_dev_pasid()
190 domain_remove_dev_pasid(domain, dev, pasid); in intel_nested_set_dev_pasid()
A Diommu.h429 #define QI_PC_PASID(pasid) (((u64)pasid) << 32) argument
441 #define QI_EIOTLB_PASID(pasid) (((u64)pasid) << 32) argument
462 #define QI_PGRP_PASID(pasid) (((u64)(pasid)) << 32) argument
797 ioasid_t pasid; member
1055 context->hi |= pasid & ((1 << 20) - 1); in context_set_sm_rid2pasid()
1143 desc->qw0 = QI_EIOTLB_PASID(pasid) | in qi_desc_piotlb()
1155 desc->qw0 = QI_EIOTLB_PASID(pasid) | in qi_desc_piotlb()
1228 u32 pasid, u16 qdep, u64 addr,
1232 u32 pasid, u16 qdep);
1234 u32 pasid);
[all …]
A Dsvm.c93 dev_pasid->pasid, true); in intel_mm_release()
149 struct device *dev, ioasid_t pasid, in intel_svm_set_dev_pasid() argument
163 dev_pasid = domain_add_dev_pasid(domain, dev, pasid); in intel_svm_set_dev_pasid()
173 ret = __domain_setup_first_level(iommu, dev, pasid, in intel_svm_set_dev_pasid()
179 domain_remove_dev_pasid(old, dev, pasid); in intel_svm_set_dev_pasid()
185 domain_remove_dev_pasid(domain, dev, pasid); in intel_svm_set_dev_pasid()
/drivers/gpu/drm/amd/amdkfd/
A Dcik_event_interrupt.c38 uint16_t pasid; in cik_event_interrupt_isr() local
58 tmp_ihre->ring_id |= pasid << 16; in cik_event_interrupt_isr()
60 return ret && (pasid != 0) && in cik_event_interrupt_isr()
72 pasid = (ihre->ring_id & 0xffff0000) >> 16; in cik_event_interrupt_isr()
94 u32 pasid = (ihre->ring_id & 0xffff0000) >> 16; in cik_event_interrupt_wq() local
96 if (pasid == 0) in cik_event_interrupt_wq()
100 kfd_signal_event_interrupt(pasid, context_id, 28); in cik_event_interrupt_wq()
102 kfd_signal_event_interrupt(pasid, context_id, 28); in cik_event_interrupt_wq()
106 kfd_signal_hw_exception_event(pasid); in cik_event_interrupt_wq()
113 kfd_smi_event_update_vmfault(dev, pasid); in cik_event_interrupt_wq()
[all …]
A Dkfd_int_process_v11.c217 uint16_t pasid, uint16_t source_id) in event_interrupt_poison_consumption_v11() argument
251 kfd_signal_poison_consumed_event(dev, pasid); in event_interrupt_poison_consumption_v11()
263 uint16_t source_id, client_id, pasid, vmid; in event_interrupt_isr_v11() local
276 pasid = SOC15_PASID_FROM_IH_ENTRY(ih_ring_entry); in event_interrupt_isr_v11()
285 client_id, source_id, vmid, pasid); in event_interrupt_isr_v11()
290 if (pasid == 0) in event_interrupt_isr_v11()
319 pasid = SOC15_PASID_FROM_IH_ENTRY(ih_ring_entry); in event_interrupt_wq_v11()
345 kfd_set_dbg_ev_from_interrupt(dev, pasid, -1, in event_interrupt_wq_v11()
348 kfd_smi_event_update_vmfault(dev, pasid); in event_interrupt_wq_v11()
400 dev, pasid, source_id); in event_interrupt_wq_v11()
[all …]
A Dkfd_int_process_v9.c145 uint16_t pasid, uint16_t client_id) in event_interrupt_poison_consumption_v9() argument
237 block, pasid, NULL, NULL, reset); in event_interrupt_poison_consumption_v9()
264 uint16_t source_id, client_id, pasid, vmid; in event_interrupt_isr_v9() local
310 pasid = dev->dqm->vmid_pasid[vmid]; in event_interrupt_isr_v9()
314 & ~pasid_mask) | pasid); in event_interrupt_isr_v9()
319 client_id, source_id, vmid, pasid); in event_interrupt_isr_v9()
360 uint16_t source_id, client_id, pasid, vmid; in event_interrupt_wq_v9() local
514 kfd_set_dbg_ev_from_interrupt(dev, pasid, in event_interrupt_wq_v9()
562 pasid, in event_interrupt_wq_v9()
567 kfd_smi_event_update_vmfault(dev, pasid); in event_interrupt_wq_v9()
[all …]
A Dkfd_int_process_v10.c137 uint16_t source_id, client_id, pasid, vmid; in event_interrupt_isr_v10() local
150 pasid = SOC15_PASID_FROM_IH_ENTRY(ih_ring_entry); in event_interrupt_isr_v10()
173 client_id, source_id, vmid, pasid); in event_interrupt_isr_v10()
178 if (pasid == 0) in event_interrupt_isr_v10()
197 uint16_t source_id, client_id, pasid, vmid; in event_interrupt_wq_v10() local
203 pasid = SOC15_PASID_FROM_IH_ENTRY(ih_ring_entry); in event_interrupt_wq_v10()
214 kfd_signal_event_interrupt(pasid, context_id0, 32); in event_interrupt_wq_v10()
281 if (kfd_set_dbg_ev_from_interrupt(dev, pasid, in event_interrupt_wq_v10()
330 kfd_set_dbg_ev_from_interrupt(dev, pasid, in event_interrupt_wq_v10()
373 pasid, in event_interrupt_wq_v10()
[all …]
/drivers/iommu/amd/
A Dpasid.c24 ioasid_t pasid) in is_pasid_valid() argument
26 if (pasid > 0 && pasid < dev_data->max_pasids) in is_pasid_valid()
43 struct device *dev, ioasid_t pasid) in remove_pdom_dev_pasid() argument
52 pdom_dev_data->pasid == pasid) { in remove_pdom_dev_pasid()
73 pdom_dev_data->pasid, in sva_arch_invalidate_secondary_tlbs()
103 struct device *dev, ioasid_t pasid, in iommu_sva_set_dev_pasid() argument
116 if (!is_pasid_valid(dev_data, pasid)) in iommu_sva_set_dev_pasid()
128 pdom_dev_data->pasid = pasid; in iommu_sva_set_dev_pasid()
134 ret = amd_iommu_set_gcr3(dev_data, pasid, in iommu_sva_set_dev_pasid()
154 if (!is_pasid_valid(dev_iommu_priv_get(dev), pasid)) in amd_iommu_remove_dev_pasid()
[all …]
A Damd_iommu.h56 struct device *dev, ioasid_t pasid,
58 void amd_iommu_remove_dev_pasid(struct device *dev, ioasid_t pasid,
76 ioasid_t pasid, unsigned long gcr3);
77 int amd_iommu_clear_gcr3(struct iommu_dev_data *dev_data, ioasid_t pasid);
84 int amd_iommu_complete_ppr(struct device *dev, u32 pasid, int status, int tag);
95 ioasid_t pasid, u64 address, size_t size);
/drivers/pci/
A Dats.c416 if (!pasid) in pci_enable_pasid()
456 if (!pasid) in pci_disable_pasid()
480 if (!pasid) in pci_restore_pasid_state()
500 int pasid; in pci_pasid_features() local
505 pasid = pdev->pasid_cap; in pci_pasid_features()
506 if (!pasid) in pci_pasid_features()
527 int pasid; in pci_max_pasids() local
532 pasid = pdev->pasid_cap; in pci_max_pasids()
533 if (!pasid) in pci_max_pasids()
556 int pasid; in pci_pasid_status() local
[all …]
/drivers/iommu/iommufd/
A Ddevice.c353 ioasid_t pasid) in iommufd_group_device_num() argument
441 ioasid_t pasid) in iommufd_device_is_attached() argument
451 ioasid_t pasid) in iommufd_hwpt_pasid_compat() argument
499 ioasid_t pasid) in iommufd_hwpt_attach_device() argument
516 if (pasid == IOMMU_NO_PASID) in iommufd_hwpt_attach_device()
547 ioasid_t pasid) in iommufd_hwpt_detach_device() argument
552 if (pasid == IOMMU_NO_PASID) in iommufd_hwpt_detach_device()
562 ioasid_t pasid, in iommufd_hwpt_replace_device() argument
583 if (pasid == IOMMU_NO_PASID) in iommufd_hwpt_replace_device()
588 pasid, &handle->handle); in iommufd_hwpt_replace_device()
[all …]
/drivers/vfio/
A Diommufd.c133 int pasid; in vfio_iommufd_physical_unbind() local
138 iommufd_device_detach(vdev->iommufd_device, pasid); in vfio_iommufd_physical_unbind()
139 ida_free(&vdev->pasids, pasid); in vfio_iommufd_physical_unbind()
186 u32 pasid, u32 *pt_id) in vfio_iommufd_physical_pasid_attach_ioas() argument
195 if (ida_exists(&vdev->pasids, pasid)) in vfio_iommufd_physical_pasid_attach_ioas()
197 pasid, pt_id); in vfio_iommufd_physical_pasid_attach_ioas()
199 rc = ida_alloc_range(&vdev->pasids, pasid, pasid, GFP_KERNEL); in vfio_iommufd_physical_pasid_attach_ioas()
205 ida_free(&vdev->pasids, pasid); in vfio_iommufd_physical_pasid_attach_ioas()
212 u32 pasid) in vfio_iommufd_physical_pasid_detach_ioas() argument
219 if (!ida_exists(&vdev->pasids, pasid)) in vfio_iommufd_physical_pasid_detach_ioas()
[all …]
/drivers/gpu/drm/amd/amdgpu/
A Damdgpu_ids.c46 u32 pasid; member
62 int pasid = -EINVAL; in amdgpu_pasid_alloc() local
67 if (pasid != -ENOSPC) in amdgpu_pasid_alloc()
71 if (pasid >= 0) in amdgpu_pasid_alloc()
74 return pasid; in amdgpu_pasid_alloc()
107 u32 pasid) in amdgpu_pasid_free_delayed() argument
118 amdgpu_pasid_free(pasid); in amdgpu_pasid_free_delayed()
127 amdgpu_pasid_free(pasid); in amdgpu_pasid_free_delayed()
129 cb->pasid = pasid; in amdgpu_pasid_free_delayed()
143 amdgpu_pasid_free(pasid); in amdgpu_pasid_free_delayed()
[all …]
A Damdgpu_vm_tlb_fence.c37 uint16_t pasid; member
62 r = amdgpu_gmc_flush_gpu_tlb_pasid(f->adev, f->pasid, 2, true, 0); in amdgpu_tlb_fence_work()
65 f->pasid); in amdgpu_tlb_fence_work()
92 amdgpu_gmc_flush_gpu_tlb_pasid(adev, vm->pasid, 2, true, 0); in amdgpu_vm_tlb_fence_create()
99 f->pasid = vm->pasid; in amdgpu_vm_tlb_fence_create()
A Damdgpu_trace.h88 __field(unsigned, pasid)
100 __entry->pasid = iv->pasid;
219 __field(u32, pasid)
229 __entry->pasid = vm->pasid;
435 TP_PROTO(unsigned pasid),
436 TP_ARGS(pasid),
441 __entry->pasid = pasid;
447 TP_PROTO(unsigned pasid),
448 TP_ARGS(pasid)
452 TP_PROTO(unsigned pasid),
[all …]
/drivers/dma/idxd/
A Dcdev.c44 unsigned int pasid; member
197 ctx->pasid); in idxd_xa_pasid_remove()
209 ctx = xa_load(&wq->upasid_xa, pasid); in idxd_user_counter_increment()
226 unsigned int pasid; in idxd_cdev_open() local
258 pasid = iommu_sva_get_pasid(sva); in idxd_cdev_open()
259 if (pasid == IOMMU_PASID_INVALID) { in idxd_cdev_open()
265 ctx->pasid = pasid; in idxd_cdev_open()
275 rc = idxd_wq_set_pasid(wq, pasid); in idxd_cdev_open()
348 if (entry_head->pasid == pasid && entry_head->wq_idx == wq->id) in idxd_cdev_evl_drain_pasid()
466 descriptor.pasid = ctx->pasid; in idxd_submit_user_descriptor()
[all …]
/drivers/iommu/
A Diommu-sva.c20 ioasid_t pasid; in iommu_alloc_mm_data() local
30 if (iommu_mm->pasid >= dev->iommu->max_pasids) in iommu_alloc_mm_data()
39 pasid = iommu_alloc_global_pasid(dev); in iommu_alloc_mm_data()
40 if (pasid == IOMMU_PASID_INVALID) { in iommu_alloc_mm_data()
44 iommu_mm->pasid = pasid; in iommu_alloc_mm_data()
90 attach_handle = iommu_attach_handle_get(group, iommu_mm->pasid, IOMMU_DOMAIN_SVA); in iommu_sva_bind_device()
115 ret = iommu_attach_device_pasid(domain, dev, iommu_mm->pasid, in iommu_sva_bind_device()
130 ret = iommu_attach_device_pasid(domain, dev, iommu_mm->pasid, in iommu_sva_bind_device()
173 iommu_detach_device_pasid(domain, dev, iommu_mm->pasid); in iommu_sva_unbind_device()
198 iommu_free_global_pasid(iommu_mm->pasid); in mm_pasid_drop()

Completed in 62 milliseconds

123456