From: Martin Kaiser Date: Sat, 9 Apr 2022 16:32:11 +0000 (+0200) Subject: staging: r8188eu: improve timeout handling in efuse_read_phymap_from_txpktbuf X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=5e080cd771e827e26c1e55af11144b2dfe8b9eb3;p=linux.git staging: r8188eu: improve timeout handling in efuse_read_phymap_from_txpktbuf Use the standard kernel functions to define and check the timeout in efuse_read_phymap_from_txpktbuf. Signed-off-by: Martin Kaiser Link: https://lore.kernel.org/r/20220409163212.241122-10-martin@kaiser.cx Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/staging/r8188eu/hal/rtl8188e_hal_init.c b/drivers/staging/r8188eu/hal/rtl8188e_hal_init.c index efdadfb619051..e17375a74f179 100644 --- a/drivers/staging/r8188eu/hal/rtl8188e_hal_init.c +++ b/drivers/staging/r8188eu/hal/rtl8188e_hal_init.c @@ -186,8 +186,8 @@ static void efuse_read_phymap_from_txpktbuf( u16 *size /* for efuse content: the max byte to read. will update to byte read */ ) { + unsigned long timeout; u16 dbg_addr = 0; - u32 start = 0, passing_time = 0; __le32 lo32 = 0, hi32 = 0; u16 len = 0, count = 0; int i = 0; @@ -206,9 +206,8 @@ static void efuse_read_phymap_from_txpktbuf( rtw_write16(adapter, REG_PKTBUF_DBG_ADDR, dbg_addr + i); rtw_write8(adapter, REG_TXPKTBUF_DBG, 0); - start = jiffies; - while (!rtw_read8(adapter, REG_TXPKTBUF_DBG) && - (passing_time = rtw_get_passing_time_ms(start)) < 1000) + timeout = jiffies + msecs_to_jiffies(1000); + while (!rtw_read8(adapter, REG_TXPKTBUF_DBG) && time_before(jiffies, timeout)) rtw_usleep_os(100); /* data from EEPROM needs to be in LE */