OSDN Git Service

drm/amd/amdgpu: Add smc_sk firmware in baffin & ellesmere.
authoryanyang1 <Young.Yang@amd.com>
Fri, 5 Feb 2016 09:39:37 +0000 (17:39 +0800)
committerAlex Deucher <alexander.deucher@amd.com>
Thu, 5 May 2016 00:26:19 +0000 (20:26 -0400)
add CGS_UCODE_ID_SMU_SK.

Signed-off-by: yanyang1 <Young.Yang@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/include/cgs_common.h

index 8bc4040..594159c 100644 (file)
@@ -702,7 +702,7 @@ static int amdgpu_cgs_get_firmware_info(struct cgs_device *cgs_device,
 {
        CGS_FUNC_ADEV;
 
-       if (CGS_UCODE_ID_SMU != type) {
+       if ((CGS_UCODE_ID_SMU != type) && (CGS_UCODE_ID_SMU_SK != type)) {
                uint64_t gpu_addr;
                uint32_t data_size;
                const struct gfx_firmware_header_v1_0 *header;
@@ -743,10 +743,16 @@ static int amdgpu_cgs_get_firmware_info(struct cgs_device *cgs_device,
                        strcpy(fw_name, "amdgpu/fiji_smc.bin");
                        break;
                case CHIP_BAFFIN:
-                       strcpy(fw_name, "amdgpu/baffin_smc.bin");
+                       if (type == CGS_UCODE_ID_SMU)
+                               strcpy(fw_name, "amdgpu/baffin_smc.bin");
+                       else if (type == CGS_UCODE_ID_SMU_SK)
+                               strcpy(fw_name, "amdgpu/baffin_smc_sk.bin");
                        break;
                case CHIP_ELLESMERE:
-                       strcpy(fw_name, "amdgpu/ellesmere_smc.bin");
+                       if (type == CGS_UCODE_ID_SMU)
+                               strcpy(fw_name, "amdgpu/ellesmere_smc.bin");
+                       else if (type == CGS_UCODE_ID_SMU_SK)
+                               strcpy(fw_name, "amdgpu/ellesmere_smc_sk.bin");
                        break;
                default:
                        DRM_ERROR("SMC firmware not supported\n");
index ca1e229..7a3714b 100644 (file)
@@ -94,6 +94,7 @@ enum cgs_voltage_planes {
  */
 enum cgs_ucode_id {
        CGS_UCODE_ID_SMU = 0,
+       CGS_UCODE_ID_SMU_SK,
        CGS_UCODE_ID_SDMA0,
        CGS_UCODE_ID_SDMA1,
        CGS_UCODE_ID_CP_CE,