On Thu, Nov 28, 2013 at 04:32:14PM +0000, Chris Wilson wrote: > On Thu, Nov 28, 2013 at 05:15:10PM +0200, ville.syrjala@xxxxxxxxxxxxxxx wrote: > > From: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx> > > > > There doesn't seem to an explicit stolen memory base register on gen2. > > Some old comment in the code suggests we should get it via > > max_low_pfn_mapped, but that's clearly a bad idea on my MGM. > > > > The e820 map in said machine looks like this: > > [ 0.000000] BIOS-e820: [mem 0x0000000000000000-0x000000000009f7ff] usable > > [ 0.000000] BIOS-e820: [mem 0x000000000009f800-0x000000000009ffff] reserved > > [ 0.000000] BIOS-e820: [mem 0x00000000000ce000-0x00000000000cffff] reserved > > [ 0.000000] BIOS-e820: [mem 0x00000000000dc000-0x00000000000fffff] reserved > > [ 0.000000] BIOS-e820: [mem 0x0000000000100000-0x000000001f6effff] usable > > [ 0.000000] BIOS-e820: [mem 0x000000001f6f0000-0x000000001f6f7fff] ACPI data > > [ 0.000000] BIOS-e820: [mem 0x000000001f6f8000-0x000000001f6fffff] ACPI NVS > > [ 0.000000] BIOS-e820: [mem 0x000000001f700000-0x000000001fffffff] reserved > > [ 0.000000] BIOS-e820: [mem 0x00000000fec10000-0x00000000fec1ffff] reserved > > [ 0.000000] BIOS-e820: [mem 0x00000000ffb00000-0x00000000ffbfffff] reserved > > [ 0.000000] BIOS-e820: [mem 0x00000000fff00000-0x00000000ffffffff] reserved > > > > That makes max_low_pfn_mapped = 1f6f0000, so assuming our stolen memory > > would start there would place it on top of some ACPI memory regions. > > So not a good idea as already stated. > > > > The 9MB region after the ACPI regions at 0x1f700000 however looks > > promising given that the macine reports the stolen memory size to be > > 8MB. Looking at the PGTBL_CTL register, the GTT entries are at offset > > 0x1fee00000, and given that the GTT entries occupy 128KB, it looks like > > the stolen memory could start at 0x1f700000 and the GTT entries would > > occupy the last 128KB of the stolen memory. I have no idea about the > > extra 1MB after the GTT entries. > > The base address for stolen memory is explicitly Top of Memory on gen2, > at least in 830/845 cspecs that I found (and recall). But this idea is > interesting... I have a hard time beliveing people would be nuts enough to place the GTT entries somewhere the middle of the stolen memory area rather than at the end. But I suppose I could be wrong. There's also one additional reason why I suspect the last 1MB (or .5MB on Daniel's machine) must be something else; it's covered by a UC MTRR, whereas the presumed stolen memory range is not. -- Ville Syrjälä Intel OTC _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/intel-gfx