drm/amdgpu: add ACG SMU firmware for other vega10 variants
authorEvan Quan <evan.quan@amd.com>
Fri, 23 Jun 2017 07:08:15 +0000 (15:08 +0800)
committerAlex Deucher <alexander.deucher@amd.com>
Fri, 14 Jul 2017 15:06:07 +0000 (11:06 -0400)
Signed-off-by: Evan Quan <evan.quan@amd.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c
drivers/gpu/drm/amd/amdgpu/soc15.c
drivers/gpu/drm/amd/powerplay/smumgr/smumgr.c

index c0a806280257c80954930c3744d7cd65e6b6de5f..e525de2ecb2d0fe1bd82d93e432b8d4474bcd996 100644 (file)
@@ -719,7 +719,13 @@ static int amdgpu_cgs_get_firmware_info(struct cgs_device *cgs_device,
                                strcpy(fw_name, "amdgpu/polaris12_smc.bin");
                                break;
                        case CHIP_VEGA10:
-                               strcpy(fw_name, "amdgpu/vega10_smc.bin");
+                               if ((adev->pdev->device == 0x687f) &&
+                                       ((adev->pdev->revision == 0xc0) ||
+                                       (adev->pdev->revision == 0xc1) ||
+                                       (adev->pdev->revision == 0xc3)))
+                                       strcpy(fw_name, "amdgpu/vega10_acg_smc.bin");
+                               else
+                                       strcpy(fw_name, "amdgpu/vega10_smc.bin");
                                break;
                        default:
                                DRM_ERROR("SMC firmware not supported\n");
index 79f5e3e73e0b64c5fe18770871b77aadd40d2155..4003cb517451a7f15f04902353e4a638a401e7cb 100644 (file)
@@ -62,8 +62,6 @@
 #include "dce_virtual.h"
 #include "mxgpu_ai.h"
 
-MODULE_FIRMWARE("amdgpu/vega10_smc.bin");
-
 #define mmFabricConfigAccessControl                                                                    0x0410
 #define mmFabricConfigAccessControl_BASE_IDX                                                           0
 #define mmFabricConfigAccessControl_DEFAULT                                      0x00000000
index bcc61ffd13cb1913a61e8ce82a5855358181525d..0ac19cf3f987796733518391791e1c7026bf8f7f 100644 (file)
@@ -43,7 +43,8 @@ MODULE_FIRMWARE("amdgpu/polaris11_smc.bin");
 MODULE_FIRMWARE("amdgpu/polaris11_smc_sk.bin");
 MODULE_FIRMWARE("amdgpu/polaris11_k_smc.bin");
 MODULE_FIRMWARE("amdgpu/polaris12_smc.bin");
-
+MODULE_FIRMWARE("amdgpu/vega10_smc.bin");
+MODULE_FIRMWARE("amdgpu/vega10_acg_smc.bin");
 
 int smum_early_init(struct pp_instance *handle)
 {