Skip to content
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

eth_nxp_enet_qos should support IPV6 predefined multicast addresses #83408

Open
theadib opened this issue Dec 26, 2024 · 1 comment · May be fixed by #83416
Open

eth_nxp_enet_qos should support IPV6 predefined multicast addresses #83408

theadib opened this issue Dec 26, 2024 · 1 comment · May be fixed by #83416
Assignees
Labels
area: Ethernet bug The issue is a bug, or the PR is fixing a bug platform: NXP Drivers NXP Semiconductors, drivers priority: low Low impact/importance bug

Comments

@theadib
Copy link
Contributor

theadib commented Dec 26, 2024

Describe the bug

I am using frdm_mcxn947 and IPV6 network stack.
on IPV6 when you ping to
ping ff02::1
all connected devices in the local network having IPV6 should respond.
The frdm_mcxn947 does not respond.
Retesting against frdm_k64f; that devkit/driver responds as expected.

The problem is the specific implementation of hardware MAC filtering in the SOC and how the driver handles it.
The SOC can handle individually select-able (list is not complete):

  • 1(one) specific MAC address
  • any multicast address,
  • promiscuous mode (no hardware filtering)
    To note is the MAC hardware filter contains only 1(one) address entry and
    there is no possibility to further filter multicast (as the hash table implementation of the MK64)
    see also reference manual: 70.5.1.4 MAC Packet Filter (MAC_PACKET_FILTER)

The current driver does not set the "allow multicast" flag to allow multicast addresses to pass through. even when in IPV6 is enabled.

To Reproduce

west build -p -b frdm_mcxn947/mcxn947/cpu0 zephyr/samples/net/sockets/echo_server
west flash
ping ff02::1

Expected behavior

expected: on ping ff02::1
the device should respond with its IPV6 address

Impact

with the current implementation of the driver:

  • addressing the device using unicast works but
  • addressing the device using multicast method does not work as expected
  • receiving application specific multicast packets does not work

IPV6 is only "halfway" implemented.
missing important and well known addressing methods

Logs and console output

Environment (please complete the following information):

I use:

  • OS: Linux
  • Toolchain: SDK 17.0
  • Commit SHA or Version used: latest zephyr main 1207ccf
    as of 2024-dec-25

Additional context

https://en.wikipedia.org/wiki/Multicast_address
https://www.iana.org/assignments/ipv6-multicast-addresses/ipv6-multicast-addresses.xhtml

@theadib theadib added the bug The issue is a bug, or the PR is fixing a bug label Dec 26, 2024
@theadib
Copy link
Contributor Author

theadib commented Dec 27, 2024

I filed a pull-request solving that issue #83416

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area: Ethernet bug The issue is a bug, or the PR is fixing a bug platform: NXP Drivers NXP Semiconductors, drivers priority: low Low impact/importance bug
Projects
None yet
Development

Successfully merging a pull request may close this issue.

7 participants