Hi Everybody,
I’m trying to setup FreeRTOS on the ADC-SoC board from Terasic which use the Cyclone V.
So I tried to use the Demo “CORTEX_A9_Cyclone_V_SoC_DK” but when I tried to build it I had a lot of errors. And for now I still have some. (I already worked on FreeRTOS with a STM32F446RE but I didn’t have to do the setup like here).
That’s why I’m asking your help today.
Context:
Download FreeRTOS Demo from FreeRTOS Website
Use “ARM DS IDE 2021.1” with a license
Toolchain = GCC 7.5.0 [arm-eabi]
Here I describe each steps followed in order to try to solve the problem:
-
Import project from directory and Try to build 1 => Includes error
-
add Includes path in the project properties, try to build 2 => Error: configTASK_NOTIFICATION_ARRAY_ENTRIES to be at least 3
-
Set configTASK_NOTIFICATION_ARRAY_ENTRIES at 3, try to build 3 => Assembly Errors
-
Put all informations (Project properties) -march, mcpu, … = armv7-a ; cortex-a9 ; vfpv3 ; softfp ; Try to build 4 => Error in alt_interrupt_armcc.s
-
Exclude from build alt_interrupt_armcc.s ; Exclude fpga_support.c ; (I saw this step in a Topic on the forum)
-
Error => Undefined ref vApplicationDaemonTaskStartupHook; Undefined ref __cs3_interrupt_vector
-
Set configUSE_DAEMON_TASK_STARTUP_HOOK to 0
-
I tried to add the linker file “cycloneV-dk-ram.ld” (Project Properties) => It appears two errors, one for a file named “arm-named.inc” and one for librairies to use -lcs3 -lcs3unhosted -lcs3arm
-
I found those files in the altera folder for quartus, I decided to copy them in order to put them where needed which solve the previous issue.
Then I had others errors which depend on the “cycloneV-dk-ram.ld” file:
/home/tcwg-buildslave/workspace/tcwg-make-release_0/snapshots/newlib.git~linaro-local~linaro-newlib-2_5_0/newlib/libc/sys/arm/crt0.S:273: undefined reference to initialise_monitor_handles' /home/tcwg-buildslave/workspace/tcwg-make-release_0/snapshots/newlib.git~linaro-local~linaro-newlib-2_5_0/newlib/libc/sys/arm/crt0.S:405: undefined reference to
bss_start’
/home/tcwg-buildslave/workspace/tcwg-make-release_0/snapshots/newlib.git~linaro-local~linaro-newlib-2_5_0/newlib/libc/sys/arm/crt0.S:405: undefined reference to __bss_end__' /home/tcwg-buildslave/workspace/tcwg-make-release_0/snapshots/newlib.git~linaro-local~linaro-newlib-2_5_0/newlib/libc/sys/arm/crt0.S:405: undefined reference to
end’
But I don’t know how to solve them, especially the first one
Does anybody have an idea to help me to solve this problem ? Or does anybody already manage to make this demo work ?
Tell me if you think I did a mistake in the steps above
Thanks a lot in advance for your help !
P.S.: I already searched on the forum topics which talk about FreeRTOS on Cyclone V, some topics helped me to solve some issues or to verify what I made, but i still have some issues.