Hi Jon !
Your new code for looking at the card's ROM is causing a problem for
me. On some cards, typically the "Mac" cards, the ROM doesn't contain
an x86 BIOS, but rather an OF driver. The current code will blindly
tap that, though it contains none of the expected tables, and will
use completely wrong values.
Do you have ideas how to make some sanity checking on the ROM content ?
Ben.
-------------------------------------------------------
This sf.net email is sponsored by:ThinkGeek
Welcome to geek heaven.
http://thinkgeek.com/sf
On Wed, 2003-09-24 at 14:06, Benjamin Herrenschmidt wrote:
Your new code for looking at the card's ROM is causing a problem for
me. On some cards, typically the "Mac" cards, the ROM doesn't contain
an x86 BIOS, but rather an OF driver. The current code will blindly
tap that, though it contains none of the expected tables, and will
use completely wrong values.
Do you have ideas how to make some sanity checking on the ROM content ?
The X radeon driver has this in RADEONGetBIOSParameters():
if (info->VBIOS[0] != 0x55 || info->VBIOS[1] != 0xaa) {
xfree(info->VBIOS);
info->FPBIOSstart = 0;
info->VBIOS = NULL;
info->BIOSAddr = 0x00000000;
xf86DrvMsg(pScrn->scrnIndex, X_WARNING,
"Video BIOS not found!\n");
}
--
Earthling Michel Dänzer \ Debian (powerpc), XFree86 and DRI developer
Software libre enthusiast \ http://svcs.affero.net/rm.php?r=daenzer
-------------------------------------------------------
This sf.net email is sponsored by:ThinkGeek
Welcome to geek heaven.
http://thinkgeek.com/sf
On Wed, 2003-09-24 at 17:18, Michel Dänzer wrote:
On Wed, 2003-09-24 at 14:06, Benjamin Herrenschmidt wrote:
quoted
Your new code for looking at the card's ROM is causing a problem for
me. On some cards, typically the "Mac" cards, the ROM doesn't contain
an x86 BIOS, but rather an OF driver. The current code will blindly
tap that, though it contains none of the expected tables, and will
use completely wrong values.
Do you have ideas how to make some sanity checking on the ROM content ?
The X radeon driver has this in RADEONGetBIOSParameters():
if (info->VBIOS[0] != 0x55 || info->VBIOS[1] != 0xaa) {
We check that, but that isn't enough, an OF ROM will trigger that
as well
Ben.
-------------------------------------------------------
This sf.net email is sponsored by:ThinkGeek
Welcome to geek heaven.
http://thinkgeek.com/sf