From efe20b73c5caefa68509ad076d4f6459c4a17420 Mon Sep 17 00:00:00 2001 From: Martin Kaiser Date: Sat, 9 Apr 2022 18:32:10 +0200 Subject: [PATCH] staging: r8188eu: improve timeout handling in iol_execute Use the standard kernel functions to define and check the timeout in iol_execute. Signed-off-by: Martin Kaiser Link: https://lore.kernel.org/r/20220409163212.241122-9-martin@kaiser.cx Signed-off-by: Greg Kroah-Hartman --- drivers/staging/r8188eu/hal/rtl8188e_hal_init.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/drivers/staging/r8188eu/hal/rtl8188e_hal_init.c b/drivers/staging/r8188eu/hal/rtl8188e_hal_init.c index 6091388..efdadfb 100644 --- a/drivers/staging/r8188eu/hal/rtl8188e_hal_init.c +++ b/drivers/staging/r8188eu/hal/rtl8188e_hal_init.c @@ -33,17 +33,16 @@ static s32 iol_execute(struct adapter *padapter, u8 control) { s32 status = _FAIL; u8 reg_0x88 = 0; - u32 start = 0, passing_time = 0; + unsigned long timeout; control = control & 0x0f; reg_0x88 = rtw_read8(padapter, REG_HMEBOX_E0); rtw_write8(padapter, REG_HMEBOX_E0, reg_0x88 | control); - start = jiffies; + timeout = jiffies + msecs_to_jiffies(1000); while ((reg_0x88 = rtw_read8(padapter, REG_HMEBOX_E0)) & control && - (passing_time = rtw_get_passing_time_ms(start)) < 1000) { + time_before(jiffies, timeout)) ; - } reg_0x88 = rtw_read8(padapter, REG_HMEBOX_E0); status = (reg_0x88 & control) ? _FAIL : _SUCCESS; -- 2.7.4