[SWDEV-481702] Update marketing name source
Signed-off-by: Maisam Arif <Maisam.Arif@amd.com>
Bu işleme şunda yer alıyor:
işlemeyi yapan:
Arif, Maisam
ebeveyn
6dcbff866b
işleme
338cdd63ce
@@ -48,7 +48,7 @@ amdsmi_status_t smi_amdgpu_get_bad_page_info(amd::smi::AMDSmiGPUDevice* device,
|
||||
amdsmi_status_t smi_amdgpu_get_ecc_error_count(amd::smi::AMDSmiGPUDevice* device, amdsmi_error_count_t *err_cnt);
|
||||
amdsmi_status_t smi_amdgpu_get_driver_version(amd::smi::AMDSmiGPUDevice* device, int *length, char *version);
|
||||
amdsmi_status_t smi_amdgpu_get_pcie_speed_from_pcie_type(uint16_t pcie_type, uint32_t *pcie_speed);
|
||||
amdsmi_status_t smi_amdgpu_get_market_name_from_dev_id(uint32_t device_id, char *market_name);
|
||||
amdsmi_status_t smi_amdgpu_get_market_name_from_dev_id(amd::smi::AMDSmiGPUDevice* device, char *market_name);
|
||||
amdsmi_status_t smi_amdgpu_is_gpu_power_management_enabled(amd::smi::AMDSmiGPUDevice* device, bool *enabled);
|
||||
std::string smi_split_string(std::string str, char delim);
|
||||
std::string smi_amdgpu_get_status_string(amdsmi_status_t ret, bool fullStatus);
|
||||
|
||||
@@ -81,7 +81,7 @@ configure_file("${AMD_SMI_TARGET}Config.in" "${PROJECT_SOURCE_DIR}/include/amd_s
|
||||
add_executable(amd_smi_ex "../example/amd_smi_drm_example.cc")
|
||||
target_link_libraries(amd_smi_ex ${AMD_SMI_TARGET})
|
||||
add_library(${AMD_SMI_TARGET} ${SRC_LIST} ${INC_LIST})
|
||||
target_link_libraries(${AMD_SMI_TARGET} pthread rt dl)
|
||||
target_link_libraries(${AMD_SMI_TARGET} pthread rt dl ${DRM_AMDGPU_LIB} ${AMDGPU_DRM_LIBRARIES})
|
||||
target_include_directories(${AMD_SMI_TARGET} PRIVATE ${CMAKE_CURRENT_SOURCE_DIR} ${PROJECT_SOURCE_DIR}/rocm_smi/include
|
||||
${PROJECT_SOURCE_DIR}/common/shared_mutex)
|
||||
|
||||
|
||||
@@ -992,7 +992,7 @@ amdsmi_get_gpu_asic_info(amdsmi_processor_handle processor_handle, amdsmi_asic_i
|
||||
fclose(fp);
|
||||
}
|
||||
|
||||
status = smi_amdgpu_get_market_name_from_dev_id(dev_info.device_id, info->market_name);
|
||||
status = smi_amdgpu_get_market_name_from_dev_id(gpu_device, info->market_name);
|
||||
if (status != AMDSMI_STATUS_SUCCESS) {
|
||||
rsmi_wrapper(rsmi_dev_brand_get, processor_handle,
|
||||
info->market_name, AMDSMI_256_LENGTH);
|
||||
|
||||
@@ -20,6 +20,7 @@
|
||||
* THE SOFTWARE.
|
||||
*/
|
||||
|
||||
#include <amdgpu.h>
|
||||
#include <errno.h>
|
||||
#include <fcntl.h>
|
||||
#include <stdint.h>
|
||||
@@ -562,47 +563,41 @@ amdsmi_status_t smi_amdgpu_get_pcie_speed_from_pcie_type(uint16_t pcie_type, uin
|
||||
return AMDSMI_STATUS_SUCCESS;
|
||||
}
|
||||
|
||||
amdsmi_status_t smi_amdgpu_get_market_name_from_dev_id(uint32_t device_id, char *market_name)
|
||||
{
|
||||
switch (device_id) {
|
||||
case 0x73c8:
|
||||
case 0x73c4:
|
||||
case 0x73c5:
|
||||
case 0x7460:
|
||||
case 0x7461:
|
||||
strcpy(market_name, "NAVI32");
|
||||
break;
|
||||
case 0x73a1:
|
||||
case 0x73ae:
|
||||
case 0x73bf:
|
||||
strcpy(market_name, "NAVI21");
|
||||
break;
|
||||
case 0x74b4:
|
||||
case 0x74a0:
|
||||
strcpy(market_name, "MI300A");
|
||||
break;
|
||||
case 0x74a1:
|
||||
case 0x74b5:
|
||||
strcpy(market_name, "AMD Instinct MI300X");
|
||||
break;
|
||||
case 0x74a2:
|
||||
case 0x74b6:
|
||||
strcpy(market_name, "MI308X");
|
||||
break;
|
||||
case 0x74a5:
|
||||
strcpy(market_name, "AMD Instinct MI325X");
|
||||
break;
|
||||
case 0x74a9:
|
||||
case 0x74bd:
|
||||
strcpy(market_name, "AMD Instinct MI300X HF");
|
||||
break;
|
||||
default:
|
||||
return AMDSMI_STATUS_API_FAILED;
|
||||
amdsmi_status_t smi_amdgpu_get_market_name_from_dev_id(amd::smi::AMDSmiGPUDevice* device, char *market_name) {
|
||||
if (market_name == nullptr || device == nullptr) {
|
||||
return AMDSMI_STATUS_ARG_PTR_NULL;
|
||||
}
|
||||
return AMDSMI_STATUS_SUCCESS;
|
||||
|
||||
if (!device->check_if_drm_is_supported()) {
|
||||
return AMDSMI_STATUS_NOT_SUPPORTED;
|
||||
}
|
||||
|
||||
uint32_t major_version, minor_version;
|
||||
amdgpu_device_handle device_handle = nullptr;
|
||||
|
||||
uint32_t gpu_fd = device->get_gpu_fd();
|
||||
|
||||
char drm_path[32];
|
||||
|
||||
int ret = amdgpu_device_initialize(gpu_fd, &major_version, &minor_version, &device_handle);
|
||||
if (ret != 0) {
|
||||
return AMDSMI_STATUS_DRM_ERROR;
|
||||
}
|
||||
|
||||
// Get the marketing name using libdrm's API
|
||||
const char *name = amdgpu_get_marketing_name(device_handle);
|
||||
if (name != nullptr) {
|
||||
std::strncpy(market_name, name, AMDSMI_256_LENGTH - 1);
|
||||
market_name[AMDSMI_256_LENGTH - 1] = '\0';
|
||||
amdgpu_device_deinitialize(device_handle);
|
||||
return AMDSMI_STATUS_SUCCESS;
|
||||
}
|
||||
|
||||
amdgpu_device_deinitialize(device_handle);
|
||||
return AMDSMI_STATUS_DRM_ERROR;
|
||||
}
|
||||
|
||||
amdsmi_status_t smi_amdgpu_is_gpu_power_management_enabled(amd::smi::AMDSmiGPUDevice *device,
|
||||
amdsmi_status_t smi_amdgpu_is_gpu_power_management_enabled(amd::smi::AMDSmiGPUDevice* device,
|
||||
bool *enabled) {
|
||||
if (!device->check_if_drm_is_supported()) {
|
||||
return AMDSMI_STATUS_NOT_SUPPORTED;
|
||||
|
||||
Yeni konuda referans
Bir kullanıcı engelle