From cefdf5e62eae54a4c575c27947ca681a438ade33 Mon Sep 17 00:00:00 2001 From: Miod Vallat Date: Mon, 29 Nov 2004 22:07:42 +0000 Subject: Move the struct wsscreen_descr from a per-driver global to a per-instance field of the sunfb structure. This allows multiple instances of the same driver, but with different resolutions (such as a couple of vigra or a TGX cgsix and a TGX+ cgsix) to use distinct wsscreen_descr structures featuring different resolution information. Doing this allows more wsscreen_descr fiddling inside the sparc* fb api, and results in some code shrinkage (about 4KB on sparc GENERIC). --- sys/arch/sparc64/include/fbvar.h | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'sys/arch/sparc64/include') diff --git a/sys/arch/sparc64/include/fbvar.h b/sys/arch/sparc64/include/fbvar.h index fcb8466f594..d154cd185ea 100644 --- a/sys/arch/sparc64/include/fbvar.h +++ b/sys/arch/sparc64/include/fbvar.h @@ -1,4 +1,4 @@ -/* $OpenBSD: fbvar.h,v 1.2 2003/06/17 17:35:43 miod Exp $ */ +/* $OpenBSD: fbvar.h,v 1.3 2004/11/29 22:07:40 miod Exp $ */ /* $NetBSD: fbvar.h,v 1.9 1997/07/07 23:31:30 pk Exp $ */ /* @@ -58,6 +58,8 @@ struct sunfb { int *sf_crowp, *sf_ccolp; /* PROM cursor position */ struct rasops_info sf_ro; + + struct wsscreen_descr sf_wsd; }; /* @@ -67,7 +69,8 @@ extern int fbnode; void fb_setsize(struct sunfb*, int, int, int, int, int); void fbwscons_init(struct sunfb *, int); -void fbwscons_console_init(struct sunfb *, struct wsscreen_descr *, int, +void fbwscons_console_init(struct sunfb *, int, void (*)(void *, u_int, u_int)); void fbwscons_setcolormap(struct sunfb *, void (*)(void *, u_int, u_int8_t, u_int8_t, u_int8_t)); +void fbwscons_attach(struct sunfb *, struct wsdisplay_accessops *, int); -- cgit v1.2.3