mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-01-19 12:13:50 +08:00
Remove usleeps from sis driver. We probably aren't doing anyone a service
sleeping with the lock held. Also, rename cEngineState to engineState since it isn't a char any more.
This commit is contained in:
parent
73c3c397e4
commit
e8bec8832b
@ -84,27 +84,25 @@ static const char * const card_extensions[] =
|
||||
void
|
||||
WaitEngIdle (sisContextPtr smesa)
|
||||
{
|
||||
GLuint cEngineState;
|
||||
GLuint engineState;
|
||||
|
||||
do {
|
||||
cEngineState = MMIO_READ(REG_CommandQueue);
|
||||
} while ((cEngineState & SiS_EngIdle) != SiS_EngIdle);
|
||||
engineState = MMIO_READ(REG_CommandQueue);
|
||||
} while ((engineState & SiS_EngIdle) != SiS_EngIdle);
|
||||
}
|
||||
|
||||
void
|
||||
Wait2DEngIdle (sisContextPtr smesa)
|
||||
{
|
||||
GLuint cEngineState;
|
||||
GLuint engineState;
|
||||
|
||||
do {
|
||||
cEngineState = MMIO_READ(REG_CommandQueue);
|
||||
} while ((cEngineState & SiS_EngIdle2d) != SiS_EngIdle2d);
|
||||
engineState = MMIO_READ(REG_CommandQueue);
|
||||
} while ((engineState & SiS_EngIdle2d) != SiS_EngIdle2d);
|
||||
}
|
||||
|
||||
/* To be called from mWait3DCmdQueue. Separate function for profiling
|
||||
* purposes, and speed doesn't matter because we're spinning anyway.
|
||||
* This function should use usleeps to release cpu probably, but I have yet
|
||||
* to see it get called.
|
||||
*/
|
||||
void
|
||||
WaitingFor3dIdle(sisContextPtr smesa, int wLen)
|
||||
|
@ -162,7 +162,7 @@ static void sisCopyBuffer( __DRIdrawablePrivate *dPriv )
|
||||
ENGPACKET stEngPacket;
|
||||
|
||||
while ((*smesa->FrameCountPtr) - MMIO_READ(0x8a2c) > SIS_MAX_FRAME_LENGTH)
|
||||
usleep(1);
|
||||
;
|
||||
|
||||
LOCK_HARDWARE();
|
||||
|
||||
|
@ -870,7 +870,6 @@ sisMakeRoomAGP( sisContextPtr smesa, GLint num )
|
||||
sisUpdateAGP( smesa );
|
||||
while (size > AGP_SpaceLeft) {
|
||||
/* Spin until space is available. */
|
||||
usleep(1);
|
||||
AGP_ReadPtr = (GLfloat *)((long)MMIO_READ(REG_3D_AGPCmBase) -
|
||||
(long)smesa->AGPCmdBufAddr + (long)smesa->AGPCmdBufBase);
|
||||
sisUpdateAGP( smesa );
|
||||
|
Loading…
Reference in New Issue
Block a user