drivers/video/fbdev/atyfb: Carve out framebuffer length fudging into a helper
authorLuis R. Rodriguez <mcgrof@suse.com>
Fri, 10 Jul 2015 01:24:56 +0000 (18:24 -0700)
committerIngo Molnar <mingo@kernel.org>
Tue, 21 Jul 2015 08:47:04 +0000 (10:47 +0200)
The size of the framebuffer to be used needs to be fudged to
account for the different type of devices that are out there.
This captures what is required to do well, we'll reuse this
later.

This has no functional changes.

Signed-off-by: Luis R. Rodriguez <mcgrof@suse.com>
Signed-off-by: Borislav Petkov <bp@suse.de>
Cc: H. Peter Anvin <hpa@zytor.com>
Cc: Jean-Christophe Plagniol-Villard <plagnioj@jcrosoft.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Mathias Krause <minipli@googlemail.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Tomi Valkeinen <tomi.valkeinen@ti.com>
Cc: airlied@redhat.com
Cc: arnd@arndb.de
Cc: benh@kernel.crashing.org
Cc: dan.j.williams@intel.com
Cc: geert@linux-m68k.org
Cc: hch@lst.de
Cc: hmh@hmh.eng.br
Cc: jgross@suse.com
Cc: linux-fbdev@vger.kernel.org
Cc: linux-mm@kvack.org
Cc: luto@amacapital.net
Cc: mpe@ellerman.id.au
Cc: mst@redhat.com
Cc: ralf@linux-mips.org
Cc: ross.zwisler@linux.intel.com
Cc: stefan.bader@canonical.com
Cc: syrjala@sci.fi
Cc: tj@kernel.org
Cc: toshi.kani@hp.com
Cc: ville.syrjala@linux.intel.com
Link: http://lkml.kernel.org/r/1435251019-32421-1-git-send-email-mcgrof@do-not-panic.com
Link: http://lkml.kernel.org/r/1436491499-3289-2-git-send-email-mcgrof@do-not-panic.com
Signed-off-by: Ingo Molnar <mingo@kernel.org>
drivers/video/fbdev/aty/atyfb_base.c

index 8789e487b96e98f12d639530d21b792c15d1e60b..16936bb1f865342a43e0427109d7ae02c91189b8 100644 (file)
@@ -427,6 +427,20 @@ static struct {
 #endif /* CONFIG_FB_ATY_CT */
 };
 
+/*
+ * Last page of 8 MB (4 MB on ISA) aperture is MMIO,
+ * unless the auxiliary register aperture is used.
+ */
+static void aty_fudge_framebuffer_len(struct fb_info *info)
+{
+       struct atyfb_par *par = (struct atyfb_par *) info->par;
+
+       if (!par->aux_start &&
+           (info->fix.smem_len == 0x800000 ||
+            (par->bus_type == ISA && info->fix.smem_len == 0x400000)))
+               info->fix.smem_len -= GUI_RESERVE;
+}
+
 static int correct_chipset(struct atyfb_par *par)
 {
        u8 rev;
@@ -2603,14 +2617,7 @@ static int aty_init(struct fb_info *info)
        if (par->pll_ops->resume_pll)
                par->pll_ops->resume_pll(info, &par->pll);
 
-       /*
-        * Last page of 8 MB (4 MB on ISA) aperture is MMIO,
-        * unless the auxiliary register aperture is used.
-        */
-       if (!par->aux_start &&
-           (info->fix.smem_len == 0x800000 ||
-            (par->bus_type == ISA && info->fix.smem_len == 0x400000)))
-               info->fix.smem_len -= GUI_RESERVE;
+       aty_fudge_framebuffer_len(info);
 
        /*
         * Disable register access through the linear aperture