Re: why is vesafb not a module?

Brian Gerst (bgerst@quark.vpplus.com)
Fri, 22 Jan 1999 18:19:19 -0500


91b59e21456b337c213e7290c93f43a8@interlinx.bc.ca wrote:
>
> Wow, my second posting in two days. As I have not yet subscribed to the
> list can I as that you CC me (yup to that horrifyingly ugly from
> address) on any responses.
>
> I am wondering why the vesafb (VESA Frame Buffer device) is not a
> module? I like building stripped down kernels (even to the point of
> putting my load time devices into an initrd ramdisk) that I can run on a
> variety of machines. I have some machines that use the Matro frame
> buffer framebuffer device but others that use the standard VESA frame
> buffer.

Because the VESA framebuffer uses the VESA 2.0 BIOS, it can only be
called from real mode. Therefore, it must be done at boot time, before
the kernel enters protected mode. This means that it cannot be compiled
as a module (unless somebody wants to hack vm86 support so that it can
be used _inside_ the kernel).

> I would like to decide at run time which frame buffer to run, depending
> on of course the hardware in the box. Compiling one kernel with the
> vesa frame buffer in (for video cards without a specific frame buffer
> driver) and then one without (to run a specific frame buffer) to satisfy
> this kinda sucks. :-)

VesaFB only is activated if you pass a vga= value which corresponds to a
graphics mode. If it is a text mode, vgacon is still used (or another
framebuffer).

-- 

Brian Gerst

- 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/