From a2ffe82f1d2ffab346c6fc96559ec68cd019faf9 Mon Sep 17 00:00:00 2001 From: Marius Strobl Date: Sun, 10 Jul 2005 11:16:34 +0000 Subject: - Declare lookup tables etc. const. - Let creator_bitblt() return ENODEV as it's not implemented (missed in sys/dev/fb/creator.c rev. 1.6). - As a speed optimization inline the creator_ras_wait() etc. helper functions and also cache setting the font increment, font width and plane mask. [1] - I got the meaning of V_DISPLAY_BLANK wrong, it's blank like turn off and not blank like turn on and clear the screen. So move clearing the screen to creator_clear() were it hopefully belongs. - Properly implement V_DISPLAY_BLANK, V_DISPLAY_STAND_BY and V_DISPLAY_SUSPEND. This makes blank_saver.ko and green_saver.ko work. [1] - Change the order of operations in creator_fill_rect(), i.e. write y before x and cy before cx. This fixes drawing the top part of the border with Elite3D cards when switching from Xorg to a VTY. - Move setting the chip configuration we use and invalidating the cache variables to creator_set_mode() and set the V_ADP_MODECHANGE flag. This causes creator_set_mode() to be called when the X server shuts down which fixes the screen corruption caused most of the time by Xorg not restoring the original configuration present at startup. Inspired by/based on: Xorg [1] Approved by: re (scottl) --- sys/dev/fb/creatorreg.h | 3 +++ 1 file changed, 3 insertions(+) (limited to 'sys/dev/fb/creatorreg.h') diff --git a/sys/dev/fb/creatorreg.h b/sys/dev/fb/creatorreg.h index ce79582360e4..87fe9808cd78 100644 --- a/sys/dev/fb/creatorreg.h +++ b/sys/dev/fb/creatorreg.h @@ -231,6 +231,9 @@ struct creator_softc { int sc_bg_cache; int sc_fg_cache; int sc_fifo_cache; + int sc_fontinc_cache; + int sc_fontw_cache; + int sc_pmask_cache; int sc_flags; #define CREATOR_AFB (1 << 0) -- cgit v1.3