Merge branch 'viafb-next' of git://github.com/schandinat/linux-2.6 into fbdev-fixes...
authorPaul Mundt <lethal@linux-sh.org>
Tue, 19 Apr 2011 06:49:36 +0000 (15:49 +0900)
committerPaul Mundt <lethal@linux-sh.org>
Tue, 19 Apr 2011 06:49:36 +0000 (15:49 +0900)
drivers/video/via/hw.c
drivers/video/via/viamode.c

index dc4c778..980e263 100644 (file)
@@ -2598,8 +2598,12 @@ int viafb_get_refresh(int hres, int vres, u32 long_refresh)
                        best = &vmode->crtc[i];
        }
 
-       if (abs(best->refresh_rate - long_refresh) > 3)
-               return 60;
+       if (abs(best->refresh_rate - long_refresh) > 3) {
+               if (hres == 1200 && vres == 900)
+                       return 50; /* OLPC DCON only supports 50 Hz */
+               else
+                       return 60;
+       }
 
        return best->refresh_rate;
 }
index 8c5bc41..260d339 100644 (file)
@@ -606,7 +606,7 @@ static struct crt_mode_table CRTM1200x720[] = {
 /* 1200x900 (DCON) */
 static struct crt_mode_table DCON1200x900[] = {
        /* r_rate,               hsp,               vsp   */
-       {REFRESH_60, M1200X900_R60_HSP, M1200X900_R60_VSP,
+       {REFRESH_50, M1200X900_R60_HSP, M1200X900_R60_VSP,
        /* The correct htotal is 1240, but this doesn't raster on VX855. */
        /* Via suggested changing to a multiple of 16, hence 1264.       */
        /*  HT,   HA,  HBS, HBE,  HSS, HSE,  VT,  VA, VBS, VBE, VSS, VSE */