Re: [PATCH] fbdev: workaround for broken X servers
From: Ville Syrjälä <syrjala@sci.fi>
Date: 2004-11-05 10:43:54
On Fri, Nov 05, 2004 at 10:56:04AM +0100, Geert Uytterhoeven wrote:
On Fri, 5 Nov 2004, Ville [iso-8859-1] Syrjälä wrote:quoted
On Fri, Nov 05, 2004 at 04:49:36PM +1100, Benjamin Herrenschmidt wrote:quoted
Ok, can we agree here on what has to be done ? X is hard-coding numbers that don't seem to be make any sense vs. our constants. In radeonfb, I used switch case on constants, not +1, so there is something I'm not getting. Besides, radeon always try to power down TFT panels when blank != 0, maybe I should improve that ... What is this +1 thing, where does it comes from ?Maybe it's there because someone wanted to blank the display without disabling sync signals.Yes of course! (/me wasn't completely awake yet)quoted
I suggest a new set of constants that cover all legal values. Here's the first drawft.--- linux-orig/include/linux/fb.h 2004-11-05 12:25:14.087807848 +0200 +++ linux/include/linux/fb.h 2004-11-05 12:28:02.734169704 +0200@@ -27,7 +27,7 @@ /* #define FBIOSWITCH_MONIBIT 0x460E */ #define FBIOGET_CON2FBMAP 0x460F #define FBIOPUT_CON2FBMAP 0x4610 -#define FBIOBLANK 0x4611 /* arg: 0 or vesa level + 1 */ +#define FBIOBLANK 0x4611 /* see FB_BLANK_* */ #define FBIOGET_VBLANK _IOR('F', 0x12, struct fb_vblank) #define FBIO_ALLOC 0x4613 #define FBIO_FREE 0x4614@@ -258,6 +258,12 @@ #define VESA_HSYNC_SUSPEND 2 #define VESA_POWERDOWN 3 +#define FB_BLANK_NO_BLANKING 0 +#define FB_BLANK_BLANKING 1 +#define FB_BLANK_VSYNC_SUSPEND 2 +#define FB_BLANK_HSYNC_SUSPEND 3 +#define FB_BLANK_POWERDOWN 4 +Yep, these nicely cover the current intended behavior. But every existing application that uses (shiver) the kernel headers will break after this change...
If the VESA constants are left intact nothing should change. BTW neither XFree86/X.Org nor DirectFB use them so chances are nothing else does. -- Ville Syrjälä syrjala@sci.fi http://www.sci.fi/~syrjala/ ------------------------------------------------------- This SF.Net email is sponsored by: Sybase ASE Linux Express Edition - download now for FREE LinuxWorld Reader's Choice Award Winner for best database on Linux. http://ads.osdn.com/?ad_idU88&alloc_id065&op=click