summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris Wilson <chris@chris-wilson.co.uk>2011-06-30 17:53:49 +0100
committerChris Wilson <chris@chris-wilson.co.uk>2011-06-30 17:53:49 +0100
commitc89b37d7b43c9e588097b7fadcba3bc13a03f8bc (patch)
tree9d339fc5e0a58547236db169eac6a12b052125f9
parentc0434ab49035bf278dad6f5f84a541ea58536fb4 (diff)
sna: Mappable aperture is region 0 on gen2
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
-rw-r--r--src/sna/kgem.c13
1 files changed, 8 insertions, 5 deletions
diff --git a/src/sna/kgem.c b/src/sna/kgem.c
index 27ed78cd..88b1d837 100644
--- a/src/sna/kgem.c
+++ b/src/sna/kgem.c
@@ -293,9 +293,9 @@ static struct list *inactive(struct kgem *kgem,
}
static size_t
-agp_aperture_size(struct pci_device *dev)
+agp_aperture_size(struct pci_device *dev, int gen)
{
- return dev->regions[2].size;
+ return dev->regions[gen < 30 ? 0 :2].size;
}
void kgem_init(struct kgem *kgem, int fd, struct pci_device *dev, int gen)
@@ -358,12 +358,15 @@ void kgem_init(struct kgem *kgem, int fd, struct pci_device *dev, int gen)
kgem->aperture_high = aperture.aper_size * 3/4;
kgem->aperture_low = aperture.aper_size * 1/4;
- DBG(("%s: aperture low=%d, high=%d\n", __FUNCTION__,
- kgem->aperture_low, kgem->aperture_high));
+ DBG(("%s: aperture low=%d [%d], high=%d [%d]\n", __FUNCTION__,
+ kgem->aperture_low, kgem->aperture_low / (1024*1024),
+ kgem->aperture_high, kgem->aperture_high / (1024*1024)));
- kgem->aperture_mappable = agp_aperture_size(dev);
+ kgem->aperture_mappable = agp_aperture_size(dev, gen);
if (kgem->aperture_mappable == 0)
kgem->aperture_mappable = aperture.aper_size;
+ DBG(("%s: aperture mappable=%d [%d]\n", __FUNCTION__,
+ kgem->aperture_mappable, kgem->aperture_mappable / (1024*1024)));
i = 8;
gp.param = I915_PARAM_NUM_FENCES_AVAIL;