From 6da33b8ded06700c39459c2d2d5cb0be67ef3c53 Mon Sep 17 00:00:00 2001 From: Maisam Arif Date: Thu, 12 Jun 2025 02:18:55 -0500 Subject: [PATCH] [SWDEV-529665] PLDM Bundle naming Signed-off-by: Maisam Arif Change-Id: Id7f652ddc4e790027869683a4aaa3226ffc05c83 --- CHANGELOG.md | 3 ++- example/amd_smi_drm_example.cc | 4 ++-- example/amd_smi_nodrm_example.cc | 6 +++--- include/amd_smi/amdsmi.h | 2 +- py-interface/amdsmi_interface.py | 4 ++-- py-interface/amdsmi_wrapper.py | 19 ++++++++++--------- rocm_smi/include/rocm_smi/rocm_smi.h | 4 ++-- rocm_smi/include/rocm_smi/rocm_smi_device.h | 2 +- rocm_smi/src/rocm_smi.cc | 2 +- rocm_smi/src/rocm_smi_device.cc | 12 ++++++------ src/amd_smi/amd_smi.cc | 2 +- tests/python_unittest/README.md | 4 ++-- 12 files changed, 33 insertions(+), 31 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index f13b2e7cf3..aa70c5426f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -307,7 +307,8 @@ Full documentation for amd_smi_lib is available at [https://rocm.docs.amd.com/pr ... ``` -- **Added new firmware PLDM**. +- **Added new firmware PLDM_BUNDLE**. + - `amd-smi firmware` can now show the PLDM Bundle on supported systems. ### Changed diff --git a/example/amd_smi_drm_example.cc b/example/amd_smi_drm_example.cc index d5479b2546..430bd304a5 100644 --- a/example/amd_smi_drm_example.cc +++ b/example/amd_smi_drm_example.cc @@ -199,8 +199,8 @@ void getFWNameFromId(int id, char *name) case AMDSMI_FW_ID_DMCU: strcpy(name, "ID_DMCU"); break; - case AMDSMI_FW_ID_PLDM: - strcpy(name, "PLDM"); + case AMDSMI_FW_ID_PLDM_BUNDLE: + strcpy(name, "PLDM_BUNDLE"); break; default: strcpy(name, ""); diff --git a/example/amd_smi_nodrm_example.cc b/example/amd_smi_nodrm_example.cc index f952f78d09..a1653bfb3d 100644 --- a/example/amd_smi_nodrm_example.cc +++ b/example/amd_smi_nodrm_example.cc @@ -216,9 +216,9 @@ int main() { fw_information.fw_info_list[amdsmi_fw_block_t::AMDSMI_FW_ID_PSP_SOSDRV] .fw_version); printf( - "\tPLDM: %ld\n\n", - fw_information.fw_info_list[amdsmi_fw_block_t::AMDSMI_FW_ID_PLDM] - .fw_version); + "\tPLDM BUNDLE: %ld\n\n", + fw_information.fw_info_list[amdsmi_fw_block_t::AMDSMI_FW_ID_PLDM_BUNDLE] + .fw_version); // Get temperature measurements int64_t temp_measurements[AMDSMI_TEMPERATURE_TYPE__MAX + 1]; diff --git a/include/amd_smi/amdsmi.h b/include/amd_smi/amdsmi.h index 963a979955..4073459fdf 100644 --- a/include/amd_smi/amdsmi.h +++ b/include/amd_smi/amdsmi.h @@ -554,7 +554,7 @@ typedef enum { AMDSMI_FW_ID_RLC_SRLS, //!< Rasterizier and L2 Cache - Shared Resource Local Segment AMDSMI_FW_ID_PM, //!< Power Management Firmware AMDSMI_FW_ID_DMCU, //!< Display Micro-Controller Unit - AMDSMI_FW_ID_PLDM, //!< Platform Level Data Model + AMDSMI_FW_ID_PLDM_BUNDLE, //!< Platform Level Data Model Firmware Bundle AMDSMI_FW_ID__MAX } amdsmi_fw_block_t; diff --git a/py-interface/amdsmi_interface.py b/py-interface/amdsmi_interface.py index 84ffdca2c8..9e660b708e 100644 --- a/py-interface/amdsmi_interface.py +++ b/py-interface/amdsmi_interface.py @@ -191,7 +191,7 @@ class AmdSmiFwBlock(IntEnum): AMDSMI_FW_ID_RLC_SRLS = amdsmi_wrapper.AMDSMI_FW_ID_RLC_SRLS AMDSMI_FW_ID_PM = amdsmi_wrapper.AMDSMI_FW_ID_PM AMDSMI_FW_ID_DMCU = amdsmi_wrapper.AMDSMI_FW_ID_DMCU - AMDSMI_FW_ID_PLDM = amdsmi_wrapper.AMDSMI_FW_ID_PLDM + AMDSMI_FW_ID_PLDM_BUNDLE = amdsmi_wrapper.AMDSMI_FW_ID_PLDM_BUNDLE class AmdSmiClkType(IntEnum): @@ -2808,7 +2808,7 @@ def amdsmi_get_fw_info( # However, they are parsed as: int(0x12).int(0x34).int(0x56).int(0x78) # Which results in the following: 12.34.56.78 dec_format_fw = [AmdSmiFwBlock.AMDSMI_FW_ID_PM, - AmdSmiFwBlock.AMDSMI_FW_ID_PLDM] + AmdSmiFwBlock.AMDSMI_FW_ID_PLDM_BUNDLE] firmwares = [] for i in range(0, fw_info.num_fw_info): diff --git a/py-interface/amdsmi_wrapper.py b/py-interface/amdsmi_wrapper.py index e8974b3ce2..63cdf2d7c3 100644 --- a/py-interface/amdsmi_wrapper.py +++ b/py-interface/amdsmi_wrapper.py @@ -584,7 +584,7 @@ amdsmi_fw_block_t__enumvalues = { 76: 'AMDSMI_FW_ID_RLC_SRLS', 77: 'AMDSMI_FW_ID_PM', 78: 'AMDSMI_FW_ID_DMCU', - 79: 'AMDSMI_FW_ID_PLDM', + 79: 'AMDSMI_FW_ID_PLDM_BUNDLE', 80: 'AMDSMI_FW_ID__MAX', } AMDSMI_FW_ID_SMU = 1 @@ -666,7 +666,7 @@ AMDSMI_FW_ID_RLC_SRLG = 75 AMDSMI_FW_ID_RLC_SRLS = 76 AMDSMI_FW_ID_PM = 77 AMDSMI_FW_ID_DMCU = 78 -AMDSMI_FW_ID_PLDM = 79 +AMDSMI_FW_ID_PLDM_BUNDLE = 79 AMDSMI_FW_ID__MAX = 80 amdsmi_fw_block_t = ctypes.c_uint32 # enum @@ -3044,13 +3044,14 @@ __all__ = \ 'AMDSMI_FW_ID_ISP', 'AMDSMI_FW_ID_MC', 'AMDSMI_FW_ID_MES_KIQ', 'AMDSMI_FW_ID_MES_STACK', 'AMDSMI_FW_ID_MES_THREAD1', 'AMDSMI_FW_ID_MES_THREAD1_STACK', 'AMDSMI_FW_ID_MMSCH', - 'AMDSMI_FW_ID_PLDM', 'AMDSMI_FW_ID_PM', 'AMDSMI_FW_ID_PPTABLE', - 'AMDSMI_FW_ID_PSP_BL', 'AMDSMI_FW_ID_PSP_DBG', - 'AMDSMI_FW_ID_PSP_INTF', 'AMDSMI_FW_ID_PSP_KEYDB', - 'AMDSMI_FW_ID_PSP_SOC', 'AMDSMI_FW_ID_PSP_SOSDRV', - 'AMDSMI_FW_ID_PSP_SPL', 'AMDSMI_FW_ID_PSP_SYSDRV', - 'AMDSMI_FW_ID_PSP_TOC', 'AMDSMI_FW_ID_REG_ACCESS_WHITELIST', - 'AMDSMI_FW_ID_RLC', 'AMDSMI_FW_ID_RLCV_LX7', 'AMDSMI_FW_ID_RLC_P', + 'AMDSMI_FW_ID_PLDM_BUNDLE', 'AMDSMI_FW_ID_PM', + 'AMDSMI_FW_ID_PPTABLE', 'AMDSMI_FW_ID_PSP_BL', + 'AMDSMI_FW_ID_PSP_DBG', 'AMDSMI_FW_ID_PSP_INTF', + 'AMDSMI_FW_ID_PSP_KEYDB', 'AMDSMI_FW_ID_PSP_SOC', + 'AMDSMI_FW_ID_PSP_SOSDRV', 'AMDSMI_FW_ID_PSP_SPL', + 'AMDSMI_FW_ID_PSP_SYSDRV', 'AMDSMI_FW_ID_PSP_TOC', + 'AMDSMI_FW_ID_REG_ACCESS_WHITELIST', 'AMDSMI_FW_ID_RLC', + 'AMDSMI_FW_ID_RLCV_LX7', 'AMDSMI_FW_ID_RLC_P', 'AMDSMI_FW_ID_RLC_RESTORE_LIST_CNTL', 'AMDSMI_FW_ID_RLC_RESTORE_LIST_GPM_MEM', 'AMDSMI_FW_ID_RLC_RESTORE_LIST_SRM_MEM', diff --git a/rocm_smi/include/rocm_smi/rocm_smi.h b/rocm_smi/include/rocm_smi/rocm_smi.h index e6656d0ebb..8abeb1ad71 100644 --- a/rocm_smi/include/rocm_smi/rocm_smi.h +++ b/rocm_smi/include/rocm_smi/rocm_smi.h @@ -730,8 +730,8 @@ typedef enum { RSMI_FW_BLOCK_UVD, RSMI_FW_BLOCK_VCE, RSMI_FW_BLOCK_VCN, - RSMI_FW_BLOCK_PLDM, - RSMI_FW_BLOCK_LAST = RSMI_FW_BLOCK_PLDM + RSMI_FW_BLOCK_PLDM_BUNDLE, + RSMI_FW_BLOCK_LAST = RSMI_FW_BLOCK_PLDM_BUNDLE } rsmi_fw_block_t; /** diff --git a/rocm_smi/include/rocm_smi/rocm_smi_device.h b/rocm_smi/include/rocm_smi/rocm_smi_device.h index 0e7b4f9c15..80dc2d2d4a 100644 --- a/rocm_smi/include/rocm_smi/rocm_smi_device.h +++ b/rocm_smi/include/rocm_smi/rocm_smi_device.h @@ -153,7 +153,7 @@ enum DevInfoTypes { kDevFwVersionUvd, kDevFwVersionVce, kDevFwVersionVcn, - kDevFwVersionPldm, + kDevFwVersionPldmBundle, kDevSerialNumber, kDevMemPageBad, kDevNumaNode, diff --git a/rocm_smi/src/rocm_smi.cc b/rocm_smi/src/rocm_smi.cc index ff60439c05..cb9e5e707a 100644 --- a/rocm_smi/src/rocm_smi.cc +++ b/rocm_smi/src/rocm_smi.cc @@ -2087,7 +2087,7 @@ rsmi_dev_firmware_version_get(uint32_t dv_ind, rsmi_fw_block_t block, { RSMI_FW_BLOCK_UVD, amd::smi::kDevFwVersionUvd }, { RSMI_FW_BLOCK_VCE, amd::smi::kDevFwVersionVce }, { RSMI_FW_BLOCK_VCN, amd::smi::kDevFwVersionVcn }, - { RSMI_FW_BLOCK_PLDM, amd::smi::kDevFwVersionPldm}, + { RSMI_FW_BLOCK_PLDM_BUNDLE, amd::smi::kDevFwVersionPldmBundle}, }; const auto & dev_type_it = kFWBlockTypeMap.find(block); diff --git a/rocm_smi/src/rocm_smi_device.cc b/rocm_smi/src/rocm_smi_device.cc index 9fa357c694..79dbc55e6c 100644 --- a/rocm_smi/src/rocm_smi_device.cc +++ b/rocm_smi/src/rocm_smi_device.cc @@ -161,7 +161,7 @@ static const char *kDevFwVersionTaXgmiFName = "fw_version/ta_xgmi_fw_version"; static const char *kDevFwVersionUvdFName = "fw_version/uvd_fw_version"; static const char *kDevFwVersionVceFName = "fw_version/vce_fw_version"; static const char *kDevFwVersionVcnFName = "fw_version/vcn_fw_version"; -static const char *kDevFwVersionPldmFName = "fw_version/pldm_fw_version"; +static const char *kDevFwVersionPldmBundleFName = "fw_version/pldm_fw_version"; static const char *kDevKFDNodePropCachesCntSName = "caches_count"; static const char *kDevKFDNodePropIoLinksCntSName = "io_links_count"; @@ -312,7 +312,7 @@ static const std::map kDevAttribNameMap = { {kDevFwVersionUvd, kDevFwVersionUvdFName}, {kDevFwVersionVce, kDevFwVersionVceFName}, {kDevFwVersionVcn, kDevFwVersionVcnFName}, - {kDevFwVersionPldm, kDevFwVersionPldmFName}, + {kDevFwVersionPldmBundle, kDevFwVersionPldmBundleFName}, {kDevSerialNumber, kDevSerialNumberFName}, {kDevMemPageBad, kDevMemPageBadFName}, {kDevNumaNode, kDevNumaNodeFName}, @@ -400,7 +400,7 @@ static const std::map kDevInfoVarTypeToRSMIVariant = { {kDevFwVersionUvd, RSMI_FW_BLOCK_UVD}, {kDevFwVersionVce, RSMI_FW_BLOCK_VCE}, {kDevFwVersionVcn, RSMI_FW_BLOCK_VCN}, - {kDevFwVersionPldm, RSMI_FW_BLOCK_PLDM}, + {kDevFwVersionPldmBundle, RSMI_FW_BLOCK_PLDM_BUNDLE}, // rsmi_gpu_block_t {kDevErrCntUMC, RSMI_GPU_BLOCK_UMC}, @@ -486,7 +486,7 @@ Device::devInfoTypesStrings = { {kDevFwVersionUvd, "kDevFwVersionUvd"}, {kDevFwVersionVce, "kDevFwVersionVce"}, {kDevFwVersionVcn, "kDevFwVersionVcn"}, - {kDevFwVersionPldm, "kDevFwVersionPldm"}, + {kDevFwVersionPldmBundle, "kDevFwVersionPldmBundle"}, {kDevSerialNumber, "kDevSerialNumber"}, {kDevMemPageBad, "kDevMemPageBad"}, {kDevNumaNode, "kDevNumaNode"}, @@ -656,7 +656,7 @@ static const std::map kDevFuncDependsMap = { kDevFwVersionUvd, kDevFwVersionVce, kDevFwVersionVcn, - kDevFwVersionPldm, + kDevFwVersionPldmBundle, } } }, @@ -1262,7 +1262,7 @@ int Device::readDevInfo(DevInfoTypes type, uint64_t *val) { case kDevFwVersionUvd: case kDevFwVersionVce: case kDevFwVersionVcn: - case kDevFwVersionPldm: + case kDevFwVersionPldmBundle: ret = readDevInfoStr(type, &tempStr); RET_IF_NONZERO(ret); if (tempStr.empty()) { diff --git a/src/amd_smi/amd_smi.cc b/src/amd_smi/amd_smi.cc index 650ee3aa87..a12db85f37 100644 --- a/src/amd_smi/amd_smi.cc +++ b/src/amd_smi/amd_smi.cc @@ -1497,7 +1497,7 @@ amdsmi_status_t amdsmi_get_fw_info(amdsmi_processor_handle processor_handle, { AMDSMI_FW_ID_UVD, RSMI_FW_BLOCK_UVD}, { AMDSMI_FW_ID_VCE, RSMI_FW_BLOCK_VCE}, { AMDSMI_FW_ID_VCN, RSMI_FW_BLOCK_VCN}, - { AMDSMI_FW_ID_PLDM, RSMI_FW_BLOCK_PLDM}, + { AMDSMI_FW_ID_PLDM_BUNDLE, RSMI_FW_BLOCK_PLDM_BUNDLE}, }; AMDSMI_CHECK_INIT(); diff --git a/tests/python_unittest/README.md b/tests/python_unittest/README.md index 948426323e..721842db80 100644 --- a/tests/python_unittest/README.md +++ b/tests/python_unittest/README.md @@ -278,7 +278,7 @@ test_fw_info (__main__.TestAmdSmiPythonInterface) ... FW version: 20.00.00.0F FW name: AMDSMI_FW_ID_PM FW version: 00.58.90.00 - FW name: AMDSMI_FW_ID_PLDM + FW name: AMDSMI_FW_ID_PLDM_BUNDLE FW version: 00.xx.yy.zz @@ -591,7 +591,7 @@ test_walkthrough (__main__.TestAmdSmiPythonInterface) ... FW version: 20.00.00.0F FW name: AMDSMI_FW_ID_PM FW version: 00.58.90.00 - FW name: AMDSMI_FW_ID_PLDM + FW name: AMDSMI_FW_ID_PLDM_BUNDLE FW version: 00.xx.yy.zz