packages/hal/cortexm/stm32/stm3210e_eval/current/include/pkgconf/mlt_cortexm_stm3210e_eval_rom.ldi //eCos memory layout
#include<pkgconf/hal.h> #include<cyg/infra/cyg_type.inc>
MEMORY { sram : ORIGIN = 0x20000000, LENGTH =0x00010000-CYGNUM_HAL_COMMON_INTERRUPTS_STACK_SIZE flash: ORIGIN = 0x08000000, LENGTH = 0x00080000 rom : ORIGIN = 0x64000000, LENGTH = 0x01000000 ram : ORIGIN = 0x68000000, LENGTH = 0x00100000 }
SECTIONS { SECTIONS_BEGIN SECTION_rom_vectors(flash, 0x08000000, LMA_EQ_VMA) SECTION_RELOCS(flash, ALIGN (0x8), LMA_EQ_VMA) SECTION_text(flash, ALIGN (0x8), LMA_EQ_VMA) SECTION_fini(flash, ALIGN (0x8), LMA_EQ_VMA) SECTION_rodata(flash, ALIGN (0x8), LMA_EQ_VMA) SECTION_rodata1(flash, ALIGN (0x8), LMA_EQ_VMA) SECTION_fixup(flash, ALIGN (0x8), LMA_EQ_VMA) SECTION_gcc_except_table(flash, ALIGN (0x8), LMA_EQ_VMA) SECTION_eh_frame(flash, ALIGN (0x8), LMA_EQ_VMA) SECTION_got(flash, ALIGN (0x8), LMA_EQ_VMA) SECTION_sram(sram, 0x20000400, FOLLOWING (.got)) SECTION_data(ram, 0x68000000, FOLLOWING (.sram)) SECTION_bss(ram, ALIGN (0x8), LMA_EQ_VMA) CYG_LABEL_DEFN(__heap1)= ALIGN (0x8); SECTIONS_END }
hal_vsr_table= 0x20000000; hal_virtual_vector_table= hal_vsr_table + 128*4; hal_startup_stack= 0x20000000 + 1024*64; 这里我们可以看到,这个链接管理脚本设置了hal_startup_stack的大小。
|