Lines Matching refs:vmid
41 a += key->asid + key->vmid + key->level + key->tg; in smmu_iotlb_key_hash()
57 (k1->vmid == k2->vmid); in smmu_iotlb_key_equal()
60 SMMUIOTLBKey smmu_get_iotlb_key(int asid, int vmid, uint64_t iova, in smmu_get_iotlb_key() argument
63 SMMUIOTLBKey key = {.asid = asid, .vmid = vmid, .iova = iova, in smmu_get_iotlb_key()
85 key = smmu_get_iotlb_key(cfg->asid, cfg->s2cfg.vmid, in smmu_iotlb_lookup_all_levels()
126 trace_smmu_iotlb_lookup_hit(cfg->asid, cfg->s2cfg.vmid, iova, in smmu_iotlb_lookup()
132 trace_smmu_iotlb_lookup_miss(cfg->asid, cfg->s2cfg.vmid, iova, in smmu_iotlb_lookup()
149 *key = smmu_get_iotlb_key(cfg->asid, cfg->s2cfg.vmid, new->entry.iova, in smmu_iotlb_insert()
151 trace_smmu_iotlb_insert(cfg->asid, cfg->s2cfg.vmid, new->entry.iova, in smmu_iotlb_insert()
169 (SMMU_IOTLB_VMID(*iotlb_key) == info->vmid); in smmu_hash_remove_by_asid_vmid()
175 int vmid = *(int *)user_data; in smmu_hash_remove_by_vmid() local
178 return SMMU_IOTLB_VMID(*iotlb_key) == vmid; in smmu_hash_remove_by_vmid()
184 int vmid = *(int *)user_data; in smmu_hash_remove_by_vmid_s1() local
187 return (SMMU_IOTLB_VMID(*iotlb_key) == vmid) && in smmu_hash_remove_by_vmid_s1()
202 if (info->vmid >= 0 && info->vmid != SMMU_IOTLB_VMID(iotlb_key)) { in smmu_hash_remove_by_asid_vmid_iova()
221 if (info->vmid != SMMU_IOTLB_VMID(iotlb_key)) { in smmu_hash_remove_by_vmid_ipa()
228 void smmu_iotlb_inv_iova(SMMUState *s, int asid, int vmid, dma_addr_t iova, in smmu_iotlb_inv_iova() argument
235 SMMUIOTLBKey key = smmu_get_iotlb_key(asid, vmid, iova, tg, ttl); in smmu_iotlb_inv_iova()
248 .vmid = vmid, in smmu_iotlb_inv_iova()
260 void smmu_iotlb_inv_ipa(SMMUState *s, int vmid, dma_addr_t ipa, uint8_t tg, in smmu_iotlb_inv_ipa() argument
267 SMMUIOTLBKey key = smmu_get_iotlb_key(asid, vmid, ipa, tg, ttl); in smmu_iotlb_inv_ipa()
276 .vmid = vmid, in smmu_iotlb_inv_ipa()
284 void smmu_iotlb_inv_asid_vmid(SMMUState *s, int asid, int vmid) in smmu_iotlb_inv_asid_vmid() argument
288 .vmid = vmid, in smmu_iotlb_inv_asid_vmid()
291 trace_smmu_iotlb_inv_asid_vmid(asid, vmid); in smmu_iotlb_inv_asid_vmid()
295 void smmu_iotlb_inv_vmid(SMMUState *s, int vmid) in smmu_iotlb_inv_vmid() argument
297 trace_smmu_iotlb_inv_vmid(vmid); in smmu_iotlb_inv_vmid()
298 g_hash_table_foreach_remove(s->iotlb, smmu_hash_remove_by_vmid, &vmid); in smmu_iotlb_inv_vmid()
301 inline void smmu_iotlb_inv_vmid_s1(SMMUState *s, int vmid) in smmu_iotlb_inv_vmid_s1() argument
303 trace_smmu_iotlb_inv_vmid_s1(vmid); in smmu_iotlb_inv_vmid_s1()
304 g_hash_table_foreach_remove(s->iotlb, smmu_hash_remove_by_vmid_s1, &vmid); in smmu_iotlb_inv_vmid_s1()