SWDEV-379772 - [Navi32] [SMI-LIB] [Linux] [BM] [Guest] Wrong market name
Signed-off-by: Marko Oblak <Marko.Oblak@amd.com> Change-Id: I12d3e650851a3aa474ccbf62628b60d4c385e68c
This commit is contained in:
@@ -42,5 +42,6 @@ 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);
|
||||
|
||||
#endif //
|
||||
|
||||
@@ -568,9 +568,6 @@ amdsmi_get_asic_info(amdsmi_device_handle device_handle, amdsmi_asic_info_t *inf
|
||||
}
|
||||
|
||||
struct drm_amdgpu_info_device dev_info = {};
|
||||
struct drm_amdgpu_info_vbios vbios = {};
|
||||
char* name;
|
||||
char *tmp;
|
||||
uint16_t vendor_id = 0;
|
||||
uint16_t subvendor_id = 0;
|
||||
|
||||
@@ -583,8 +580,6 @@ amdsmi_get_asic_info(amdsmi_device_handle device_handle, amdsmi_asic_info_t *inf
|
||||
if (gpu_device->check_if_drm_is_supported()){
|
||||
status = gpu_device->amdgpu_query_info(AMDGPU_INFO_DEV_INFO, sizeof(struct drm_amdgpu_info_device), &dev_info);
|
||||
if (status != AMDSMI_STATUS_SUCCESS) return status;
|
||||
status = gpu_device->amdgpu_query_vbios(&vbios);
|
||||
if (status != AMDSMI_STATUS_SUCCESS) return status;
|
||||
|
||||
SMIGPUDEVICE_MUTEX(gpu_device->get_mutex())
|
||||
|
||||
@@ -595,9 +590,8 @@ amdsmi_get_asic_info(amdsmi_device_handle device_handle, amdsmi_asic_info_t *inf
|
||||
fclose(fp);
|
||||
}
|
||||
|
||||
name = strtok_r((char *) vbios.name, " ", &tmp);
|
||||
if (name)
|
||||
strncpy(info->market_name, name, AMDSMI_MAX_STRING_LENGTH);
|
||||
status = smi_amdgpu_get_market_name_from_dev_id(dev_info.device_id, info->market_name);
|
||||
if (status != AMDSMI_STATUS_SUCCESS) return status;
|
||||
|
||||
info->device_id = dev_info.device_id;
|
||||
info->family = dev_info.family;
|
||||
|
||||
@@ -480,3 +480,27 @@ 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:
|
||||
strcpy(market_name, "NAVI32");
|
||||
break;
|
||||
case 0x73a1:
|
||||
case 0x73ae:
|
||||
strcpy(market_name, "NAVI21");
|
||||
break;
|
||||
case 0x7408:
|
||||
case 0x740C:
|
||||
case 0x740F:
|
||||
case 0x7410:
|
||||
strcpy(market_name, "Instinct MI200");
|
||||
break;
|
||||
default:
|
||||
return AMDSMI_STATUS_API_FAILED;
|
||||
}
|
||||
return AMDSMI_STATUS_SUCCESS;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user