Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6
[pandora-kernel.git] / drivers / video / omap2 / omapfb / omapfb-main.c
index 04034d4..6a704f1 100644 (file)
@@ -714,10 +714,10 @@ int check_fb_var(struct fb_info *fbi, struct fb_var_screeninfo *var)
                var->pixclock = timings.pixel_clock != 0 ?
                        KHZ2PICOS(timings.pixel_clock) :
                        0;
-               var->left_margin = timings.hfp;
-               var->right_margin = timings.hbp;
-               var->upper_margin = timings.vfp;
-               var->lower_margin = timings.vbp;
+               var->left_margin = timings.hbp;
+               var->right_margin = timings.hfp;
+               var->upper_margin = timings.vbp;
+               var->lower_margin = timings.vfp;
                var->hsync_len = timings.hsw;
                var->vsync_len = timings.vsw;
        } else {
@@ -2059,10 +2059,10 @@ static int omapfb_mode_to_timings(const char *mode_str,
 
        if (r != 0) {
                timings->pixel_clock = PICOS2KHZ(var.pixclock);
-               timings->hfp = var.left_margin;
-               timings->hbp = var.right_margin;
-               timings->vfp = var.upper_margin;
-               timings->vbp = var.lower_margin;
+               timings->hbp = var.left_margin;
+               timings->hfp = var.right_margin;
+               timings->vbp = var.upper_margin;
+               timings->vfp = var.lower_margin;
                timings->hsw = var.hsync_len;
                timings->vsw = var.vsync_len;
                timings->x_res = var.xres;
@@ -2198,6 +2198,16 @@ static int omapfb_probe(struct platform_device *pdev)
                goto err0;
        }
 
+       /* TODO : Replace cpu check with omap_has_vrfb once HAS_FEATURE
+       *        available for OMAP2 and OMAP3
+       */
+       if (def_vrfb && !cpu_is_omap24xx() && !cpu_is_omap34xx()) {
+               def_vrfb = 0;
+               dev_warn(&pdev->dev, "VRFB is not supported on this hardware, "
+                               "ignoring the module parameter vrfb=y\n");
+       }
+
+
        mutex_init(&fbdev->mtx);
 
        fbdev->dev = &pdev->dev;