Re: [PATCH] staging: rtl8192e: Fix W_DISABLE# does not work after stop/start

From: Philipp Hortmann
Date: Sun Apr 16 2023 - 01:55:41 EST


On 4/15/23 18:02, Greg Kroah-Hartman wrote:
On Fri, Apr 14, 2023 at 08:34:52PM +0200, Philipp Hortmann wrote:
When loading the driver for rtl8192e, the W_DISABLE# switch is working as
intended. But when the WLAN is turned off in software and then turned on
again the W_DISABLE# does not work anymore. Reason for this is that in
the function _rtl92e_dm_check_rf_ctrl_gpio() the bfirst_after_down is
checked and returned when true. bfirst_after_down is set true when
switching the WLAN off in software. But it is not set to false again
when WLAN is turned on again.

Add bfirst_after_down = false in _rtl92e_sta_up to reset bit and fix
above described bug.

Signed-off-by: Philipp Hortmann <philipp.g.hortmann@xxxxxxxxx>
---
Tested with rtl8192e (WLL6130-D99)
Transferred this patch over wlan connection of rtl8192e
---
drivers/staging/rtl8192e/rtl8192e/rtl_core.c | 1 +
1 file changed, 1 insertion(+)


What commit id does this fix?
To me the driver was introduced in V3.2 and the issue did not change up to now. Have a look at:
https://elixir.bootlin.com/linux/v3.2-rc1/A/ident/bfirst_after_down
https://elixir.bootlin.com/linux/v6.2.11/A/ident/bfirst_after_down

> Should it go to the stable kernels? If
so, how far back?
The second issue that is related to the W_DISABLE# signal is that the connection is not reestablished when the signal is released. I need more time to fix this issue. When I have fixed both we could backport them.

thanks,

greg k-h

thanks,

Philipp