aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEvan Quan <evan.quan@amd.com>2019-04-25 03:38:25 -0400
committerAlex Deucher <alexander.deucher@amd.com>2019-04-29 15:59:58 -0400
commitb0fc850fd95f8ecceb601bbb40624da0a8c220a0 (patch)
treec9d4f53304f5e7c69c11f456331a67a6a2b4b025
parent2c7e78355beca9f20d6e30088d581acd300aae04 (diff)
drm/amdgpu: power down the Vega20 VCE engine on request
Power down the engine also along with disabling its DPM functionality. 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>
-rw-r--r--drivers/gpu/drm/amd/powerplay/hwmgr/vega20_hwmgr.c13
1 files changed, 12 insertions, 1 deletions
diff --git a/drivers/gpu/drm/amd/powerplay/hwmgr/vega20_hwmgr.c b/drivers/gpu/drm/amd/powerplay/hwmgr/vega20_hwmgr.c
index 34f3782ff018..1f5614f04661 100644
--- a/drivers/gpu/drm/amd/powerplay/hwmgr/vega20_hwmgr.c
+++ b/drivers/gpu/drm/amd/powerplay/hwmgr/vega20_hwmgr.c
@@ -3452,7 +3452,18 @@ static void vega20_power_gate_vce(struct pp_hwmgr *hwmgr, bool bgate)
3452 return ; 3452 return ;
3453 3453
3454 data->vce_power_gated = bgate; 3454 data->vce_power_gated = bgate;
3455 vega20_enable_disable_vce_dpm(hwmgr, !bgate); 3455 if (bgate) {
3456 vega20_enable_disable_vce_dpm(hwmgr, !bgate);
3457 amdgpu_device_ip_set_powergating_state(hwmgr->adev,
3458 AMD_IP_BLOCK_TYPE_VCE,
3459 AMD_PG_STATE_GATE);
3460 } else {
3461 amdgpu_device_ip_set_powergating_state(hwmgr->adev,
3462 AMD_IP_BLOCK_TYPE_VCE,
3463 AMD_PG_STATE_UNGATE);
3464 vega20_enable_disable_vce_dpm(hwmgr, !bgate);
3465 }
3466
3456} 3467}
3457 3468
3458static void vega20_power_gate_uvd(struct pp_hwmgr *hwmgr, bool bgate) 3469static void vega20_power_gate_uvd(struct pp_hwmgr *hwmgr, bool bgate)