Thread (32 messages) 32 messages, 4 authors, 2003-03-19

Re: Reading the EDID block for x86 machines

From: Jon Smirl <hidden>
Date: 2003-03-17 04:00:51

--- Antonino Daplas <adaplas@pol.net> wrote:
quoted
quoted
3.  write to PCI config space of secondary
controller the address you
quoted
quoted
want it to appear (ie C000:0000).  Can I use
other addresses?

I checked the PCI 2.2 specs, and it doesn't have
this capability.  It
will give you the address of the expansion ROM, but
you still have to
manually copy the ROM and place it in any of the
expansion areas. 
Unfortunately for VGA controllers, it's always
C000:0000.  
You can very definitely move the ROMs to where ever
you want that isn't occupied by something else. I have
written code that does it. Also, the system BIOS must
be moving the ROMs in order to sort things out so that
they don't all appear on top of each other.

You don't even need to move the ROM. Just enable it
and read it's address form PCI space.  The system BIOS
will have sorted the addresses out so that they don't
overlap. PCI config Region 6 is always the ROM see
include/linux/pci.h
1.  COOO:0000 will be write protected by the BIOS
upon initialization of
the first VGA controller.  This will prevent copying
of the succeeding
ROMS into that segment (unless you have a BIOS that
supports read-write
shadow ROM's).
How is C000 write protected? I'm pretty sure that the
ATI ROM are writing to C000.

=====
Jon Smirl
jonsmirl@yahoo.com

__________________________________________________
Do you Yahoo!?
Yahoo! Web Hosting - establish your business online
http://webhosting.yahoo.com


-------------------------------------------------------
This SF.net email is sponsored by:Crypto Challenge is now open! 
Get cracking and register here for some mind boggling fun and 
the chance of winning an Apple iPod:
http://ads.sourceforge.net/cgi-bin/redirect.pl?thaw0031en
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help