summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris Wilson <chris@chris-wilson.co.uk>2012-03-19 14:38:28 +0000
committerChris Wilson <chris@chris-wilson.co.uk>2012-03-19 14:38:28 +0000
commit972e1108a5606399a679f97af0815ec9730ab5be (patch)
treed3e2123f18b187293c4a85cebd39720a84f08611
parentc0bab1df509d1f7fe36173715846c13b931e9be1 (diff)
sna: Declare videoRam correctly on gen2 devices
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
-rw-r--r--src/sna/sna_driver.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/src/sna/sna_driver.c b/src/sna/sna_driver.c
index 7cf3ef14..7b3cfcee 100644
--- a/src/sna/sna_driver.c
+++ b/src/sna/sna_driver.c
@@ -820,20 +820,25 @@ sna_register_all_privates(void)
return TRUE;
}
+static size_t
+agp_aperture_size(struct pci_device *dev, int gen)
+{
+ return dev->regions[gen < 30 ? 0 : 2].size;
+}
+
static Bool
sna_screen_init(int scrnIndex, ScreenPtr screen, int argc, char **argv)
{
ScrnInfoPtr scrn = xf86Screens[screen->myNum];
struct sna *sna = to_sna(scrn);
VisualPtr visual;
- struct pci_device *const device = sna->PciInfo;
DBG(("%s\n", __FUNCTION__));
if (!sna_register_all_privates())
return FALSE;
- scrn->videoRam = device->regions[2].size / 1024;
+ scrn->videoRam = agp_aperture_size(sna->PciInfo, sna->kgem.gen) / 1024;
miClearVisualTypes();
if (!miSetVisualTypes(scrn->depth,