Intel
82815EM GMCH
R
124
Datasheet
4.7.4.
Legacy VGA Ranges
The legacy VGA memory range A_0000h-B_FFFFh is mapped either to the hub interface or to
AGP/PCI1 depending on the programming of the VGA Enable bit in the BCTRL configuration register
in GMCH2-M Device #1 configuration space, and the MDAP bit in the GMCH2-MCFG configuration
register in Device #0 configuration space. The same register controls mapping VGA I/O address ranges.
VGA I/O range is defined as addresses where A[9:0] are in the ranges 3B0h to 3BBh and 3C0h to 3DFh
(inclusive of ISA address aliases - A[15:10] are not decoded). The function and interaction of these two
bits is described below:
MDA Present (MDAP):
This bit works with the VGA Enable bit in the BCTRL register of device 1 to
control the routing of processor initiated transactions targeting MDA compatible I/O and memory
address ranges. This bit should not be set when the VGA Enable bit is not set. If the VGA enable bit is
set, then accesses to IO address range x3BCh-x3BFh are forwarded to the hub interface. If the VGA
enable bit is not set, then IO address range accesses x3BCh-x3BFh are treated like other IO accesses -
the cycles are forwarded to AGP if the address is within IOBASE and IOLIMIT and ISA enable bit is not
set, otherwise they are forwarded to the hub interface. MDA resources are defined as the following:
Memory: 0B0000h - 0B7FFFh
I/O: 3B4h, 3B5h, 3B8h, 3B9h, 3BAh, 3BFh,
Note:
Including ISA address aliases, A[15:10] are not used in decode.
Any I/O reference that includes the I/O locations listed above, or their aliases, will be forwarded to the
hub interface even if the reference includes I/O locations not listed above.
VGA Enable:
Controls the routing of processor initiated transactions targeting VGA compatible I/O
and memory address ranges. When this bit is set, GMCH2-M will forward the following processor
accesses to the AGP:
Memory accesses in the range 0A0000h to 0BFFFFh
I/O addresses where A[9:0] are in the ranges 3B0h to 3BBh and 3C0h to 3DFh
Note:
Inclusive of ISA address aliases - A[15:10] are not decoded.
When this bit is set, forwarding of these accesses issued by the processor is independent of the I/O
address and memory address ranges defined by the previously defined base and limit registers.
Forwarding of these accesses is also independent of the settings of the bit 2 (ISA Enable) of BCTRL if
this bit is “1”. If the VGA enable bit is set, then accesses to IO address range x3BCh-x3BFh are
forwarded to the hub interface. If the VGA enable bit is not set, then IO address range accesses x3BCh-
x3BFh are treated like other IO accesses - the cycles are forwarded to AGP if the address is within
IOBASE and IOLIMIT and ISA enable bit is not set, otherwise they are forwarded to the hub interface.
If this bit is “0” (default) , then VGA compatible memory and I/O range accesses are not forwarded to
AGP but rather they are mapped to the hub interface unless they are mapped to AGP via I/O and memory
range registers defined above (IOBASE, IOLIMIT, MBASE, MLIMIT, PMBASE, PMLIMIT