OSDN Git Service

drm/amdgpu: Move calculation of xcp per memory node
authorLijo Lazar <lijo.lazar@amd.com>
Wed, 14 Jun 2023 04:16:49 +0000 (09:46 +0530)
committerAlex Deucher <alexander.deucher@amd.com>
Fri, 23 Jun 2023 19:31:55 +0000 (15:31 -0400)
Its value is required for finding the memory id of xcp.

Fixes: d26ea1b346e7 ("drm/amdgpu: Add xcp manager num_xcp_per_mem_partition")
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_xcp.c

index d733fa6..9687df9 100644 (file)
@@ -132,6 +132,9 @@ int amdgpu_xcp_init(struct amdgpu_xcp_mgr *xcp_mgr, int num_xcps, int mode)
        for (i = 0; i < MAX_XCP; ++i)
                xcp_mgr->xcp[i].valid = false;
 
+       /* This is needed for figuring out memory id of xcp */
+       xcp_mgr->num_xcp_per_mem_partition = num_xcps / xcp_mgr->adev->gmc.num_mem_partitions;
+
        for (i = 0; i < num_xcps; ++i) {
                for (j = AMDGPU_XCP_GFXHUB; j < AMDGPU_XCP_MAX_BLOCKS; ++j) {
                        ret = xcp_mgr->funcs->get_ip_details(xcp_mgr, i, j,
@@ -157,7 +160,6 @@ int amdgpu_xcp_init(struct amdgpu_xcp_mgr *xcp_mgr, int num_xcps, int mode)
        xcp_mgr->num_xcps = num_xcps;
        amdgpu_xcp_update_partition_sched_list(adev);
 
-       xcp_mgr->num_xcp_per_mem_partition = num_xcps / xcp_mgr->adev->gmc.num_mem_partitions;
        return 0;
 }