]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
drm/amdgpu: Remove unsupported xgmi versions
authorLijo Lazar <lijo.lazar@amd.com>
Thu, 6 Feb 2025 12:03:46 +0000 (17:33 +0530)
committerAlex Deucher <alexander.deucher@amd.com>
Fri, 14 Mar 2025 03:10:08 +0000 (23:10 -0400)
XGMI v4.8.0 is not used in any SOCs. Remove the associated functions.
Also, ensure get_xgmi_info callback pointer is not NULL before calling
the function.

Signed-off-by: Lijo Lazar <lijo.lazar@amd.com>
Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/amdgpu/amdgpu_discovery.c
drivers/gpu/drm/amd/amdgpu/gfxhub_v2_1.c

index a4258127083d00003f251fd7723694a3e472532f..967a992829bdbc9433c690f5784da5174f0e85f9 100644 (file)
@@ -2772,9 +2772,6 @@ int amdgpu_discovery_set_ip_blocks(struct amdgpu_device *adev)
                break;
        }
 
-       if (amdgpu_ip_version(adev, XGMI_HWIP, 0) == IP_VERSION(4, 8, 0))
-               adev->gmc.xgmi.supported = true;
-
        if (amdgpu_ip_version(adev, GC_HWIP, 0) == IP_VERSION(9, 4, 3) ||
            amdgpu_ip_version(adev, GC_HWIP, 0) == IP_VERSION(9, 4, 4))
                adev->ip_versions[XGMI_HWIP][0] = IP_VERSION(6, 4, 0);
index 17509f32f61a4f32b7fff17aeeba6369bdce5689..deb95fab02dfeed7c6777f6f9c227ae5df96a4a4 100644 (file)
@@ -505,42 +505,6 @@ static void gfxhub_v2_1_init(struct amdgpu_device *adev)
        hub->vmhub_funcs = &gfxhub_v2_1_vmhub_funcs;
 }
 
-static int gfxhub_v2_1_get_xgmi_info(struct amdgpu_device *adev)
-{
-       u32 xgmi_lfb_cntl = RREG32_SOC15(GC, 0, mmGCMC_VM_XGMI_LFB_CNTL);
-       u32 max_region =
-               REG_GET_FIELD(xgmi_lfb_cntl, GCMC_VM_XGMI_LFB_CNTL, PF_MAX_REGION);
-       u32 max_num_physical_nodes   = 0;
-       u32 max_physical_node_id     = 0;
-
-       switch (amdgpu_ip_version(adev, XGMI_HWIP, 0)) {
-       case IP_VERSION(4, 8, 0):
-               max_num_physical_nodes   = 4;
-               max_physical_node_id     = 3;
-               break;
-       default:
-               return -EINVAL;
-       }
-
-       /* PF_MAX_REGION=0 means xgmi is disabled */
-       if (max_region) {
-               adev->gmc.xgmi.num_physical_nodes = max_region + 1;
-               if (adev->gmc.xgmi.num_physical_nodes > max_num_physical_nodes)
-                       return -EINVAL;
-
-               adev->gmc.xgmi.physical_node_id =
-                       REG_GET_FIELD(xgmi_lfb_cntl, GCMC_VM_XGMI_LFB_CNTL, PF_LFB_REGION);
-               if (adev->gmc.xgmi.physical_node_id > max_physical_node_id)
-                       return -EINVAL;
-
-               adev->gmc.xgmi.node_segment_size = REG_GET_FIELD(
-                       RREG32_SOC15(GC, 0, mmGCMC_VM_XGMI_LFB_SIZE),
-                       GCMC_VM_XGMI_LFB_SIZE, PF_LFB_SIZE) << 24;
-       }
-
-       return 0;
-}
-
 static void gfxhub_v2_1_utcl2_harvest(struct amdgpu_device *adev)
 {
        int i;
@@ -696,7 +660,6 @@ const struct amdgpu_gfxhub_funcs gfxhub_v2_1_funcs = {
        .gart_disable = gfxhub_v2_1_gart_disable,
        .set_fault_enable_default = gfxhub_v2_1_set_fault_enable_default,
        .init = gfxhub_v2_1_init,
-       .get_xgmi_info = gfxhub_v2_1_get_xgmi_info,
        .utcl2_harvest = gfxhub_v2_1_utcl2_harvest,
        .mode2_save_regs = gfxhub_v2_1_save_regs,
        .mode2_restore_regs = gfxhub_v2_1_restore_regs,