Ver código fonte

drm/radeon/kms: Disable AGP is aperture size < 32M

radeon KMS need a GART of at least 32M to properly work. This patch
check the AGP aperture size and disable if it's less than 32M. Note
than unlike non KMS path we don't staticaly allocate AGP memory so
we are not wasting memory not used by graphic processing.

Signed-off-by: Jerome Glisse <jglisse@redhat.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
Jerome Glisse 15 anos atrás
pai
commit
0a3f316370
1 arquivos alterados com 7 adições e 0 exclusões
  1. 7 0
      drivers/gpu/drm/radeon/radeon_agp.c

+ 7 - 0
drivers/gpu/drm/radeon/radeon_agp.c

@@ -133,6 +133,13 @@ int radeon_agp_init(struct radeon_device *rdev)
 	bool is_v3;
 	bool is_v3;
 	int ret;
 	int ret;
 
 
+	if (rdev->ddev->agp->agp_info.aper_size < 32) {
+		dev_warn(rdev->dev, "AGP aperture to small (%dM) "
+			"need at least 32M, disabling AGP\n",
+			rdev->ddev->agp->agp_info.aper_size);
+		return -EINVAL;
+	}
+
 	/* Acquire AGP. */
 	/* Acquire AGP. */
 	if (!rdev->ddev->agp->acquired) {
 	if (!rdev->ddev->agp->acquired) {
 		ret = drm_agp_acquire(rdev->ddev);
 		ret = drm_agp_acquire(rdev->ddev);