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.

EVM6678L Ethernet booting

I have been trying to set up Ethernet booting on my EVM6678L (Rev 3A) with no success.

The EVM Ethernet is directly connected to a Windows 7 laptop using the supplied cable.

Following information in other posts, I have set the dip switches to:  SW3 (off, on, off, on), SW4  (on, on, on, off), SW5  (on, on, off, off), and SW6  (off, on, on, on) .

Other than these switches, I have made no changes to the EVM - it is in its out-of-box state.

Wireshark does not detect any  BOOTP packets coming from the EVM (in fact, it sees nothing at all). Similarly, a BOOTP program running on the laptop

sees no activity.

CCS can see the device and it is executing code round about 0x20b05584.

Are the switches correct? Is this version of the EVM set up to use Ethernet booting? Is some other magic needed?

  • Did you connect to your EVM using CCS? If yes then you should disconnect it.

  • CCS was disconnected. I connected it only to see what the DSP was doing after the failure of the PC to receive any packets.

  • After failing to see anything under Windows 7, I switched to an XP machine. I still did not see any BOOTP packets, but my loader on the PC could boot the 6678 and CCS showed that my code was running correctly.

    As there is no BOOTP, my loader has no way of knowing when the board is ready to accept data. I have to do everything in the right order and reset the board before starting my loader under the assumption that the board is ready. This works but is not a sensible way to proceed.

    If I change the switches to the default settings (sw3: off,off,on,off sw4:on,on,on,on sw5:on,on,on,off sw6:on,on,on,on) I now see a BOOTP packet that looks credible, however, I can no longer load my program.

    According to the 6678 bootloader documentation, it should start by sending a BOOTP packet (which is what I see with the default switch settings) and then go on to read the program (which it does NOT do with the default settings).

    With the other settings (sw3:off,on,off,on sw4:on,on,on,off sw5: on,on,off,off, sw6:off,on,on,on) there is no BOOTP packet but the bootloader is clearly running.

    This makes no sense to me.

    So, I have two questions:

    1: It seems that Windows 7 is silently deleting BOOTP packets (all visible firewalls turned off). Does anyone know how to stop this behaviour?

    2: How can I both get a BOOTP packet from the bootloader AND have the bootloader accept my program?

  • Perhaps after all this time I should try a simpler question.

    What is the correct switch setting for the EVM6678L so that after reset it sends BOOTP packets out at regular intervals as advertised and responds to incoming packets by directing them to the bootloader?