Skip to content

Commit 8ab8a55

Browse files
YiPeng Chaicandicelicy
authored andcommitted
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 <[email protected]> Reviewed-by: Hawking Zhang <[email protected]> Reviewed-by: Tao Zhou <[email protected]>
1 parent a621c78 commit 8ab8a55

File tree

3 files changed

+18
-1
lines changed

3 files changed

+18
-1
lines changed

drivers/gpu/drm/amd/amdgpu/gmc_v11_0.c

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -546,7 +546,10 @@ static void gmc_v11_0_set_umc_funcs(struct amdgpu_device *adev)
546546
adev->umc.umc_inst_num = UMC_V8_10_UMC_INSTANCE_NUM;
547547
adev->umc.max_ras_err_cnt_per_query = UMC_V8_10_TOTAL_CHANNEL_NUM(adev);
548548
adev->umc.channel_offs = UMC_V8_10_PER_CHANNEL_OFFSET;
549-
adev->umc.channel_idx_tbl = &umc_v8_10_channel_idx_tbl[0][0][0];
549+
if (adev->umc.node_inst_num == 4)
550+
adev->umc.channel_idx_tbl = &umc_v8_10_channel_idx_tbl_ext0[0][0][0];
551+
else
552+
adev->umc.channel_idx_tbl = &umc_v8_10_channel_idx_tbl[0][0][0];
550553
adev->umc.ras = &umc_v8_10_ras;
551554
break;
552555
case IP_VERSION(8, 11, 0):

drivers/gpu/drm/amd/amdgpu/umc_v8_10.c

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,16 @@ const struct channelnum_map_colbit umc_v8_10_channelnum_map_colbit_table[] = {
4545
{6, 11},
4646
};
4747

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+
4858
const uint32_t
4959
umc_v8_10_channel_idx_tbl[]
5060
[UMC_V8_10_UMC_INSTANCE_NUM]

drivers/gpu/drm/amd/amdgpu/umc_v8_10.h

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -66,5 +66,9 @@ extern const uint32_t
6666
[UMC_V8_10_UMC_INSTANCE_NUM]
6767
[UMC_V8_10_CHANNEL_INSTANCE_NUM];
6868

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];
6973
#endif
7074

0 commit comments

Comments
 (0)