s3fb: maximize virtual vertical size for fast scrolling
authorOndrej Zary <linux@rainbow-software.org>
Tue, 1 Mar 2011 19:18:08 +0000 (19:18 +0000)
committerPaul Mundt <lethal@linux-sh.org>
Tue, 22 Mar 2011 06:49:45 +0000 (15:49 +0900)
Maximize virtual vertical framebuffer size during init to allow fast scrolling
(accelerated by panning).

Signed-off-by: Ondrej Zary <linux@rainbow-software.org>
Acked-by: Ondrej Zajicek <santiago@crfreenet.org>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
drivers/video/s3fb.c

index 55a94b9..9f9be9f 100644 (file)
@@ -1053,6 +1053,14 @@ static int __devinit s3_pci_probe(struct pci_dev *dev, const struct pci_device_i
                goto err_find_mode;
        }
 
+       /* maximize virtual vertical size for fast scrolling */
+       info->var.yres_virtual = info->fix.smem_len * 8 /
+                       (info->var.bits_per_pixel * info->var.xres_virtual);
+       if (info->var.yres_virtual < info->var.yres) {
+               dev_err(info->device, "virtual vertical size smaller than real\n");
+               goto err_find_mode;
+       }
+
        rc = fb_alloc_cmap(&info->cmap, 256, 0);
        if (rc < 0) {
                dev_err(info->device, "cannot allocate colormap\n");