Output the ta fw, aka xgmi/ras, via debugfs.
Unified · Split
| @@ -295,6 +295,17 @@ static int amdgpu_firmware_info(struct drm_amdgpu_info_firmware *fw_info, · 294 unmodified lines | |||
| 295 | fw_info->ver = adev->pm.fw_version; | 295 | fw_info->ver = adev->pm.fw_version; |
| 296 | fw_info->feature = 0; | 296 | fw_info->feature = 0; |
| 297 | break; | 297 | break; |
| 298 | case AMDGPU_INFO_FW_TA: | ||
| 299 | if (query_fw->index > 1) | ||
| 300 | return -EINVAL; | ||
| 301 | if (query_fw->index == 0) { | ||
| 302 | fw_info->ver = adev->psp.ta_fw_version; | ||
| 303 | fw_info->feature = adev->psp.ta_xgmi_ucode_version; | ||
| 304 | } else { | ||
| 305 | fw_info->ver = adev->psp.ta_fw_version; | ||
| 306 | fw_info->feature = adev->psp.ta_ras_ucode_version; | ||
| 307 | } | ||
| 308 | break; | ||
| 298 | case AMDGPU_INFO_FW_SDMA: | 309 | case AMDGPU_INFO_FW_SDMA: |
| 299 | if (query_fw->index >= adev->sdma.num_instances) | 310 | if (query_fw->index >= adev->sdma.num_instances) |
| 300 | return -EINVAL; | 311 | return -EINVAL; |
| @@ -1327,6 +1338,16 @@ static int amdgpu_debugfs_firmware_info(struct seq_file *m, void *data) · 1026 unmodified lines | |||
| 1327 | seq_printf(m, "ASD feature version: %u, firmware version: 0x%08x\n", | 1338 | seq_printf(m, "ASD feature version: %u, firmware version: 0x%08x\n", |
| 1328 | fw_info.feature, fw_info.ver); | 1339 | fw_info.feature, fw_info.ver); |
| 1329 | 1340 | ||
| 1341 | query_fw.fw_type = AMDGPU_INFO_FW_TA; | ||
| 1342 | for (i = 0; i < 2; i++) { | ||
| 1343 | query_fw.index = i; | ||
| 1344 | ret = amdgpu_firmware_info(&fw_info, &query_fw, adev); | ||
| 1345 | if (ret) | ||
| 1346 | continue; | ||
| 1347 | seq_printf(m, "TA %s feature version: %u, firmware version: 0x%08x\n", | ||
| 1348 | i ? "RAS" : "XGMI", fw_info.feature, fw_info.ver); | ||
| 1349 | } | ||
| 1350 | |||
| 1330 | /* SMC */ | 1351 | /* SMC */ |
| 1331 | query_fw.fw_type = AMDGPU_INFO_FW_SMC; | 1352 | query_fw.fw_type = AMDGPU_INFO_FW_SMC; |
| 1332 | ret = amdgpu_firmware_info(&fw_info, &query_fw, adev); | 1353 | ret = amdgpu_firmware_info(&fw_info, &query_fw, adev); |
| @@ -680,6 +680,7 @@ struct drm_amdgpu_cs_chunk_data { · 679 unmodified lines | |||
| 680 | #define AMDGPU_INFO_FW_GFX_RLC_RESTORE_LIST_SRM_MEM 0x11 | 680 | #define AMDGPU_INFO_FW_GFX_RLC_RESTORE_LIST_SRM_MEM 0x11 |
| 681 | /* Subquery id: Query DMCU firmware version */ | 681 | /* Subquery id: Query DMCU firmware version */ |
| 682 | #define AMDGPU_INFO_FW_DMCU 0x12 | 682 | #define AMDGPU_INFO_FW_DMCU 0x12 |
| 683 | #define AMDGPU_INFO_FW_TA 0x13 | ||
| 683 | /* number of bytes moved for TTM migration */ | 684 | /* number of bytes moved for TTM migration */ |
| 684 | #define AMDGPU_INFO_NUM_BYTES_MOVED 0x0f | 685 | #define AMDGPU_INFO_NUM_BYTES_MOVED 0x0f |
| 685 | /* the used VRAM size */ | 686 | /* the used VRAM size */ |