summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlex Deucher2010-03-21 19:02:25 +0100
committerDave Airlie2010-03-31 05:11:04 +0200
commitf95df9ca6896978108201a77422a1ae2cdc595ec (patch)
tree7968e3fa83ee28b1f7232798c051d19defd3009c
parentdrm/radeon/kms: display watermark fixes (diff)
downloadkernel-qcow2-linux-f95df9ca6896978108201a77422a1ae2cdc595ec.tar.gz
kernel-qcow2-linux-f95df9ca6896978108201a77422a1ae2cdc595ec.tar.xz
kernel-qcow2-linux-f95df9ca6896978108201a77422a1ae2cdc595ec.zip
drm/radeon/kms: never treat rs4xx as AGP
RS4xx+ IGP chips use an internal gart, however, some of them have the agp cap bits set in their pci configs. Make sure to clear the AGP flag as AGP will not work with them. Should fix fdo bug 27225 Signed-off-by: Alex Deucher <alexdeucher@gmail.com> cc: stable@kernel.org Signed-off-by: Dave Airlie <airlied@redhat.com>
-rw-r--r--drivers/gpu/drm/radeon/radeon_device.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/drivers/gpu/drm/radeon/radeon_device.c b/drivers/gpu/drm/radeon/radeon_device.c
index 6bedc2117f7f..60ec47b71642 100644
--- a/drivers/gpu/drm/radeon/radeon_device.c
+++ b/drivers/gpu/drm/radeon/radeon_device.c
@@ -562,6 +562,14 @@ int radeon_device_init(struct radeon_device *rdev,
return r;
radeon_check_arguments(rdev);
+ /* all of the newer IGP chips have an internal gart
+ * However some rs4xx report as AGP, so remove that here.
+ */
+ if ((rdev->family >= CHIP_RS400) &&
+ (rdev->flags & RADEON_IS_IGP)) {
+ rdev->flags &= ~RADEON_IS_AGP;
+ }
+
if (rdev->flags & RADEON_IS_AGP && radeon_agpmode == -1) {
radeon_agp_disable(rdev);
}