On Sun, Feb 10, 2013 at 07:38:13PM +0000, Chris Wilson wrote: > Reading the cspec pays dividends once again, as I found the 'Base of > Stolen Memory' config register so that we can skip the fragile > computation from Top of Usable Draw and use the real value provided by > the BIOS. > > Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk> Don't really want to dig out the doc, but I so prefer this to the old way. Acked-by: Ben Widawsky <ben at bwidawsk.net> > --- > drivers/gpu/drm/i915/i915_gem_stolen.c | 9 +++------ > 1 file changed, 3 insertions(+), 6 deletions(-) > > diff --git a/drivers/gpu/drm/i915/i915_gem_stolen.c b/drivers/gpu/drm/i915/i915_gem_stolen.c > index 130d1db..7f1735c 100644 > --- a/drivers/gpu/drm/i915/i915_gem_stolen.c > +++ b/drivers/gpu/drm/i915/i915_gem_stolen.c > @@ -72,13 +72,10 @@ static unsigned long i915_stolen_to_physical(struct drm_device *dev) > } else if (INTEL_INFO(dev)->gen > 3 || IS_G33(dev)) { > /* Read Graphics Base of Stolen Memory directly */ > pci_read_config_dword(pdev, 0xA4, &base); > -#if 0 > } else if (IS_GEN3(dev)) { > - u8 val; > - /* Stolen is immediately below Top of Low Usable DRAM */ > - pci_read_config_byte(pdev, 0x9c, &val); > - base = val >> 3 << 27; > - base -= dev_priv->mm.gtt->stolen_size; > + /* Read D2:F0 Base of Stolen Memory directly */ > + pci_read_config_dword(dev->pdev, 0x5c, &base); > +#if 0 > } else { > /* Stolen is immediately above Top of Memory */ > base = max_low_pfn_mapped << PAGE_SHIFT; > -- > 1.7.10.4 > > _______________________________________________ > Intel-gfx mailing list > Intel-gfx at lists.freedesktop.org > http://lists.freedesktop.org/mailman/listinfo/intel-gfx -- Ben Widawsky, Intel Open Source Technology Center