summaryrefslogtreecommitdiff
path: root/include/linux/fb.h
diff options
context:
space:
mode:
authorAntonino Daplas <adaplas@hotpop.com>2005-03-30 16:42:48 -0800
committerLinus Torvalds <torvalds@ppc970.osdl.org>2005-03-30 16:42:48 -0800
commit2859de99c8a8f32ee7287d2c01e268b7e64bdd2a (patch)
treed0efe20d402194f680f242996a08d03a8ebce062 /include/linux/fb.h
parent835b1e211a24ffce3115b25f39882108a1af5386 (diff)
[PATCH] fbcon: Stop framebuffer operations before hardware is properly initialized
Accessing the hardware before it is properly initialized can lead to crashes or screen corruption. This happens when switching to X then back to console. When console comes back from X, the device is in an undefined state. During this window, accessing the hardware is disallowed. A new field in fbcon_par is added (graphics), which will be set to nonzero just before initialization of the framebuffer and when coming back from KD_GRAPHICS, then unset when an fb_set_var/fb_set_par is done. While this field is set, no accesses to the hardware is done. The consequence of this change is, hopefully, more robust switching between KD_GRAPHICS<-> KD_TEXT. An added benefit coming from this change is that the MODESWITCHLATE hack is not needed anymore and thus removed. This hack is used by savagefb, rivafb and nvidiafb. Signed-off-by: Antonino Daplas <adaplas@pol.net> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'include/linux/fb.h')
-rw-r--r--include/linux/fb.h4
1 files changed, 1 insertions, 3 deletions
diff --git a/include/linux/fb.h b/include/linux/fb.h
index 9d1507c87cec..b45d3e2d711a 100644
--- a/include/linux/fb.h
+++ b/include/linux/fb.h
@@ -702,9 +702,7 @@ struct fb_tile_ops {
#define FBINFO_MISC_USEREVENT 0x10000 /* event request
from userspace */
-#define FBINFO_MISC_MODESWITCH 0x20000 /* mode switch */
-#define FBINFO_MISC_MODESWITCHLATE 0x40000 /* init hardware later */
-#define FBINFO_MISC_TILEBLITTING 0x80000 /* use tile blitting */
+#define FBINFO_MISC_TILEBLITTING 0x20000 /* use tile blitting */
struct fb_info {
int node;