mirror of
https://github.com/apache/nuttx.git
synced 2026-08-01 20:28:58 +00:00
Tune the TCP stack and driver resources for the WHC Wi-Fi data path on both rtl8720f_evb and pke8721daf (NuttX runs on the application core; the Wi-Fi MAC runs on a companion core reached over an on-chip IPC): - Cap the advertised TCP receive window (NET_RECV_BUFSIZE=10000) to about the out-of-order reassembly capacity and bound in-flight TX (NET_SEND_BUFSIZE=16384). The stock unbounded window/queue let the peer and the local stack burst far more than the Wi-Fi path can smooth, causing bursty loss/reordering and RTO stalls (RX), and starving incoming-ACK processing so the peer window collapses and spurious retransmits tear the link down (TX). - Keep out-of-order reassembly (NET_TCP_OUT_OF_ORDER) but disable selective ACK. PR #19353 enabled NET_TCP_SELECTIVE_ACK on both boards; on the lossy Wi-Fi TX path the sender-side selective-ACK recovery does not reliably repair multi-segment holes and stalls TX, so NewReno with out-of-order reassembly is used instead -- same steady-state throughput, robust recovery. - Widen IOB buffers to 512 bytes; the window and out-of-order buffers draw from the shared IOB pool at run time and add no static memory. - Drop the busy-wait retry in the transmit path (the send-buffer cap makes it dead code) and lower the forced host TX skb count (skb_num_ap) to 8, which covers the NP's transient TX backlog without over-reserving AP heap. Signed-off-by: raul_chen <raul_chen@realsil.com.cn> |
||
|---|---|---|
| .. | ||
| arm | ||
| arm64 | ||
| avr | ||
| dummy | ||
| hc/m9s12 | ||
| mips | ||
| misoc/lm32/misoc | ||
| or1k/mor1kx/or1k | ||
| renesas | ||
| risc-v | ||
| sim/sim/sim | ||
| sparc | ||
| tricore | ||
| x86/qemu/qemu-i486 | ||
| x86_64/qemu/qemu-intel64 | ||
| xtensa | ||
| z16/z16f/z16f2800100zcog | ||
| z80 | ||
| .gitignore | ||
| Board.mk | ||
| boardctl.c | ||
| CMakeLists.txt | ||
| dummy.c | ||
| Kconfig | ||
| Makefile | ||