@@ -312,6 +312,8 @@ static struct iommu_domain *msm_iommu_domain_alloc_paging(struct device *dev)
312
312
313
313
INIT_LIST_HEAD (& priv -> list_attached );
314
314
315
+ priv -> domain .pgsize_bitmap = MSM_IOMMU_PGSIZES ;
316
+
315
317
priv -> domain .geometry .aperture_start = 0 ;
316
318
priv -> domain .geometry .aperture_end = (1ULL << 32 ) - 1 ;
317
319
priv -> domain .geometry .force_aperture = true;
@@ -339,7 +341,7 @@ static int msm_iommu_domain_config(struct msm_priv *priv)
339
341
spin_lock_init (& priv -> pgtlock );
340
342
341
343
priv -> cfg = (struct io_pgtable_cfg ) {
342
- .pgsize_bitmap = msm_iommu_ops .pgsize_bitmap ,
344
+ .pgsize_bitmap = priv -> domain .pgsize_bitmap ,
343
345
.ias = 32 ,
344
346
.oas = 32 ,
345
347
.tlb = & msm_iommu_flush_ops ,
@@ -352,8 +354,6 @@ static int msm_iommu_domain_config(struct msm_priv *priv)
352
354
return - EINVAL ;
353
355
}
354
356
355
- msm_iommu_ops .pgsize_bitmap = priv -> cfg .pgsize_bitmap ;
356
-
357
357
return 0 ;
358
358
}
359
359
@@ -692,7 +692,6 @@ static struct iommu_ops msm_iommu_ops = {
692
692
.domain_alloc_paging = msm_iommu_domain_alloc_paging ,
693
693
.probe_device = msm_iommu_probe_device ,
694
694
.device_group = generic_device_group ,
695
- .pgsize_bitmap = MSM_IOMMU_PGSIZES ,
696
695
.of_xlate = qcom_iommu_of_xlate ,
697
696
.default_domain_ops = & (const struct iommu_domain_ops ) {
698
697
.attach_dev = msm_iommu_attach_dev ,
0 commit comments