linux/drivers/video
Knut Petersen 39942fd8ff [PATCH] fbdev: fix switch to KD_TEXT, enhanced version
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: Knut Petersen <Knut_Petersen@t-online.de>
Acked-by: "Antonino A. Daplas" <adaplas@pol.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-12-12 22:31:17 -08:00
..
aty [PATCH] fbdev: ATI RN50 pci id 2005-11-07 07:53:53 -08:00
backlight Merge master.kernel.org:/home/rmk/linux-2.6-drvmodel 2005-11-11 09:24:26 -08:00
console [PATCH] fbdev: fix switch to KD_TEXT, enhanced version 2005-12-12 22:31:17 -08:00
geode [PATCH] fbcon/fbdev: Move softcursor out of fbdev to fbcon 2005-11-07 07:53:50 -08:00
i810 [PATCH] kfree cleanup: misc remaining drivers 2005-11-07 07:54:05 -08:00
intelfb [PATCH] changing CONFIG_LOCALVERSION rebuilds too much, for no good reason 2005-11-09 07:55:57 -08:00
kyro [PATCH] fbcon/fbdev: Move softcursor out of fbdev to fbcon 2005-11-07 07:53:50 -08:00
logo [PATCH] framebuffer: add some help text in Kconfig 2005-11-07 07:53:49 -08:00
matrox [PATCH] matroxfb: Set maxhipri to 0 2005-11-07 07:53:54 -08:00
nvidia [PATCH] nvidiafb: Fix bug in nvidiafb_pan_display 2005-11-13 18:14:11 -08:00
riva [PATCH] PCI: remove CONFIG_PCI_NAMES 2005-09-08 14:57:23 -07:00
savage [PATCH] savagefb: X-panning fixes 2005-11-09 07:56:34 -08:00
sis [PATCH] fbcon/fbdev: Move softcursor out of fbdev to fbcon 2005-11-07 07:53:50 -08:00
68328fb.c [PATCH] fbcon/fbdev: Move softcursor out of fbdev to fbcon 2005-11-07 07:53:50 -08:00
acornfb.c [DRIVER MODEL] Convert platform drivers to use struct platform_driver 2005-11-09 22:32:44 +00:00
acornfb.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
amba-clcd.c [ARM] More sparse fixes 2005-11-08 14:44:15 +00:00
amifb.c [PATCH] fbcon/fbdev: Move softcursor out of fbdev to fbcon 2005-11-07 07:53:50 -08:00
arcfb.c [DRIVER MODEL] Convert platform drivers to use struct platform_driver 2005-11-09 22:32:44 +00:00
asiliantfb.c [PATCH] fbcon/fbdev: Move softcursor out of fbdev to fbcon 2005-11-07 07:53:50 -08:00
atafb.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
au1100fb.c Au1100 FB driver uplift for 2.6. 2005-10-29 19:31:01 +01:00
au1100fb.h Au1100 FB driver uplift for 2.6. 2005-10-29 19:31:01 +01:00
bt431.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
bt455.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
bw2.c [SBUSFB]: Kill 'list' member from foo_par structs, totally unused. 2005-12-12 14:41:20 -08:00
c2p.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
c2p.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
cfbcopyarea.c [PATCH] fbdev: Remove software clipping from drawing functions 2005-11-07 07:53:51 -08:00
cfbfillrect.c [PATCH] fbdev: Remove software clipping from drawing functions 2005-11-07 07:53:51 -08:00
cfbimgblt.c [PATCH] fbdev: Possible endian fix in cfbimageblit 2005-11-09 07:56:36 -08:00
cg3.c [SBUSFB]: Kill 'list' member from foo_par structs, totally unused. 2005-12-12 14:41:20 -08:00
cg6.c [SBUSFB]: Kill 'list' member from foo_par structs, totally unused. 2005-12-12 14:41:20 -08:00
cg14.c [SBUSFB]: Kill 'list' member from foo_par structs, totally unused. 2005-12-12 14:41:20 -08:00
chipsfb.c [PATCH] fbcon/fbdev: Move softcursor out of fbdev to fbcon 2005-11-07 07:53:50 -08:00
cirrusfb.c [PATCH] fbdev: cirrusfb: Driver cleanup and bug fixes 2005-11-29 19:47:04 -08:00
clps711xfb.c [PATCH] fbcon/fbdev: Move softcursor out of fbdev to fbcon 2005-11-07 07:53:50 -08:00
controlfb.c [PATCH] fbcon/fbdev: Move softcursor out of fbdev to fbcon 2005-11-07 07:53:50 -08:00
controlfb.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
cyber2000fb.c [PATCH] fbcon/fbdev: Move softcursor out of fbdev to fbcon 2005-11-07 07:53:50 -08:00
cyber2000fb.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
cyberfb.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
cyberfb.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
cyblafb.c [PATCH] fbcon/fbdev: Move softcursor out of fbdev to fbcon 2005-11-07 07:53:50 -08:00
dnfb.c [DRIVER MODEL] Convert platform drivers to use struct platform_driver 2005-11-09 22:32:44 +00:00
edid.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
epson1355fb.c [DRIVER MODEL] Convert platform drivers to use struct platform_driver 2005-11-09 22:32:44 +00:00
fbcmap.c [PATCH] fbdev: update info->cmap when setting cmap from user-/kernelspace. 2005-07-27 16:26:19 -07:00
fbcvt.c [PATCH] fbdev: Fix reversed back and front porches 2005-09-20 17:36:38 -07:00
fbmem.c [PATCH] fbdev: Pan display fixes 2005-12-12 22:31:17 -08:00
fbmon.c [PATCH] fbdev: Rearrange mode database entries 2005-11-07 07:53:52 -08:00
fbsysfs.c [PATCH] fbcon: Console Rotation - Add ability to control rotation via sysfs 2005-11-09 07:56:35 -08:00
ffb.c [SBUSFB]: Kill 'list' member from foo_par structs, totally unused. 2005-12-12 14:41:20 -08:00
fm2fb.c [PATCH] fbcon/fbdev: Move softcursor out of fbdev to fbcon 2005-11-07 07:53:50 -08:00
g364fb.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
gbefb.c [DRIVER MODEL] Convert platform drivers to use struct platform_driver 2005-11-09 22:32:44 +00:00
hgafb.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
hitfb.c [PATCH] fbcon/fbdev: Move softcursor out of fbdev to fbcon 2005-11-07 07:53:50 -08:00
hpfb.c [PATCH] fbcon/fbdev: Move softcursor out of fbdev to fbcon 2005-11-07 07:53:50 -08:00
igafb.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
imsttfb.c [PATCH] fbcon/fbdev: Move softcursor out of fbdev to fbcon 2005-11-07 07:53:50 -08:00
imxfb.c [DRIVER MODEL] Convert platform drivers to use struct platform_driver 2005-11-09 22:32:44 +00:00
imxfb.h [PATCH] ARM: 2687/1: i.MX framebuffer: make dmacr register platform configurable 2005-07-17 20:15:36 +01:00
Kconfig [PATCH] fbdev: cg3fb: Kconfig fix 2005-11-29 19:47:04 -08:00
leo.c [SBUSFB]: Kill 'list' member from foo_par structs, totally unused. 2005-12-12 14:41:20 -08:00
macfb.c [PATCH] fbcon/fbdev: Move softcursor out of fbdev to fbcon 2005-11-07 07:53:50 -08:00
macmodes.c [PATCH] macmodes: needs a license 2005-06-14 07:19:35 -07:00
macmodes.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
Makefile [PATCH] fbcon/fbdev: Move softcursor out of fbdev to fbcon 2005-11-07 07:53:50 -08:00
maxinefb.c [PATCH] fbcon/fbdev: Move softcursor out of fbdev to fbcon 2005-11-07 07:53:50 -08:00
modedb.c [PATCH] fbdev: Framebuffer mode required for PowerBook Titanium 2005-11-09 07:56:34 -08:00
neofb.c [PATCH] fbcon/fbdev: Move softcursor out of fbdev to fbcon 2005-11-07 07:53:50 -08:00
offb.c offb: Fix compile error on ppc32 systems 2005-11-18 16:41:49 +11:00
p9100.c [SBUSFB]: Kill 'list' member from foo_par structs, totally unused. 2005-12-12 14:41:20 -08:00
platinumfb.c [PATCH] fbcon/fbdev: Move softcursor out of fbdev to fbcon 2005-11-07 07:53:50 -08:00
platinumfb.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
pm2fb.c [PATCH] pm2fb: Manual configuration of timings for Elsa Winner 2000 Office 2005-11-07 07:53:51 -08:00
pm3fb.c [PATCH] drivers/video: Replace custom macro with isdigit() 2005-09-13 08:22:33 -07:00
pmag-aa-fb.c [PATCH] DEC PMAG AA framebuffer update 2005-09-05 00:06:03 -07:00
pmag-ba-fb.c [PATCH] fbcon/fbdev: Move softcursor out of fbdev to fbcon 2005-11-07 07:53:50 -08:00
pmagb-b-fb.c [PATCH] fbcon/fbdev: Move softcursor out of fbdev to fbcon 2005-11-07 07:53:50 -08:00
pvr2fb.c [PATCH] fbcon/fbdev: Move softcursor out of fbdev to fbcon 2005-11-07 07:53:50 -08:00
pxafb.c [DRIVER MODEL] Convert platform drivers to use struct platform_driver 2005-11-09 22:32:44 +00:00
pxafb.h [ARM] pxafb: Remove #if DEBUG, convert DPRINTK to pr_debug 2005-09-29 09:44:54 +01:00
q40fb.c [DRIVER MODEL] Convert platform drivers to use struct platform_driver 2005-11-09 22:32:44 +00:00
radeonfb.c [PATCH] fbcon/fbdev: Move softcursor out of fbdev to fbcon 2005-11-07 07:53:50 -08:00
retz3fb.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
retz3fb.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
s1d13xxxfb.c [DRIVER MODEL] Convert platform drivers to use struct platform_driver 2005-11-09 22:32:44 +00:00
s3c2410fb.c [DRIVER MODEL] Convert platform drivers to use struct platform_driver 2005-11-09 22:32:44 +00:00
s3c2410fb.h [PATCH] s3c2410fb: ARM S3C2410 framebuffer driver 2005-09-09 14:03:42 -07:00
S3triofb.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
sa1100fb.c [DRIVER MODEL] Convert platform drivers to use struct platform_driver 2005-11-09 22:32:44 +00:00
sa1100fb.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
sbuslib.c [SBUSFB]: implement ->compat_ioctl 2005-11-12 12:11:12 -08:00
sbuslib.h [SBUSFB]: implement ->compat_ioctl 2005-11-12 12:11:12 -08:00
sgivwfb.c [DRIVER MODEL] Convert platform drivers to use struct platform_driver 2005-11-09 22:32:44 +00:00
skeletonfb.c [PATCH] fbcon/fbdev: Move softcursor out of fbdev to fbcon 2005-11-07 07:53:50 -08:00
sstfb.c [PATCH] fbcon/fbdev: Move softcursor out of fbdev to fbcon 2005-11-07 07:53:50 -08:00
sticore.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
stifb.c [PATCH] fbcon/fbdev: Move softcursor out of fbdev to fbcon 2005-11-07 07:53:50 -08:00
sun3fb.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
tcx.c [SBUSFB] tcx: Use FB_BLANK_UNBLANK instead of magic constant. 2005-12-12 14:42:07 -08:00
tdfxfb.c [PATCH] fbcon/fbdev: Move softcursor out of fbdev to fbcon 2005-11-07 07:53:50 -08:00
tgafb.c [PATCH] fbcon/fbdev: Move softcursor out of fbdev to fbcon 2005-11-07 07:53:50 -08:00
tridentfb.c [PATCH] fbcon/fbdev: Move softcursor out of fbdev to fbcon 2005-11-07 07:53:50 -08:00
tx3912fb.c [PATCH] fbcon/fbdev: Move softcursor out of fbdev to fbcon 2005-11-07 07:53:50 -08:00
valkyriefb.c [PATCH] fbcon/fbdev: Move softcursor out of fbdev to fbcon 2005-11-07 07:53:50 -08:00
valkyriefb.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
vesafb.c [PATCH] make vesafb build without CONFIG_MTRR 2005-11-13 18:14:21 -08:00
vfb.c [DRIVER MODEL] Convert platform drivers to use struct platform_driver 2005-11-09 22:32:44 +00:00
vga16fb.c [PATCH] vga16fb: Convert vga16fb as a platform device 2005-11-09 07:56:35 -08:00
vgastate.c [PATCH] drivers/video/vgastate.c: kill dead code 2005-11-09 07:56:36 -08:00
virgefb.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
virgefb.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
w100fb.c [PATCH] w100fb: platform device conversion fixup 2005-11-13 18:14:11 -08:00
w100fb.h [PATCH] w100fb: Rewrite for platform independence 2005-09-07 16:57:53 -07:00