OSDN Git Service

drm/amdgpu: set CPU mapping of vram as cached for A+A mode
authorEric Huang <jinhuieric.huang@amd.com>
Sat, 27 Feb 2021 21:51:19 +0000 (16:51 -0500)
committerAlex Deucher <alexander.deucher@amd.com>
Wed, 24 Mar 2021 03:00:44 +0000 (23:00 -0400)
New A+A HW supports cached vram mapped to cpu.

Signed-off-by: Eric Huang <jinhuieric.huang@amd.com>
Reviewed-by: Christian König <christian.koenig@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c

index 0ea1b68..c5fea14 100644 (file)
@@ -673,7 +673,10 @@ static int amdgpu_ttm_io_mem_reserve(struct ttm_bo_device *bdev, struct ttm_reso
 
                mem->bus.offset += adev->gmc.aper_base;
                mem->bus.is_iomem = true;
-               mem->bus.caching = ttm_write_combined;
+               if (adev->gmc.xgmi.connected_to_cpu)
+                       mem->bus.caching = ttm_cached;
+               else
+                       mem->bus.caching = ttm_write_combined;
                break;
        default:
                return -EINVAL;