Re: FBdev remains in unusable state

Petr Vandrovec (VANDROVE@vc.cvut.cz)
Wed, 12 Dec 2001 21:32:53 MET-1


On 12 Dec 01 at 21:14, Pozsar Balazs wrote:
> > No. vesafb does not work together with mga driver in X (although
> > I believe that vesafb works with XFree mga driver, only Matrox driver
> > is binary bad citizen).
>
> I don't clearly understand you. I am using mga driver which is in the
> official xfrr86 release.

In that case even xfree mga driver cannot return hardware back to previous
state. It is expected and documented.

> > Neither. X restore R/W registers to their previous values, while write-only
> > registers to their values for normal text mode. Yes, there is a
> > 'workaround'. Use (much faster) matroxfb.
>
> What if setting those W-only registers to their appropiate values on
> console-switches?

It is hardware dependent and undocumented. matroxfb does it...

> Why isn't it done by the vesafb driver?

vesafb is VBE2.0 based. It does not know how to touch hardware, it uses
LILO to do all this dirty work.

> How is the mga fb driver handle handling this situation better?

Because of it actually drives hardware, instead of touching it once before
boot, and then trusting all citizens that it will work. So it can restore
any mode it wants, on any head it wants.

> ps: My problem is that I have to use exactly the same kernel on different
> machines, and I need fb. If not all machines have mga, than mga fb is
> no-go.

I do not understand. If you'll compile both vesafb & matroxfb into kernel,
and you'll boot with

Linux vga=769 video=matrox:vesa:769

on computers with Matrox inside you'll have /dev/fb0 accelerated fb,
and /dev/fb1 VESAFB 'do not use' (maybe vesafb even will not load
as framebuffer will be already acquired by matroxfb, but I never tested
it). On computers without Matrox you'll have /dev/fb0 VESAFB and
/dev/fb1 will not exist at all.
Petr Vandrovec
vandrove@vc.cvut.cz

P.S.: Also try 'Option "UseFBDev"' in /etc/X11/XF86Config-4 driver
section. I think that with this option X11 mga driver will not stomp
on your hardware, and instead it will refuse any videmode != vesafb
one.

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/