]> Pileus Git - ~andy/linux/blobdiff - drivers/gpu/drm/nouveau/nouveau_ttm.c
Merge branch 'drm-fixes' of git://people.freedesktop.org/~airlied/linux
[~andy/linux] / drivers / gpu / drm / nouveau / nouveau_ttm.c
index d2fc121ff861fc1a430f19abffbeb080add02292..9be9cb58e19b30e6f463aaa637df067eb46ef9ac 100644 (file)
@@ -340,14 +340,10 @@ nouveau_ttm_init(struct nouveau_drm *drm)
        u32 bits;
        int ret;
 
-       if (nv_device(drm->device)->card_type >= NV_50) {
-               if (pci_dma_supported(dev->pdev, DMA_BIT_MASK(40)))
-                       bits = 40;
-               else
-                       bits = 32;
-       } else {
+       bits = nouveau_vmmgr(drm->device)->dma_bits;
+       if ( drm->agp.stat == ENABLED ||
+           !pci_dma_supported(dev->pdev, DMA_BIT_MASK(bits)))
                bits = 32;
-       }
 
        ret = pci_set_dma_mask(dev->pdev, DMA_BIT_MASK(bits));
        if (ret)