aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHuang Rui <ray.huang@amd.com>2016-06-19 11:29:20 -0400
committerAlex Deucher <alexander.deucher@amd.com>2016-07-15 12:33:00 -0400
commit86a42f04d1b38c1196b9a90e4851995c4bf35a4e (patch)
tree1472fddb1a77ce5cb05556e4dcaaa587b275ed40
parentf5a13660ccc8f7fdbfa156c9df194af9abdb0bec (diff)
drm/amdgpu: no need load microcode at sdma if powerplay is enabled
SDMA firmware will be loaded by SMU manager if powerplay is enabled. So it needn't load at SDMA. Signed-off-by: Huang Rui <ray.huang@amd.com> Reviewed-by: Alex Deucher <alexander.deucher@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
-rw-r--r--drivers/gpu/drm/amd/amdgpu/sdma_v2_4.c28
1 files changed, 15 insertions, 13 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/sdma_v2_4.c b/drivers/gpu/drm/amd/amdgpu/sdma_v2_4.c
index b2469ffb10ea..0111d153411b 100644
--- a/drivers/gpu/drm/amd/amdgpu/sdma_v2_4.c
+++ b/drivers/gpu/drm/amd/amdgpu/sdma_v2_4.c
@@ -567,19 +567,21 @@ static int sdma_v2_4_start(struct amdgpu_device *adev)
567{ 567{
568 int r; 568 int r;
569 569
570 if (!adev->firmware.smu_load) { 570 if (!adev->pp_enabled) {
571 r = sdma_v2_4_load_microcode(adev); 571 if (!adev->firmware.smu_load) {
572 if (r) 572 r = sdma_v2_4_load_microcode(adev);
573 return r; 573 if (r)
574 } else { 574 return r;
575 r = adev->smu.smumgr_funcs->check_fw_load_finish(adev, 575 } else {
576 AMDGPU_UCODE_ID_SDMA0); 576 r = adev->smu.smumgr_funcs->check_fw_load_finish(adev,
577 if (r) 577 AMDGPU_UCODE_ID_SDMA0);
578 return -EINVAL; 578 if (r)
579 r = adev->smu.smumgr_funcs->check_fw_load_finish(adev, 579 return -EINVAL;
580 AMDGPU_UCODE_ID_SDMA1); 580 r = adev->smu.smumgr_funcs->check_fw_load_finish(adev,
581 if (r) 581 AMDGPU_UCODE_ID_SDMA1);
582 return -EINVAL; 582 if (r)
583 return -EINVAL;
584 }
583 } 585 }
584 586
585 /* halt the engine before programing */ 587 /* halt the engine before programing */