From: Huang Rui <ray.hu...@amd.com>

Signed-off-by: Huang Rui <ray.hu...@amd.com>
Reviewed-by: Alex Deucher <alexander.deuc...@amd.com>
Signed-off-by: Alex Deucher <alexander.deuc...@amd.com>
---
 drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c | 25 +++++++++++++++++++++++++
 include/uapi/drm/amdgpu_drm.h           |  4 ++++
 2 files changed, 29 insertions(+)

diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c 
b/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c
index de0c776..a2f2b7f 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c
@@ -209,6 +209,14 @@ static int amdgpu_firmware_info(struct 
drm_amdgpu_info_firmware *fw_info,
                fw_info->ver = adev->sdma.instance[query_fw->index].fw_version;
                fw_info->feature = 
adev->sdma.instance[query_fw->index].feature_version;
                break;
+       case AMDGPU_INFO_FW_SOS:
+               fw_info->ver = adev->psp.sos_fw_version;
+               fw_info->feature = adev->psp.sos_feature_version;
+               break;
+       case AMDGPU_INFO_FW_ASD:
+               fw_info->ver = adev->psp.asd_fw_version;
+               fw_info->feature = adev->psp.asd_feature_version;
+               break;
        default:
                return -EINVAL;
        }
@@ -1095,6 +1103,23 @@ static int amdgpu_debugfs_firmware_info(struct seq_file 
*m, void *data)
                           fw_info.feature, fw_info.ver);
        }
 
+       /* PSP SOS */
+       query_fw.fw_type = AMDGPU_INFO_FW_SOS;
+       ret = amdgpu_firmware_info(&fw_info, &query_fw, adev);
+       if (ret)
+               return ret;
+       seq_printf(m, "SOS feature version: %u, firmware version: 0x%08x\n",
+                  fw_info.feature, fw_info.ver);
+
+
+       /* PSP ASD */
+       query_fw.fw_type = AMDGPU_INFO_FW_ASD;
+       ret = amdgpu_firmware_info(&fw_info, &query_fw, adev);
+       if (ret)
+               return ret;
+       seq_printf(m, "ASD feature version: %u, firmware version: 0x%08x\n",
+                  fw_info.feature, fw_info.ver);
+
        /* SMC */
        query_fw.fw_type = AMDGPU_INFO_FW_SMC;
        ret = amdgpu_firmware_info(&fw_info, &query_fw, adev);
diff --git a/include/uapi/drm/amdgpu_drm.h b/include/uapi/drm/amdgpu_drm.h
index 289b129..7da19cd 100644
--- a/include/uapi/drm/amdgpu_drm.h
+++ b/include/uapi/drm/amdgpu_drm.h
@@ -524,6 +524,10 @@ struct drm_amdgpu_cs_chunk_data {
        #define AMDGPU_INFO_FW_SMC              0x0a
        /* Subquery id: Query SDMA firmware version */
        #define AMDGPU_INFO_FW_SDMA             0x0b
+       /* Subquery id: Query PSP SOS firmware version */
+       #define AMDGPU_INFO_FW_SOS              0x0c
+       /* Subquery id: Query PSP ASD firmware version */
+       #define AMDGPU_INFO_FW_ASD              0x0d
 /* number of bytes moved for TTM migration */
 #define AMDGPU_INFO_NUM_BYTES_MOVED            0x0f
 /* the used VRAM size */
-- 
2.5.5

_______________________________________________
amd-gfx mailing list
amd-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/amd-gfx

Reply via email to