summaryrefslogtreecommitdiff
path: root/examples/imx7_colibri_m4/demo_apps/hello_world/armgcc/CMakeLists.txt
diff options
context:
space:
mode:
authorStefan Agner <stefan.agner@toradex.com>2017-05-12 16:23:51 -0700
committerStefan Agner <stefan.agner@toradex.com>2017-05-16 12:34:26 -0700
commitcc59882c7f0efe34baecd6ff68e1b2053a492112 (patch)
tree7036019e0cf719b6ac2f94a93a9f4f9df62ee549 /examples/imx7_colibri_m4/demo_apps/hello_world/armgcc/CMakeLists.txt
parenta1efb7f2ebf90307a692a1f54a03bd14714371f5 (diff)
restore stackpointer in vector table
When using the elf file format the vector table gets linked directly to 0x0 (0x180000 for data bus/A7 bus). U-Boots bootaux command tries to be helpful and writes the start address to that location (since this was necessary for binary files which have a relocated vector table). This is not usually a problem, since we restore the stack pointer imeaditly at the beginning. However, the FreeRTOS port code relies on a complete vector table (see prvPortStartFirstTask in Source/portable/GCC/ARM_CM4F/port.c). This needs to be fixed in U-Boot: U-Boot should not write into the vector table if it is provided by the elf binary. For now, work around by restoring the stack pointer entry in the vector table in the firmware startup code. Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
Diffstat (limited to 'examples/imx7_colibri_m4/demo_apps/hello_world/armgcc/CMakeLists.txt')
0 files changed, 0 insertions, 0 deletions