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.

TM4C1294NCPDT has serious problems in EMAC initialization

Other Parts Discussed in Thread: EK-TM4C1294XL

Hi

I am developing an UDP server using TM4C1294XL board.

After several tests, using the "SDOCM00107378: NDK examples for EK-TM4C1294XL do not work" code, I found that with or without this code, the EMAC freezes in some compilation. In other words, if I add some code in my program, after compilation and debugging it, sometimes it freezes the ethernet communication. Even if the code added is not related with communication.

So, I am wondering if this problem is not related as a BYTE ALIGNMENT in object code. As example, when the EMAC freezes, I add or delete the additional line in code below:


UInt32 ui32FlashConf;

ui32FlashConf = HWREG(0x400FDFC8);          // add or delete if EMAC freezing occurs
ui32FlashConf = HWREG(0x400FDFC8);
ui32FlashConf &= ~(0x00020000);
ui32FlashConf |= 0x00010000;
HWREG(0x400FDFC8) = ui32FlashConf;

Doing this, my program run perfectly.

Could someone enlight this issue, please?

Thank you.

  • Sergio,

    Where are you adding this code? Note: the fix was placed into the EMACSnow driver. The pre-fetch is disabled (if not already disabled) in the EMACSnow_NIMUInit function and then enabled (if not previously disabled) in the EMACSnow_emacStart. You should not have to add any management of the pre-fetch in 2.00.02.36 (and later). The issue did appear to be a byte alignment issue with the EMAC and pre-fetch.

    Todd

  • Todd

    I am using the udpEcho example and this piece of code was already there in main(). Remember that I was using old version of TI-RTOS ( 2. 0.1 23) and the examples are old too.

    So, what I done was uninstalled CCSv6 and reinstalled it again ( with anti-virus disabled ). In Windows 8.1 64 bits.

    Now I can reach TI-RTOS 2.10.1.38 and new examples, very different from previous.

    But, I don't know why, this actual installation refuses to compile due following error:

    error #10269: output file "udpEcho_TivaTM4C1294NCPDT.out" exceeds code size limit
    error #10010: errors encountered during linking; "udpEcho_TivaTM4C1294NCPDT.out" not built

    More strange also, is that I did the same in other computer with Windows 7 64 bits, just to be sure that the issue could be solved with reinstallation, and the same code ( udpEcho ) compiles to end without problem. I tested this code into Tm4C1294XL launchpad connected in this W7 computer.

    Anyway, I posted another thread in CCS forum regarding this error, so, if you prefer, I can wait for support in that forum.

    Thank you very much.

    Sergio
  • Hi Sergio,

    Do you have an evaulation copy of CCS?\

    Todd

  • Todd

    I have a FREE LICENSE.

    Accordingly with TI marketing, the CCSv6 is free to be used with TM4C1294XL launchpad. I understand that this means without limit of code size.

    As I told you in previous e-mail, in Windows 7 64 bits, I can compile without problem all the examples. The problem appeared in Windows 8 64 bits. In this same W8 computer, the previous installation was compiling without problem.

    If there is limit of code size, what is this limit?

    Thanks

    Sergio
  • Todd

    I uninstalled CCSv6.0.1 and installed CCSv6.1 and the compilation problem disappeared. Very probable this issue is due W8.1, not CCS.

    As I can use TI-RTOS 2.10.1.38, the new example of udpEcho does not have that piece of code to disable flash prefetch, so, hope, I can proceed with my development.

    You can consider my issue solved.

    Thank you very much.

    Sergio