Hayes Wang 8ceda6d5a1 r8152: fix flow control issue of RTL8156A
The feature of flow control becomes abnormal, if the device sends a
pause frame and the tx/rx is disabled before sending a release frame. It
causes the lost of packets.

Set PLA_RX_FIFO_FULL and PLA_RX_FIFO_EMPTY to zeros before disabling the
tx/rx. And, toggle FC_PATCH_TASK before enabling tx/rx to reset the flow
control patch and timer. Then, the hardware could clear the state and
the flow control becomes normal after enabling tx/rx.

Besides, remove inline for fc_pause_on_auto() and fc_pause_off_auto().

Fixes: 195aae321c82 ("r8152: support new chips")
Signed-off-by: Hayes Wang <hayeswang@realtek.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2023-05-01 07:32:04 +01:00
..
2023-04-26 16:07:23 -07:00
2023-04-26 11:54:50 +02:00
2023-04-26 16:07:23 -07:00
2023-03-21 13:39:29 +01:00
2023-04-24 18:07:08 -07:00
2023-03-31 08:56:42 +01:00
2023-04-26 16:07:23 -07:00
2023-04-24 18:07:08 -07:00