[PATCH] drm/amdgpu: add ta DTM/HDCP print in amdgpu_firmware_info for apu
Huang Rui
ray.huang at amd.com
Thu Sep 10 10:57:04 UTC 2020
On Wed, Sep 09, 2020 at 01:50:27PM +0800, Zhu, Changfeng wrote:
> From: changzhu <Changfeng.Zhu at amd.com>
>
> From: Changfeng <Changfeng.Zhu at amd.com>
>
> It needs to add ta DTM/HDCP print to get HDCP/DTM version info when cat
> amdgpu_firmware_info
>
> Change-Id: I05f20d6868ce2cac06a8496890b766dbb61de671
> Signed-off-by: Changfeng <Changfeng.Zhu at amd.com>
Reviewed-by: Huang Rui <ray.huang at amd.com>
> ---
> drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c | 43 +++++++++++++++++++++----
> 1 file changed, 36 insertions(+), 7 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c
> index 4f6b167fef26..d7f37cb92a97 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c
> @@ -282,14 +282,25 @@ static int amdgpu_firmware_info(struct drm_amdgpu_info_firmware *fw_info,
> fw_info->feature = 0;
> break;
> case AMDGPU_INFO_FW_TA:
> - if (query_fw->index > 1)
> - return -EINVAL;
> - if (query_fw->index == 0) {
> + switch (query_fw->index) {
> + case 0:
> fw_info->ver = adev->psp.ta_fw_version;
> fw_info->feature = adev->psp.ta_xgmi_ucode_version;
> - } else {
> + break;
> + case 1:
> fw_info->ver = adev->psp.ta_fw_version;
> fw_info->feature = adev->psp.ta_ras_ucode_version;
> + break;
> + case 2:
> + fw_info->ver = adev->psp.ta_fw_version;
> + fw_info->feature = adev->psp.ta_hdcp_ucode_version;
> + break;
> + case 3:
> + fw_info->ver = adev->psp.ta_fw_version;
> + fw_info->feature = adev->psp.ta_dtm_ucode_version;
> + break;
> + default:
> + return -EINVAL;
> }
> break;
> case AMDGPU_INFO_FW_SDMA:
> @@ -1383,13 +1394,31 @@ static int amdgpu_debugfs_firmware_info(struct seq_file *m, void *data)
> fw_info.feature, fw_info.ver);
>
> query_fw.fw_type = AMDGPU_INFO_FW_TA;
> - for (i = 0; i < 2; i++) {
> + for (i = 0; i < 4; i++) {
> query_fw.index = i;
> ret = amdgpu_firmware_info(&fw_info, &query_fw, adev);
> if (ret)
> continue;
> - seq_printf(m, "TA %s feature version: %u, firmware version: 0x%08x\n",
> - i ? "RAS" : "XGMI", fw_info.feature, fw_info.ver);
> + switch (query_fw.index) {
> + case 0:
> + seq_printf(m, "TA %s feature version: 0x%08x, firmware version: 0x%08x\n",
> + "RAS", fw_info.feature, fw_info.ver);
> + break;
> + case 1:
> + seq_printf(m, "TA %s feature version: 0x%08x, firmware version: 0x%08x\n",
> + "XGMI", fw_info.feature, fw_info.ver);
> + break;
> + case 2:
> + seq_printf(m, "TA %s feature version: 0x%08x, firmware version: 0x%08x\n",
> + "HDCP", fw_info.feature, fw_info.ver);
> + break;
> + case 3:
> + seq_printf(m, "TA %s feature version: 0x%08x, firmware version: 0x%08x\n",
> + "DTM", fw_info.feature, fw_info.ver);
> + break;
> + default:
> + return -EINVAL;
> + }
> }
>
> /* SMC */
> --
> 2.17.1
>
More information about the amd-gfx
mailing list