diff --git a/drivers/gpu/msm/adreno.c b/drivers/gpu/msm/adreno.c index f3d6b6ccdb9b..d1fb8d4772de 100644 --- a/drivers/gpu/msm/adreno.c +++ b/drivers/gpu/msm/adreno.c @@ -1418,6 +1418,9 @@ static int adreno_bind(struct device *dev) if (adreno_is_a6xx(adreno_dev)) kgsl_mmu_set_feature(device, KGSL_MMU_SMMU_APERTURE); + if (ADRENO_FEATURE(adreno_dev, ADRENO_IOCOHERENT)) + kgsl_mmu_set_feature(device, KGSL_MMU_IO_COHERENT); + device->pwrctrl.bus_width = adreno_dev->gpucore->bus_width; device->mmu.secured = (IS_ENABLED(CONFIG_QCOM_SECURE_BUFFER) && @@ -1449,9 +1452,6 @@ static int adreno_bind(struct device *dev) adreno_isense_probe(device); - if (ADRENO_FEATURE(adreno_dev, ADRENO_IOCOHERENT)) - kgsl_mmu_set_feature(device, KGSL_MMU_IO_COHERENT); - /* Allocate the memstore for storing timestamps and other useful info */ if (ADRENO_FEATURE(adreno_dev, ADRENO_APRIV)) diff --git a/drivers/gpu/msm/kgsl_iommu.c b/drivers/gpu/msm/kgsl_iommu.c index 2b19b6632b23..e2f0855b8a2a 100644 --- a/drivers/gpu/msm/kgsl_iommu.c +++ b/drivers/gpu/msm/kgsl_iommu.c @@ -842,7 +842,7 @@ static void kgsl_iommu_enable_clk(struct kgsl_mmu *mmu) struct kgsl_iommu *iommu = _IOMMU_PRIV(mmu); if (!IS_ERR_OR_NULL(iommu->cx_gdsc)) - regulator_enable(iommu->cx_gdsc); + WARN_ON(regulator_enable(iommu->cx_gdsc)); for (j = 0; j < KGSL_IOMMU_MAX_CLKS; j++) { if (iommu->clks[j])