[PATCH] drm/amdgpu: Fix incorrect PTE flags gfx12

David Yat Sin David.YatSin at amd.com
Sun Jul 27 16:52:18 UTC 2025


NV10 mask used for gfx12. Fix it.
Put back DCC flag and default mtype to MTYPE_NC.

Fixes: b8c76c59987a ("drm/amdgpu: rework how PTE flags are generated")

Suggested-by: Felix Kuehling <Felix.Kuehling at amd.com>
Co-authored-by: Harish Kasiviswanathan <Harish.Kasiviswanathan at amd.com>
Signed-off-by: David Yat Sin <David.YatSin at amd.com>
Signed-off-by: Harish Kasiviswanathan <Harish.Kasiviswanathan at amd.com>
Tested-by: Mark Broadworth <mark.broadworth at amd.com>
---
 drivers/gpu/drm/amd/amdgpu/gmc_v12_0.c | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/drivers/gpu/drm/amd/amdgpu/gmc_v12_0.c b/drivers/gpu/drm/amd/amdgpu/gmc_v12_0.c
index fb3fb31724a8..feb92e107af8 100644
--- a/drivers/gpu/drm/amd/amdgpu/gmc_v12_0.c
+++ b/drivers/gpu/drm/amd/amdgpu/gmc_v12_0.c
@@ -514,10 +514,11 @@ static void gmc_v12_0_get_vm_pte(struct amdgpu_device *adev,
 		*flags &= ~AMDGPU_PTE_VALID;
 	}
 
-	if (bo && bo->flags & (AMDGPU_GEM_CREATE_COHERENT |
-			       AMDGPU_GEM_CREATE_EXT_COHERENT |
-			       AMDGPU_GEM_CREATE_UNCACHED))
-		*flags = AMDGPU_PTE_MTYPE_NV10(*flags, MTYPE_UC);
+	if (bo && bo->flags & AMDGPU_GEM_CREATE_GFX12_DCC)
+		*flags |= AMDGPU_PTE_DCC;
+
+	if (bo && bo->flags & AMDGPU_GEM_CREATE_UNCACHED)
+		*flags = AMDGPU_PTE_MTYPE_GFX12(*flags, MTYPE_UC);
 }
 
 static unsigned gmc_v12_0_get_vbios_fb_size(struct amdgpu_device *adev)
-- 
2.34.1



More information about the amd-gfx mailing list