diff options
author | Zhenyu Wang <zhenyuw@linux.intel.com> | 2010-11-02 05:30:46 -0400 |
---|---|---|
committer | Chris Wilson <chris@chris-wilson.co.uk> | 2010-11-02 06:05:46 -0400 |
commit | d110852513148a7ec44fad4e036455aeb816d713 (patch) | |
tree | 5c72fa12fa653804a4d13658a641a713d6849acd /drivers/char/agp/intel-gtt.c | |
parent | 328fc1325f144027f4a8269b11e9f8dcf1edcb97 (diff) |
agp/intel: fix cache control for sandybridge
This is broken from 97ef1bdd0bc75bce7b2058e9c432b6c277dcf4d3.
Let's set the correct bit for LLC+MLC and LLC only.
Signed-off-by: Zhenyu Wang <zhenyuw@linux.intel.com>
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Diffstat (limited to 'drivers/char/agp/intel-gtt.c')
-rw-r--r-- | drivers/char/agp/intel-gtt.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/char/agp/intel-gtt.c b/drivers/char/agp/intel-gtt.c index f800e9cfc368..c51efe6f2c7f 100644 --- a/drivers/char/agp/intel-gtt.c +++ b/drivers/char/agp/intel-gtt.c | |||
@@ -1291,11 +1291,11 @@ static void gen6_write_entry(dma_addr_t addr, unsigned int entry, | |||
1291 | if (type_mask == AGP_USER_UNCACHED_MEMORY) | 1291 | if (type_mask == AGP_USER_UNCACHED_MEMORY) |
1292 | pte_flags = GEN6_PTE_UNCACHED | I810_PTE_VALID; | 1292 | pte_flags = GEN6_PTE_UNCACHED | I810_PTE_VALID; |
1293 | else if (type_mask == AGP_USER_CACHED_MEMORY_LLC_MLC) { | 1293 | else if (type_mask == AGP_USER_CACHED_MEMORY_LLC_MLC) { |
1294 | pte_flags = GEN6_PTE_LLC | I810_PTE_VALID; | 1294 | pte_flags = GEN6_PTE_LLC_MLC | I810_PTE_VALID; |
1295 | if (gfdt) | 1295 | if (gfdt) |
1296 | pte_flags |= GEN6_PTE_GFDT; | 1296 | pte_flags |= GEN6_PTE_GFDT; |
1297 | } else { /* set 'normal'/'cached' to LLC by default */ | 1297 | } else { /* set 'normal'/'cached' to LLC by default */ |
1298 | pte_flags = GEN6_PTE_LLC_MLC | I810_PTE_VALID; | 1298 | pte_flags = GEN6_PTE_LLC | I810_PTE_VALID; |
1299 | if (gfdt) | 1299 | if (gfdt) |
1300 | pte_flags |= GEN6_PTE_GFDT; | 1300 | pte_flags |= GEN6_PTE_GFDT; |
1301 | } | 1301 | } |