Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/trunk]: src/sys/arch/sparc64/dev support WSDISPLAYIO_GET_FBINFO
details: https://anonhg.NetBSD.org/src/rev/96d3aac01c3a
branches: trunk
changeset: 349092:96d3aac01c3a
user: macallan <macallan%NetBSD.org@localhost>
date: Wed Nov 23 21:18:12 2016 +0000
description:
support WSDISPLAYIO_GET_FBINFO
also, use _PREFETCHABLE for rasops
diffstat:
sys/arch/sparc64/dev/gfb.c | 17 ++++++++++++++---
1 files changed, 14 insertions(+), 3 deletions(-)
diffs (52 lines):
diff -r c9c4e91fb302 -r 96d3aac01c3a sys/arch/sparc64/dev/gfb.c
--- a/sys/arch/sparc64/dev/gfb.c Wed Nov 23 21:14:23 2016 +0000
+++ b/sys/arch/sparc64/dev/gfb.c Wed Nov 23 21:18:12 2016 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: gfb.c,v 1.8 2016/07/07 06:55:38 msaitoh Exp $ */
+/* $NetBSD: gfb.c,v 1.9 2016/11/23 21:18:12 macallan Exp $ */
/*
* Copyright (c) 2009 Michael Lorenz
@@ -30,7 +30,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: gfb.c,v 1.8 2016/07/07 06:55:38 msaitoh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: gfb.c,v 1.9 2016/11/23 21:18:12 macallan Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -162,7 +162,8 @@
sc->sc_mode = WSDISPLAYIO_MODE_EMUL;
if (bus_space_map(sc->sc_memt, ma->ma_reg[6].ur_paddr,
- sc->sc_fblen, BUS_SPACE_MAP_LINEAR, &sc->sc_fbh)) {
+ sc->sc_fblen, BUS_SPACE_MAP_LINEAR | BUS_SPACE_MAP_PREFETCHABLE,
+ &sc->sc_fbh)) {
printf(": failed to map the framebuffer\n");
return;
}
@@ -303,6 +304,11 @@
}
}
return 0;
+ case WSDISPLAYIO_GET_FBINFO:
+ {
+ struct wsdisplayio_fbinfo *fbi = data;
+ return wsdisplayio_get_fbinfo(&ms->scr_ri, fbi);
+ }
}
return EPASSTHROUGH;
}
@@ -316,6 +322,11 @@
/* 'regular' framebuffer mmap()ing */
if (offset < sc->sc_fblen) {
+ /*
+ * XXX
+ * BUS_SPACE_MAP_PREFETCHABLE produces artifacts with X, but
+ * not with the console code, so don't set it here
+ */
pa = bus_space_mmap(sc->sc_memt, sc->sc_fb_paddr + offset, 0,
prot, BUS_SPACE_MAP_LINEAR);
return pa;
Home |
Main Index |
Thread Index |
Old Index