summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--linux-core/radeon_legacy_crtc.c32
1 files changed, 17 insertions, 15 deletions
diff --git a/linux-core/radeon_legacy_crtc.c b/linux-core/radeon_legacy_crtc.c
index 6446f8cb..7f7ce617 100644
--- a/linux-core/radeon_legacy_crtc.c
+++ b/linux-core/radeon_legacy_crtc.c
@@ -917,6 +917,21 @@ static bool radeon_crtc_mode_fixup(struct drm_crtc *crtc,
return true;
}
+void radeon_crtc_set_base(struct drm_crtc *crtc, int x, int y)
+{
+ struct radeon_crtc *radeon_crtc = to_radeon_crtc(crtc);
+
+ switch(radeon_crtc->crtc_id) {
+ case 0:
+ radeon_set_crtc1_base(crtc, x, y);
+ break;
+ case 1:
+ radeon_set_crtc2_base(crtc, x, y);
+ break;
+
+ }
+}
+
static void radeon_crtc_mode_set(struct drm_crtc *crtc,
struct drm_display_mode *mode,
struct drm_display_mode *adjusted_mode,
@@ -942,6 +957,8 @@ static void radeon_crtc_mode_set(struct drm_crtc *crtc,
/* TODO TV */
+ radeon_crtc_set_base(crtc, x, y);
+
switch(radeon_crtc->crtc_id) {
case 0:
radeon_set_crtc1_timing(crtc, adjusted_mode);
@@ -955,21 +972,6 @@ static void radeon_crtc_mode_set(struct drm_crtc *crtc,
}
}
-void radeon_crtc_set_base(struct drm_crtc *crtc, int x, int y)
-{
- struct radeon_crtc *radeon_crtc = to_radeon_crtc(crtc);
-
- switch(radeon_crtc->crtc_id) {
- case 0:
- radeon_set_crtc1_base(crtc, x, y);
- break;
- case 1:
- radeon_set_crtc2_base(crtc, x, y);
- break;
-
- }
-}
-
static void radeon_crtc_prepare(struct drm_crtc *crtc)
{
radeon_crtc_dpms(crtc, DRM_MODE_DPMS_OFF);