SWDEV-426130 - Updated firmware subcommand output

Corrected truncation
	corrected xgmi to ta_xgmi
	remapped smc(system management controller) to pm(power
management)

Signed-off-by: Maisam Arif <maisarif@amd.com>
Change-Id: I404cefa7b90a454d4f4b08f6490448b47cf32107


[ROCm/amdsmi commit: 545e57d3e3]
Bu işleme şunda yer alıyor:
Maisam Arif
2023-11-10 23:43:17 -06:00
işlemeyi yapan: Maisam Arif
ebeveyn 643042695d
işleme 37a41c3bc8
8 değiştirilmiş dosya ile 32 ekleme ve 25 silme
+1 -1
Dosyayı Görüntüle
@@ -625,7 +625,7 @@ class AMDSMICommands():
for fw_index, fw_entry in enumerate(fw_info['fw_list']):
# Change fw_name to fw_id
fw_entry['fw_id'] = fw_entry.pop('fw_name').name.strip('FW_ID_')
fw_entry['fw_id'] = fw_entry.pop('fw_name').name.replace("FW_ID_", "")
fw_entry['fw_version'] = fw_entry.pop('fw_version') # popping to ensure order
# Add custom human readable formatting
+4 -4
Dosyayı Görüntüle
@@ -191,8 +191,8 @@ void getFWNameFromId(int id, char *name)
case FW_ID_TA_RAS:
strcpy(name, "ID_TA_RAS");
break;
case FW_ID_XGMI:
strcpy(name, "ID_XGMI");
case FW_ID_TA_XGMI:
strcpy(name, "ID_TA_XGMI");
break;
case FW_ID_RLC_SRLG:
strcpy(name, "ID_RLC_SRLG");
@@ -200,8 +200,8 @@ void getFWNameFromId(int id, char *name)
case FW_ID_RLC_SRLS:
strcpy(name, "ID_RLC_SRLS");
break;
case FW_ID_SMC:
strcpy(name, "ID_SMC");
case FW_ID_PM:
strcpy(name, "ID_PM");
break;
case FW_ID_DMCU:
strcpy(name, "ID_DMCU");
+2 -2
Dosyayı Görüntüle
@@ -186,8 +186,8 @@ int main() {
printf("\tSMU: %ld\n",
fw_information.fw_info_list[amdsmi_fw_block_t::FW_ID_SMU]
.fw_version);
printf("\tSMC: %ld\n",
fw_information.fw_info_list[amdsmi_fw_block_t::FW_ID_SMC]
printf("\tPM: %ld\n",
fw_information.fw_info_list[amdsmi_fw_block_t::FW_ID_PM]
.fw_version);
printf("\tVCN: %ld\n",
fw_information.fw_info_list[amdsmi_fw_block_t::FW_ID_VCN]
+2 -2
Dosyayı Görüntüle
@@ -357,10 +357,10 @@ typedef enum {
FW_ID_RLC_SAVE_RESTORE_LIST,
FW_ID_ASD,
FW_ID_TA_RAS,
FW_ID_XGMI,
FW_ID_TA_XGMI,
FW_ID_RLC_SRLG,
FW_ID_RLC_SRLS,
FW_ID_SMC,
FW_ID_PM,
FW_ID_DMCU,
FW_ID__MAX
} amdsmi_fw_block_t;
+12 -5
Dosyayı Görüntüle
@@ -130,10 +130,10 @@ class AmdSmiFwBlock(IntEnum):
FW_ID_RLC_SAVE_RESTORE_LIST = amdsmi_wrapper.FW_ID_RLC_SAVE_RESTORE_LIST
FW_ID_ASD = amdsmi_wrapper.FW_ID_ASD
FW_ID_TA_RAS = amdsmi_wrapper.FW_ID_TA_RAS
FW_ID_XGMI = amdsmi_wrapper.FW_ID_XGMI
FW_ID_TA_XGMI = amdsmi_wrapper.FW_ID_TA_XGMI
FW_ID_RLC_SRLG = amdsmi_wrapper.FW_ID_RLC_SRLG
FW_ID_RLC_SRLS = amdsmi_wrapper.FW_ID_RLC_SRLS
FW_ID_SMC = amdsmi_wrapper.FW_ID_SMC
FW_ID_PM = amdsmi_wrapper.FW_ID_PM
FW_ID_DMCU = amdsmi_wrapper.FW_ID_DMCU
@@ -1667,14 +1667,15 @@ def amdsmi_get_fw_info(
_check_res(amdsmi_wrapper.amdsmi_get_fw_info(
processor_handle, ctypes.byref(fw_info)))
hex_format_fw = [AmdSmiFwBlock.FW_ID_SMC,
AmdSmiFwBlock.FW_ID_PSP_SOSDRV,
hex_format_fw = [AmdSmiFwBlock.FW_ID_PSP_SOSDRV,
AmdSmiFwBlock.FW_ID_TA_RAS,
AmdSmiFwBlock.FW_ID_XGMI,
AmdSmiFwBlock.FW_ID_TA_XGMI,
AmdSmiFwBlock.FW_ID_UVD,
AmdSmiFwBlock.FW_ID_VCE,
AmdSmiFwBlock.FW_ID_VCN]
dec_format_fw = [AmdSmiFwBlock.FW_ID_PM]
firmwares = []
for i in range(0, fw_info.num_fw_info):
fw_name = AmdSmiFwBlock(fw_info.fw_info_list[i].fw_id)
@@ -1682,6 +1683,12 @@ def amdsmi_get_fw_info(
if fw_name in hex_format_fw:
fw_version_string = ".".join(re.findall('..?', hex(fw_version)[2:]))
elif fw_name in dec_format_fw:
# Convert every two hex digits to decimal and join them with a dot
dec_version_string = ''
for ver1,ver2 in zip(hex(fw_version)[2::2], hex(fw_version)[3::2]):
dec_version_string += str(int(f"0x{ver1}{ver2}", 0)) + "."
fw_version_string = dec_version_string.strip('.')
else:
fw_version_string = str(fw_version)
+7 -7
Dosyayı Görüntüle
@@ -496,10 +496,10 @@ amdsmi_fw_block_t__enumvalues = {
71: 'FW_ID_RLC_SAVE_RESTORE_LIST',
72: 'FW_ID_ASD',
73: 'FW_ID_TA_RAS',
74: 'FW_ID_XGMI',
74: 'FW_ID_TA_XGMI',
75: 'FW_ID_RLC_SRLG',
76: 'FW_ID_RLC_SRLS',
77: 'FW_ID_SMC',
77: 'FW_ID_PM',
78: 'FW_ID_DMCU',
79: 'FW_ID__MAX',
}
@@ -577,10 +577,10 @@ FW_ID_RLCV_LX7 = 70
FW_ID_RLC_SAVE_RESTORE_LIST = 71
FW_ID_ASD = 72
FW_ID_TA_RAS = 73
FW_ID_XGMI = 74
FW_ID_TA_XGMI = 74
FW_ID_RLC_SRLG = 75
FW_ID_RLC_SRLS = 76
FW_ID_SMC = 77
FW_ID_PM = 77
FW_ID_DMCU = 78
FW_ID__MAX = 79
amdsmi_fw_block_t = ctypes.c_uint32 # enum
@@ -2235,9 +2235,9 @@ __all__ = \
'FW_ID_RS64_PFP_P1_DATA', 'FW_ID_SDMA0', 'FW_ID_SDMA1',
'FW_ID_SDMA2', 'FW_ID_SDMA3', 'FW_ID_SDMA4', 'FW_ID_SDMA5',
'FW_ID_SDMA6', 'FW_ID_SDMA7', 'FW_ID_SDMA_TH0', 'FW_ID_SDMA_TH1',
'FW_ID_SEC_POLICY_STAGE2', 'FW_ID_SMC', 'FW_ID_SMU',
'FW_ID_TA_RAS', 'FW_ID_UVD', 'FW_ID_VCE', 'FW_ID_VCN',
'FW_ID_XGMI', 'FW_ID__MAX', 'MEMORY_PARTITION_NPS1',
'FW_ID_SEC_POLICY_STAGE2', 'FW_ID_PM', 'FW_ID_SMU',
'FW_ID_TA_RAS', 'FW_ID_TA_XGMI', 'FW_ID_UVD', 'FW_ID_VCE',
'FW_ID_VCN', 'FW_ID__MAX', 'MEMORY_PARTITION_NPS1',
'MEMORY_PARTITION_NPS2', 'MEMORY_PARTITION_NPS4',
'MEMORY_PARTITION_NPS8', 'MEMORY_PARTITION_UNKNOWN',
'NON_AMD_CPU', 'NON_AMD_GPU', 'RD_BW0', 'TEMPERATURE_TYPE_EDGE',
+2 -2
Dosyayı Görüntüle
@@ -662,10 +662,10 @@ amdsmi_status_t amdsmi_get_fw_info(amdsmi_processor_handle processor_handle,
{ FW_ID_RLC_RESTORE_LIST_SRM_MEM, RSMI_FW_BLOCK_RLC_SRLS},
{ FW_ID_SDMA0, RSMI_FW_BLOCK_SDMA},
{ FW_ID_SDMA1, RSMI_FW_BLOCK_SDMA2},
{ FW_ID_SMC, RSMI_FW_BLOCK_SMC},
{ FW_ID_PM, RSMI_FW_BLOCK_SMC},
{ FW_ID_PSP_SOSDRV, RSMI_FW_BLOCK_SOS},
{ FW_ID_TA_RAS, RSMI_FW_BLOCK_TA_RAS},
{ FW_ID_XGMI, RSMI_FW_BLOCK_TA_XGMI},
{ FW_ID_TA_XGMI, RSMI_FW_BLOCK_TA_XGMI},
{ FW_ID_UVD, RSMI_FW_BLOCK_UVD},
{ FW_ID_VCE, RSMI_FW_BLOCK_VCE},
{ FW_ID_VCN, RSMI_FW_BLOCK_VCN}
+2 -2
Dosyayı Görüntüle
@@ -64,10 +64,10 @@ static const std::map<amdsmi_fw_block_t, const char *> kDevFWNameMap = {
{FW_ID_RLC_SRLS, "rlc_srls"},
{FW_ID_SDMA1, "sdma1"},
{FW_ID_SDMA2, "sdma2"},
{FW_ID_SMC, "smc"},
{FW_ID_PM, "pm"},
{FW_ID_PSP_SOSDRV, "sos"},
{FW_ID_TA_RAS, "ta_ras"},
{FW_ID_XGMI, "ta_xgmi"},
{FW_ID_TA_XGMI, "ta_xgmi"},
{FW_ID_UVD, "uvd"},
{FW_ID_VCE, "vce"},
{FW_ID_VCN, "vcn"},