VGA arbitration: API proposal

Jon Smirl jonsmirl at gmail.com
Fri Mar 4 20:46:00 PST 2005


There is no real reason to be using VGA in current machines. Could we
take this concept further and separate all cards into two piles:
require VGA or can live without it. The obvious exception to this is
during the post process.

So my simple idea is:
mark all drivers as VGA or not
only allow a single card in the system that is marked as requiring VGA
require fbdev/fbcon on the non-VGA cards
the first card that arrives requiring VGA get VGAcon
build whatever is needed to get through the post process for non-VGA cards
if there is a second VGA required card, print a big message and refuse to boot
discourage any further writing of code that uses VGA

PCI Express is really going to aggravate this problem. With the
NForce4 there are now motherboards that support four 16x slots and the
Nvidia expansion chips allow motherboards to be built with 16 16x
slots (would have to be quad Opteron). I suspect the next generation
of low end chipsets will support two 16x slots.

Long term I'm not in favor of the ruby approach of modifying the
kernel for multiple consoles. Instead I would like to kick the console
out to user space where we can have as many as we want. The in-kernel
console would then be reserved for things like system recovery, OOPs,
sysReq, kernel debugger, etc... instead of normal logins. We already
have user space consoles today -- xterms.

-- 
Jon Smirl
jonsmirl at gmail.com



More information about the xorg mailing list