Loading drivers/gpu/msm/adreno.c +6 −2 Original line number Original line Diff line number Diff line Loading @@ -1111,8 +1111,12 @@ static int adreno_probe(struct platform_device *pdev) return status; return status; } } /* Bro, do you even 64 bit? */ /* if (ADRENO_FEATURE(adreno_dev, ADRENO_64BIT)) * The SMMU APIs use unsigned long for virtual addresses which means * that we cannot use 64 bit virtual addresses on a 32 bit kernel even * though the hardware and the rest of the KGSL driver supports it. */ if ((BITS_PER_LONG == 64) && ADRENO_FEATURE(adreno_dev, ADRENO_64BIT)) device->mmu.features |= KGSL_MMU_64BIT; device->mmu.features |= KGSL_MMU_64BIT; status = kgsl_device_platform_probe(device); status = kgsl_device_platform_probe(device); Loading drivers/gpu/msm/kgsl_iommu.c +2 −1 Original line number Original line Diff line number Diff line Loading @@ -22,6 +22,7 @@ #include <soc/qcom/scm.h> #include <soc/qcom/scm.h> #include <soc/qcom/secure_buffer.h> #include <soc/qcom/secure_buffer.h> #include <stddef.h> #include <stddef.h> #include <linux/compat.h> #include "kgsl.h" #include "kgsl.h" #include "kgsl_device.h" #include "kgsl_device.h" Loading Loading @@ -523,7 +524,7 @@ static void setup_64bit_pagetable(struct kgsl_mmu *mmu, if (pagetable->name != KGSL_MMU_GLOBAL_PT && if (pagetable->name != KGSL_MMU_GLOBAL_PT && pagetable->name != KGSL_MMU_SECURE_PT) { pagetable->name != KGSL_MMU_SECURE_PT) { if (is_compat_task()) { if ((BITS_PER_LONG == 32) || is_compat_task()) { pt->svm_start = KGSL_IOMMU_SVM_BASE32; pt->svm_start = KGSL_IOMMU_SVM_BASE32; pt->svm_end = KGSL_IOMMU_SVM_END32; pt->svm_end = KGSL_IOMMU_SVM_END32; } else { } else { Loading Loading
drivers/gpu/msm/adreno.c +6 −2 Original line number Original line Diff line number Diff line Loading @@ -1111,8 +1111,12 @@ static int adreno_probe(struct platform_device *pdev) return status; return status; } } /* Bro, do you even 64 bit? */ /* if (ADRENO_FEATURE(adreno_dev, ADRENO_64BIT)) * The SMMU APIs use unsigned long for virtual addresses which means * that we cannot use 64 bit virtual addresses on a 32 bit kernel even * though the hardware and the rest of the KGSL driver supports it. */ if ((BITS_PER_LONG == 64) && ADRENO_FEATURE(adreno_dev, ADRENO_64BIT)) device->mmu.features |= KGSL_MMU_64BIT; device->mmu.features |= KGSL_MMU_64BIT; status = kgsl_device_platform_probe(device); status = kgsl_device_platform_probe(device); Loading
drivers/gpu/msm/kgsl_iommu.c +2 −1 Original line number Original line Diff line number Diff line Loading @@ -22,6 +22,7 @@ #include <soc/qcom/scm.h> #include <soc/qcom/scm.h> #include <soc/qcom/secure_buffer.h> #include <soc/qcom/secure_buffer.h> #include <stddef.h> #include <stddef.h> #include <linux/compat.h> #include "kgsl.h" #include "kgsl.h" #include "kgsl_device.h" #include "kgsl_device.h" Loading Loading @@ -523,7 +524,7 @@ static void setup_64bit_pagetable(struct kgsl_mmu *mmu, if (pagetable->name != KGSL_MMU_GLOBAL_PT && if (pagetable->name != KGSL_MMU_GLOBAL_PT && pagetable->name != KGSL_MMU_SECURE_PT) { pagetable->name != KGSL_MMU_SECURE_PT) { if (is_compat_task()) { if ((BITS_PER_LONG == 32) || is_compat_task()) { pt->svm_start = KGSL_IOMMU_SVM_BASE32; pt->svm_start = KGSL_IOMMU_SVM_BASE32; pt->svm_end = KGSL_IOMMU_SVM_END32; pt->svm_end = KGSL_IOMMU_SVM_END32; } else { } else { Loading