Subject: Re: Multiple VGA cards
To: Andreas Wrede <andreas@planix.com>
From: Todd Whitesel <toddpw@best.com>
List: port-i386
Date: 09/29/2000 23:29:30
[sorry if this is redundant, I'm way behind on mail right now]

> When booting with two cards, the second card is always listed as
> 'not configured'. I tried locking down the kernel config by explicitly
> specifying the pci bus, device and function with no change in the
> result. 

Yes, the BIOS is only capable of bringing up one card, and it leaves any
additional VGA boards disabled. Every VGA board has a set of standard
registers, but to activate them you must perform a chipset specific init
sequence and the kernel does not have the necessary knowledge to do this.

Many VGA cards will only respond to hardcoded addresses that are not
relocatable, or their initialization sequence depends on registers that
are not relocatable. This is why so few cards are Mac-certified.

Manufacturers care far more about the VGA BIOS working, and about their
Mac-certified cards making it into graphics mode with a generic driver,
than they do about allowing full card initialization as an arbitrary PCI
device.

I've studied this in depth, and so far the most progress that anyone has
made is present in XFree 4, where they have code to bring up some cards
from scratch and get them into graphics mode.

This is one of those obnoxious things that should be simple, but it's not,
because of the idiocy of how the PC market designs products.

Todd Whitesel
toddpw @ best.com