diff options
author | Huang Rui <ray.huang@amd.com> | 2018-01-22 07:48:14 -0500 |
---|---|---|
committer | Alex Deucher <alexander.deucher@amd.com> | 2018-05-15 14:43:36 -0400 |
commit | 621a6318adea69b08a3652c64bc7cc0cb4dacfb4 (patch) | |
tree | 8813a932613f5e929ba4a84ce27efb7dde0d2d22 /drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c | |
parent | d40e9b13c8bad15e56f2e8c9572f62c1229833a6 (diff) |
drm/amdgpu: add save restore list cntl gpm and srm firmware support
RLC save/restore list cntl/gpm_mem/srm_mem ucodes are used for CGPG and gfxoff
function.
Signed-off-by: Huang Rui <ray.huang@amd.com>
Acked-by: Alex Deucher <alexander.deucher@amd.com>
Acked-by: Christian König <christian.koenig@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c')
-rw-r--r-- | drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c index d602f8b14c58..eb4785e51573 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c | |||
@@ -215,6 +215,18 @@ static int amdgpu_firmware_info(struct drm_amdgpu_info_firmware *fw_info, | |||
215 | fw_info->ver = adev->gfx.rlc_fw_version; | 215 | fw_info->ver = adev->gfx.rlc_fw_version; |
216 | fw_info->feature = adev->gfx.rlc_feature_version; | 216 | fw_info->feature = adev->gfx.rlc_feature_version; |
217 | break; | 217 | break; |
218 | case AMDGPU_INFO_FW_GFX_RLC_RESTORE_LIST_CNTL: | ||
219 | fw_info->ver = adev->gfx.rlc_srlc_fw_version; | ||
220 | fw_info->feature = adev->gfx.rlc_srlc_feature_version; | ||
221 | break; | ||
222 | case AMDGPU_INFO_FW_GFX_RLC_RESTORE_LIST_GPM_MEM: | ||
223 | fw_info->ver = adev->gfx.rlc_srlg_fw_version; | ||
224 | fw_info->feature = adev->gfx.rlc_srlg_feature_version; | ||
225 | break; | ||
226 | case AMDGPU_INFO_FW_GFX_RLC_RESTORE_LIST_SRM_MEM: | ||
227 | fw_info->ver = adev->gfx.rlc_srls_fw_version; | ||
228 | fw_info->feature = adev->gfx.rlc_srls_feature_version; | ||
229 | break; | ||
218 | case AMDGPU_INFO_FW_GFX_MEC: | 230 | case AMDGPU_INFO_FW_GFX_MEC: |
219 | if (query_fw->index == 0) { | 231 | if (query_fw->index == 0) { |
220 | fw_info->ver = adev->gfx.mec_fw_version; | 232 | fw_info->ver = adev->gfx.mec_fw_version; |
@@ -1149,6 +1161,30 @@ static int amdgpu_debugfs_firmware_info(struct seq_file *m, void *data) | |||
1149 | seq_printf(m, "RLC feature version: %u, firmware version: 0x%08x\n", | 1161 | seq_printf(m, "RLC feature version: %u, firmware version: 0x%08x\n", |
1150 | fw_info.feature, fw_info.ver); | 1162 | fw_info.feature, fw_info.ver); |
1151 | 1163 | ||
1164 | /* RLC SAVE RESTORE LIST CNTL */ | ||
1165 | query_fw.fw_type = AMDGPU_INFO_FW_GFX_RLC_RESTORE_LIST_CNTL; | ||
1166 | ret = amdgpu_firmware_info(&fw_info, &query_fw, adev); | ||
1167 | if (ret) | ||
1168 | return ret; | ||
1169 | seq_printf(m, "RLC SRLC feature version: %u, firmware version: 0x%08x\n", | ||
1170 | fw_info.feature, fw_info.ver); | ||
1171 | |||
1172 | /* RLC SAVE RESTORE LIST GPM MEM */ | ||
1173 | query_fw.fw_type = AMDGPU_INFO_FW_GFX_RLC_RESTORE_LIST_GPM_MEM; | ||
1174 | ret = amdgpu_firmware_info(&fw_info, &query_fw, adev); | ||
1175 | if (ret) | ||
1176 | return ret; | ||
1177 | seq_printf(m, "RLC SRLG feature version: %u, firmware version: 0x%08x\n", | ||
1178 | fw_info.feature, fw_info.ver); | ||
1179 | |||
1180 | /* RLC SAVE RESTORE LIST SRM MEM */ | ||
1181 | query_fw.fw_type = AMDGPU_INFO_FW_GFX_RLC_RESTORE_LIST_SRM_MEM; | ||
1182 | ret = amdgpu_firmware_info(&fw_info, &query_fw, adev); | ||
1183 | if (ret) | ||
1184 | return ret; | ||
1185 | seq_printf(m, "RLC SRLS feature version: %u, firmware version: 0x%08x\n", | ||
1186 | fw_info.feature, fw_info.ver); | ||
1187 | |||
1152 | /* MEC */ | 1188 | /* MEC */ |
1153 | query_fw.fw_type = AMDGPU_INFO_FW_GFX_MEC; | 1189 | query_fw.fw_type = AMDGPU_INFO_FW_GFX_MEC; |
1154 | query_fw.index = 0; | 1190 | query_fw.index = 0; |