aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/amd
diff options
context:
space:
mode:
authorHuang Rui <ray.huang@amd.com>2018-01-22 07:48:14 -0500
committerAlex Deucher <alexander.deucher@amd.com>2018-05-15 14:43:36 -0400
commit621a6318adea69b08a3652c64bc7cc0cb4dacfb4 (patch)
tree8813a932613f5e929ba4a84ce27efb7dde0d2d22 /drivers/gpu/drm/amd
parentd40e9b13c8bad15e56f2e8c9572f62c1229833a6 (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')
-rw-r--r--drivers/gpu/drm/amd/amdgpu/amdgpu.h15
-rw-r--r--drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c36
-rw-r--r--drivers/gpu/drm/amd/amdgpu/amdgpu_ucode.c17
-rw-r--r--drivers/gpu/drm/amd/amdgpu/amdgpu_ucode.h3
-rw-r--r--drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c55
-rw-r--r--drivers/gpu/drm/amd/amdgpu/psp_v10_0.c9
6 files changed, 132 insertions, 3 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu.h b/drivers/gpu/drm/amd/amdgpu/amdgpu.h
index d64ef30fed47..5ad893915a85 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu.h
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu.h
@@ -774,9 +774,18 @@ struct amdgpu_rlc {
774 u32 starting_offsets_start; 774 u32 starting_offsets_start;
775 u32 reg_list_format_size_bytes; 775 u32 reg_list_format_size_bytes;
776 u32 reg_list_size_bytes; 776 u32 reg_list_size_bytes;
777 u32 reg_list_format_direct_reg_list_length;
778 u32 save_restore_list_cntl_size_bytes;
779 u32 save_restore_list_gpm_size_bytes;
780 u32 save_restore_list_srm_size_bytes;
777 781
778 u32 *register_list_format; 782 u32 *register_list_format;
779 u32 *register_restore; 783 u32 *register_restore;
784 u8 *save_restore_list_cntl;
785 u8 *save_restore_list_gpm;
786 u8 *save_restore_list_srm;
787
788 bool is_rlc_v2_1;
780}; 789};
781 790
782#define AMDGPU_MAX_COMPUTE_QUEUES KGD_MAX_QUEUES 791#define AMDGPU_MAX_COMPUTE_QUEUES KGD_MAX_QUEUES
@@ -943,6 +952,12 @@ struct amdgpu_gfx {
943 uint32_t ce_feature_version; 952 uint32_t ce_feature_version;
944 uint32_t pfp_feature_version; 953 uint32_t pfp_feature_version;
945 uint32_t rlc_feature_version; 954 uint32_t rlc_feature_version;
955 uint32_t rlc_srlc_fw_version;
956 uint32_t rlc_srlc_feature_version;
957 uint32_t rlc_srlg_fw_version;
958 uint32_t rlc_srlg_feature_version;
959 uint32_t rlc_srls_fw_version;
960 uint32_t rlc_srls_feature_version;
946 uint32_t mec_feature_version; 961 uint32_t mec_feature_version;
947 uint32_t mec2_feature_version; 962 uint32_t mec2_feature_version;
948 struct amdgpu_ring gfx_ring[AMDGPU_MAX_GFX_RINGS]; 963 struct amdgpu_ring gfx_ring[AMDGPU_MAX_GFX_RINGS];
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;
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ucode.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_ucode.c
index 84d652599d5b..0c74c09ef3b0 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ucode.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ucode.c
@@ -337,7 +337,10 @@ static int amdgpu_ucode_init_single_fw(struct amdgpu_device *adev,
337 (ucode->ucode_id != AMDGPU_UCODE_ID_CP_MEC1 && 337 (ucode->ucode_id != AMDGPU_UCODE_ID_CP_MEC1 &&
338 ucode->ucode_id != AMDGPU_UCODE_ID_CP_MEC2 && 338 ucode->ucode_id != AMDGPU_UCODE_ID_CP_MEC2 &&
339 ucode->ucode_id != AMDGPU_UCODE_ID_CP_MEC1_JT && 339 ucode->ucode_id != AMDGPU_UCODE_ID_CP_MEC1_JT &&
340 ucode->ucode_id != AMDGPU_UCODE_ID_CP_MEC2_JT)) { 340 ucode->ucode_id != AMDGPU_UCODE_ID_CP_MEC2_JT &&
341 ucode->ucode_id != AMDGPU_UCODE_ID_RLC_RESTORE_LIST_CNTL &&
342 ucode->ucode_id != AMDGPU_UCODE_ID_RLC_RESTORE_LIST_GPM_MEM &&
343 ucode->ucode_id != AMDGPU_UCODE_ID_RLC_RESTORE_LIST_SRM_MEM)) {
341 ucode->ucode_size = le32_to_cpu(header->ucode_size_bytes); 344 ucode->ucode_size = le32_to_cpu(header->ucode_size_bytes);
342 345
343 memcpy(ucode->kaddr, (void *)((uint8_t *)ucode->fw->data + 346 memcpy(ucode->kaddr, (void *)((uint8_t *)ucode->fw->data +
@@ -359,6 +362,18 @@ static int amdgpu_ucode_init_single_fw(struct amdgpu_device *adev,
359 le32_to_cpu(header->ucode_array_offset_bytes) + 362 le32_to_cpu(header->ucode_array_offset_bytes) +
360 le32_to_cpu(cp_hdr->jt_offset) * 4), 363 le32_to_cpu(cp_hdr->jt_offset) * 4),
361 ucode->ucode_size); 364 ucode->ucode_size);
365 } else if (ucode->ucode_id == AMDGPU_UCODE_ID_RLC_RESTORE_LIST_CNTL) {
366 ucode->ucode_size = adev->gfx.rlc.save_restore_list_cntl_size_bytes;
367 memcpy(ucode->kaddr, adev->gfx.rlc.save_restore_list_cntl,
368 ucode->ucode_size);
369 } else if (ucode->ucode_id == AMDGPU_UCODE_ID_RLC_RESTORE_LIST_GPM_MEM) {
370 ucode->ucode_size = adev->gfx.rlc.save_restore_list_gpm_size_bytes;
371 memcpy(ucode->kaddr, adev->gfx.rlc.save_restore_list_gpm,
372 ucode->ucode_size);
373 } else if (ucode->ucode_id == AMDGPU_UCODE_ID_RLC_RESTORE_LIST_SRM_MEM) {
374 ucode->ucode_size = adev->gfx.rlc.save_restore_list_srm_size_bytes;
375 memcpy(ucode->kaddr, adev->gfx.rlc.save_restore_list_srm,
376 ucode->ucode_size);
362 } 377 }
363 378
364 return 0; 379 return 0;
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ucode.h b/drivers/gpu/drm/amd/amdgpu/amdgpu_ucode.h
index 0b262f4bb4fc..08e38579af24 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ucode.h
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ucode.h
@@ -187,6 +187,9 @@ enum AMDGPU_UCODE_ID {
187 AMDGPU_UCODE_ID_CP_MEC2, 187 AMDGPU_UCODE_ID_CP_MEC2,
188 AMDGPU_UCODE_ID_CP_MEC2_JT, 188 AMDGPU_UCODE_ID_CP_MEC2_JT,
189 AMDGPU_UCODE_ID_RLC_G, 189 AMDGPU_UCODE_ID_RLC_G,
190 AMDGPU_UCODE_ID_RLC_RESTORE_LIST_CNTL,
191 AMDGPU_UCODE_ID_RLC_RESTORE_LIST_GPM_MEM,
192 AMDGPU_UCODE_ID_RLC_RESTORE_LIST_SRM_MEM,
190 AMDGPU_UCODE_ID_STORAGE, 193 AMDGPU_UCODE_ID_STORAGE,
191 AMDGPU_UCODE_ID_SMC, 194 AMDGPU_UCODE_ID_SMC,
192 AMDGPU_UCODE_ID_UVD, 195 AMDGPU_UCODE_ID_UVD,
diff --git a/drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c b/drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c
index 587a8731fa31..73b76fa29bad 100644
--- a/drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c
+++ b/drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c
@@ -41,7 +41,6 @@
41#define GFX9_MEC_HPD_SIZE 2048 41#define GFX9_MEC_HPD_SIZE 2048
42#define RLCG_UCODE_LOADING_START_ADDRESS 0x00002000L 42#define RLCG_UCODE_LOADING_START_ADDRESS 0x00002000L
43#define RLC_SAVE_RESTORE_ADDR_STARTING_OFFSET 0x00000000L 43#define RLC_SAVE_RESTORE_ADDR_STARTING_OFFSET 0x00000000L
44#define GFX9_RLC_FORMAT_DIRECT_REG_LIST_LENGTH 34
45 44
46#define mmPWR_MISC_CNTL_STATUS 0x0183 45#define mmPWR_MISC_CNTL_STATUS 0x0183
47#define mmPWR_MISC_CNTL_STATUS_BASE_IDX 0 46#define mmPWR_MISC_CNTL_STATUS_BASE_IDX 0
@@ -401,6 +400,27 @@ static void gfx_v9_0_free_microcode(struct amdgpu_device *adev)
401 kfree(adev->gfx.rlc.register_list_format); 400 kfree(adev->gfx.rlc.register_list_format);
402} 401}
403 402
403static void gfx_v9_0_init_rlc_ext_microcode(struct amdgpu_device *adev)
404{
405 const struct rlc_firmware_header_v2_1 *rlc_hdr;
406
407 rlc_hdr = (const struct rlc_firmware_header_v2_1 *)adev->gfx.rlc_fw->data;
408 adev->gfx.rlc_srlc_fw_version = le32_to_cpu(rlc_hdr->save_restore_list_cntl_ucode_ver);
409 adev->gfx.rlc_srlc_feature_version = le32_to_cpu(rlc_hdr->save_restore_list_cntl_feature_ver);
410 adev->gfx.rlc.save_restore_list_cntl_size_bytes = le32_to_cpu(rlc_hdr->save_restore_list_cntl_size_bytes);
411 adev->gfx.rlc.save_restore_list_cntl = (u8 *)rlc_hdr + le32_to_cpu(rlc_hdr->save_restore_list_cntl_offset_bytes);
412 adev->gfx.rlc_srlg_fw_version = le32_to_cpu(rlc_hdr->save_restore_list_gpm_ucode_ver);
413 adev->gfx.rlc_srlg_feature_version = le32_to_cpu(rlc_hdr->save_restore_list_gpm_feature_ver);
414 adev->gfx.rlc.save_restore_list_gpm_size_bytes = le32_to_cpu(rlc_hdr->save_restore_list_gpm_size_bytes);
415 adev->gfx.rlc.save_restore_list_gpm = (u8 *)rlc_hdr + le32_to_cpu(rlc_hdr->save_restore_list_gpm_offset_bytes);
416 adev->gfx.rlc_srls_fw_version = le32_to_cpu(rlc_hdr->save_restore_list_srm_ucode_ver);
417 adev->gfx.rlc_srls_feature_version = le32_to_cpu(rlc_hdr->save_restore_list_srm_feature_ver);
418 adev->gfx.rlc.save_restore_list_srm_size_bytes = le32_to_cpu(rlc_hdr->save_restore_list_srm_size_bytes);
419 adev->gfx.rlc.save_restore_list_srm = (u8 *)rlc_hdr + le32_to_cpu(rlc_hdr->save_restore_list_srm_offset_bytes);
420 adev->gfx.rlc.reg_list_format_direct_reg_list_length =
421 le32_to_cpu(rlc_hdr->reg_list_format_direct_reg_list_length);
422}
423
404static int gfx_v9_0_init_microcode(struct amdgpu_device *adev) 424static int gfx_v9_0_init_microcode(struct amdgpu_device *adev)
405{ 425{
406 const char *chip_name; 426 const char *chip_name;
@@ -412,6 +432,8 @@ static int gfx_v9_0_init_microcode(struct amdgpu_device *adev)
412 const struct rlc_firmware_header_v2_0 *rlc_hdr; 432 const struct rlc_firmware_header_v2_0 *rlc_hdr;
413 unsigned int *tmp = NULL; 433 unsigned int *tmp = NULL;
414 unsigned int i = 0; 434 unsigned int i = 0;
435 uint16_t version_major;
436 uint16_t version_minor;
415 437
416 DRM_DEBUG("\n"); 438 DRM_DEBUG("\n");
417 439
@@ -468,6 +490,12 @@ static int gfx_v9_0_init_microcode(struct amdgpu_device *adev)
468 goto out; 490 goto out;
469 err = amdgpu_ucode_validate(adev->gfx.rlc_fw); 491 err = amdgpu_ucode_validate(adev->gfx.rlc_fw);
470 rlc_hdr = (const struct rlc_firmware_header_v2_0 *)adev->gfx.rlc_fw->data; 492 rlc_hdr = (const struct rlc_firmware_header_v2_0 *)adev->gfx.rlc_fw->data;
493
494 version_major = le16_to_cpu(rlc_hdr->header.header_version_major);
495 version_minor = le16_to_cpu(rlc_hdr->header.header_version_minor);
496 if (version_major == 2 && version_minor == 1)
497 adev->gfx.rlc.is_rlc_v2_1 = true;
498
471 adev->gfx.rlc_fw_version = le32_to_cpu(rlc_hdr->header.ucode_version); 499 adev->gfx.rlc_fw_version = le32_to_cpu(rlc_hdr->header.ucode_version);
472 adev->gfx.rlc_feature_version = le32_to_cpu(rlc_hdr->ucode_feature_version); 500 adev->gfx.rlc_feature_version = le32_to_cpu(rlc_hdr->ucode_feature_version);
473 adev->gfx.rlc.save_and_restore_offset = 501 adev->gfx.rlc.save_and_restore_offset =
@@ -508,6 +536,9 @@ static int gfx_v9_0_init_microcode(struct amdgpu_device *adev)
508 for (i = 0 ; i < (rlc_hdr->reg_list_size_bytes >> 2); i++) 536 for (i = 0 ; i < (rlc_hdr->reg_list_size_bytes >> 2); i++)
509 adev->gfx.rlc.register_restore[i] = le32_to_cpu(tmp[i]); 537 adev->gfx.rlc.register_restore[i] = le32_to_cpu(tmp[i]);
510 538
539 if (adev->gfx.rlc.is_rlc_v2_1)
540 gfx_v9_0_init_rlc_ext_microcode(adev);
541
511 snprintf(fw_name, sizeof(fw_name), "amdgpu/%s_mec.bin", chip_name); 542 snprintf(fw_name, sizeof(fw_name), "amdgpu/%s_mec.bin", chip_name);
512 err = request_firmware(&adev->gfx.mec_fw, fw_name, adev->dev); 543 err = request_firmware(&adev->gfx.mec_fw, fw_name, adev->dev);
513 if (err) 544 if (err)
@@ -566,6 +597,26 @@ static int gfx_v9_0_init_microcode(struct amdgpu_device *adev)
566 adev->firmware.fw_size += 597 adev->firmware.fw_size +=
567 ALIGN(le32_to_cpu(header->ucode_size_bytes), PAGE_SIZE); 598 ALIGN(le32_to_cpu(header->ucode_size_bytes), PAGE_SIZE);
568 599
600 if (adev->gfx.rlc.is_rlc_v2_1) {
601 info = &adev->firmware.ucode[AMDGPU_UCODE_ID_RLC_RESTORE_LIST_CNTL];
602 info->ucode_id = AMDGPU_UCODE_ID_RLC_RESTORE_LIST_CNTL;
603 info->fw = adev->gfx.rlc_fw;
604 adev->firmware.fw_size +=
605 ALIGN(adev->gfx.rlc.save_restore_list_cntl_size_bytes, PAGE_SIZE);
606
607 info = &adev->firmware.ucode[AMDGPU_UCODE_ID_RLC_RESTORE_LIST_GPM_MEM];
608 info->ucode_id = AMDGPU_UCODE_ID_RLC_RESTORE_LIST_GPM_MEM;
609 info->fw = adev->gfx.rlc_fw;
610 adev->firmware.fw_size +=
611 ALIGN(adev->gfx.rlc.save_restore_list_gpm_size_bytes, PAGE_SIZE);
612
613 info = &adev->firmware.ucode[AMDGPU_UCODE_ID_RLC_RESTORE_LIST_SRM_MEM];
614 info->ucode_id = AMDGPU_UCODE_ID_RLC_RESTORE_LIST_SRM_MEM;
615 info->fw = adev->gfx.rlc_fw;
616 adev->firmware.fw_size +=
617 ALIGN(adev->gfx.rlc.save_restore_list_srm_size_bytes, PAGE_SIZE);
618 }
619
569 info = &adev->firmware.ucode[AMDGPU_UCODE_ID_CP_MEC1]; 620 info = &adev->firmware.ucode[AMDGPU_UCODE_ID_CP_MEC1];
570 info->ucode_id = AMDGPU_UCODE_ID_CP_MEC1; 621 info->ucode_id = AMDGPU_UCODE_ID_CP_MEC1;
571 info->fw = adev->gfx.mec_fw; 622 info->fw = adev->gfx.mec_fw;
@@ -1781,7 +1832,7 @@ static int gfx_v9_0_init_rlc_save_restore_list(struct amdgpu_device *adev)
1781 1832
1782 /* setup unique_indirect_regs array and indirect_start_offsets array */ 1833 /* setup unique_indirect_regs array and indirect_start_offsets array */
1783 gfx_v9_0_parse_ind_reg_list(register_list_format, 1834 gfx_v9_0_parse_ind_reg_list(register_list_format,
1784 GFX9_RLC_FORMAT_DIRECT_REG_LIST_LENGTH, 1835 adev->gfx.rlc.reg_list_format_direct_reg_list_length,
1785 adev->gfx.rlc.reg_list_format_size_bytes >> 2, 1836 adev->gfx.rlc.reg_list_format_size_bytes >> 2,
1786 unique_indirect_regs, 1837 unique_indirect_regs,
1787 &unique_indirect_reg_count, 1838 &unique_indirect_reg_count,
diff --git a/drivers/gpu/drm/amd/amdgpu/psp_v10_0.c b/drivers/gpu/drm/amd/amdgpu/psp_v10_0.c
index 8873d833a7f7..0ff136d02d9b 100644
--- a/drivers/gpu/drm/amd/amdgpu/psp_v10_0.c
+++ b/drivers/gpu/drm/amd/amdgpu/psp_v10_0.c
@@ -70,6 +70,15 @@ psp_v10_0_get_fw_type(struct amdgpu_firmware_info *ucode, enum psp_gfx_fw_type *
70 case AMDGPU_UCODE_ID_RLC_G: 70 case AMDGPU_UCODE_ID_RLC_G:
71 *type = GFX_FW_TYPE_RLC_G; 71 *type = GFX_FW_TYPE_RLC_G;
72 break; 72 break;
73 case AMDGPU_UCODE_ID_RLC_RESTORE_LIST_CNTL:
74 *type = GFX_FW_TYPE_RLC_RESTORE_LIST_CNTL;
75 break;
76 case AMDGPU_UCODE_ID_RLC_RESTORE_LIST_GPM_MEM:
77 *type = GFX_FW_TYPE_RLC_RESTORE_LIST_GPM_MEM;
78 break;
79 case AMDGPU_UCODE_ID_RLC_RESTORE_LIST_SRM_MEM:
80 *type = GFX_FW_TYPE_RLC_RESTORE_LIST_SRM_MEM;
81 break;
73 case AMDGPU_UCODE_ID_SMC: 82 case AMDGPU_UCODE_ID_SMC:
74 *type = GFX_FW_TYPE_SMU; 83 *type = GFX_FW_TYPE_SMU;
75 break; 84 break;