diff --git a/src/radeon_exa_funcs.c b/src/radeon_exa_funcs.c index bc22147..12b8595 100644 --- a/src/radeon_exa_funcs.c +++ b/src/radeon_exa_funcs.c @@ -51,6 +51,7 @@ #error No accel type defined! #endif #endif +#include #include #include "radeon.h" @@ -379,7 +382,7 @@ #if X_BYTE_ORDER == X_BIG_ENDIAN #endif while (h) { - int oldhpass = hpass; + int oldhpass = hpass, i = 0; src = (CARD8*)scratch->address + scratch_off; @@ -395,7 +398,7 @@ #endif } /* Wait for previous blit to complete */ - RADEONWaitForIdleMMIO(pScrn); + while ((drmCommandNone(info->drmFD, DRM_RADEON_CP_IDLE) == -EBUSY) && (i++ < RADEON_TIMEOUT)); /* Kick next blit */ if (hpass)