drm/nouveau: port all engines to new engine module format
[linux-2.6-block.git] / drivers / gpu / drm / nouveau / nouveau_mem.c
index 73176bcd1b6442162420dbcfdd537f0c73f10f5e..9c35d14fe9d6eca159d631beab7864ddde7b7c85 100644 (file)
 
 #include "nouveau_drv.h"
 #include "nouveau_pm.h"
-#include <core/mm.h>
-#include <engine/fifo.h>
-#include "nouveau_fence.h"
-
-/*
- * Cleanup everything
- */
-void
-nouveau_mem_vram_fini(struct drm_device *dev)
-{
-       struct drm_nouveau_private *dev_priv = dev->dev_private;
-
-       ttm_bo_device_release(&dev_priv->ttm.bdev);
-
-       nouveau_ttm_global_release(dev_priv);
-
-       if (dev_priv->fb_mtrr >= 0) {
-               drm_mtrr_del(dev_priv->fb_mtrr,
-                            pci_resource_start(dev->pdev, 1),
-                            pci_resource_len(dev->pdev, 1), DRM_MTRR_WC);
-               dev_priv->fb_mtrr = -1;
-       }
-}
-
-void
-nouveau_mem_gart_fini(struct drm_device *dev)
-{
-       nouveau_sgdma_takedown(dev);
-}
-
-int
-nouveau_mem_vram_init(struct drm_device *dev)
-{
-       struct drm_nouveau_private *dev_priv = dev->dev_private;
-       struct ttm_bo_device *bdev = &dev_priv->ttm.bdev;
-       int ret, dma_bits;
-
-       dma_bits = 32;
-       if (dev_priv->card_type >= NV_50) {
-               if (pci_dma_supported(dev->pdev, DMA_BIT_MASK(40)))
-                       dma_bits = 40;
-       } else
-       if (0 && pci_is_pcie(dev->pdev) &&
-           dev_priv->chipset  > 0x40 &&
-           dev_priv->chipset != 0x45) {
-               if (pci_dma_supported(dev->pdev, DMA_BIT_MASK(39)))
-                       dma_bits = 39;
-       }
-
-       ret = pci_set_dma_mask(dev->pdev, DMA_BIT_MASK(dma_bits));
-       if (ret)
-               return ret;
-       ret = pci_set_consistent_dma_mask(dev->pdev, DMA_BIT_MASK(dma_bits));
-       if (ret) {
-               /* Reset to default value. */
-               pci_set_consistent_dma_mask(dev->pdev, DMA_BIT_MASK(32));
-       }
-
-
-       ret = nouveau_ttm_global_init(dev_priv);
-       if (ret)
-               return ret;
-
-       ret = ttm_bo_device_init(&dev_priv->ttm.bdev,
-                                dev_priv->ttm.bo_global_ref.ref.object,
-                                &nouveau_bo_driver, DRM_FILE_PAGE_OFFSET,
-                                dma_bits <= 32 ? true : false);
-       if (ret) {
-               NV_ERROR(dev, "Error initialising bo driver: %d\n", ret);
-               return ret;
-       }
-
-       dev_priv->fb_available_size = nvfb_vram_size(dev);
-       dev_priv->fb_mappable_pages = dev_priv->fb_available_size;
-       if (dev_priv->fb_mappable_pages > pci_resource_len(dev->pdev, 1))
-               dev_priv->fb_mappable_pages = pci_resource_len(dev->pdev, 1);
-       dev_priv->fb_mappable_pages >>= PAGE_SHIFT;
-
-       dev_priv->fb_available_size -= nvimem_reserved(dev);
-       dev_priv->fb_aper_free = dev_priv->fb_available_size;
-
-       /* mappable vram */
-       ret = ttm_bo_init_mm(bdev, TTM_PL_VRAM,
-                            dev_priv->fb_available_size >> PAGE_SHIFT);
-       if (ret) {
-               NV_ERROR(dev, "Failed VRAM mm init: %d\n", ret);
-               return ret;
-       }
-
-       if (dev_priv->card_type < NV_50) {
-               ret = nouveau_bo_new(dev, 256*1024, 0, TTM_PL_FLAG_VRAM,
-                                    0, 0, NULL, &dev_priv->vga_ram);
-               if (ret == 0)
-                       ret = nouveau_bo_pin(dev_priv->vga_ram,
-                                            TTM_PL_FLAG_VRAM);
-
-               if (ret) {
-                       NV_WARN(dev, "failed to reserve VGA memory\n");
-                       nouveau_bo_ref(NULL, &dev_priv->vga_ram);
-               }
-       }
-
-       dev_priv->fb_mtrr = drm_mtrr_add(pci_resource_start(dev->pdev, 1),
-                                        pci_resource_len(dev->pdev, 1),
-                                        DRM_MTRR_WC);
-       return 0;
-}
-
-int
-nouveau_mem_gart_init(struct drm_device *dev)
-{
-       struct drm_nouveau_private *dev_priv = dev->dev_private;
-       struct ttm_bo_device *bdev = &dev_priv->ttm.bdev;
-       int ret;
-
-       if (!nvdrm_gart_init(dev, &dev_priv->gart_info.aper_base,
-                                 &dev_priv->gart_info.aper_size))
-               dev_priv->gart_info.type = NOUVEAU_GART_AGP;
-
-       if (dev_priv->gart_info.type == NOUVEAU_GART_NONE) {
-               ret = nouveau_sgdma_init(dev);
-               if (ret) {
-                       NV_ERROR(dev, "Error initialising PCI(E): %d\n", ret);
-                       return ret;
-               }
-       }
-
-       NV_INFO(dev, "%d MiB GART (aperture)\n",
-               (int)(dev_priv->gart_info.aper_size >> 20));
-       dev_priv->gart_info.aper_free = dev_priv->gart_info.aper_size;
-
-       ret = ttm_bo_init_mm(bdev, TTM_PL_TT,
-                            dev_priv->gart_info.aper_size >> PAGE_SHIFT);
-       if (ret) {
-               NV_ERROR(dev, "Failed TT mm init: %d\n", ret);
-               return ret;
-       }
-
-       return 0;
-}
 
 static int
 nv40_mem_timing_calc(struct drm_device *dev, u32 freq,