]> git.ipfire.org Git - thirdparty/qemu.git/commit
i82596: Implement enhanced TX/RX with packet queuing and filtering
authorSoumyajyotii Ssarkar <soumyajyotisarkar23@gmail.com>
Mon, 3 Nov 2025 11:27:23 +0000 (16:57 +0530)
committerHelge Deller <deller@gmx.de>
Tue, 4 Nov 2025 15:14:51 +0000 (16:14 +0100)
commitfec69f17be25db71f9cd4001b920da21cc71b283
tree97fafdc63bc9bb97e217c14824d493163c56c26c
parentcbf62eef84ab6bd1be3a03269b4a4e9df529985f
i82596: Implement enhanced TX/RX with packet queuing and filtering

In this patch I have added the following:
- Rewrote transmit path with CSMA/CD collision handling and retry logic
- Implemented flexible TX buffer descriptor (TBD) chain processing
- Rewrote receive path with packet filtering and monitor mode support
- Added RX packet queue for handling resource exhaustion
- Implemented queue flush timer and management
- Added RX state machine with proper state transitions
- Implemented packet filtering (unicast, broadcast, multicast, promiscuous)
- Added SCB RU_START enhancement to find usable RFDs
- Implemented dump command support
- Added bus throttle timer loading (LOAD_THROTTLE/LOAD_START commands)
- Enhanced signal_ca with proper initialization sequence
- Finally, adding self-test functionality

Note:
With this patch, and the previous ones in the patch series, we are able
to achive proper 82596 NIC emulation.

Signed-off-by: Soumyajyotii Ssarkar <soumyajyotisarkar23@gmail.com>
Tested-by: Helge Deller <deller@gmx.de>
Tested-by: Guenter Roeck <linux@roeck-us.net>
Signed-off-by: Helge Deller <deller@gmx.de>
hw/net/i82596.c
hw/net/trace-events