[PATCH] drm/radeon/kms/NI: don't load if MC ucode is not available

Alex Deucher alexdeucher at gmail.com
Wed Feb 2 09:53:19 PST 2011


The default clocks and voltages are not sufficient for
advanced operation.  On prior asics, the MC ucode
was loaded by the vbios during asic_init so they did not
have this limitation.

Fixes:
https://bugzilla.kernel.org/show_bug.cgi?id=26812

Signed-off-by: Alex Deucher <alexdeucher at gmail.com>
---
 drivers/gpu/drm/radeon/evergreen.c |   12 ++++++++++++
 1 files changed, 12 insertions(+), 0 deletions(-)

diff --git a/drivers/gpu/drm/radeon/evergreen.c b/drivers/gpu/drm/radeon/evergreen.c
index d404522..993a7cd 100644
--- a/drivers/gpu/drm/radeon/evergreen.c
+++ b/drivers/gpu/drm/radeon/evergreen.c
@@ -3132,6 +3132,18 @@ int evergreen_init(struct radeon_device *rdev)
 			rdev->accel_working = false;
 		}
 	}
+
+	/* Don't start up if the MC ucode is missing.
+	 * The default clocks and voltages before the MC ucode
+	 * is loaded are not suffient for advanced operations.
+	 */
+	if (ASIC_IS_DCE5(rdev)) {
+		if (!rdev->mc_fw) {
+			DRM_ERROR("radeon: MC ucode required for NI+.\n");
+			return -EINVAL;
+		}
+	}
+
 	return 0;
 }
 
-- 
1.7.1.1



More information about the dri-devel mailing list