-
Notifications
You must be signed in to change notification settings - Fork 1.5k
net: Hardware Checksum Offload Support for NuttX Network Stack #16940
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Conversation
d17e875 to
f60daab
Compare
|
@13627105546 since it is a new feature, please include basic Documentation to it. The documentation should be included at https://nuttx.apache.org/docs/latest/components/net/netdev.html as a new section |
acassis
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please add Documentation
How did you quantify this? Which applications did you run, on what hardware, and how did you verify that they worked correctly? |
@13627105546 the Testing should have the list of boards and applications you tested: i.e. tested on esp32-devkitc running iperf, thttpd, telnet, etc... |
|
ping @13627105546 |
f60daab to
16446b7
Compare
16446b7 to
56eeb8f
Compare
|
@13627105546 please fix the conflict |
879c936 to
c2fde59
Compare
6715167 to
fa80dd8
Compare
Implementation of main hardware verification and uninstallation functions Signed-off-by: daichuan <daichuan@xiaomi.com>
Fix compilation errors and add build files Signed-off-by: daichuan <daichuan@xiaomi.com>
When supporting hardware checksum offloading, the network protocol stack does not perform TCP/UDP pseudo-header checksum calculation. Skip TCP/UDP pseudo header checksum calculation in network protocol stack Signed-off-by: daichuan <daichuan@xiaomi.com>
not need CONFIG_NETDEV_CHECKSUM with nuttx Signed-off-by: daichuan <daichuan@xiaomi.com>
fa80dd8 to
522c033
Compare
I have added the relevant descriptions. Could you kindly review them again? |
Note: Please adhere to Contributing Guidelines.
Summary
This PR introduces hardware checksum offload support to the NuttX network protocol stack, enabling network devices to perform checksum calculations in hardware rather than software.
Key Changes:
Impact
Build Impact:
API Impact:
Runtime Impact:
Testing
Hardware Verification (New Feature) :
Platform : Verified on an internal pre-release development board (Architecture: ARM Cortex-M series) equipped with an Ethernet MAC supporting hardware checksum offloading.
Driver Implementation : Implemented a custom driver setting NETDEV_TX_CSUM and NETDEV_RX_CSUM flags to utilize the new APIs.
Test Cases :
Regression Testing (Software Fallback) :
Platform : Tested on sim:tcpblaster (NuttX Simulator) and stm32f4discovery:netnsh (Standard Cortex-M4 board without using the new HW checksum flags).
Purpose : To verify that the changes do NOT break existing drivers that rely on the software checksum stack.
Test Cases :