aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/radeon/radeon_legacy_crtc.c
diff options
context:
space:
mode:
authorAlex Deucher <alexdeucher@gmail.com>2010-03-16 17:42:46 -0400
committerDave Airlie <airlied@redhat.com>2010-05-18 04:20:55 -0400
commit03214bd5c6e59c83703238227254deef8810513d (patch)
treecff47cda415e5508f0475f1a8007367ffba8a419 /drivers/gpu/drm/radeon/radeon_legacy_crtc.c
parent8a56df632e524a1c444c56bb7ce9fe8d94e639e0 (diff)
drm/radeon/kms/pm: move pm state update to crtc functions
crtcs are what we ultimately care about wrt to pm. Signed-off-by: Alex Deucher <alexdeucher@gmail.com> Signed-off-by: Dave Airlie <airlied@redhat.com>
Diffstat (limited to 'drivers/gpu/drm/radeon/radeon_legacy_crtc.c')
-rw-r--r--drivers/gpu/drm/radeon/radeon_legacy_crtc.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/drivers/gpu/drm/radeon/radeon_legacy_crtc.c b/drivers/gpu/drm/radeon/radeon_legacy_crtc.c
index 88865e38fe30..60c0dcb8e11e 100644
--- a/drivers/gpu/drm/radeon/radeon_legacy_crtc.c
+++ b/drivers/gpu/drm/radeon/radeon_legacy_crtc.c
@@ -337,6 +337,9 @@ void radeon_crtc_dpms(struct drm_crtc *crtc, int mode)
337 } 337 }
338 break; 338 break;
339 } 339 }
340
341 /* adjust pm to dpms change */
342 radeon_pm_compute_clocks(rdev);
340} 343}
341 344
342int radeon_crtc_set_base(struct drm_crtc *crtc, int x, int y, 345int radeon_crtc_set_base(struct drm_crtc *crtc, int x, int y,
@@ -966,6 +969,12 @@ static bool radeon_crtc_mode_fixup(struct drm_crtc *crtc,
966 struct drm_display_mode *mode, 969 struct drm_display_mode *mode,
967 struct drm_display_mode *adjusted_mode) 970 struct drm_display_mode *adjusted_mode)
968{ 971{
972 struct drm_device *dev = crtc->dev;
973 struct radeon_device *rdev = dev->dev_private;
974
975 /* adjust pm to upcoming mode change */
976 radeon_pm_compute_clocks(rdev);
977
969 if (!radeon_crtc_scaling_mode_fixup(crtc, mode, adjusted_mode)) 978 if (!radeon_crtc_scaling_mode_fixup(crtc, mode, adjusted_mode))
970 return false; 979 return false;
971 return true; 980 return true;