summaryrefslogtreecommitdiff
path: root/Platform/Marvell/Drivers/I2c/MvI2cDxe/MvI2cDxe.c
diff options
context:
space:
mode:
Diffstat (limited to 'Platform/Marvell/Drivers/I2c/MvI2cDxe/MvI2cDxe.c')
-rwxr-xr-xPlatform/Marvell/Drivers/I2c/MvI2cDxe/MvI2cDxe.c6
1 files changed, 1 insertions, 5 deletions
diff --git a/Platform/Marvell/Drivers/I2c/MvI2cDxe/MvI2cDxe.c b/Platform/Marvell/Drivers/I2c/MvI2cDxe/MvI2cDxe.c
index a62383f3a7..d6f590d5bf 100755
--- a/Platform/Marvell/Drivers/I2c/MvI2cDxe/MvI2cDxe.c
+++ b/Platform/Marvell/Drivers/I2c/MvI2cDxe/MvI2cDxe.c
@@ -243,9 +243,8 @@ MvI2cClearIflg (
IN I2C_MASTER_CONTEXT *I2cMasterContext
)
{
- gBS->Stall(I2C_OPERATION_TIMEOUT);
+ MvI2cPollCtrl (I2cMasterContext, I2C_OPERATION_TIMEOUT, I2C_CONTROL_IFLG);
MvI2cControlClear(I2cMasterContext, I2C_CONTROL_IFLG);
- gBS->Stall(I2C_OPERATION_TIMEOUT);
}
/* Timeout is given in us */
@@ -295,9 +294,6 @@ MvI2cLockedStart (
MvI2cClearIflg(I2cMasterContext);
}
- /* Without this delay we Timeout checking IFLG if the Timeout is 0 */
- gBS->Stall(I2C_OPERATION_TIMEOUT);
-
if (MvI2cPollCtrl(I2cMasterContext, Timeout, I2C_CONTROL_IFLG)) {
DEBUG((DEBUG_ERROR, "MvI2cDxe: Timeout sending %sSTART condition\n",
Mask == I2C_STATUS_START ? "" : "repeated "));