Re: PCI resources above 4GB

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On 11/04/12 06:33, Steven Newbury wrote:

>> In https://bugzilla.kernel.org/show_bug.cgi?id=10461#c12, I think
>> the problem you're seeing is that when you boot while docked,
>> the integrated i915 works, but the radeon in the dock does not.
>> That makes sense to me because they each want 256M of space, and
>> according to your _CRS info, there's only one possible location
>> with that much space (0xe0000000).   Do you happen to know what
>> Windows does in that
> 
> That's why I'm hoping to be able to reallocate the i915 aperture
> above 4GB, but this depends on what the chipset is capable of
> rather than what the BIOS exposes.

I've been reading the datasheets for the 965 chipset, and I've
discovered a few things (from "Intel 965 Express Family Datasheet"):

Section 3.2.3:

"Voids of physical addresses that are not accessible as general system
memory and reside within system memory address range (< TOLUD) are
created for SMM-mode and legacy VGA graphics compatibility. It is the
responsibility of BIOS to properly initialize these regions. Table 3-5
details the location and attributes of the regions.
Enabling/Disabling these ranges are described in the (G)MCH Control
register (GCC register, device 0, offset 52h)."

BIOS must initialise legacy regions < TOLUD (top of low usable DRAM),
it doesn't mention any other strict requirements on memory mappings,
but TOLUD itself, I would assume, is implicitly required to be
configured by the BIOS for everything else to fall into place.

...

Section 3.4 describes the memory reclaim configuration, which enables
remapping of the range of physical memory overlapped by:

•	High BIOS

•	HSEG

•	TSEG

•	Graphics stolen

•	XAPIC

•	Local APIC

•	FSB Interrupts

•	Mbase/Mlimit

•	Memory-mapped I/O space that supports only 32B addressing

It isn't specifically mentioned whether this is reconfigurable, but I
remember reading in a Microsoft document that Windows since 64 bit
Vista can freeze PCI devices and reassign PCI window ranges on device
hot-plug.  I'm not sure whether this comes into play, probably not...

...

Section 3.7 is *particularly* interesting to me:

Graphics Memory Address Ranges

"These ranges can reside above the Top-of-Low-DRAM and below High BIOS
and APIC address ranges or above Top of upper DRAM (TOUUD). They MUST
reside above the top of memory (TOLUD) and below 4 GB _or_above_TOUUD_
so they do not steal any physical DRAM memory space."

According to this section there's no reason the Graphics Aperture Base
can not be above TOUUD.

...

I guess I should read the PCIe specifications; I have read references
to the claim the specifications were developed around Microsoft's
requirements in their implementation since Longhorn (Vista),
specifically removing the 4GB limit (where compatible) when used with
64 bit OSs.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.19 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iEYEARECAAYFAk+FSOYACgkQGcb56gMuC63bugCbBZXxiXzNtrC0/qpHyRd6Wwts
Q+cAoLVDTezwPjTLuEpLDUO6ppGEOPI7
=x+g9
-----END PGP SIGNATURE-----
--
To unsubscribe from this list: send the line "unsubscribe linux-pci" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [DMA Engine]     [Linux Coverity]     [Linux USB]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Greybus]

  Powered by Linux