Sorry, you need to enable JavaScript to visit this website.

Multicast on Zedboard with QNX6.6

2 posts / 0 new
temax's picture
Multicast on Zedboard with QNX6.6

Hi folks :)

we have in our lab two ARMv7 boards. One is the Freescale sabre lite and the other one is the Zedboard.

The two boards are in the same subnet.

We have been doing multicast tests between each of these two boards, and other boards in the same sabnet (some i86QNX, some i86Linux).

The only one not working and not communicating via multicast is the zedboard. The libraries and sofwtare we use in the Zedboard is exactly the same as the one we run on the sabre lite. We use the same binaries, however they work on sabre lite and they dont in the zedboard.

Now, this is the sabre lite network configuration:
$ ifconfig
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 33192
inet netmask 0xff000000
inet6 ::1 prefixlen 128
inet6 fe80::1%lo0 prefixlen 64 scopeid 0x1
address: 00:19:b8:01:61:e6
media: Ethernet autoselect (1000baseT full-duplex,rxpause,txpause)
status: active
inet netmask 0xffff0000 broadcast
inet6 fe80::219:b8ff:fe01:61e6%fec0 prefixlen 64 scopeid 0x11

And this is the Zedboard network configuration:
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 33192
inet netmask 0xff000000
inet6 ::1 prefixlen 128
inet6 fe80::1%lo0 prefixlen 64 scopeid 0x1
address: 00:0a:35:11:00:01
media: Ethernet autoselect (1000baseT full-duplex)
status: active
inet netmask 0xffff0000 broadcast
inet6 fe80::20a:35ff:fe11:1%xzynq0 prefixlen 64 scopeid 0x11

The only difference that I see is "rxpause,txpause".

Can you see what might be the problem here? Unicast data works just fine, it is just multicast packets somehow not going out/in from/to the interface.

Could this be a QNX driver issue rather than a board issue?

Thanks a lot for any insight you might provide :)

Thank you!

hockeyman1972's picture
More info requested

Hi,  I'm not seeing an obvious answer to this issue in the information provided.  However, since these boards are all on the same LAN, are you using an IGMP router as would be done on the Internet, or are you using a custom mapping of IP address to MAC address to create a multicast table at the link layer only?
The reason I ask is because if you are using IGMP, then are there any clues in the router table - such as the Zedboard is not included in the IGMP group?   You've probably thought of something that obvious, so I'm really looking for more information to try to pin this down. 
It seems unlikely to be a problem with QNX specifically, if that is working fine on other embedded devices.  And I did some searching for multicast problems related to device trees, but except for very specific cases (none with Zynq), there was nothing that seemed promising there either. 
One thing I did find was that Multicast addressing was incorporated into LWIP at version 1.4.0, so one possible avenue of exploration would be to create a standalone application via the Xilinx SDK using a BSP with LWIP enabled, and configure it for multicast.  If that works, then it at least validates all the hardware and and multicast address mapping and would make it more likely that there is some issue with the QNX BSP for the Zedboard.