Lines Matching refs:nested_domain
35 struct arm_smmu_nested_domain *nested_domain, bool ats_enabled)
38 target, master, nested_domain->vsmmu->s2_parent, ats_enabled);
43 target->data[0] |= nested_domain->ste[0] &
45 target->data[1] |= nested_domain->ste[1];
60 struct arm_smmu_nested_domain *nested_domain, bool ats_enabled)
63 FIELD_GET(STRTAB_STE_0_CFG, le64_to_cpu(nested_domain->ste[0]));
70 if (!(nested_domain->ste[0] & cpu_to_le64(STRTAB_STE_0_V)))
75 arm_smmu_make_nested_cd_table_ste(target, master, nested_domain,
80 nested_domain->vsmmu->s2_parent,
91 struct arm_smmu_nested_domain *nested_domain)
99 ret = iommufd_viommu_get_vdev_id(&nested_domain->vsmmu->core,
107 vmaster->vsmmu = nested_domain->vsmmu;
134 struct arm_smmu_nested_domain *nested_domain =
145 if (nested_domain->vsmmu->smmu != master->smmu)
159 state.disable_ats = !nested_domain->enable_ats;
166 arm_smmu_make_nested_domain_ste(&ste, master, nested_domain,
224 struct arm_smmu_nested_domain *nested_domain;
241 nested_domain = kzalloc(sizeof(*nested_domain), GFP_KERNEL_ACCOUNT);
242 if (!nested_domain)
245 nested_domain->domain.type = IOMMU_DOMAIN_NESTED;
246 nested_domain->domain.ops = &arm_smmu_nested_ops;
247 nested_domain->enable_ats = enable_ats;
248 nested_domain->vsmmu = vsmmu;
249 nested_domain->ste[0] = arg.ste[0];
250 nested_domain->ste[1] = arg.ste[1] & ~cpu_to_le64(STRTAB_STE_1_EATS);
252 return &nested_domain->domain;