summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMaarten Maathuis <madman2003@gmail.com>2008-08-17 00:41:50 +0200
committerMaarten Maathuis <madman2003@gmail.com>2008-08-17 00:41:50 +0200
commita5381cac55e54a535acf752970886b659948563c (patch)
tree0c3d5b8980cc1b67d740e31f03458c0b2f7c8d96
parentba840fca19077d352277519c5fa032e3b107ae27 (diff)
nouveau: make it compile under 2.6.27
-rw-r--r--linux-core/nouveau_sgdma.c8
-rw-r--r--shared-core/nouveau_object.c5
2 files changed, 13 insertions, 0 deletions
diff --git a/linux-core/nouveau_sgdma.c b/linux-core/nouveau_sgdma.c
index cc4d5a92..739e0252 100644
--- a/linux-core/nouveau_sgdma.c
+++ b/linux-core/nouveau_sgdma.c
@@ -48,7 +48,11 @@ nouveau_sgdma_populate(struct drm_ttm_backend *be, unsigned long num_pages,
page, o,
NV_CTXDMA_PAGE_SIZE,
PCI_DMA_BIDIRECTIONAL);
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,27))
+ if (pci_dma_mapping_error(nvbe->dev->pdev, nvbe->pagelist[d])) {
+#else
if (pci_dma_mapping_error(nvbe->pagelist[d])) {
+#endif
be->func->clear(be);
DRM_ERROR("pci_map_page failed\n");
return -EINVAL;
@@ -223,7 +227,11 @@ nouveau_sgdma_init(struct drm_device *dev)
dev_priv->gart_info.sg_dummy_page =
alloc_page(GFP_KERNEL|__GFP_DMA32);
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,27))
+ set_page_locked(dev_priv->gart_info.sg_dummy_page);
+#else
SetPageLocked(dev_priv->gart_info.sg_dummy_page);
+#endif
dev_priv->gart_info.sg_dummy_bus =
pci_map_page(dev->pdev, dev_priv->gart_info.sg_dummy_page, 0,
PAGE_SIZE, PCI_DMA_BIDIRECTIONAL);
diff --git a/shared-core/nouveau_object.c b/shared-core/nouveau_object.c
index 894e7336..07b5a397 100644
--- a/shared-core/nouveau_object.c
+++ b/shared-core/nouveau_object.c
@@ -739,7 +739,12 @@ nouveau_gpuobj_dma_new(struct nouveau_channel *chan, int class,
PAGE_SIZE,
DMA_BIDIRECTIONAL);
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,27))
+ /* Not a 100% sure this is the right kdev in all cases. */
+ if (dma_mapping_error(&dev->primary->kdev, dev->sg->busaddr[idx])) {
+#else
if (dma_mapping_error(dev->sg->busaddr[idx])) {
+#endif
return -ENOMEM;
}
}