Loading drivers/gpu/msm/kgsl_iommu.c +11 −0 Original line number Diff line number Diff line Loading @@ -18,6 +18,7 @@ #include <linux/slab.h> #include <linux/iommu.h> #include <linux/msm_kgsl.h> #include <soc/qcom/secure_buffer.h> #include <stddef.h> #include "kgsl.h" Loading Loading @@ -558,6 +559,16 @@ static int kgsl_iommu_init_pt(struct kgsl_mmu *mmu, struct kgsl_pagetable *pt) iommu_domain_set_attr(iommu_pt->domain, DOMAIN_ATTR_COHERENT_HTW_DISABLE, &disable_htw); /* Provide the secure vmid domain attribute to the SMMU driver */ if (pt->name == KGSL_MMU_SECURE_PT) { int secure_vmid = VMID_CP_PIXEL; ret = iommu_domain_set_attr(iommu_pt->domain, DOMAIN_ATTR_SECURE_VMID, &secure_vmid); if (ret) goto err; } pt->pt_ops = &iommu_pt_ops; pt->priv = iommu_pt; Loading drivers/gpu/msm/kgsl_mmu.c +1 −4 Original line number Diff line number Diff line Loading @@ -825,10 +825,7 @@ kgsl_mmu_map(struct kgsl_pagetable *pagetable, if (kgsl_memdesc_has_guard_page(memdesc)) size += kgsl_memdesc_guard_page_size(memdesc); if (KGSL_MMU_TYPE_IOMMU != kgsl_mmu_get_mmutype()) spin_lock(&pagetable->lock); ret = pagetable->pt_ops->mmu_map(pagetable, memdesc); if (KGSL_MMU_TYPE_IOMMU == kgsl_mmu_get_mmutype()) spin_lock(&pagetable->lock); if (ret) Loading Loading
drivers/gpu/msm/kgsl_iommu.c +11 −0 Original line number Diff line number Diff line Loading @@ -18,6 +18,7 @@ #include <linux/slab.h> #include <linux/iommu.h> #include <linux/msm_kgsl.h> #include <soc/qcom/secure_buffer.h> #include <stddef.h> #include "kgsl.h" Loading Loading @@ -558,6 +559,16 @@ static int kgsl_iommu_init_pt(struct kgsl_mmu *mmu, struct kgsl_pagetable *pt) iommu_domain_set_attr(iommu_pt->domain, DOMAIN_ATTR_COHERENT_HTW_DISABLE, &disable_htw); /* Provide the secure vmid domain attribute to the SMMU driver */ if (pt->name == KGSL_MMU_SECURE_PT) { int secure_vmid = VMID_CP_PIXEL; ret = iommu_domain_set_attr(iommu_pt->domain, DOMAIN_ATTR_SECURE_VMID, &secure_vmid); if (ret) goto err; } pt->pt_ops = &iommu_pt_ops; pt->priv = iommu_pt; Loading
drivers/gpu/msm/kgsl_mmu.c +1 −4 Original line number Diff line number Diff line Loading @@ -825,10 +825,7 @@ kgsl_mmu_map(struct kgsl_pagetable *pagetable, if (kgsl_memdesc_has_guard_page(memdesc)) size += kgsl_memdesc_guard_page_size(memdesc); if (KGSL_MMU_TYPE_IOMMU != kgsl_mmu_get_mmutype()) spin_lock(&pagetable->lock); ret = pagetable->pt_ops->mmu_map(pagetable, memdesc); if (KGSL_MMU_TYPE_IOMMU == kgsl_mmu_get_mmutype()) spin_lock(&pagetable->lock); if (ret) Loading