From: Yang Wang <[email protected]>

Handle AMDGPU_INFO_FW_MP5 in the firmware query path and report the MP5
firmware version in the debugfs firmware_info output.

Signed-off-by: Yang Wang <[email protected]>
Reviewed-By: Frank Min<[email protected]>
Signed-off-by: Alex Deucher <[email protected]>
---
 drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c | 12 ++++++++++++
 include/uapi/drm/amdgpu_drm.h           |  2 ++
 2 files changed, 14 insertions(+)

diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c 
b/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c
index f2f179421c4da..bac072d73e16a 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c
@@ -285,6 +285,10 @@ static int amdgpu_firmware_info(struct 
drm_amdgpu_info_firmware *fw_info,
                fw_info->ver = adev->pm.fw_version;
                fw_info->feature = 0;
                break;
+       case AMDGPU_INFO_FW_MP5:
+               fw_info->ver = adev->pm.mp5_fw_version;
+               fw_info->feature = 0;
+               break;
        case AMDGPU_INFO_FW_TA:
                switch (query_fw->index) {
                case TA_FW_TYPE_PSP_XGMI:
@@ -1937,6 +1941,14 @@ static int amdgpu_debugfs_firmware_info_show(struct 
seq_file *m, void *unused)
        seq_printf(m, "SMC feature version: %u, program: %d, firmware version: 
0x%08x (%d.%d.%d)\n",
                   fw_info.feature, smu_program, fw_info.ver, smu_major, 
smu_minor, smu_debug);
 
+       /* MP5 */
+       query_fw.fw_type = AMDGPU_INFO_FW_MP5;
+       ret = amdgpu_firmware_info(&fw_info, &query_fw, adev);
+       if (ret)
+               return ret;
+       seq_printf(m, "MP5 feature version: %u, firmware version: 0x%08x\n",
+                  fw_info.feature, fw_info.ver);
+
        /* SDMA */
        query_fw.fw_type = AMDGPU_INFO_FW_SDMA;
        for (i = 0; i < adev->sdma.num_instances; i++) {
diff --git a/include/uapi/drm/amdgpu_drm.h b/include/uapi/drm/amdgpu_drm.h
index cd1b8034a2fb4..29009f6aabde9 100644
--- a/include/uapi/drm/amdgpu_drm.h
+++ b/include/uapi/drm/amdgpu_drm.h
@@ -1183,6 +1183,8 @@ struct drm_amdgpu_cs_chunk_cp_gfx_shadow {
        #define AMDGPU_INFO_FW_IMU              0x1b
        /* Subquery id: Query VPE firmware version */
        #define AMDGPU_INFO_FW_VPE              0x1c
+       /* Subquery id: Query MP5 firmware version */
+       #define AMDGPU_INFO_FW_MP5              0x1d
 
 /* number of bytes moved for TTM migration */
 #define AMDGPU_INFO_NUM_BYTES_MOVED            0x0f
-- 
2.55.0

Reply via email to