drm/radeon/kms: bail on BTC parts if MC ucode is missing

commit 77e00f2ea9 upstream.

We already do this for cayman, need to also do it for
BTC parts.  The default memory and voltage setup is not
adequate for advanced operation.  Continuing will
result in an unusable display.

Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Cc: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Dave Airlie <airlied@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
Alex Deucher
2011-12-21 11:58:17 -05:00
committed by Greg Kroah-Hartman
parent 33c118d42d
commit 6f4214ef6a

View File

@@ -3257,6 +3257,18 @@ int evergreen_init(struct radeon_device *rdev)
rdev->accel_working = false;
}
}
/* Don't start up if the MC ucode is missing on BTC parts.
* 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 && !(rdev->flags & RADEON_IS_IGP)) {
DRM_ERROR("radeon: MC ucode required for NI+.\n");
return -EINVAL;
}
}
return 0;
}