diff --git a/shared-core/radeon_cp.c b/shared-core/radeon_cp.c index 381cb4d..5abe8a8 100644 --- a/shared-core/radeon_cp.c +++ b/shared-core/radeon_cp.c @@ -521,6 +521,10 @@ int radeon_do_cp_idle(drm_radeon_private_t * dev_priv) RING_LOCALS; DRM_DEBUG("\n"); + /* don't emit wait_until if the chip is already idle */ + if (!radeon_do_wait_for_idle(dev_priv)) + return 0; + if ((dev_priv->flags & RADEON_FAMILY_MASK) >= CHIP_R600) { BEGIN_RING(8);