Post Go back to editing

Porting LWIP (2.1.3) to ADSP-SC589 EZKIT SHARC core

Hello, I just received my ADSP-SC589 EZKIT and I was wondering if there was some guide on how to port the latest version of LWIP to this platform in bare metal (NO_SYS ==1) mode.  LWIP was removed a few years ago. Perhaps if the previous archive was available the contents of the contrib/ports folder would be a great starting point.  I want to port the LWIP code to run on the SHARC core (Cores 1 or 2) and not on the ARM core (Core 0).

In the project, I would like to put the Ethernet/PHY driver code on the arm core and use DMA to exchange the packets back and forth with LWIP running on Core 1 (or 2)

I have not created a bare metal project before, however I found quite a few resources to help (especially https://lwip.fandom.com/wiki/Porting_For_Bare_Metal), but as I am a complete novice to the SHARC DSP and also to the 'CrossCore embedded studio 2.10.1' - I need help with setting up the IDE with the LWIP vanilla source code and adding in the SHARC port files in a custom folder.   I found a 2017 example of a bare metal port here.

Any guidance on getting LWIP ported to the SHARC processor would be greatly appreciated - I started out with an example project that I have configured and working.  This uses the MDMA API to send audio sample data from the ARM core 0 to the SHARC core 1.   In my case I would like to exchange Ethernet packets in place of the audio samples in this example.  To that end I guess I would need to modify MultiCoreTalkThruSharcSharc_Core1.c replacing the while forever loop below with the corresponding one in the bare metal main entry point in LWIP.

In the IDE, I created an empty 'contrib/sharc/include/arch' folder (where I am guessing I need to drop in SHARC specific settings)

Thanks in advance

John

// Processing is done in callback
while(1)
{
    asm(" NOP; ");
}

  • Hi,

    Unfortunately, we are unable to share LWIP code/installer, as this is considered obsolete and as of now ADI does not have an Ethernet stack offering that can be supported.

    Analog Devices has partnered with third parties such as HCC Embedded and Closed Loop Design to provide an alternative TCP/IP stack for the ADSP-SC5xx family of processors.

    So, you can work with HCC Embedded solutions who might help you.
    www.analog.com/.../middleware.html

    Please visit the HCC Embedded Networking page for more details.
    www.hcc-embedded.com/.../networking

    For technical-support:
    www.hcc-embedded.com/.../technical-support

    For adding SHARC support files into your project folder, could you please try the below steps to create a linked resource with reference to a file/folder that is not contained by a project.
    1. Right-click the folder in the project where you have to place the source files.
    2. Choose New > File from Template.
        The New File wizard appears.
    3. Click Advanced.
    4. Enable Link to file in the file system.
    5. Click Browse and select the file to link.
    6. Click Finish.
        The linked resource appears immediately in the navigation view.

    Please refer in CCES help for more information:
    CrossCore® Embedded Studio 2.x.x > Integrated Development Environment > Managing CCES Projects > Managing Resources> Creating a Linked Resource

    If this doesn't fulfill your requirement, please share us the exact requirement to set up the IDE and add SHARC files to the folder.


    Regards,
    Nishanthi.V