drm/amdgpu: add support for new smc firmware on tonga
authorAlex Deucher <alexander.deucher@amd.com>
Wed, 26 Oct 2016 20:41:39 +0000 (16:41 -0400)
committerAlex Deucher <alexander.deucher@amd.com>
Fri, 28 Oct 2016 19:15:08 +0000 (15:15 -0400)
Newer tonga parts require new smc firmware.

Reviewed-by: Huang Rui <ray.huang@amd.com>
Reviewed-by: Eric Huang <JinHuiEric.Huang@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Cc: stable@vger.kernel.org
drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c
drivers/gpu/drm/amd/amdgpu/vi.c

index 7a8bfa34682fdd8a92959d43328a7de058b42b7f..d1267ea1d631185bc147da8f3140fb12a347c03e 100644 (file)
@@ -798,7 +798,11 @@ static int amdgpu_cgs_get_firmware_info(struct cgs_device *cgs_device,
                                strcpy(fw_name, "amdgpu/topaz_smc.bin");
                                break;
                        case CHIP_TONGA:
-                               strcpy(fw_name, "amdgpu/tonga_smc.bin");
+                               if (((adev->pdev->device == 0x6939) && (adev->pdev->revision == 0xf1)) ||
+                                   ((adev->pdev->device == 0x6938) && (adev->pdev->revision == 0xf1)))
+                                       strcpy(fw_name, "amdgpu/tonga_k_smc.bin");
+                               else
+                                       strcpy(fw_name, "amdgpu/tonga_smc.bin");
                                break;
                        case CHIP_FIJI:
                                strcpy(fw_name, "amdgpu/fiji_smc.bin");
index 7c13090df7c0dec22585480405b0d7ef1daaa654..12404fc47520c9a6518c16438c0a8f2a04ab58e5 100644 (file)
@@ -81,6 +81,7 @@
 
 MODULE_FIRMWARE("amdgpu/topaz_smc.bin");
 MODULE_FIRMWARE("amdgpu/tonga_smc.bin");
+MODULE_FIRMWARE("amdgpu/tonga_k_smc.bin");
 MODULE_FIRMWARE("amdgpu/fiji_smc.bin");
 MODULE_FIRMWARE("amdgpu/polaris10_smc.bin");
 MODULE_FIRMWARE("amdgpu/polaris10_smc_sk.bin");