summaryrefslogtreecommitdiff
path: root/drivers/gpu
diff options
context:
space:
mode:
authoryanyang1 <Young.Yang@amd.com>2016-02-05 17:39:37 +0800
committerAlex Deucher <alexander.deucher@amd.com>2016-05-04 20:26:19 -0400
commit735f002b14b4f532348cabddddc003c7858e8f30 (patch)
tree78c670102fce2eb3ce4c02a64bbdc157b40750e0 /drivers/gpu
parent92c6d645ee19819dd5b63a171ac7ef7abeb3d21b (diff)
drm/amd/amdgpu: Add smc_sk firmware in baffin & ellesmere.
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>
Diffstat (limited to 'drivers/gpu')
-rw-r--r--drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c12
-rw-r--r--drivers/gpu/drm/amd/include/cgs_common.h1
2 files changed, 10 insertions, 3 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c
index 8bc4040d18cf..594159c7525b 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c
@@ -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");
diff --git a/drivers/gpu/drm/amd/include/cgs_common.h b/drivers/gpu/drm/amd/include/cgs_common.h
index ca1e22917e84..7a3714b8b45c 100644
--- a/drivers/gpu/drm/amd/include/cgs_common.h
+++ b/drivers/gpu/drm/amd/include/cgs_common.h
@@ -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,