Re: [PATCH v4 4/5] staging: rtl8723bs: use read_poll_timeout_atomic in _is_fw_read_cmd_down

"Luka Gejak" <[email protected]>
Newsgroups dev.linux.lists.linux-kernel-mentees,dev.linux.lists.linux-staging,org.kernel.vger.linux-kernel
Message-ID <[email protected]>
On Thu Apr 9, 2026 at 3:50 PM CEST, Prithvi Tambewagh wrote:
> Replace the existing rtw_read8() and do-while loop mechanism with
> read_poll_timeout_atomic() from <linux/iopoll.h>, in _is_fw_read_cmd_down()
> which is a standard Linux macro, ensuring polling REG_HMETFR efficiently.
>
> Signed-off-by: Prithvi Tambewagh <[email protected]>
> ---
>  drivers/staging/rtl8723bs/hal/rtl8723b_cmd.c | 18 +++++++-----------
>  1 file changed, 7 insertions(+), 11 deletions(-)
>
> diff --git a/drivers/staging/rtl8723bs/hal/rtl8723b_cmd.c b/drivers/staging/rtl8723bs/hal/rtl8723b_cmd.c
> index 12416e499ac3..4bdc8e314015 100644
> --- a/drivers/staging/rtl8723bs/hal/rtl8723b_cmd.c
> +++ b/drivers/staging/rtl8723bs/hal/rtl8723b_cmd.c
> @@ -8,6 +8,7 @@
>  #include <drv_types.h>
>  #include <rtl8723b_hal.h>
>  #include <linux/etherdevice.h>
> +#include <linux/iopoll.h>
>  #include "hal_com_h2c.h"
>  
>  #define MAX_H2C_BOX_NUMS	4
> @@ -18,20 +19,15 @@
>  
>  static u8 _is_fw_read_cmd_down(struct adapter *padapter, u8 msgbox_num)
>  {
> -	u8 read_down = false;
> -	int retry_cnts = 100;
> -
>  	u8 valid;
> +	int ret;
>  
> -	do {
> -		valid = rtw_read8(padapter, REG_HMETFR) & BIT(msgbox_num);
> -		if (0 == valid) {
> -			read_down = true;
> -		}
> -	} while ((!read_down) && (retry_cnts--));
> -
> -	return read_down;
> +	ret = read_poll_timeout_atomic(rtw_read8,
> +				       valid, !(valid & BIT(msgbox_num)),
> +				       0, 500, false,
> +				       padapter, REG_HMETFR);
>  
> +	return !ret;
>  }
>  
>  

LGTM.
Reviewed-by: Luka Gejak <[email protected]>

Best regards,
Luka Gejak
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.