diff options
author | Frank Min <Frank.Min@amd.com> | 2016-04-27 06:53:29 -0400 |
---|---|---|
committer | Alex Deucher <alexander.deucher@amd.com> | 2016-09-22 10:24:15 -0400 |
commit | fc76cbf45651f58284b8035ae1938e8ff5d19ee7 (patch) | |
tree | 7db0d88206c46176ae99337c4922784d70d136c2 | |
parent | bec86378befae4155b58f80bb9d0da50080291e6 (diff) |
drm/amdgpu:add fw version entry to info
Signed-off-by: Frank Min <Frank.Min@amd.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
-rw-r--r-- | drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c | 42 | ||||
-rwxr-xr-x[-rw-r--r--] | drivers/gpu/drm/amd/include/cgs_common.h | 1 | ||||
-rwxr-xr-x[-rw-r--r--] | drivers/gpu/drm/amd/powerplay/smumgr/fiji_smumgr.c | 0 |
3 files changed, 43 insertions, 0 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c index f1c53a2b09c6..7a8bfa34682f 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c | |||
@@ -711,6 +711,47 @@ static int amdgpu_cgs_rel_firmware(struct cgs_device *cgs_device, enum cgs_ucode | |||
711 | return -EINVAL; | 711 | return -EINVAL; |
712 | } | 712 | } |
713 | 713 | ||
714 | static uint16_t amdgpu_get_firmware_version(struct cgs_device *cgs_device, | ||
715 | enum cgs_ucode_id type) | ||
716 | { | ||
717 | CGS_FUNC_ADEV; | ||
718 | uint16_t fw_version; | ||
719 | |||
720 | switch (type) { | ||
721 | case CGS_UCODE_ID_SDMA0: | ||
722 | fw_version = adev->sdma.instance[0].fw_version; | ||
723 | break; | ||
724 | case CGS_UCODE_ID_SDMA1: | ||
725 | fw_version = adev->sdma.instance[1].fw_version; | ||
726 | break; | ||
727 | case CGS_UCODE_ID_CP_CE: | ||
728 | fw_version = adev->gfx.ce_fw_version; | ||
729 | break; | ||
730 | case CGS_UCODE_ID_CP_PFP: | ||
731 | fw_version = adev->gfx.pfp_fw_version; | ||
732 | break; | ||
733 | case CGS_UCODE_ID_CP_ME: | ||
734 | fw_version = adev->gfx.me_fw_version; | ||
735 | break; | ||
736 | case CGS_UCODE_ID_CP_MEC: | ||
737 | fw_version = adev->gfx.mec_fw_version; | ||
738 | break; | ||
739 | case CGS_UCODE_ID_CP_MEC_JT1: | ||
740 | fw_version = adev->gfx.mec_fw_version; | ||
741 | break; | ||
742 | case CGS_UCODE_ID_CP_MEC_JT2: | ||
743 | fw_version = adev->gfx.mec_fw_version; | ||
744 | break; | ||
745 | case CGS_UCODE_ID_RLC_G: | ||
746 | fw_version = adev->gfx.rlc_fw_version; | ||
747 | break; | ||
748 | default: | ||
749 | DRM_ERROR("firmware type %d do not have version\n", type); | ||
750 | fw_version = 0; | ||
751 | } | ||
752 | return fw_version; | ||
753 | } | ||
754 | |||
714 | static int amdgpu_cgs_get_firmware_info(struct cgs_device *cgs_device, | 755 | static int amdgpu_cgs_get_firmware_info(struct cgs_device *cgs_device, |
715 | enum cgs_ucode_id type, | 756 | enum cgs_ucode_id type, |
716 | struct cgs_firmware_info *info) | 757 | struct cgs_firmware_info *info) |
@@ -741,6 +782,7 @@ static int amdgpu_cgs_get_firmware_info(struct cgs_device *cgs_device, | |||
741 | info->mc_addr = gpu_addr; | 782 | info->mc_addr = gpu_addr; |
742 | info->image_size = data_size; | 783 | info->image_size = data_size; |
743 | info->version = (uint16_t)le32_to_cpu(header->header.ucode_version); | 784 | info->version = (uint16_t)le32_to_cpu(header->header.ucode_version); |
785 | info->fw_version = amdgpu_get_firmware_version(cgs_device, type); | ||
744 | info->feature_version = (uint16_t)le32_to_cpu(header->ucode_feature_version); | 786 | info->feature_version = (uint16_t)le32_to_cpu(header->ucode_feature_version); |
745 | } else { | 787 | } else { |
746 | char fw_name[30] = {0}; | 788 | char fw_name[30] = {0}; |
diff --git a/drivers/gpu/drm/amd/include/cgs_common.h b/drivers/gpu/drm/amd/include/cgs_common.h index 6aa8938fd826..df7c18b6a02a 100644..100755 --- a/drivers/gpu/drm/amd/include/cgs_common.h +++ b/drivers/gpu/drm/amd/include/cgs_common.h | |||
@@ -161,6 +161,7 @@ struct cgs_clock_limits { | |||
161 | */ | 161 | */ |
162 | struct cgs_firmware_info { | 162 | struct cgs_firmware_info { |
163 | uint16_t version; | 163 | uint16_t version; |
164 | uint16_t fw_version; | ||
164 | uint16_t feature_version; | 165 | uint16_t feature_version; |
165 | uint32_t image_size; | 166 | uint32_t image_size; |
166 | uint64_t mc_addr; | 167 | uint64_t mc_addr; |
diff --git a/drivers/gpu/drm/amd/powerplay/smumgr/fiji_smumgr.c b/drivers/gpu/drm/amd/powerplay/smumgr/fiji_smumgr.c index 02fe1df855a9..02fe1df855a9 100644..100755 --- a/drivers/gpu/drm/amd/powerplay/smumgr/fiji_smumgr.c +++ b/drivers/gpu/drm/amd/powerplay/smumgr/fiji_smumgr.c | |||