Module Name: src Committed By: macallan Date: Tue Jan 14 09:46:42 UTC 2014
Modified Files: src/sys/dev/pci: radeonfb.c Log Message: cap mappable framebuffer size at 64MB before dividing it up for each output now we can actually access the 2nd fb on boards with more than 64MB VRAM To generate a diff of this commit: cvs rdiff -u -r1.80 -r1.81 src/sys/dev/pci/radeonfb.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/dev/pci/radeonfb.c diff -u src/sys/dev/pci/radeonfb.c:1.80 src/sys/dev/pci/radeonfb.c:1.81 --- src/sys/dev/pci/radeonfb.c:1.80 Tue Jan 14 01:35:13 2014 +++ src/sys/dev/pci/radeonfb.c Tue Jan 14 09:46:42 2014 @@ -1,4 +1,4 @@ -/* $NetBSD: radeonfb.c,v 1.80 2014/01/14 01:35:13 macallan Exp $ */ +/* $NetBSD: radeonfb.c,v 1.81 2014/01/14 09:46:42 macallan Exp $ */ /*- * Copyright (c) 2006 Itronix Inc. @@ -70,7 +70,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: radeonfb.c,v 1.80 2014/01/14 01:35:13 macallan Exp $"); +__KERNEL_RCSID(0, "$NetBSD: radeonfb.c,v 1.81 2014/01/14 09:46:42 macallan Exp $"); #include <sys/param.h> #include <sys/systm.h> @@ -627,6 +627,10 @@ radeonfb_attach(device_t parent, device_ radeonfb_set_fbloc(sc); + /* 64 MB should be enough -- more just wastes map entries */ + if (sc->sc_memsz > (64 << 20)) + sc->sc_memsz = (64 << 20); + for (i = 0; radeonfb_limits[i].size; i++) { if (sc->sc_memsz >= radeonfb_limits[i].size) { sc->sc_maxx = radeonfb_limits[i].maxx; @@ -748,10 +752,6 @@ radeonfb_attach(device_t parent, device_ goto error; } - /* 64 MB should be enough -- more just wastes map entries */ - if (sc->sc_memsz > (64 << 20)) - sc->sc_memsz = (64 << 20); - sc->sc_memt = pa->pa_memt; if (bus_space_map(sc->sc_memt, sc->sc_memaddr, sc->sc_memsz, BUS_SPACE_MAP_LINEAR, &sc->sc_memh) != 0) {