diff options
| author | Raju Rangoju <Raju.Rangoju@amd.com> | 2026-03-06 16:46:28 +0530 |
|---|---|---|
| committer | Paolo Abeni <pabeni@redhat.com> | 2026-03-10 12:07:07 +0100 |
| commit | 27a4dd0c702b3b2b9cf2c045d100cc2fe8720b81 (patch) | |
| tree | 05afcff144a9384d724c570ca37456c2069f006b /tools/perf/scripts/python | |
| parent | 6485cb96be5cd0f4bf39554737ba11322cc9b053 (diff) | |
| download | linux-27a4dd0c702b3b2b9cf2c045d100cc2fe8720b81.tar.gz linux-27a4dd0c702b3b2b9cf2c045d100cc2fe8720b81.zip | |
amd-xgbe: prevent CRC errors during RX adaptation with AN disabled
When operating in 10GBASE-KR mode with auto-negotiation disabled and RX
adaptation enabled, CRC errors can occur during the RX adaptation
process. This happens because the driver continues transmitting and
receiving packets while adaptation is in progress.
Fix this by stopping TX/RX immediately when the link goes down and RX
adaptation needs to be re-triggered, and only re-enabling TX/RX after
adaptation completes and the link is confirmed up. Introduce a flag to
track whether TX/RX was disabled for adaptation so it can be restored
correctly.
This prevents packets from being transmitted or received during the RX
adaptation window and avoids CRC errors from corrupted frames.
The flag tracking the data path state is synchronized with hardware
state in xgbe_start() to prevent stale state after device restarts.
This ensures that after a restart cycle (where xgbe_stop disables
TX/RX and xgbe_start re-enables them), the flag correctly reflects
that the data path is active.
Fixes: 4f3b20bfbb75 ("amd-xgbe: add support for rx-adaptation")
Signed-off-by: Raju Rangoju <Raju.Rangoju@amd.com>
Link: https://patch.msgid.link/20260306111629.1515676-3-Raju.Rangoju@amd.com
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
Diffstat (limited to 'tools/perf/scripts/python')
0 files changed, 0 insertions, 0 deletions
