• K
    [PATCH] fbdev: fix switch to KD_TEXT, enhanced version · 39942fd8
    Knut Petersen 提交于
    Every framebuffer driver relies on the assumption that the set_par()
    function of the driver is called before drawing functions and other
    functions dependent on the hardware state are executed.
    
    Whenever you switch from X to a framebuffer console for the very first
    time, there is a chance that a broken X system has _not_ set the mode to
    KD_GRAPHICS, thus the vt and framebuffer code executes a screen redraw and
    several other functions before a set_par() is executed.  This is believed
    to be not a bug of linux but a bug of X/xdm.  At least some X releases used
    by SuSE and Debian show this behaviour.
    
    There was a 2nd case, but that has been fixed by Antonino Daplas on
    10-dec-2005.
    
    This patch allows drivers to set a flag to inform fbcon_switch() that they
    prefer a set_par() call on every console switch, working around the
    problems caused by the broken X releases.
    
    The flag will be used by the next release of cyblafb and might help other
    drivers that assume a hardware state different to the one used by X.
    
    As the default behaviour does not change, this patch should be acceptable
    to everybody.
    Signed-off-by: NKnut Petersen <Knut_Petersen@t-online.de>
    Acked-by: N"Antonino A. Daplas" <adaplas@pol.net>
    Signed-off-by: NAndrew Morton <akpm@osdl.org>
    Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
    39942fd8
fbcon.c 75.8 KB