Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

drm/amdgpu: Add umc channel index mapping table for umc_v8_10

Add umc channel index mapping table for umc_v8_10.

Signed-off-by: YiPeng Chai <YiPeng.Chai@amd.com>
Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com>
Reviewed-by: Tao Zhou <tao.zhou1@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>

authored by

YiPeng Chai and committed by
Alex Deucher
b6da3c58 469694e9

+18 -1
+4 -1
drivers/gpu/drm/amd/amdgpu/gmc_v11_0.c
··· 558 558 adev->umc.node_inst_num = adev->gmc.num_umc; 559 559 adev->umc.max_ras_err_cnt_per_query = UMC_V8_10_TOTAL_CHANNEL_NUM(adev); 560 560 adev->umc.channel_offs = UMC_V8_10_PER_CHANNEL_OFFSET; 561 - adev->umc.channel_idx_tbl = &umc_v8_10_channel_idx_tbl[0][0][0]; 561 + if (adev->umc.node_inst_num == 4) 562 + adev->umc.channel_idx_tbl = &umc_v8_10_channel_idx_tbl_ext0[0][0][0]; 563 + else 564 + adev->umc.channel_idx_tbl = &umc_v8_10_channel_idx_tbl[0][0][0]; 562 565 adev->umc.ras = &umc_v8_10_ras; 563 566 break; 564 567 case IP_VERSION(8, 11, 0):
+10
drivers/gpu/drm/amd/amdgpu/umc_v8_10.c
··· 46 46 }; 47 47 48 48 const uint32_t 49 + umc_v8_10_channel_idx_tbl_ext0[] 50 + [UMC_V8_10_UMC_INSTANCE_NUM] 51 + [UMC_V8_10_CHANNEL_INSTANCE_NUM] = { 52 + {{1, 5}, {7, 3}}, 53 + {{14, 15}, {13, 12}}, 54 + {{10, 11}, {9, 8}}, 55 + {{6, 2}, {0, 4}} 56 + }; 57 + 58 + const uint32_t 49 59 umc_v8_10_channel_idx_tbl[] 50 60 [UMC_V8_10_UMC_INSTANCE_NUM] 51 61 [UMC_V8_10_CHANNEL_INSTANCE_NUM] = {
+4
drivers/gpu/drm/amd/amdgpu/umc_v8_10.h
··· 66 66 [UMC_V8_10_UMC_INSTANCE_NUM] 67 67 [UMC_V8_10_CHANNEL_INSTANCE_NUM]; 68 68 69 + extern const uint32_t 70 + umc_v8_10_channel_idx_tbl_ext0[] 71 + [UMC_V8_10_UMC_INSTANCE_NUM] 72 + [UMC_V8_10_CHANNEL_INSTANCE_NUM]; 69 73 #endif 70 74