Patchwork [3.5.y.z,extended,stable] Patch "drm/nouveau: fix init with agpgart-uninorth" has been added to staging queue

mail settings
Submitter Herton Ronaldo Krzesinski
Date Jan. 15, 2013, 10:21 p.m.
Message ID <>
Download mbox | patch
Permalink /patch/212333/
State New
Headers show


Herton Ronaldo Krzesinski - Jan. 15, 2013, 10:21 p.m.
This is a note to let you know that I have just added a patch titled

    drm/nouveau: fix init with agpgart-uninorth

to the linux-3.5.y-queue branch of the 3.5.y.z extended stable tree 
which can be found at:;a=shortlog;h=refs/heads/linux-3.5.y-queue

If you, or anyone else, feels it should not be added to this tree, please 
reply to this email.

For more information about the 3.5.y.z tree, see



From 66ab0380462047a0ca9c6d7b205188c660eaa20f Mon Sep 17 00:00:00 2001
From: Aaro Koskinen <>
Date: Mon, 31 Dec 2012 03:34:59 +0200
Subject: [PATCH] drm/nouveau: fix init with agpgart-uninorth
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

commit eda85d6ad490923152544fba0473798b6cc0edf6 upstream.

Check that the AGP aperture can be mapped. This follows a similar change
done for Radeon (commit 365048ff, drm/radeon: AGP memory is only I/O if
the aperture can be mapped by the CPU.).

The patch fixes the following error seen on G5 iMac:

	nouveau E[     DRM] failed to create kernel channel, -12

Reviewed-by: Michel Dänzer <>
Signed-off-by: Aaro Koskinen <>
Signed-off-by: Dave Airlie <>
[ herton: adjust context ]
Signed-off-by: Herton Ronaldo Krzesinski <>
 drivers/gpu/drm/nouveau/nouveau_bo.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)



diff --git a/drivers/gpu/drm/nouveau/nouveau_bo.c b/drivers/gpu/drm/nouveau/nouveau_bo.c
index 7f80ed5..994afd0 100644
--- a/drivers/gpu/drm/nouveau/nouveau_bo.c
+++ b/drivers/gpu/drm/nouveau/nouveau_bo.c
@@ -1179,7 +1179,7 @@  nouveau_ttm_io_mem_reserve(struct ttm_bo_device *bdev, struct ttm_mem_reg *mem)
 		if (dev_priv->gart_info.type == NOUVEAU_GART_AGP) {
 			mem->bus.offset = mem->start << PAGE_SHIFT;
 			mem->bus.base = dev_priv->gart_info.aper_base;
-			mem->bus.is_iomem = true;
+			mem->bus.is_iomem = !dev->agp->cant_use_aperture;