Skip to content

Commit f55de6e

Browse files
mcgrofIngo Molnar
authored andcommitted
drivers/video/fbdev/atyfb: Clarify ioremap() base and length used
Adjust the ioremap() call for the framebuffer to use the same values we later use for the framebuffer. This will make it easier to review the next change. The size of the framebuffer varies but since this is for PCI we *know* this defaults to 0x800000. atyfb_setup_generic() is *only* used on PCI probe. No functional change. Signed-off-by: Luis R. Rodriguez <mcgrof@suse.com> Signed-off-by: Borislav Petkov <bp@suse.de> Cc: Andrew Morton <akpm@linux-foundation.org> Cc: Andrzej Hajda <a.hajda@samsung.com> Cc: Andy Lutomirski <luto@amacapital.net> Cc: Antonino Daplas <adaplas@gmail.com> Cc: Daniel Vetter <daniel.vetter@ffwll.ch> Cc: Dave Airlie <airlied@redhat.com> Cc: Davidlohr Bueso <dbueso@suse.de> Cc: H. Peter Anvin <hpa@zytor.com> Cc: Jean-Christophe Plagniol-Villard <plagnioj@jcrosoft.com> Cc: Juergen Gross <jgross@suse.com> Cc: Linus Torvalds <torvalds@linux-foundation.org> Cc: Mathias Krause <minipli@googlemail.com> Cc: Mel Gorman <mgorman@suse.de> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Rob Clark <robdclark@gmail.com> Cc: Suresh Siddha <sbsiddha@gmail.com> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: Tomi Valkeinen <tomi.valkeinen@ti.com> Cc: Toshi Kani <toshi.kani@hp.com> Cc: Ville Syrjälä <syrjala@sci.fi> Cc: Vlastimil Babka <vbabka@suse.cz> 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: linux-fbdev@vger.kernel.org Cc: linux-mm@kvack.org Cc: linux-pci@vger.kernel.org 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: tj@kernel.org Cc: ville.syrjala@linux.intel.com Link: http://lkml.kernel.org/r/1436491499-3289-3-git-send-email-mcgrof@do-not-panic.com Signed-off-by: Ingo Molnar <mingo@kernel.org>
1 parent eacd2d5 commit f55de6e

File tree

1 file changed

+15
-1
lines changed

1 file changed

+15
-1
lines changed

drivers/video/fbdev/aty/atyfb_base.c

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3489,7 +3489,21 @@ static int atyfb_setup_generic(struct pci_dev *pdev, struct fb_info *info,
34893489

34903490
/* Map in frame buffer */
34913491
info->fix.smem_start = addr;
3492-
info->screen_base = ioremap(addr, 0x800000);
3492+
3493+
/*
3494+
* The framebuffer is not always 8 MiB, that's just the size of the
3495+
* PCI BAR. We temporarily abuse smem_len here to store the size
3496+
* of the BAR. aty_init() will later correct it to match the actual
3497+
* framebuffer size.
3498+
*
3499+
* On devices that don't have the auxiliary register aperture, the
3500+
* registers are housed at the top end of the framebuffer PCI BAR.
3501+
* aty_fudge_framebuffer_len() is used to reduce smem_len to not
3502+
* overlap with the registers.
3503+
*/
3504+
info->fix.smem_len = 0x800000;
3505+
3506+
info->screen_base = ioremap(info->fix.smem_start, info->fix.smem_len);
34933507
if (info->screen_base == NULL) {
34943508
ret = -ENOMEM;
34953509
goto atyfb_setup_generic_fail;

0 commit comments

Comments
 (0)