Hi!
I would like to have some comments about that...
Using a VESA card with the XF86_FBDev server you don't need
to worry about the monitor and the resolution, but you must
specify the DefaultDepth.
I don't understand why this parameter can't be autodetect
directly from the kernel.
Having such facility the XF86Config will never changes across
the new frame buffer.
I've wrote a small patch (hack) that if the DefaultDepth is 0
the server will use the bpp probed from the frame buffer device.
disclaimer:
1) I'm not a X* expert
2) I don't know if the Xfree 4.x have such facility
3) that assumption is relative to XF86_FBDev 3.3.6
on linux i386 2.2.x / 2.4.x with VESA fbdev
thanks in advance,
luca
PS: Please reply directly, as I'm not a member of this list
diff -ur xc/programs/Xserver/hw/xfree68/fbdev/fbdev.c
xc.new/programs/Xserver/hw/xfree68/fbdev/fbdev.c
--- xc/programs/Xserver/hw/xfree68/fbdev/fbdev.c Wed Jun 2 13:40:47 1999
+++ xc.new/programs/Xserver/hw/xfree68/fbdev/fbdev.c Thu Feb 14 17:33:53 2002
@@ -634,10 +634,16 @@
FatalError("No modes supplied in XF86Config\n");
if (!strcmp(pMode->name, "default")) {
- ErrorF("%s %s: Using default frame buffer video mode\n", XCONFIG_GIVEN,
- fbdevInfoRec.name);
- fb_var.bits_per_pixel = fbdevInfoRec.depth;
+ ErrorF("%s %s: Using default frame buffer video mode bpp=%d probe_bpp=%d\n",
+XCONFIG_GIVEN,
+ fbdevInfoRec.name,fbdevInfoRec.depth,fb_var.bits_per_pixel);
+ if ( fbdevInfoRec.depth == 0 ) {
+ /* prendo i bpp direttamente dal kernel !! */
+ fbdevInfoRec.depth = fb_var.bits_per_pixel;
+ fbdevInfoRec.bitsPerPixel = fb_var.bits_per_pixel;
+ } else {
+ fb_var.bits_per_pixel = fbdevInfoRec.depth;
fbdevInfoRec.bitsPerPixel = fbdevInfoRec.depth;
+ }
} else {
ErrorF("%s %s: Using XF86Config video mode database\n", XCONFIG_GIVEN,
fbdevInfoRec.name);
_______________________________________________
Xpert mailing list
[EMAIL PROTECTED]
http://XFree86.Org/mailman/listinfo/xpert