drm/amdgpu: add support for request SI/CI firmware in CGS
Subsystems (2)
PATCH 1/2 drm/amdgpu: add support for request SI/CI firmware in CGS
Change-Id If3ab520f8c65bec070e97cd8787041919d687ad3
Signed-off-by Rex Zhu <[email protected]>
--- drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c | 79 +++++++++++++++++++++++++++++++++ 1 file changed, 79 insertions(+)
drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c +79 -0
@@ -675,6 +675,85 @@ static int amdgpu_cgs_get_firmware_info(struct cgs_device *cgs_device,if (!adev->pm.fw) {switch (adev->asic_type) { +case CHIP_TAHITI : +strcpy (fw_name,"radeon/tahiti_smc.bin" ); +break ; +case CHIP_PITCAIRN : +if ((adev->pdev->revision ==0x81 ) && + ((adev->pdev->device ==0x6810 ) || + (adev->pdev->device ==0x6811 ))) { + info->is_kicker = true; +strcpy (fw_name,"radeon/pitcairn_k_smc.bin" ); + }else { +strcpy (fw_name,"radeon/pitcairn_smc.bin" ); + } +break ; +case CHIP_VERDE : +if (((adev->pdev->device ==0x6820 ) && + ((adev->pdev->revision ==0x81 ) || + (adev->pdev->revision ==0x83 ))) || + ((adev->pdev->device ==0x6821 ) && + ((adev->pdev->revision ==0x83 ) || + (adev->pdev->revision ==0x87 ))) || + ((adev->pdev->revision ==0x87 ) && + ((adev->pdev->device ==0x6823 ) || + (adev->pdev->device ==0x682b )))) { + info->is_kicker = true; +strcpy (fw_name,"radeon/verde_k_smc.bin" ); + }else { +strcpy (fw_name,"radeon/verde_smc.bin" ); + } +break ; +case CHIP_OLAND : +if (((adev->pdev->revision ==0x81 ) && + ((adev->pdev->device ==0x6600 ) || + (adev->pdev->device ==0x6604 ) || + (adev->pdev->device ==0x6605 ) || + (adev->pdev->device ==0x6610 ))) || + ((adev->pdev->revision ==0x83 ) && + (adev->pdev->device ==0x6610 ))) { + info->is_kicker = true; +strcpy (fw_name,"radeon/oland_k_smc.bin" ); + }else { +strcpy (fw_name,"radeon/oland_smc.bin" ); + } +break ; +case CHIP_HAINAN : +if (((adev->pdev->revision ==0x81 ) && + (adev->pdev->device ==0x6660 )) || + ((adev->pdev->revision ==0x83 ) && + ((adev->pdev->device ==0x6660 ) || + (adev->pdev->device ==0x6663 ) || + (adev->pdev->device ==0x6665 ) || + (adev->pdev->device ==0x6667 )))) { + info->is_kicker = true; +strcpy (fw_name,"radeon/hainan_k_smc.bin" ); + }else if ((adev->pdev->revision ==0xc3 ) && + (adev->pdev->device ==0x6665 )) { + info->is_kicker = true; +strcpy (fw_name,"radeon/banks_k_2_smc.bin" ); + }else { +strcpy (fw_name,"radeon/hainan_smc.bin" ); + } +break ; +case CHIP_BONAIRE : +if ((adev->pdev->revision ==0x80 ) || + (adev->pdev->revision ==0x81 ) || + (adev->pdev->device ==0x665f )) { + info->is_kicker = true; +strcpy (fw_name,"radeon/bonaire_k_smc.bin" ); + }else { +strcpy (fw_name,"radeon/bonaire_smc.bin" ); + } +break ; +case CHIP_HAWAII : +if (adev->pdev->revision ==0x80 ) { + info->is_kicker = true; +strcpy (fw_name,"radeon/hawaii_k_smc.bin" ); + }else { +strcpy (fw_name,"radeon/hawaii_smc.bin" ); + } +break ;case CHIP_TOPAZ : if (((adev->pdev->device == 0x6900) && (adev->pdev->revision == 0x81)) || ((adev->pdev->device == 0x6900) && (adev->pdev->revision == 0x83)) ||
Signature · 6 lines
1.9.1 _______________________________________________ amd-gfx mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/amd-gfx
A message that is not in the archive (sent off-list or not yet received): 1504852826-28249-1-git-send-email-Rex.Zhu-5C7GfCeVMHo@public.gmane.org
Alex Deucher
Reviewed-byQuoted 2 lines · Rex Zhu
Change-Id If3ab520f8c65bec070e97cd8787041919d687ad3Signed-off-by Rex Zhu <[email protected]>
Series is:
Reviewed-by Alex Deucher <[email protected]>
Quoted 97 lines
--- drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c | 79 +++++++++++++++++++++++++++++++++ 1 file changed, 79 insertions(+)drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c +79
-1@@ -675,6 +675,85 @@ static int amdgpu_cgs_get_firmware_info(struct cgs_device *cgs_device,if (!adev->pm.fw) {switch (adev->asic_type) { +case CHIP_TAHITI : +strcpy (fw_name,"radeon/tahiti_smc.bin" ); +break ; +case CHIP_PITCAIRN : +if ((adev->pdev->revision ==0x81 ) && + ((adev->pdev->device ==0x6810 ) || + (adev->pdev->device ==0x6811 ))) { + info->is_kicker = true; +strcpy (fw_name,"radeon/pitcairn_k_smc.bin" ); + }else { +strcpy (fw_name,"radeon/pitcairn_smc.bin" ); + } +break ; +case CHIP_VERDE : +if (((adev->pdev->device ==0x6820 ) && + ((adev->pdev->revision ==0x81 ) || + (adev->pdev->revision ==0x83 ))) || + ((adev->pdev->device ==0x6821 ) && + ((adev->pdev->revision ==0x83 ) || + (adev->pdev->revision ==0x87 ))) || + ((adev->pdev->revision ==0x87 ) && + ((adev->pdev->device ==0x6823 ) || + (adev->pdev->device ==0x682b )))) { + info->is_kicker = true; +strcpy (fw_name,"radeon/verde_k_smc.bin" ); + }else { +strcpy (fw_name,"radeon/verde_smc.bin" ); + } +break ; +case CHIP_OLAND : +if (((adev->pdev->revision ==0x81 ) && + ((adev->pdev->device ==0x6600 ) || + (adev->pdev->device ==0x6604 ) || + (adev->pdev->device ==0x6605 ) || + (adev->pdev->device ==0x6610 ))) || + ((adev->pdev->revision ==0x83 ) && + (adev->pdev->device ==0x6610 ))) { + info->is_kicker = true; +strcpy (fw_name,"radeon/oland_k_smc.bin" ); + }else { +strcpy (fw_name,"radeon/oland_smc.bin" ); + } +break ; +case CHIP_HAINAN : +if (((adev->pdev->revision ==0x81 ) && + (adev->pdev->device ==0x6660 )) || + ((adev->pdev->revision ==0x83 ) && + ((adev->pdev->device ==0x6660 ) || + (adev->pdev->device ==0x6663 ) || + (adev->pdev->device ==0x6665 ) || + (adev->pdev->device ==0x6667 )))) { + info->is_kicker = true; +strcpy (fw_name,"radeon/hainan_k_smc.bin" ); + }else if ((adev->pdev->revision ==0xc3 ) && + (adev->pdev->device ==0x6665 )) { + info->is_kicker = true; +strcpy (fw_name,"radeon/banks_k_2_smc.bin" ); + }else { +strcpy (fw_name,"radeon/hainan_smc.bin" ); + } +break ; +case CHIP_BONAIRE : +if ((adev->pdev->revision ==0x80 ) || + (adev->pdev->revision ==0x81 ) || + (adev->pdev->device ==0x665f )) { + info->is_kicker = true; +strcpy (fw_name,"radeon/bonaire_k_smc.bin" ); + }else { +strcpy (fw_name,"radeon/bonaire_smc.bin" ); + } +break ; +case CHIP_HAWAII : +if (adev->pdev->revision ==0x80 ) { + info->is_kicker = true; +strcpy (fw_name,"radeon/hawaii_k_smc.bin" ); + }else { +strcpy (fw_name,"radeon/hawaii_smc.bin" ); + } +break ;case CHIP_TOPAZ : if (((adev->pdev->device == 0x6900) && (adev->pdev->revision == 0x81)) || ((adev->pdev->device == 0x6900) && (adev->pdev->revision == 0x83)) || --1.9.1
Quoted 4 lines
_______________________________________________
amd-gfx mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/amd-gfx
_______________________________________________
amd-gfx mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/amd-gfx