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.

TMS570LS1227: TMS570LS1227 Lwip example not properly working

Part Number: TMS570LS1227
Other Parts Discussed in Thread: HALCOGEN

Hi,

I am developing a custom board with TMS570LS1227ZWT and Phy DP83848 in RMII configuration.

i was able to set up the emac driver and send raw packets without any stack and receive them on the pc inspecting with wireshark, so hardware wise everything seems ok.

 

I am now trying to use the provided TI example for lwip, with the following changes:

  • RMII in pinmux instead of MII
  • disable MII enable in emac section
  • disable loopback in emac section

I find issues in making the example to work, as i am facing the following issues:

  • if IP is set to static, the bard seems to initialize and enter in the while(1) cycle but I am not able to ping the board neither to open the webpage
  • if IP is set to dynamic, it fails everytime to get an IP from my router, and ends up in abort as it does not enter in the while(1) cycle

 

I don't really understand what can be the issue, given that:

  • same example (with lwip files shared) but for Launchxl TMS570LC43 works fine
  • emac is not set any different from how i set it up initially on another small project to send raw packets.

 

Please, can you provide me any info on what to look for? i can tell that in EMAC I see some ISR handlers defined 

image.png

image.png

 

but in Halcogen in VIM ram te correct onew (defined in lwip_main.c) are indicated:

 

image.png

 

Thanks!

  • Hi,

    Please note that due to the holiday season, there may be some delay in responses. 

    Best Regards,
    Aishwarya

  • So i was able to solve the issue eventually.

    Tracking down ISR calls I was able to find some missing statements in the hdkif_hw_init routine:
    since in my custom board I am using RMII, the routine needed an additional call to set properly the interface in RMII mode, as it is done in the EMACHW_Init routine in emac.c; adding the following lines at line 480 solved my issues entirely, and the example works fine both in DCHP and IP Static mode.