This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

TDA4VM: How do I check whether ICMP packets are received and sent on the CPSW port?

Part Number: TDA4VM

Hi,TI

Occasionally, TDA4 cannot ping another Ethernet device A.
However, by using the arp command, TDA4 can check that the IP address and MAC address of device A are bound successfully,
and TDA4 can receive UDP packets from device A, but cannot receive ICMP packets.

I need:
1. How can I check whether the CPSW port receives and sends ICMP packets? It's used to find out whether device A has a problem
2. Check whether some security policies of the TDA4 operating system are triggered, resulting in the failure of sending TDA4 ICMP packets.

  • TDA4VM SDK8.4 used

  • Hi, 

    There is no difference in handling of ICMP frames & udp frames except checksum offload. 

    Can you please share the details of which CPSW instance is using and application as EthFw or Native Linux driver? 

    Checksum offload supported only on UDP & TCP in Ethfw based application. 

    Please make sure that you are sending valid checkum packets. 

    You can check cpsw statistics to see any checksum error packets are received or not. Also, check for rx packet count on external port and tx packet count on host port while sending ICMP frames to check whether any drops or errors. 

    Please capture CPSW statistics at multiple points like before and after sending ICMP frames and share with us. 

    Best Regards, 

    Sudheer

  • Please tell me the file name and path you need to check the code.

    Symptom When device A cannot be pinged, TDA4 cannot capture any ICMP packets, including ICMP ping request packets, using the tcpdump tool.

    Device A is connected to port 5 of CPSW. I used the following command to check the packet count on this port:
    devmem2 0x0C03AA00
    devmem2 0x0C03AA34

    I can see that the count is increasing, but there are other packets coming and going, and I cannot determine whether the ICMP packet is forwarded.

  • Hi,

    Default EthFw will respond for the ARP request received from External Ports even for remote client cores (A72 Linux).
    Client core will register IP with EthFw to respond for ARP request of client IP.

    When ARP is success, then Pin will send ICMP messages with the MAC Address registered in ARP entry.
    If you are trying to check for A72 Linux client, then the packets be will directly transferred to A72 client.

    Can you please check above, and confirm ARP is success or not? Share the ARP table at PC and A72 client Linux.
    Also, share the Wireshark log from PC which is sending the ICMP messages, and capture the TCP dump in A72 client.
    Also, share the ifconfig dump in A72 Linux client, along with EthFw logs.

    Please share your environment details, how you are sending ICMP message.

    Please share the ALE Dump and Statistics dump as well.
    When checking for ICMP message stop sending other data like UDP, TCP.

    Best Regards,
    Sudheer