]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
drm/amdgpu: set gfxhub according xcc_mask for gfx 12_1
authorLikun Gao <Likun.Gao@amd.com>
Fri, 18 Apr 2025 03:06:51 +0000 (11:06 +0800)
committerAlex Deucher <alexander.deucher@amd.com>
Mon, 8 Dec 2025 19:27:03 +0000 (14:27 -0500)
Set GFXHUB accodring to xcc_mask for gfx version 12_1.

Signed-off-by: Likun Gao <Likun.Gao@amd.com>
Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/amdgpu/gmc_v12_0.c

index 145fcefd1c7839d4df581bb9702a527b68ceb94d..bb3d7fc40122be5d30c03bbb6133d1c0472e8ae5 100644 (file)
@@ -788,7 +788,6 @@ static int gmc_v12_0_sw_init(struct amdgpu_ip_block *ip_block)
        switch (amdgpu_ip_version(adev, GC_HWIP, 0)) {
        case IP_VERSION(12, 0, 0):
        case IP_VERSION(12, 0, 1):
-       case IP_VERSION(12, 1, 0):
                set_bit(AMDGPU_GFXHUB(0), adev->vmhubs_mask);
                set_bit(AMDGPU_MMHUB0(0), adev->vmhubs_mask);
                /*
@@ -798,6 +797,17 @@ static int gmc_v12_0_sw_init(struct amdgpu_ip_block *ip_block)
                 */
                amdgpu_vm_adjust_size(adev, 256 * 1024, 9, 3, 48);
                break;
+       case IP_VERSION(12, 1, 0):
+               bitmap_set(adev->vmhubs_mask, AMDGPU_GFXHUB(0),
+                               NUM_XCC(adev->gfx.xcc_mask));
+               set_bit(AMDGPU_MMHUB0(0), adev->vmhubs_mask);
+               /*
+                * To fulfill 4-level page support,
+                * vm size is 256TB (48bit), maximum size,
+                * block size 512 (9bit)
+                */
+               amdgpu_vm_adjust_size(adev, 256 * 1024, 9, 3, 48);
+               break;
        default:
                break;
        }