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.

AM2434: Implementing Ethernet + Ethercat simultaneously on the Evaluation Module

Part Number: AM2434
Other Parts Discussed in Thread: SYSCONFIG
Hello, 
 

I wish to utilize both Ethernet and EtherCAT simultaneously on the AM243x-EVM. Since the stacked PHYs are shared between the ICSS (encompassing both Ethernet and EtherCAT), one feasible option is to employ CPSW for Ethernet. However, there's a challenge: one of the PHYs is shared between CPSW and ICSS.

My current understanding indicates that CPSW can solely be configured in either dual MAC mode or switch mode. I aim to operate it in single MAC mode. Is such a configuration possible?

Here is my current understanding of the ethernet hardware on the EVM.
I want the green block to be ethernet and the stacked PHYs (blue) to be ethercat. 
However, from the user guide I see that the CPSW MAC also has a connection to one of the stacked PHYs. I want CPSW to be using only one ethernet PHY (green).
  • Hi Saptarshi,

    If I understand correctly, you want the green block (CPSW) to be used in MAC mode.

    If you open syscfg of your application, go to Enet(CPSW) -> MAC Port config,

    You can disable MAC port-2 config and have MAC port-1 config enabled.

    Now rebuild your application after the above changes. This way you can have single MAC port enabled. Now once your configuration is done and during the runtime the application and driver initialization is done, try to Ping the IP address associated with the same.

    Please try the above and let me know if you have any other questions.

    Regards,
    Shaunak

  • Hello Shaunak,

    Thanks for the prompt reply. Even after disabling Mac Port 2, sysconfig has pinmux errors. How to resolve them?

    Thanks,

    Saptarshi

  • Hi Saptarshi,

    Can you please share your syscfg file?

    Regards,

    Shaunak

  • Hello, Shaunak

    Please find it attached. It is the Beckoff Ethercat example with an added CPSW ENet Module from Sysconfig.

    Fullscreen
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    /**
    * These arguments were used when this file was generated. They will be automatically applied on subsequent loads
    * via the GUI or CLI. Run CLI with '--help' for additional information on how to override these arguments.
    * @cliArgs --device "AM243x_ALV_beta" --package "ALV" --part "ALV" --context "r5fss0-0" --product "INDUSTRIAL_COMMUNICATIONS_SDK_AM243x@09.00.00"
    * @versions {"tool":"1.18.0+3266"}
    */
    /**
    * Import the modules used in this configuration.
    */
    const eeprom = scripting.addModule("/board/eeprom/eeprom", {}, false);
    const eeprom1 = eeprom.addInstance();
    const flash = scripting.addModule("/board/flash/flash", {}, false);
    const flash1 = flash.addInstance();
    const led = scripting.addModule("/board/led/led", {}, false);
    const led1 = led.addInstance();
    const led2 = led.addInstance();
    const led3 = led.addInstance();
    const gpio = scripting.addModule("/drivers/gpio/gpio", {}, false);
    const gpio1 = gpio.addInstance();
    const i2c = scripting.addModule("/drivers/i2c/i2c", {}, false);
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

    Thanks,

    Saptarshi

  • Hi Saptarshi, 

    I'll look into the same and get back to you once I have a fix for these errors. Seems like something wrong with Resource allocation.

    I will run some experiments on my side and try.

    Regards,

    Shaunak

  • Hi Saptarshi,

    Sharing an update with you, I was able to resolve most of the syscfg errors. The stacked PHYs on the EVM (the one shared between CPSW and ICSS) uses RGMII2. Here we would need CSPW to use RGMII1. Based on those modifications, most of the errors are resolved. But there are some conflicts between the data Input and Output pins between ICSSG1 and CPSW. I'm discussing this internally with the hardware folks and I'll get back to you when I make some more progress.

    Regards,
    Shaunak

  • Thanks for the update

  • Hi Saptarshi,

    One workaround is to use ICSSG0 and CPSW to get no pinmux conflicts. ICSSG0 is not connected to the on-board PHY so you would need a daughter card for this.

    Im still confirming with the hardware team to check if this is any hardware limitation.(using  ICSSG1 MII and CPSW RGMII1).

    Regards,
    Shaunak

  • Hello Shaunak,

    In case of the workaround, can we use LwiP  on ICSSG0 and Ethercat on ICSSG1?

    Thanks,

    Saptarshi

  • Hi Saptarshi,

    ICSSG0 can be used only on your custom board where you interface a PHY with it. On the AM243x evm you can use ICSSG1. ICSSG0 is not linked to any PHY on the device. 

    But lwIP can be used on either of the ICSSG instance.

    Regards,

    Shaunak