Re: [linux-fbdev] fbdev vga library...

James Simmons (jsimmons@acsu.buffalo.edu)
Wed, 28 Jun 2000 08:51:25 -0400 (EDT)


> My own ideas towards that end:
>
> * use drivers/video/vga.h for all VGA drivers!

Yes please. Also we should make vgacon probe the hardware for video mode
attributes in vgacon_startup instead of depending on the system BIOS. This
should make more platform independent.

> * generic get/set colreg code

I assume you mean for vga type cards. Especially usefull for isa vga
cards.

> * perhaps go as far as creating a "vgagen" module, which would act a lot
> like fbgen (including the C++-like inheritence by putting 'struct
> vga_gen_info' at the beginning of the private xxx_fb_info struct).

I don't know about that.

P.S

To all driver writers. One of the API changes that did go into the recent
developement kernels was a par pointer in fb_info. Don't use xxx_fb_info.
Instead use

struct xxx_par
{
...
}

struct fb_info
{
...
void *par;
}

xxxfb_init()
{
...
/* Code to initalize par */
...
fb_info.par = xxxfb_par;

}

Why did I do this? For video cards that support multiple monitors
fbdev sees each monitor as a seperate head. So one video card appears to
be 2. With should systems how a video mode is set depends on the video
mode for the second display. In such a setup you can each fb_info struct
pointing to the same par. This way if one display is asked to change it
video mode it can check with the other video mode. Then when it changes
the video mode the other fbdev know this via the shared par.
The other exterme is multiple video cards being used to display on one
monitor. Voodoo cards can do this for example. In this case we can have
par pointing to a array or linked list of xxxfb_par. Of course the dirver
has to handle dealing with multiple pars.
The 3rd reason is with all drivers using fb_info instead of xxxfb_info
will allow use to create a generic switching function and a few other
changes. This will lead to the removal of console dependent code out of
the fbdev drivers.

Q: Why did they deprecate a.out support in linux?
A: Because a nasty coff is bad for your elf.

James Simmons [jsimmons@linux-fbdev.org] ____/|
fbdev/console/gfx developer \ o.O|
http://www.linux-fbdev.org =(_)=
http://linuxgfx.sourceforge.net U
http://linuxconsole.sourceforge.net

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