diff options
author | Eric Anholt <eric@anholt.net> | 2008-10-14 11:33:33 -0700 |
---|---|---|
committer | Jesse Barnes <jbarnes@virtuousgeek.org> | 2008-11-11 12:22:13 -0800 |
commit | fc66fbbb37da86f02bc3beff30bf0630a03a9e10 (patch) | |
tree | 55b42c7b47d82ab315bd13ffe9c0f6298f59d358 | |
parent | 4223fa64132fa387deb6a5685ff63b2cab97977d (diff) |
Fix broken stolen memory counting on G4X.
On the GM45 we were assuming too little stolen memory (mostly harmless,
except when it wasn't, until the AGP fix), and on the G45 we were assuming too
much stolen memory, which was quite harmful when we touched the page that
didn't get mapped.
Future stolen memory accounting should use src/reg_dumper/intel_gtt before and
after enabling AGP on the chipset to confirm that only the GTT entries not
mapped to stolen are replaced, and that all of the unmapped GTT entries are
replaced with the constant scratch page.
-rw-r--r-- | src/i830_driver.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/i830_driver.c b/src/i830_driver.c index 209aa07d..0a747c1d 100644 --- a/src/i830_driver.c +++ b/src/i830_driver.c @@ -518,8 +518,8 @@ I830DetectMemory(ScrnInfoPtr pScrn) range = gtt_size + 4; /* new 4 series hardware has seperate GTT stolen with GFX stolen */ - if (IS_G4X(pI830)) - range = 0; + if (IS_G4X(pI830) || IS_GM45(pI830)) + range = 4; if (IS_I85X(pI830) || IS_I865G(pI830) || IS_I9XX(pI830)) { switch (gmch_ctrl & I855_GMCH_GMS_MASK) { |