BF609: Ethernet - sending on one core, receive on another

Hello, guys!

I have some question about ethernet. For example, in my application I need to send data from Core0 and receive on Core1. But if I initialize lwip on Core 0, and do same action on Core 1, I can see that sending operation on Core0 through sendto() return number sended bytes, but traffic analyzer (Wireshark) doesn't see this sent packet, but if I do sending operation on Core 1 (core which initialize lwip second time) then I see this packet in Wireshark. I tried not initialize lwip on Core1 (commenting function adi_lwip_Init() in adi_initialize.c) and I got next results: sending on Core0 goes success and packet falls into Wireshark, but listening on Core1 through the same socket is possible only if on Core0 ethernet listening thread works, i.e. I have double work on receiving operation for both cores, moreover if I'm not using receiving thread on Core0 (excluding it from execution) I can't thereafter receiving data in remaining listening thread on Core1. Search the reasons such behavior in source files for ethernet drivers for now doesn't help me. Maybe I do something wrong. If you know how to solve this problem, please, let me know.

For lwip settings I use static ip address, in my case 10.10.70.1 and port 7001. Sending and receiving goes through the same port on both cores, but I tried different ports - result is same. 

Parents Reply Children
No Data