diff options
author | Russell King <rmk+kernel@arm.linux.org.uk> | 2013-10-07 10:43:04 -0400 |
---|---|---|
committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2013-10-07 10:43:04 -0400 |
commit | a56e74f546b64be93731e42d83baf5b538cc1b11 (patch) | |
tree | 18f6dee45d801e57ac9db2a31664b0d5c0762c50 /drivers/gpu/drm/radeon/rv770_dpm.c | |
parent | d08e2e09042bd3f7ef66a35cb4bb92794ab26bb2 (diff) | |
parent | e4e7f10bfc4069925e99cc4b428c3434e30b6c3f (diff) |
Merge branch 'arm-aesbs' of git://git.linaro.org/people/ardbiesheuvel/linux-arm into devel-stable
Diffstat (limited to 'drivers/gpu/drm/radeon/rv770_dpm.c')
-rw-r--r-- | drivers/gpu/drm/radeon/rv770_dpm.c | 16 |
1 files changed, 7 insertions, 9 deletions
diff --git a/drivers/gpu/drm/radeon/rv770_dpm.c b/drivers/gpu/drm/radeon/rv770_dpm.c index 8cbb85dae5aa..913b025ae9b3 100644 --- a/drivers/gpu/drm/radeon/rv770_dpm.c +++ b/drivers/gpu/drm/radeon/rv770_dpm.c | |||
@@ -2064,12 +2064,6 @@ int rv770_dpm_set_power_state(struct radeon_device *rdev) | |||
2064 | rv770_program_dcodt_after_state_switch(rdev, new_ps, old_ps); | 2064 | rv770_program_dcodt_after_state_switch(rdev, new_ps, old_ps); |
2065 | rv770_set_uvd_clock_after_set_eng_clock(rdev, new_ps, old_ps); | 2065 | rv770_set_uvd_clock_after_set_eng_clock(rdev, new_ps, old_ps); |
2066 | 2066 | ||
2067 | ret = rv770_dpm_force_performance_level(rdev, RADEON_DPM_FORCED_LEVEL_AUTO); | ||
2068 | if (ret) { | ||
2069 | DRM_ERROR("rv770_dpm_force_performance_level failed\n"); | ||
2070 | return ret; | ||
2071 | } | ||
2072 | |||
2073 | return 0; | 2067 | return 0; |
2074 | } | 2068 | } |
2075 | 2069 | ||
@@ -2147,14 +2141,18 @@ static void rv7xx_parse_pplib_non_clock_info(struct radeon_device *rdev, | |||
2147 | if (ATOM_PPLIB_NONCLOCKINFO_VER1 < table_rev) { | 2141 | if (ATOM_PPLIB_NONCLOCKINFO_VER1 < table_rev) { |
2148 | rps->vclk = le32_to_cpu(non_clock_info->ulVCLK); | 2142 | rps->vclk = le32_to_cpu(non_clock_info->ulVCLK); |
2149 | rps->dclk = le32_to_cpu(non_clock_info->ulDCLK); | 2143 | rps->dclk = le32_to_cpu(non_clock_info->ulDCLK); |
2150 | } else if (r600_is_uvd_state(rps->class, rps->class2)) { | ||
2151 | rps->vclk = RV770_DEFAULT_VCLK_FREQ; | ||
2152 | rps->dclk = RV770_DEFAULT_DCLK_FREQ; | ||
2153 | } else { | 2144 | } else { |
2154 | rps->vclk = 0; | 2145 | rps->vclk = 0; |
2155 | rps->dclk = 0; | 2146 | rps->dclk = 0; |
2156 | } | 2147 | } |
2157 | 2148 | ||
2149 | if (r600_is_uvd_state(rps->class, rps->class2)) { | ||
2150 | if ((rps->vclk == 0) || (rps->dclk == 0)) { | ||
2151 | rps->vclk = RV770_DEFAULT_VCLK_FREQ; | ||
2152 | rps->dclk = RV770_DEFAULT_DCLK_FREQ; | ||
2153 | } | ||
2154 | } | ||
2155 | |||
2158 | if (rps->class & ATOM_PPLIB_CLASSIFICATION_BOOT) | 2156 | if (rps->class & ATOM_PPLIB_CLASSIFICATION_BOOT) |
2159 | rdev->pm.dpm.boot_ps = rps; | 2157 | rdev->pm.dpm.boot_ps = rps; |
2160 | if (rps->class & ATOM_PPLIB_CLASSIFICATION_UVDSTATE) | 2158 | if (rps->class & ATOM_PPLIB_CLASSIFICATION_UVDSTATE) |