Merge amd-staging into amd-master 20230421

Signed-off-by: Hao Zhou <Hao.Zhou@amd.com>
Change-Id: Ic6f43d75c5fd5ff4aa58d17db59e6ff7c358aa6d
Esse commit está contido em:
Hao Zhou
2023-04-21 09:30:19 +08:00
5 arquivos alterados com 29 adições e 14 exclusões
+1 -1
Ver Arquivo
@@ -4,7 +4,7 @@ The AMD System Management Interface Library, or AMD SMI library, is a C library
## Supported platforms
At initial release, the AMD SMI library will support Linux bear metal and Linux virtual machine guest for AMD GPUs. In the future release, the library will be extended to support AMD EPYC™ CPUs.
At initial release, the AMD SMI library will support Linux bare metal and Linux virtual machine guest for AMD GPUs. In the future release, the library will be extended to support AMD EPYC™ CPUs.
AMD SMI library can run on AMD ROCm supported platforms, please refer to [List of Supported Operating Systems and GPUs](https://docs.amd.com/bundle/ROCm-Getting-Started-Guide-v5.3/page/Introduction_to_ROCm_Getting_Started_Guide_for_Linux.html)
+6 -5
Ver Arquivo
@@ -503,7 +503,7 @@ def amdsmi_get_socket_info(socket_handle):
_check_res(
amdsmi_wrapper.amdsmi_get_socket_info(
socket_handle, ctypes.byref(socket_info), ctypes.c_size_t(128))
socket_handle, socket_info, ctypes.c_size_t(128))
)
return socket_info.value.decode()
@@ -2489,11 +2489,12 @@ def amdsmi_status_string(status: amdsmi_wrapper.amdsmi_status_t) -> str:
if not isinstance(status, amdsmi_wrapper.amdsmi_status_t):
raise AmdSmiParameterException(status, amdsmi_wrapper.amdsmi_status_t)
status_string = ctypes.c_char_p()
_check_res(amdsmi_wrapper.amdsmi_status_string(
status, ctypes.byref(status_string)))
status_string_p_p = ctypes.pointer(ctypes.pointer(ctypes.c_char()))
return amdsmi_wrapper.string_cast(status_string)
_check_res(amdsmi_wrapper.amdsmi_status_string(
status, status_string_p_p))
return amdsmi_wrapper.string_cast(status_string_p_p.contents)
def amdsmi_get_compute_process_info() -> List[Dict[str, int]]:
+18 -7
Ver Arquivo
@@ -336,7 +336,9 @@ static rsmi_status_t get_dev_mon_value(amd::smi::MonitorTypes type,
}
GET_DEV_FROM_INDX
assert(dev->monitor() != nullptr);
if (dev->monitor() == nullptr) {
return RSMI_STATUS_NOT_SUPPORTED;
}
std::string val_str;
@@ -364,7 +366,9 @@ static rsmi_status_t get_dev_mon_value(amd::smi::MonitorTypes type,
}
GET_DEV_FROM_INDX
assert(dev->monitor() != nullptr);
if (dev->monitor() == nullptr) {
return RSMI_STATUS_NOT_SUPPORTED;
}
std::string val_str;
@@ -389,7 +393,9 @@ static rsmi_status_t set_dev_mon_value(amd::smi::MonitorTypes type,
uint32_t dv_ind, uint32_t sensor_ind, T val) {
GET_DEV_FROM_INDX
assert(dev->monitor() != nullptr);
if (dev->monitor() == nullptr) {
return RSMI_STATUS_NOT_SUPPORTED;
}
int ret = dev->monitor()->writeMonitor(type, sensor_ind,
std::to_string(val));
@@ -411,8 +417,9 @@ static rsmi_status_t get_power_mon_value(amd::smi::PowerMonTypes type,
}
std::shared_ptr<amd::smi::Device> dev = smi.devices()[dv_ind];
assert(dev != nullptr);
assert(dev->monitor() != nullptr);
if (dev == nullptr || dev->monitor() == nullptr) {
return RSMI_STATUS_NOT_SUPPORTED;
}
ret = dev->power_monitor()->readPowerValue(type, val);
@@ -2223,7 +2230,9 @@ rsmi_dev_temp_metric_get(uint32_t dv_ind, uint32_t sensor_type,
GET_DEV_FROM_INDX
assert(dev->monitor() != nullptr);
if (dev->monitor() == nullptr) {
return RSMI_STATUS_NOT_SUPPORTED;
}
std::shared_ptr<amd::smi::Monitor> m = dev->monitor();
// getTempSensorIndex will throw an out of range exception if sensor_type is
@@ -2281,7 +2290,9 @@ rsmi_dev_volt_metric_get(uint32_t dv_ind, rsmi_voltage_type_t sensor_type,
GET_DEV_FROM_INDX
assert(dev->monitor() != nullptr);
if (dev->monitor() == nullptr) {
return RSMI_STATUS_NOT_SUPPORTED;
}
std::shared_ptr<amd::smi::Monitor> m = dev->monitor();
// getVoltSensorIndex will throw an out of range exception if sensor_type is
+3
Ver Arquivo
@@ -974,6 +974,9 @@ void Device::fillSupportedFuncs(void) {
if (supported_funcs_.size() != 0) {
return;
}
if (monitor() == nullptr) {
return;
}
std::map<const char *, dev_depends_t>::const_iterator it =
kDevFuncDependsMap.begin();
+1 -1
Ver Arquivo
@@ -144,7 +144,7 @@ amdsmi_status_string(amdsmi_status_t status, const char **status_string) {
*status_string = "FAIL_LOAD_MODULE: Fail to load module.";
break;
case AMDSMI_STATUS_FAIL_LOAD_SYMBOL:
*status_string = "FAIL_LOAD_SYMOBL: Fail to load symbol.";
*status_string = "FAIL_LOAD_SYMBOL: Fail to load symbol.";
break;
case AMDSMI_STATUS_DRM_ERROR:
*status_string = "DRM_ERROR: Fail to run function in libdrm.";