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) {