diff options
Diffstat (limited to 'drivers/gpu/drm/radeon/kv_dpm.c')
-rw-r--r-- | drivers/gpu/drm/radeon/kv_dpm.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/gpu/drm/radeon/kv_dpm.c b/drivers/gpu/drm/radeon/kv_dpm.c index 9ee1f28bbd85..16ec9d56a234 100644 --- a/drivers/gpu/drm/radeon/kv_dpm.c +++ b/drivers/gpu/drm/radeon/kv_dpm.c | |||
@@ -1412,6 +1412,8 @@ static int kv_update_vce_dpm(struct radeon_device *rdev, | |||
1412 | 1412 | ||
1413 | if (radeon_new_state->evclk > 0 && radeon_current_state->evclk == 0) { | 1413 | if (radeon_new_state->evclk > 0 && radeon_current_state->evclk == 0) { |
1414 | kv_dpm_powergate_vce(rdev, false); | 1414 | kv_dpm_powergate_vce(rdev, false); |
1415 | /* turn the clocks on when encoding */ | ||
1416 | cik_update_cg(rdev, RADEON_CG_BLOCK_VCE, false); | ||
1415 | if (pi->caps_stable_p_state) | 1417 | if (pi->caps_stable_p_state) |
1416 | pi->vce_boot_level = table->count - 1; | 1418 | pi->vce_boot_level = table->count - 1; |
1417 | else | 1419 | else |
@@ -1434,6 +1436,8 @@ static int kv_update_vce_dpm(struct radeon_device *rdev, | |||
1434 | kv_enable_vce_dpm(rdev, true); | 1436 | kv_enable_vce_dpm(rdev, true); |
1435 | } else if (radeon_new_state->evclk == 0 && radeon_current_state->evclk > 0) { | 1437 | } else if (radeon_new_state->evclk == 0 && radeon_current_state->evclk > 0) { |
1436 | kv_enable_vce_dpm(rdev, false); | 1438 | kv_enable_vce_dpm(rdev, false); |
1439 | /* turn the clocks off when not encoding */ | ||
1440 | cik_update_cg(rdev, RADEON_CG_BLOCK_VCE, true); | ||
1437 | kv_dpm_powergate_vce(rdev, true); | 1441 | kv_dpm_powergate_vce(rdev, true); |
1438 | } | 1442 | } |
1439 | 1443 | ||