Porting FreeRTOS/lwIP/HTTPD for NXP1769 from CodeRed
I'm porting a CodeRed/Eclipse project to Crossworks. I have reused the FreeRTOS/uip project from FreeRTOS.org as the template. Thus we have LP1700_Startup.s and thumb_crt0.s for the start up files. I can upload the project if that is helpful.
Issue 1:
THUMB Flash Debug/RTOSDemo.elf section `.text.NVIC_SetPriorityGrouping' will not fit in region `UNPLACED_SECTIONS'
First is to do with sections, is UNPLACED_SECTIONS the default?
region `UNPLACED_SECTIONS' overflowed by 140745 bytes
I'm guessing the overflow error is for real, but that can wait until the next round
Issue 2:
THUMB Flash Debug/main.o: In function `prvManuallyPlaceLargeDataInAHBRAM':
undefined reference to `__top_RamAHB32'
undefined reference to `__top_RamAHB32'
In a CodeRed project this is found in the linker file - what is the Crossworks equivalent?
Issue 3:
THUMB Flash Debug/thumb_crt0.o: In function `__putchar':
undefined reference to `__stack_end__'
undefined reference to `__data_load_start__'
undefined reference to `__data_start__'
undefined reference to `__data_end__'
undefined reference to `__text_load_start__'
undefined reference to `__text_start__'
undefined reference to `__text_end__'
undefined reference to `__fast_load_start__'
undefined reference to `__fast_start__'
undefined reference to `__fast_end__'
undefined reference to `__ctors_load_start__'
undefined reference to `__ctors_start__'
undefined reference to `__ctors_end__'
undefined reference to `__dtors_load_start__'
undefined reference to `__dtors_start__'
undefined reference to `__dtors_end__'
undefined reference to `__rodata_load_start__'
undefined reference to `__rodata_start__'
undefined reference to `__rodata_end__'
undefined reference to `__bss_start__'
undefined reference to `__bss_end__'
undefined reference to `__heap_start__'
undefined reference to `__heap_end__'
THUMB Flash Debug/LPC1700_Startup.o:(.vectors+0x0): undefined reference to `__stack_end__'
This is puzzling as the startup code in thumb_crt0 is identical. Any thoughts?
Many thanks.
-
[Solved] OK, so this is due to the lack of a flash placement file (flash_placement.xml) from the project. I had omitted to include this when copying the template. Thanks to Paul@Rowley for the tip.
The __top_RamAHB32 is defined in the Code Red generated linker definition files. It is simply the address of the 176X AHB SRAM (0x2007C00) plus 0x8000 which is the 32K byte capacity.
Please sign in to leave a comment.
Comments
1 comment