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.

Any way to set ethernet parameters other than in EMACSnow?

We have a weird situation on our TI 1294 system where the Intel NIC needs us to *not* negotiate for speed.  We need to force it to be 100Mbps.

This is sort of a code composer issue as much as it is a NDK/RTOS issue.  I can change the #define in EMACSnow.c, but now it is set that way for every project and every CPU that uses EMACSnow.c


It is not obvious if there is a way to override what gets set in EMACSnow.c at some later point in the init process.


Words of wisdom?

Thanks.

Ray

  • Hi Ray,

    Raymond Mack said:

    I can change the #define in EMACSnow.c, but now it is set that way for every project and every CPU that uses EMACSnow.c

    Are you referring to the EMAC_PHY_CONFIG macro defined in EMACSnow.c file ? If yes, you can always modify and include EMACSnow.c in your project. That way the changes will not affect any other project that is using EMACSnow.c file.

    Best,

    Ashish

  • Ashish:

    You are correct about the #define. I am changing from "_AN_" to "_FORCE_" to force 100 Mbps rather than have it auto-negotiate.

    Tried copying EMACSnow.c into my project, but it causes issues. There are likely a  lot of configuration things that get built through the XDC system when the driver library is built.  Just copying EMACSnow.c and EMACSnow.h into my project gave errors on type definitions.

    Ray

  • Hi Ray,

    You should be able to copy EMACSnow.c and EMACSnow.h into your project and make it work. Can you try the following steps ?

    Create a ti->drivers->emac directory hierarchy in your project and copy the EMACSnow.c and EMACSnow.h files into the emac directory.

    Add the project directory to the #include search path through {RightClick on Project}->Properties->Build->Arm Compiler->Include Options window. This will ensure EMACSnow.h file can be found.

    Best,

    Ashish