[PATCH 1/2] drm/amdgpu: add support for request SI/CI firmware in CGS
Alex Deucher
alexdeucher at gmail.com
Mon Sep 11 14:21:04 UTC 2017
On Fri, Sep 8, 2017 at 2:40 AM, Rex Zhu <Rex.Zhu at amd.com> wrote:
> Change-Id: If3ab520f8c65bec070e97cd8787041919d687ad3
> Signed-off-by: Rex Zhu <Rex.Zhu at amd.com>
Series is:
Reviewed-by: Alex Deucher <alexander.deucher at amd.com>
> ---
> drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c | 79 +++++++++++++++++++++++++++++++++
> 1 file changed, 79 insertions(+)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c
> index d450a96..5e83f9a 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c
> @@ -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
>
> _______________________________________________
> amd-gfx mailing list
> amd-gfx at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/amd-gfx
More information about the amd-gfx
mailing list