staging: r8188eu: clean up the code to set ips_deny_time
authorMartin Kaiser <martin@kaiser.cx>
Wed, 13 Apr 2022 19:36:52 +0000 (21:36 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 14 Apr 2022 07:06:59 +0000 (09:06 +0200)
Clean up the code in rtw_pwr_wakeup that sets pwrpriv->ips_deny_time.

Make ips_deny_time an unsigned long, this type is used by the kernel
functions that process jiffies.

Remove the temporary variable ips_deffer_ms and use
RTW_PWR_STATE_CHK_INTERVAL directly.

There's no need to set ips_deny_time twice, it's sufficient to set it at
the end of rtw_pwr_wakeup.

Use time_before to check if ips_deny_time should be updated.

We can now remove rtw_ms_to_systime, this function is not used any more.

Signed-off-by: Martin Kaiser <martin@kaiser.cx>
Link: https://lore.kernel.org/r/20220413193654.258507-7-martin@kaiser.cx
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/r8188eu/core/rtw_pwrctrl.c
drivers/staging/r8188eu/include/osdep_service.h
drivers/staging/r8188eu/include/rtw_pwrctrl.h
drivers/staging/r8188eu/os_dep/osdep_service.c

index 2ad6105e6ec4c5f7c4dd824d8f14d2453f024883..605210d89f323a648275ca957c473e531e35c1a5 100644 (file)
@@ -373,14 +373,8 @@ int rtw_pwr_wakeup(struct adapter *padapter)
        struct pwrctrl_priv *pwrpriv = &padapter->pwrctrlpriv;
        struct mlme_priv *pmlmepriv = &padapter->mlmepriv;
        unsigned long timeout = jiffies + msecs_to_jiffies(3000);
+       unsigned long deny_time;
        int ret = _SUCCESS;
-       u32 ips_deffer_ms;
-
-       /* the ms will prevent from falling into IPS after wakeup */
-       ips_deffer_ms = RTW_PWR_STATE_CHK_INTERVAL;
-
-       if (pwrpriv->ips_deny_time < jiffies + rtw_ms_to_systime(ips_deffer_ms))
-               pwrpriv->ips_deny_time = jiffies + rtw_ms_to_systime(ips_deffer_ms);
 
        while (pwrpriv->ps_processing && time_before(jiffies, timeout))
                msleep(10);
@@ -406,8 +400,9 @@ int rtw_pwr_wakeup(struct adapter *padapter)
        }
 
 exit:
-       if (pwrpriv->ips_deny_time < jiffies + rtw_ms_to_systime(ips_deffer_ms))
-               pwrpriv->ips_deny_time = jiffies + rtw_ms_to_systime(ips_deffer_ms);
+       deny_time = jiffies + msecs_to_jiffies(RTW_PWR_STATE_CHK_INTERVAL);
+       if (time_before(pwrpriv->ips_deny_time, deny_time))
+               pwrpriv->ips_deny_time = deny_time;
        return ret;
 }
 
index f1f3e3ba53773411ec9f63103ebef842fd2c8b75..1e55a8008acc30337c49af4b32ce9a12fced4b06 100644 (file)
@@ -78,7 +78,6 @@ void *rtw_malloc2d(int h, int w, int size);
        } while (0)
 
 u32  rtw_systime_to_ms(u32 systime);
-u32  rtw_ms_to_systime(u32 ms);
 s32  rtw_get_passing_time_ms(u32 start);
 
 void rtw_usleep_os(int us);
index 3084d00628bd70d08ae7f6baf1c73f385a7f2a76..6e9fdd66fad1124a11714116798d42ba54e341cd 100644 (file)
@@ -56,7 +56,7 @@ struct pwrctrl_priv {
        u8      ips_mode_req;   /*  used to accept the mode setting request,
                                 *  will update to ipsmode later */
        uint bips_processing;
-       u32 ips_deny_time; /* will deny IPS when system time less than this */
+       unsigned long ips_deny_time; /* will deny IPS when system time less than this */
        u8 ps_processing; /* temp used to mark whether in rtw_ps_processor */
 
        u8      bLeisurePs;
index 6824a6ab2e369f6eb58eb1485725bf817598052e..7b177d50eee2f2f8753aa8cf657c7e9aebd7593f 100644 (file)
@@ -47,11 +47,6 @@ inline u32 rtw_systime_to_ms(u32 systime)
        return systime * 1000 / HZ;
 }
 
-inline u32 rtw_ms_to_systime(u32 ms)
-{
-       return ms * HZ / 1000;
-}
-
 /*  the input parameter start use the same unit as jiffies */
 inline s32 rtw_get_passing_time_ms(u32 start)
 {