drm/radeon: AGP memory is only I/O if the aperture can be mapped by the CPU.
authorMichel Dänzer <daenzer@vmware.com>
Wed, 19 May 2010 10:46:22 +0000 (12:46 +0200)
committerDave Airlie <airlied@redhat.com>
Fri, 21 May 2010 05:06:45 +0000 (15:06 +1000)
Fixes AGP initialization failure with Apple UniNorth bridges due to trying to
ioremap() normal RAM.

Signed-off-by: Michel Dänzer <daenzer@vmware.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
drivers/gpu/drm/radeon/radeon_ttm.c

index 3aa3a65..e9918d8 100644 (file)
@@ -451,7 +451,7 @@ static int radeon_ttm_io_mem_reserve(struct ttm_bo_device *bdev, struct ttm_mem_
                        /* RADEON_IS_AGP is set only if AGP is active */
                        mem->bus.offset = mem->mm_node->start << PAGE_SHIFT;
                        mem->bus.base = rdev->mc.agp_base;
-                       mem->bus.is_iomem = true;
+                       mem->bus.is_iomem = !rdev->ddev->agp->cant_use_aperture;
                }
 #endif
                break;