Closed anhuba closed 1 week ago
Hi @anhuba! We appreciate you submitting your first issue for our open-source project. 🌟
Even though I'm a bot, I can assure you that the whole community is genuinely grateful for your time and effort. 🤖💙
This should be fixed by this https://github.com/zephyrproject-rtos/zephyr/pull/78745
You seem to have the fix according to your code example.
oops did not find the fix... already fixed in 00bb90a42e7f583704090c5e38e1b3fd933cf409
When switching from v3.6 to v3.7 we realized that VLAN is not working on our SOC_MIMXRT1064 board anymore. After analyzing the problem we found out the problem is the default setting of the new nxp_enet driver (with the eth_mcux in v3.6 it worked fine)
The new driver has the HW acceleration (ETH_NXP_ENET_HW_ACCELERATION) enabled by default. If using CONFIG_NET_VLAN the checksums for IP, TCP/UDP are calculated in SW as the VLAN interface does not use the information from the lower interface. The HW then calculates the checksums with non-zeroed values which results in checksum with the value 0xffff instead of the correct value.
If CONFIG_ETH_NXP_ENET_HW_ACCELERATION is disabled in the config and everything calculated in SW it works fine.
To make use of the HW acceleration and VLAN at the same time, I have added the following lines, which work fine in our setup: