diff mbox series

wifi: rtl8xxxu: RTL8192EU always needs full init

Message ID 4eb111a9-d4c4-37d0-b376-4e202de7153c@gmail.com (mailing list archive)
State Accepted
Commit d46e04ccd40457a0119b76e11ab64a2ad403e138
Delegated to: Kalle Valo
Headers show
Series wifi: rtl8xxxu: RTL8192EU always needs full init | expand

Commit Message

Bitterblue Smith March 13, 2023, 1:42 p.m. UTC
Always run the entire init sequence (rtl8xxxu_init_device()) for
RTL8192EU. It's what the vendor driver does too.

This fixes a bug where the device is unable to connect after
rebooting:

wlp3s0f3u2: send auth to ... (try 1/3)
wlp3s0f3u2: send auth to ... (try 2/3)
wlp3s0f3u2: send auth to ... (try 3/3)
wlp3s0f3u2: authentication with ... timed out

Rebooting leaves the device powered on (partially? at least the
firmware is still running), but not really in a working state.

Cc: stable@vger.kernel.org
Signed-off-by: Bitterblue Smith <rtl8821cerfe2@gmail.com>
---
 drivers/net/wireless/realtek/rtl8xxxu/rtl8xxxu_8192e.c | 1 +
 1 file changed, 1 insertion(+)

Comments

Jes Sorensen March 13, 2023, 2:01 p.m. UTC | #1
On 3/13/23 09:42, Bitterblue Smith wrote:
> Always run the entire init sequence (rtl8xxxu_init_device()) for
> RTL8192EU. It's what the vendor driver does too.
> 
> This fixes a bug where the device is unable to connect after
> rebooting:
> 
> wlp3s0f3u2: send auth to ... (try 1/3)
> wlp3s0f3u2: send auth to ... (try 2/3)
> wlp3s0f3u2: send auth to ... (try 3/3)
> wlp3s0f3u2: authentication with ... timed out
> 
> Rebooting leaves the device powered on (partially? at least the
> firmware is still running), but not really in a working state.
> 
> Cc: stable@vger.kernel.org
> Signed-off-by: Bitterblue Smith <rtl8821cerfe2@gmail.com>
> ---
>  drivers/net/wireless/realtek/rtl8xxxu/rtl8xxxu_8192e.c | 1 +
>  1 file changed, 1 insertion(+)

Acked-by: Jes Sorensen <jes@trained-monkey.org>

> diff --git a/drivers/net/wireless/realtek/rtl8xxxu/rtl8xxxu_8192e.c b/drivers/net/wireless/realtek/rtl8xxxu/rtl8xxxu_8192e.c
> index 0bd1b527b420..4498748164af 100644
> --- a/drivers/net/wireless/realtek/rtl8xxxu/rtl8xxxu_8192e.c
> +++ b/drivers/net/wireless/realtek/rtl8xxxu/rtl8xxxu_8192e.c
> @@ -1820,6 +1820,7 @@ struct rtl8xxxu_fileops rtl8192eu_fops = {
>  	.rx_desc_size = sizeof(struct rtl8xxxu_rxdesc24),
>  	.has_s0s1 = 0,
>  	.gen2_thermal_meter = 1,
> +	.needs_full_init = 1,
>  	.adda_1t_init = 0x0fc01616,
>  	.adda_1t_path_on = 0x0fc01616,
>  	.adda_2t_path_on_a = 0x0fc01616,
Kalle Valo March 20, 2023, 5:54 a.m. UTC | #2
Bitterblue Smith <rtl8821cerfe2@gmail.com> wrote:

> Always run the entire init sequence (rtl8xxxu_init_device()) for
> RTL8192EU. It's what the vendor driver does too.
> 
> This fixes a bug where the device is unable to connect after
> rebooting:
> 
> wlp3s0f3u2: send auth to ... (try 1/3)
> wlp3s0f3u2: send auth to ... (try 2/3)
> wlp3s0f3u2: send auth to ... (try 3/3)
> wlp3s0f3u2: authentication with ... timed out
> 
> Rebooting leaves the device powered on (partially? at least the
> firmware is still running), but not really in a working state.
> 
> Cc: stable@vger.kernel.org
> Signed-off-by: Bitterblue Smith <rtl8821cerfe2@gmail.com>
> Acked-by: Jes Sorensen <jes@trained-monkey.org>

Patch applied to wireless-next.git, thanks.

d46e04ccd404 wifi: rtl8xxxu: RTL8192EU always needs full init
diff mbox series

Patch

diff --git a/drivers/net/wireless/realtek/rtl8xxxu/rtl8xxxu_8192e.c b/drivers/net/wireless/realtek/rtl8xxxu/rtl8xxxu_8192e.c
index 0bd1b527b420..4498748164af 100644
--- a/drivers/net/wireless/realtek/rtl8xxxu/rtl8xxxu_8192e.c
+++ b/drivers/net/wireless/realtek/rtl8xxxu/rtl8xxxu_8192e.c
@@ -1820,6 +1820,7 @@  struct rtl8xxxu_fileops rtl8192eu_fops = {
 	.rx_desc_size = sizeof(struct rtl8xxxu_rxdesc24),
 	.has_s0s1 = 0,
 	.gen2_thermal_meter = 1,
+	.needs_full_init = 1,
 	.adda_1t_init = 0x0fc01616,
 	.adda_1t_path_on = 0x0fc01616,
 	.adda_2t_path_on_a = 0x0fc01616,