From: Paul Barker <paul.barker.ct@xxxxxxxxxxxxxx> The GbEth IP found in Renesas RZ/G2L, RZ/G3S and related SoCs supports hardware checksum offload for packets in the following cases: - there are zero or one VLAN headers with TPID=0x8100 - the network protocol is IPv4 or IPv6 - the transport protocol is TCP, UDP or ICMP - the packet is not fragmented To complete the support for all these cases in the ravb driver, we need to add handling for ICMP packets, VLAN-tagged packets and IPv6 packets in both the TX and RX code paths. These patches also do some refactoring/tidy-up, drop unnecessary checks from performance sensitive code paths and disable unnecessary IP header checksum offloading. Paul Barker (11): net: ravb: Factor out checksum offload enable bits net: ravb: Disable IP header RX checksum offloading net: ravb: Drop IP protocol check from RX csum verification net: ravb: Combine if conditions in RX csum validation net: ravb: Simplify types in RX csum validation net: ravb: Disable IP header TX checksum offloading net: ravb: Simplify UDP TX checksum offload net: ravb: Support ICMP TX checksum offload for GbEth net: ravb: Enable IPv6 RX checksum offloading for GbEth net: ravb: Enable IPv6 TX checksum offload for GbEth net: ravb: Add VLAN checksum support drivers/net/ethernet/renesas/ravb.h | 7 ++ drivers/net/ethernet/renesas/ravb_main.c | 108 +++++++++++++---------- 2 files changed, 68 insertions(+), 47 deletions(-) -- 2.43.0