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.

DM648 ethernet bootmode

Hi all,

I'm using DM648 EVM board to study the DM648 ethernet bootmode.

I have use the genAIS tools to generate the required packet in a .c file. The generated packet is already contain all network layer header (including UDP / MAC layer header). In linux system, how should I send this packet to the EVM board? becuase normal socket connection will add additional UDP / MAC layer header at the beginning of the packet.

  • Hi,

    The NDK2.0 supports raw sockets. Please refer to the NDK2.0 release notes available as part of NDK2.0 installation which mentions this.

    One thing you have to take care with raw sockets, while using socket() API is use any protocol type other than standard like IP(0x800), IPv6(0x806), VLAN(0x8100), PPPoE Control(0x8863), PPPoE Data(0x8864). There is also an example code available as part of the package. Please refer to conping.c file at – packages\ti\ndk\example\tools\common\console

    Thanks,

    Prathap.

  • Hi,

    I am now about to send the RAW packet from my server, and has been verified it by wireshark.

    However, when I use my tools to send the bootup code to the DM648 EVM board, there is no any response.

    Detail:

    I have write a mini program for DM648 to just control some LED on the EVM board. This program has been verified using Emulator boot and EMIF boot mode. However using the same .out file generating the .cpp file for Ethernet boot. The DM648 EVM has no further response after I send all those packets to it.

    Since there is no any acknowledgement during Ethernet boot, after I send all packets out, I don't know how to do further checking.

    Does there is any way to check the DM648 got all packets?

    Since my program is boot correctly on EMIF boot, does it means using the same .out file should also be bootable on Ethernet boot?

    I can't check which component cause this problem: "my app program" / 'send RAW packet tools' / 'genAIS" or "EVM hardware".

    All I know is each part seems work correctly individually:

    My app program -- verified by Emulator boot and EMIF boot

    Send RAW packet tools -- veriifed by sending those packet to a PC and capture it by wireshard, all packets got are same as the generated .cpp --> Packet data

    genAIS -- using the genAIS version 1.20.10

    EVM hardware -- BOOTP packet got at startup.

    Do you have any hints to help?

    Thank you