FreeRTOS for 2156x

Hi all:

 I'm evaluating the FreeRTOS on the 2156x EZ-kit.

The demo code I run was the demo code provided by ADI in the FreeRTOS add-in.

I was unable to pause and resume the program, it will get stuck in the PC of 0x7ba780. as pic follows:

any suggestions?

  • 0
    •  Analog Employees 
    on Apr 9, 2020 1:33 PM

    Hi Sheng,

    Thanks for your information and may I get which version of ADI FreeRTOS and CCES (CrossCore® Embedded Studio) you are using?

    Currently:

    There is also a document that Running the Examples on the ADSP-21569 EZ-Kit in the FreeRTOS User's Guide of Docs/adi_freertos_user_guide.pdf, I hope this is helpful.

    As for the error you mentioned, I'm sorry that I can not make sure what caused it from the attached diagram now, so may I get the versions you are using first?

    Thanks Again and if here is any questions or requirements, please let me know.

    Best Regards!

    Sullivan

  • hey Sullivan:

    thanks for your timely reply. 

    • Currently, I'm using the FreeRTOS version of 1.4.0, because any version below it does not support 21569.
    •  CCES is 2.9.1. 

    Also, I was able to run freeRTOS on BF70x and SC573 without that debug pause issue.

    I tacked down to the port ASM for 21569 , line 905. these code cause the pc fleet as far as I know

    /* DAG1 High registers, load using system I11 */
    B7 = PM(LOC(B7), I11); /* clobbers I7' */
    B6 = PM(LOC(B6), I11);
    B5 = PM(LOC(B5), I11);
    B4 = PM(LOC(B4), I11);
    L7 = PM(LOC(L7), I11);
    L6 = PM(LOC(L6), I11);
    L5 = PM(LOC(L5), I11);
    L4 = PM(LOC(L4), I11);
    M7 = PM(LOC(M7), I11);
    M6 = PM(LOC(M6), I11);
    M5 = PM(LOC(M5), I11);
    M4 = PM(LOC(M4), I11);
    I6 = PM(LOC(I6), I11);

  • 0
    •  Analog Employees 
    on Apr 10, 2020 12:06 PM in reply to sheng zhang

    Hi Sheng,

    Thanks for this information your great contribution! 

    Following your comments, I set up the configuration (same as yours) again and the ADSP-21569 FreeRTOS example runs well on my side, here is my project and test log for your reference :

    21569 project:

    1803.SHARC_ADSP_21569_CCES.zip

    Test log:

    Loading application: "C:\Analog Devices\CrossCore Embedded Studio 2.9.1\SHARC\ldr\ezkit21569_preload.dxe"
    Load complete.
    Loading application: "C:\Analog Devices\FreeRTOS\FreeRTOS_1.4.0_20200410\FreeRTOSv10.0.0\FreeRTOS\Demo\SHARC_ADSP_21569_CCES\RTOSDemo_CCES_SHARC_21569\Debug\RTOSDemo_CCES_SHARC_21569.dxe"
    Load complete.
    Test passed
    Test passed
    Test passed
    

    And could you please help me double check whether the attached 21569 FreeRTOS project can run (without rebuild) on your evaluation board. 

    If you do not mind, may I get your project?  You can upload it on this page with the xxx.zip format or via the email: processor.tools.support@analog.com 

    Thanks & Regards!

    Sullivan

  • Hey Sullivan,

    I can always get the "Test passed" string printed out on my side with the demo code in the adi_freeRTOS.zip.The problem is when I pause the running project, the PC shall fleet.

    Can you pause your code in the debug section?

    I ran your .dxe file and paused, still getting the pc 0x7ba780

    any suggestions?

    cheers,

    Sheng Zhang

  • 0
    •  Analog Employees 
    on Apr 14, 2020 4:19 AM in reply to sheng zhang

    Hi Sheng,

    Following your comments, I tried again, and I was able to pause ( suspend (shift + F5) ) the running  project in the debug section:

    Any mistake in my operations ?

    And, could you please upload a built project to let me check it on my board ?  I suspect this may a hardware or compiler problem,  if so, I will consult the relevant colleagues to solve it for you.

    Thanks Again!

    Cheers

    Sullivan