This patch series is based on net-next.git / main branch [1]. This patch series can improve perfromance of TX in a specific condition. The previous code used "global rate limiter" feature so that this is possible to cause performance down if we use multiple ports at the same time. To resolve this issue, use "hardware pause" features of GWCA and COMA. Note that this is not related to the ethernet PAUSE frames. < UDP TX by iperf3 > before: about 450Mbps on both tsn0 and tsn1 after: about 950Mbps on both tsn0 and tsn1 Also, this patch series can improve performance of RX by using napi_gro_receive(). < TCP RX by iperf > before: about 670Mbps on tsn0 after: about 840Mbps on tsn0 [1] The commit ddb8701dcb67 ("Merge branch 'splice-net-handle-msg_splice_pages-in-af_kcm'") Changes from v1: https://lore.kernel.org/all/20230529080840.1156458-1-yoshihiro.shimoda.uh@xxxxxxxxxxx/ - Rebased on the latest net-next.git / main branch. - Use "hardware pause" feature instead of "per-queue limiter" feature. - Drop refactaring for "per-queue limiter". - Drop dt-bindings update because "hardware pause" doesn't need additional clock information. - Use napi_gro_receive() to improve RX performance. Yoshihiro Shimoda (2): net: renesas: rswitch: Use napi_gro_receive() in RX net: renesas: rswitch: Use hardware pause features drivers/net/ethernet/renesas/rswitch.c | 38 ++++++++++---------------- drivers/net/ethernet/renesas/rswitch.h | 6 ++++ 2 files changed, 21 insertions(+), 23 deletions(-) -- 2.25.1