These patches fix the settings of RX FIFO about flow control.
Hayes Wang (2):
r8152: fix the units of some registers for RTL8156A
r8152: fix the RX FIFO settings when suspending
drivers/net/usb/r8152.c | 27 ++++++++++++---------------
1 file changed, 12 insertions(+), 15 deletions(-)
--
2.34.3
The RX FIFO would be changed when suspending, so the related settings
have to be modified, too. Otherwise, the flow control would work
abnormally.
BugLink: https://bugzilla.kernel.org/show_bug.cgi?id=216333
Reported-by: Mark Blakeney <[email protected]>
Fixes: cdf0b86b250f ("r8152: fix a WOL issue")
Signed-off-by: Hayes Wang <[email protected]>
---
drivers/net/usb/r8152.c | 10 ++++++++++
1 file changed, 10 insertions(+)
diff --git a/drivers/net/usb/r8152.c b/drivers/net/usb/r8152.c
index 46c7954d2762..d142ac8fcf6e 100644
--- a/drivers/net/usb/r8152.c
+++ b/drivers/net/usb/r8152.c
@@ -5906,6 +5906,11 @@ static void r8153_enter_oob(struct r8152 *tp)
ocp_data &= ~NOW_IS_OOB;
ocp_write_byte(tp, MCU_TYPE_PLA, PLA_OOB_CTRL, ocp_data);
+ /* RX FIFO settings for OOB */
+ ocp_write_dword(tp, MCU_TYPE_PLA, PLA_RXFIFO_CTRL0, RXFIFO_THR1_OOB);
+ ocp_write_word(tp, MCU_TYPE_PLA, PLA_RXFIFO_CTRL1, RXFIFO_THR2_OOB);
+ ocp_write_word(tp, MCU_TYPE_PLA, PLA_RXFIFO_CTRL2, RXFIFO_THR3_OOB);
+
rtl_disable(tp);
rtl_reset_bmu(tp);
@@ -6544,6 +6549,11 @@ static void rtl8156_down(struct r8152 *tp)
ocp_data &= ~NOW_IS_OOB;
ocp_write_byte(tp, MCU_TYPE_PLA, PLA_OOB_CTRL, ocp_data);
+ /* RX FIFO settings for OOB */
+ ocp_write_word(tp, MCU_TYPE_PLA, PLA_RXFIFO_FULL, 64 / 16);
+ ocp_write_word(tp, MCU_TYPE_PLA, PLA_RX_FIFO_FULL, 1024 / 16);
+ ocp_write_word(tp, MCU_TYPE_PLA, PLA_RX_FIFO_EMPTY, 4096 / 16);
+
rtl_disable(tp);
rtl_reset_bmu(tp);
--
2.34.3
Hello:
This series was applied to netdev/net.git (master)
by David S. Miller <[email protected]>:
On Thu, 18 Aug 2022 16:06:18 +0800 you wrote:
> These patches fix the settings of RX FIFO about flow control.
>
> Hayes Wang (2):
> r8152: fix the units of some registers for RTL8156A
> r8152: fix the RX FIFO settings when suspending
>
> drivers/net/usb/r8152.c | 27 ++++++++++++---------------
> 1 file changed, 12 insertions(+), 15 deletions(-)
Here is the summary with links:
- [net,1/2] r8152: fix the units of some registers for RTL8156A
https://git.kernel.org/netdev/net/c/6dc4df12d741
- [net,2/2] r8152: fix the RX FIFO settings when suspending
https://git.kernel.org/netdev/net/c/b75d61201444
You are awesome, thank you!
--
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html