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.

CCS/TMS320C6674: Question about using Ethernet 2 port

Part Number: TMS320C6674
Other Parts Discussed in Thread: TMS320C6678,

Tool/software: Code Composer Studio

First question
I have a question about EMAC on the TMS320C6678.
I remember that using the two Ethernet ports in the MCSDK was a problem.
Did the upgraded PROCESSOR RTOS SDK resolve this issue?

Second question
We are going to make a board with TMS320C6674.
However, this board should use Ethernet 2 port.
One port connects the Ethernet PHY to the transformer.
The other port directly connects the SERDES SGMII without PHY.
Is there any problem with this configuration using NDK?

Can NDK be used on ports without PHY?

  • Hi,

    Did the upgraded PROCESSOR RTOS SDK resolve this issue?

    This should be resolved in the latest RTOS SDK.

    Is there any problem with this configuration using NDK?

    Not sure about this. IMO you may need to modify the NDK. Looping the RTOS team to elaborate on this.

    Best Regards,
    Yordan
  • Hi,

    For C6678, the Processor SDK RTOS has the NIMU driver. The GbE has 3 ports (1 host and 2 Ethernet ports) and we tested on the 6678 EVM. The NIMU driver only supports the second Ethernet port (SGMII 1) with PHY connection which can connect to a network with RJ-45. The first Ethernet port (SGMII 0) is connected to AMC edge connector, the NIMU driver doesn't support this.

    NDK runs on top of the NIMU driver, it has no knowledge of the physical ports. For your two ports usage, you need to customize NIMU driver for two Ethernet support, one with PHY and the other without PHY.

    Regards, Eric
  • Hi.

    Thank you for answer.

    To use two Ethernet ports, refer to the following wiki.

    processors.wiki.ti.com/.../NDK,_PA_Resource_Wiki_for_Keystone_Devices

    I have additional questions.

    Can EMAC1 be used on Core0, and EMAC0 directly used on Core1?

    Thank you.