summaryrefslogtreecommitdiffstats
path: root/drivers/gpu
diff options
context:
space:
mode:
authorAlex Deucher <alexdeucher@gmail.com>2010-03-21 14:02:25 -0400
committerGreg Kroah-Hartman <gregkh@suse.de>2010-04-26 07:47:46 -0700
commitf72fea6955869fa30548ee1617f51b6f4b053c88 (patch)
treef517fd44cd6501eb82c076cf26107f60bd6d6a06 /drivers/gpu
parent1628711eab4c0e5b82416b609e38e67a92006c13 (diff)
downloadkernel-crypto-f72fea6955869fa30548ee1617f51b6f4b053c88.tar.gz
kernel-crypto-f72fea6955869fa30548ee1617f51b6f4b053c88.tar.xz
kernel-crypto-f72fea6955869fa30548ee1617f51b6f4b053c88.zip
drm/radeon/kms: never treat rs4xx as AGP
commit f95df9ca6896978108201a77422a1ae2cdc595ec upstream. 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> Signed-off-by: Dave Airlie <airlied@redhat.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/gpu')
-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 768b1509fa0..509ba3f17a8 100644
--- a/drivers/gpu/drm/radeon/radeon_device.c
+++ b/drivers/gpu/drm/radeon/radeon_device.c
@@ -655,6 +655,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);
}