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.

OMAP L138 dual ethernet ports

Other Parts Discussed in Thread: SYSCONFIG, OMAPL138

Hi,

I was thinking to use both ethernet ports of the evmompl138 board. (incl. the UI one)

EMAC has 2 cores with separate interrupts
Separate channels for each core
EMAC can handle RMII and MII (switch in SYSCONFIG)  

with those capabilities it should be possible to handle 2 independent ethernet ports in quasi parallel mode, isn't it?
The drawback would be both ports share the same MAC address.

What does the community think?

best regards

Armin

  • Hi Armin,

    Yes, this should be possible to run two Ethernet (emac) driver instances at once using the NDK. Each Ethernet port needs to have a unique MAC addresses to properly communicate on a Ethernet network.

  • Hi Tom,

    yes, but not only with the internal emac. After playing around I figured out, that I need an external emac for the second port, isn't it?

  • Hi Armin,

    sorry for the delay, I had to dig into the OMAPL138's TRM.

    I'm not an expert with this peripheral, so if I can't answer your question we can forward this to another forum with an EMAC expert.

    From what I was reading, we're dealing with just one Ethernet controller (EMAC) that  2 sets of EMAC core interrupts connected to the ARM. With each interrupt core register set, you can have up to 8 different channels (8 for Transmit, 8 for Receive) where each channel has its own MAC address (for virtual MAC addressing).

    Physically speaking, we are still dealing with only one Ethernet port (there is only 1 R/MII interface to the PHY), but I think there is some room for "splitting" up Ethernet traffic virtually.

    By any chance, if you are using the NDK there are some OMAPL138 examples and drivers in the NSP product. The driver doesn't utilize the second EMAC interrupt core, but the source code is included if you want to develop your own driver.