Re: VESA FBconsole driver?

Kendall Bennett
2003-03-13T21:20:34Z

I wrote:

> A long time ago I remember there was a guy working on a VESA
> FBconsole driver for Linux. Then driver he was working on was
> structured as a user land daemon that the kernel console driver
> would call back into once the system was up, allowing the userland
> VESA driver to use the vm86() service to change modes, program the
> palette and other useful things that can't be done by the basic
> driver that uses a mode set previously by LILO or GRUB.

No-one has responded to this email, so either no-one remembers this is
people think someone else responded to my email ;-)

Does anyone remember this project. I checked the Linux kernel and it
presently does not seem to have any support for this. Can anyone point me

at references that will help me figure out how the kernel can make
callbacks into a user land daemon?

> My second question is, is it possible to execute vm86() services
> from *within* the kernel as opposed to from user land? I got the
> impression at the time that the userland daemon was used because
> vm86() could only be called from userland code and could not be
> called from within the kernel to execute real mode VESA BIOS
> services. Is that correct? If not, can vm86() services now be
> called from other kernel modules inside the kernel?

I checked into this some more and it is clear that vm86() is only useable

from userland code on Linux. However recently the FreeBSD kernels were
modified to support vm86() from within the kernel, and in fact the latest

FreeBSD VESA console driver uses the vm86() services so that it can do
everything using the BIOS where necessary.

Is there any reason why the vm86() services in the Linux kernel cannot be

used by other kernel code? Has anyone made an attempt to update the
vm86() services to support this?

Thanks!

---
Kendall Bennett
Chief Executive Officer
SciTech Software, Inc.
Phone: (530) 894 8400
http://www.scitechsoft.com

~ SciTech SNAP - The future of device driver technology! ~