Running project in SDRAM on AT91SAM9RL64
Hi,
I have a board based on the Atmel AT91SAM9RL64-EK processor, and I am trying to run the sample projects but am not having success when I want the program to run from SDRAM or Flash.
I started with the "led" sample project. When I select ISRAM as the placement, I am able to download and debug the project successfully. When I select SDRAM as the placement and attempt to debug, the verification fails, and the debugger indicates that the code is stuck in an infinite loop. (The program is at 0x003007b4, which contains an unconditional branch to 0x003007b4).
When I select FLASH as the placement and attempt to build the project, I get several errors from the linker:
"C:/Program Files (x86)/Rowley Associates Limited/CrossWorks for ARM 2.3/gcc/arm-unknown-elf/bin/ld" -X -ereset_handler --omagic -defsym=__do_debug_operation=__do_debug_operation_dcc -u__do_debug_operation_dcc -defsym=__vfprintf=__vfprintf_int -u__vfprintf_int -defsym=__vfscanf=__vfscanf_int -u__vfscanf_int --fatal-warnings -EL --gc-sections "-TC:/Users/davidq/AppData/Local/Rowley Associates Limited/CrossWorks for ARM/packages/samples/Atmel_AT91SAM9RL_EK/ARM Debug/led.ld" -Map "ARM Debug/led.map" -u_vectors -o "ARM Debug/led.elf" --start-group "ARM Debug/led.o" "ARM Debug/crt0.o" "ARM Debug/ARMDIDebugHandler.o" "ARM Debug/AT91SAM9_Startup.o" "ARM Debug/AIC.o" "ARM Debug/AIC_irq_handler.o" "ARM Debug/AT91SAM9RL_EK.o" "C:/Program Files (x86)/Rowley Associates Limited/CrossWorks for ARM 2.3/lib/libarm_v5te_a_le.a" "C:/Program Files (x86)/Rowley Associates Limited/CrossWorks for ARM 2.3/lib/libm_v5te_a_le.a" "C:/Program Files (x86)/Rowley Associates Limited/CrossWorks for ARM 2.3/lib/libc_v5te_a_le.a" "C:/Program Files (x86)/Rowley Associates Limited/CrossWorks for ARM 2.3/lib/libcpp_v5te_a_le.a" "C:/Program Files (x86)/Rowley Associates Limited/CrossWorks for ARM 2.3/lib/libdebugio_v5te_a_le.a" "C:/Program Files (x86)/Rowley Associates Limited/CrossWorks for ARM 2.3/lib/libc_targetio_impl_v5te_a_le.a" "C:/Program Files (x86)/Rowley Associates Limited/CrossWorks for ARM 2.3/lib/libc_user_libc_v5te_a_le.a" --end-group
C:/Program Files (x86)/Rowley Associates Limited/CrossWorks for ARM 2.3/gcc/arm-unknown-elf/bin/ld: ARM Debug/led.elf section `.text.main' will not fit in region `UNPLACED_SECTIONS'
C:/Program Files (x86)/Rowley Associates Limited/CrossWorks for ARM 2.3/gcc/arm-unknown-elf/bin/ld: region `UNPLACED_SECTIONS' overflowed by 7069 bytes
ARM Debug/crt0.o: In function `__putchar':
C:/Program Files (x86)/Rowley Associates Limited/CrossWorks for ARM 2.3/source/crt0.s:341: undefined reference to `__data_load_start__'
C:/Program Files (x86)/Rowley Associates Limited/CrossWorks for ARM 2.3/source/crt0.s:341: undefined reference to `__data_start__'
C:/Program Files (x86)/Rowley Associates Limited/CrossWorks for ARM 2.3/source/crt0.s:341: undefined reference to `__data_end__'
C:/Program Files (x86)/Rowley Associates Limited/CrossWorks for ARM 2.3/source/crt0.s:341: undefined reference to `__text_load_start__'
C:/Program Files (x86)/Rowley Associates Limited/CrossWorks for ARM 2.3/source/crt0.s:341: undefined reference to `__text_start__'
C:/Program Files (x86)/Rowley Associates Limited/CrossWorks for ARM 2.3/source/crt0.s:341: undefined reference to `__text_end__'
C:/Program Files (x86)/Rowley Associates Limited/CrossWorks for ARM 2.3/source/crt0.s:341: undefined reference to `__fast_load_start__'
C:/Program Files (x86)/Rowley Associates Limited/CrossWorks for ARM 2.3/source/crt0.s:341: undefined reference to `__fast_start__'
C:/Program Files (x86)/Rowley Associates Limited/CrossWorks for ARM 2.3/source/crt0.s:341: undefined reference to `__fast_end__'
C:/Program Files (x86)/Rowley Associates Limited/CrossWorks for ARM 2.3/source/crt0.s:341: undefined reference to `__ctors_load_start__'
C:/Program Files (x86)/Rowley Associates Limited/CrossWorks for ARM 2.3/source/crt0.s:341: undefined reference to `__ctors_start__'
C:/Program Files (x86)/Rowley Associates Limited/CrossWorks for ARM 2.3/source/crt0.s:341: undefined reference to `__ctors_end__'
C:/Program Files (x86)/Rowley Associates Limited/CrossWorks for ARM 2.3/source/crt0.s:341: undefined reference to `__dtors_load_start__'
C:/Program Files (x86)/Rowley Associates Limited/CrossWorks for ARM 2.3/source/crt0.s:341: undefined reference to `__dtors_start__'
C:/Program Files (x86)/Rowley Associates Limited/CrossWorks for ARM 2.3/source/crt0.s:341: undefined reference to `__dtors_end__'
C:/Program Files (x86)/Rowley Associates Limited/CrossWorks for ARM 2.3/source/crt0.s:341: undefined reference to `__rodata_load_start__'
C:/Program Files (x86)/Rowley Associates Limited/CrossWorks for ARM 2.3/source/crt0.s:341: undefined reference to `__rodata_start__'
C:/Program Files (x86)/Rowley Associates Limited/CrossWorks for ARM 2.3/source/crt0.s:341: undefined reference to `__rodata_end__'
ARM Debug/AT91SAM9_Startup.o: In function `fiq_handler':
C:/Users/davidq/AppData/Local/Rowley Associates Limited/CrossWorks for ARM/packages/targets/AT91SAM9/AT91SAM9_Startup.s:383: undefined reference to `__FLASH_segment_start__'
C:/Users/davidq/AppData/Local/Rowley Associates Limited/CrossWorks for ARM/packages/targets/AT91SAM9/AT91SAM9_Startup.s:383: undefined reference to `__FLASH_segment_end__'
Starting from scratch and creating new projects and attempting to load them onto the device produces the same results. What am I doing wrong, or what more do I need to do so that I can successfully download and debug programs in SDRAM and FLASH on my board?
Please sign in to leave a comment.
Comments
0 comments