added metric table wrapper APIS & test code

Change-Id: I24207b3c32d7294337140a1f5108b81f3bf33580
This commit is contained in:
Deepak Mewar
2023-10-06 07:07:27 -04:00
committed by Maisam Arif
parent 7a2f3c8d56
commit 192fb538be
3 changed files with 111 additions and 2 deletions
+47 -2
View File
@@ -2685,8 +2685,7 @@ amdsmi_status_t amdsmi_set_cpu_socket_lclk_dpm_level(amdsmi_cpusocket_handle soc
if (r != AMDSMI_STATUS_SUCCESS)
return r;
status = static_cast<amdsmi_status_t>(esmi_socket_lclk_dpm_level_set(sock_ind,
nbio_id, min, max));
status = static_cast<amdsmi_status_t>(esmi_socket_lclk_dpm_level_set(sock_ind, nbio_id, min, max));
if (status != AMDSMI_STATUS_SUCCESS)
return status;
@@ -2813,6 +2812,52 @@ amdsmi_status_t amdsmi_get_cpu_current_xgmi_bw(amdsmi_cpusocket_handle socket_ha
return AMDSMI_STATUS_SUCCESS;
}
amdsmi_status_t amdsmi_get_metrics_table_version(amdsmi_cpusocket_handle socket_handle,
uint32_t *metrics_version)
{
amdsmi_status_t status;
uint32_t metrics_tbl_ver;
if (socket_handle == nullptr)
return AMDSMI_STATUS_INVAL;
amd::smi::AMDSmiCpuSocket* socket = nullptr;
amdsmi_status_t r = get_cpu_socket_from_handle(socket_handle, &socket);
if (r != AMDSMI_STATUS_SUCCESS)
return r;
status = static_cast<amdsmi_status_t>(esmi_metrics_table_version_get(&metrics_tbl_ver));
*metrics_version = metrics_tbl_ver;
if (status != AMDSMI_STATUS_SUCCESS)
return status;
return AMDSMI_STATUS_SUCCESS;
}
amdsmi_status_t amdsmi_get_metrics_table(amdsmi_cpusocket_handle socket_handle, uint8_t sock_ind,
struct hsmp_metric_table *metrics_table)
{
amdsmi_status_t status;
struct hsmp_metric_table metrics_tbl;
if (socket_handle == nullptr)
return AMDSMI_STATUS_INVAL;
amd::smi::AMDSmiCpuSocket* socket = nullptr;
amdsmi_status_t r = get_cpu_socket_from_handle(socket_handle, &socket);
if (r != AMDSMI_STATUS_SUCCESS)
return r;
status = static_cast<amdsmi_status_t>(esmi_metrics_table_get(sock_ind, &metrics_tbl));
*metrics_table = metrics_tbl;
if (status != AMDSMI_STATUS_SUCCESS)
return status;
return AMDSMI_STATUS_SUCCESS;
}
amdsmi_status_t amdsmi_get_number_of_cpu_sockets(uint32_t sockets)
{
amdsmi_status_t status = amd::smi::AMDSmiSystem::getInstance().get_cpu_sockets(sockets);