[SWDEV-554587] Added IFWI Version and boot_firmware API

- Changed amd-smi static --vbios to accept ifwi
- Change population logic for vbios version API
- Added IFWI boot_firmware to the CLI, C++, Rust, and Python API

Signed-off-by: Maisam Arif <Maisam.Arif@amd.com>
Change-Id: I4ea504d40a43cfb011ab38fc9a664ecf12d39c8a
This commit is contained in:
Maisam Arif
2025-09-16 19:51:13 -05:00
committed by Arif, Maisam
parent c708a7e11f
commit cd21b5edcc
20 changed files with 185 additions and 72 deletions
+29
View File
@@ -3923,6 +3923,35 @@ rsmi_version_str_get(rsmi_sw_component_t component, char *ver_str,
rsmi_status_t
rsmi_dev_vbios_version_get(uint32_t dv_ind, char *vbios, uint32_t len);
/**
* @brief Get the VBIOS Build string
*
* @details Given a device ID @p dv_ind, and a pointer to a char buffer,
* @p vbios, this function will write the VBIOS Build string (up to @p len
* characters) for device @p dv_ind to @p vbios. The caller must ensure that
* it is safe to write at least @p len characters to @p vbios.
*
* @param[in] dv_ind a device index
*
* @param[inout] vbios_build_number A pointer to a buffer of char's to which the VBIOS
* Build will be written
* If this parameter is nullptr, this function will return
* ::RSMI_STATUS_INVALID_ARGS if the function is supported with the provided,
* arguments and ::RSMI_STATUS_NOT_SUPPORTED if it is not supported with the
* provided arguments.
*
* @param[in] len The number of char's pointed to by @p vbios which can safely
* be written to by this function.
*
* @retval ::RSMI_STATUS_SUCCESS call was successful
* @retval ::RSMI_STATUS_NOT_SUPPORTED installed software or hardware does not
* support this function with the given arguments
* @retval ::RSMI_STATUS_INVALID_ARGS the provided arguments are not valid
*
*/
rsmi_status_t
rsmi_dev_vbios_build_number_get(uint32_t dv_ind, char *vbios_build_number, uint32_t len);
/**
* @brief Get the firmware versions for a device
*
@@ -104,6 +104,7 @@ enum DevInfoTypes {
kDevUsage,
kDevPowerODVoltage,
kDevVBiosVer,
kDevVBiosBuild,
kDevPCIEThruPut,
kDevErrCntSDMA,
kDevErrCntUMC,