Hi,
I'm unable to receive multicast packets using the NDK 3_61_01_01 that came with processor sdk 6.3..0.106.
The project network stack configuration is derived from the pdk_c667x_2_0_16\packages\ti\transport\ndk\nimu\example\helloworld project.
As a sanity check, I ran the telnet console program that was delivered with the NDK and executed the 'test multicast' command. When I send a multicast packet to: 224.1.2.5 port 4040 from a windows host, there is no response from the multicast test program.
The console multicast test implementation is located by the function 'MulticastTest ( ) in file: ndk_3_61_01_01\packages\ti\ndk\tools\console\contest.c.
The c6678 project I'm running was ported from a c6654-target project. I tried running the telnet console muticast test on the c6654 EVM, and the test replied that the multicast packet was successfully received on both sockets.
To see whether the receive packet was forwarded to the NIMU, I put a breakpoint in the function EmacRxPktISR( ) (in file pdk_c667x_2_0_16\packages\ti\transport\ndk\nimu\src\v1\nimu_eth.c):
...
/* Is it a standard ethernet type? */
if (protocol != ETHERTYPE_IP && protocol != ETHERTYPE_IPv6 && protocol != ETHERTYPE_VLAN
&& protocol != ETHERTYPE_PPPOECTL && protocol != ETHERTYPE_PPPOEDATA )
{
/* This is a raw packet, enqueue in Raw Rx Queue */
PBMQ_enq( &ptr_pvt_data->pdi.PBMQ_rawrx, (PBM_Handle) hPkt);
}
else
{ /* This is a normal IP packet. Enqueue in Rx Queue */
PBMQ_enq( &ptr_pvt_data->pdi.PBMQ_rx, (PBM_Handle) hPkt ); // -------------- SET BREAKPOINT HERE
}
The breakpoint is never hit when the multicast packet is transmitted from the windows host.
I've read numerous TI forum posts reporting this same issue - some are very old - but nowhere have I seen a response from TI describing how to resolve the problem.
I appreciate your help in advance.
Jim