Răsfoiți Sursa

[PATCH] atyfb: Don't stretch with CRT

The overlay on 3D Rage LT Pro doesn't work correctly if stretching is
enabled when using only a CRT.

Signed-off-by: Ville Syrjälä <syrjala@sci.fi>
Signed-off-by: Antonino Daplas <adaplas@pol.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Ville Syrjl 19 ani în urmă
părinte
comite
e98cef1e9e
1 a modificat fișierele cu 2 adăugiri și 2 ștergeri
  1. 2 2
      drivers/video/aty/atyfb_base.c

+ 2 - 2
drivers/video/aty/atyfb_base.c

@@ -982,7 +982,7 @@ static int aty_var_to_crtc(const struct fb_info *info,
 		crtc->horz_stretching &=
 			~(HORZ_STRETCH_RATIO | HORZ_STRETCH_LOOP | AUTO_HORZ_RATIO |
 			HORZ_STRETCH_MODE | HORZ_STRETCH_EN);
-		if (xres < par->lcd_width) {
+		if (xres < par->lcd_width && crtc->lcd_gen_cntl & LCD_ON) {
 			do {
 				/*
 				* The horizontal blender misbehaves when HDisplay is less than a
@@ -1044,7 +1044,7 @@ static int aty_var_to_crtc(const struct fb_info *info,
 			} while (0);
 		}
 
-		if (vdisplay < par->lcd_height) {
+		if (vdisplay < par->lcd_height && crtc->lcd_gen_cntl & LCD_ON) {
 			crtc->vert_stretching = (VERT_STRETCH_USE0 | VERT_STRETCH_EN |
 				(((vdisplay * (VERT_STRETCH_RATIO0 + 1)) / par->lcd_height) & VERT_STRETCH_RATIO0));