📄 adsp-bf561_tinyboards.ldf
字号:
#if !defined(USE_SDRAM) && (defined(__cplusplus) || defined(USER_CRT))
INPUT_SECTIONS( $OBJECTS(ctor) $LIBRARIES(ctor) )
INPUT_SECTIONS( $OBJECTS(ctorl) $LIBRARIES(ctorl) )
INPUT_SECTIONS( $OBJECTS(.gdt) $LIBRARIES(.gdt) )
INPUT_SECTIONS( $OBJECTS(.gdtl) $LIBRARIES(.gdtl) )
INPUT_SECTIONS( $OBJECTS(.frt) $LIBRARIES(.frt) )
INPUT_SECTIONS( $OBJECTS(.frtl) $LIBRARIES(.frtl) )
#endif
INPUT_SECTIONS( $OBJS_LIBS_INTERNAL(data1) )
INPUT_SECTIONS( $OBJS_LIBS_NOT_EXTERNAL(data1) )
INPUT_SECTIONS( $OBJECTS(constdata) $LIBRARIES(constdata))
INPUT_SECTIONS( $OBJECTS(voldata) $LIBRARIES(voldata))
INPUT_SECTIONS( $OBJECTS(data1) $LIBRARIES(data1))
#if defined(__cplusplus) || defined(USER_CRT)
INPUT_SECTIONS( $OBJECTS(.edt) $LIBRARIES(.edt) )
INPUT_SECTIONS( $OBJECTS(.cht) $LIBRARIES(.cht) )
INPUT_SECTIONS( $OBJECTS(.rtti) $LIBRARIES(.rtti) )
INPUT_SECTIONS( $OBJECTS(vtbl) $LIBRARIES(vtbl) )
#endif
INPUT_SECTIONS( $OBJECTS(cplb_data) $LIBRARIES(cplb_data))
} >MEM_B_L1_DATA_B
bsz_L1_data_b ZERO_INIT {
INPUT_SECTION_ALIGN(4)
INPUT_SECTIONS( $OBJECTS(L1_bsz) $LIBRARIES(L1_bsz))
INPUT_SECTIONS( $OBJS_LIBS_INTERNAL(bsz) )
INPUT_SECTIONS( $OBJS_LIBS_NOT_EXTERNAL(bsz) )
INPUT_SECTIONS( $OBJECTS(bsz) $LIBRARIES(bsz))
} >MEM_B_L1_DATA_B
#if DATAA_CACHE
l1_data_a_cache {
INPUT_SECTION_ALIGN(4)
___l1_data_cache_a = 1;
} >MEM_B_L1_DATA_A_CACHE
#endif /* DATAA_CACHE */
L1_data_a {
INPUT_SECTION_ALIGN(4)
#if !DATAA_CACHE
___l1_data_cache_a = 0;
#endif
INPUT_SECTIONS( $OBJECTS(L1_data_a) $LIBRARIES(L1_data_a))
INPUT_SECTIONS( $OBJECTS(L1_data) $LIBRARIES(L1_data))
#if !defined(USE_SDRAM)
# if defined(__MEMINIT__)
INPUT_SECTIONS( $OBJECTS(bsz_init) $LIBRARIES(bsz_init))
# endif
#endif
#if USE_L1DATA_STACK && USE_L1DATA_HEAP
RESERVE(stack_and_heap_in_L1_data_a, stack_and_heap_in_L1_data_a_length = STACKHEAP_SIZE, 4)
#elif USE_L1DATA_HEAP
RESERVE(stack_and_heap_in_L1_data_a, stack_and_heap_in_L1_data_a_length = HEAP_SIZE, 4)
#elif USE_L1DATA_STACK
RESERVE(stack_and_heap_in_L1_data_a, stack_and_heap_in_L1_data_a_length = STACK_SIZE, 4)
#endif
INPUT_SECTIONS( $OBJS_LIBS_INTERNAL(data1) )
INPUT_SECTIONS( $OBJS_LIBS_NOT_EXTERNAL(data1) )
INPUT_SECTIONS( $OBJECTS(constdata) $LIBRARIES(constdata))
INPUT_SECTIONS( $OBJECTS(voldata) $LIBRARIES(voldata))
#if defined(__cplusplus) || defined(USER_CRT)
INPUT_SECTIONS( $OBJECTS(.edt) $LIBRARIES(.edt) )
INPUT_SECTIONS( $OBJECTS(.cht) $LIBRARIES(.cht) )
INPUT_SECTIONS( $OBJECTS(.rtti) $LIBRARIES(.rtti) )
INPUT_SECTIONS( $OBJECTS(vtbl) $LIBRARIES(vtbl) )
#endif
INPUT_SECTIONS( $OBJECTS(data1) $LIBRARIES(data1))
INPUT_SECTIONS( $OBJECTS(cplb_data) $LIBRARIES(cplb_data))
} >MEM_B_L1_DATA_A
bsz_L1_data_a ZERO_INIT {
INPUT_SECTION_ALIGN(4)
INPUT_SECTIONS( $OBJECTS(L1_bsz) $LIBRARIES(L1_bsz))
INPUT_SECTIONS( $OBJS_LIBS_INTERNAL(bsz) )
INPUT_SECTIONS( $OBJS_LIBS_NOT_EXTERNAL(bsz) )
INPUT_SECTIONS( $OBJECTS(bsz) $LIBRARIES(bsz))
} >MEM_B_L1_DATA_A
#if defined(__MEMINIT__) && !defined(USE_SDRAM)
.meminit { ALIGN(4) } >MEM_B_L1_DATA_A
#endif
#if USE_L1DATA_STACK || USE_L1DATA_HEAP
stack_and_heap_L1_data_a
{
INPUT_SECTION_ALIGN(4)
#if !defined(__MEMINIT__) && !defined(USE_SDRAM)
RESERVE_EXPAND(stack_and_heap_in_L1_data_a, stack_and_heap_in_L1_data_a_length, 0, 4)
#endif
#if USE_L1DATA_STACK && USE_L1DATA_HEAP
ldf_stack_space = stack_and_heap_in_L1_data_a;
ldf_stack_end = (ldf_stack_space + ((stack_and_heap_in_L1_data_a_length * STACK_SIZE) / STACKHEAP_SIZE) - 4 ) & 0xfffffffc;
ldf_heap_space = ldf_stack_end + 4;
ldf_heap_end = ldf_stack_space + stack_and_heap_in_L1_data_a_length;
ldf_heap_length = ldf_heap_end - ldf_heap_space;
#elif USE_L1DATA_STACK
ldf_stack_space = stack_and_heap_in_L1_data_a;
ldf_stack_end = ldf_stack_space + stack_and_heap_in_L1_data_a_length;
#elif USE_L1DATA_HEAP
ldf_heap_space = stack_and_heap_in_L1_data_a;
ldf_heap_end = ldf_heap_space + stack_and_heap_in_L1_data_a_length;
ldf_heap_length = ldf_heap_end - ldf_heap_space;
#endif
} >MEM_B_L1_DATA_A
#endif
L2_sram_b {
INPUT_SECTION_ALIGN(4)
INPUT_SECTIONS( $OBJECTS(L2_sram_b) $LIBRARIES(L2_sram_b))
INPUT_SECTIONS( $OBJECTS(l2_sram) $LIBRARIES(l2_sram))
#if defined(USE_L2_STACK) && defined(USE_L2_HEAP)
RESERVE(stack_and_heap_in_L2_sram_a, stack_and_heap_in_L2_sram_a_length = STACKHEAP_SIZE, 4)
#elif defined(USE_L2_HEAP)
RESERVE(stack_and_heap_in_L2_sram_a, stack_and_heap_in_L2_sram_a_length = HEAP_SIZE, 4)
#elif defined(USE_L2_STACK)
RESERVE(stack_and_heap_in_L2_sram_a, stack_and_heap_in_L2_sram_a_length = STACK_SIZE, 4)
#endif
#if defined(__ADI_MULTICORE)
INPUT_SECTIONS( $OBJECTS(mc_data) $LIBRARIES(mc_data))
#endif /* __ADI_MULTICORE */
INPUT_SECTIONS( $OBJECTS(cplb) $LIBRARIES(cplb))
INPUT_SECTIONS( $OBJECTS(cplb_code) $LIBRARIES(cplb_code))
INPUT_SECTIONS( $OBJS_LIBS_INTERNAL(program) )
INPUT_SECTIONS( $OBJS_LIBS_INTERNAL(data1) )
INPUT_SECTIONS( $OBJS_LIBS_NOT_EXTERNAL(program) )
INPUT_SECTIONS( $OBJS_LIBS_NOT_EXTERNAL(data1) )
INPUT_SECTIONS( $OBJECTS(constdata) $LIBRARIES(constdata))
INPUT_SECTIONS( $OBJECTS(voldata) $LIBRARIES(voldata))
INPUT_SECTIONS( $OBJECTS(noncache_code) $LIBRARIES(noncache_code))
INPUT_SECTIONS( $OBJECTS(program) $LIBRARIES(program))
INPUT_SECTIONS( $OBJECTS(data1) $LIBRARIES(data1))
#if defined(__cplusplus) || defined(USER_CRT)
INPUT_SECTIONS( $OBJECTS(.edt) $LIBRARIES(.edt) )
INPUT_SECTIONS( $OBJECTS(.cht) $LIBRARIES(.cht) )
INPUT_SECTIONS( $OBJECTS(.rtti) $LIBRARIES(.rtti) )
INPUT_SECTIONS( $OBJECTS(vtbl) $LIBRARIES(vtbl) )
#endif
INPUT_SECTIONS( $OBJECTS(cplb_data) $LIBRARIES(cplb_data))
} >MEM_L2_SRAM_B
bsz_L2_sram_b ZERO_INIT {
INPUT_SECTION_ALIGN(4)
INPUT_SECTIONS( $OBJECTS(L2_bsz) $LIBRARIES(L2_bsz))
INPUT_SECTIONS( $OBJS_LIBS_INTERNAL(bsz) )
INPUT_SECTIONS( $OBJS_LIBS_NOT_EXTERNAL(bsz) )
INPUT_SECTIONS( $OBJECTS(bsz) $LIBRARIES(bsz))
} >MEM_L2_SRAM_B
#if defined(USE_L2_STACK) || defined(USE_L2_HEAP)
stack_heap_L2_sram_b
{
RESERVE_EXPAND(stack_and_heap_in_L2_sram_b, stack_and_heap_in_L2_sram_b_length, 0, 4)
#if defined(USE_L2_STACK) && defined(USE_L2_HEAP)
ldf_stack_space = stack_and_heap_in_L2_sram_b;
ldf_stack_end = (ldf_stack_space + ((stack_and_heap_in_L2_sram_b_length * STACK_SIZE) / STACKHEAP_SIZE) - 4 ) & 0xfffffffc;
ldf_heap_space = ldf_stack_end + 4;
ldf_heap_end = ldf_stack_space + stack_and_heap_in_L2_sram_b_length;
ldf_heap_length = ldf_heap_end - ldf_heap_space;
#elif defined(USE_L2_STACK)
ldf_stack_space = stack_and_heap_in_L2_sram_b;
ldf_stack_end = ldf_stack_space + stack_and_heap_in_L2_sram_b_length;
#elif defined(USE_L2_HEAP)
ldf_heap_space = stack_and_heap_in_L2_sram_b;
ldf_heap_end = ldf_heap_space + stack_and_heap_in_L2_sram_b_length;
ldf_heap_length = ldf_heap_end - ldf_heap_space;
#endif
} >MEM_L2_SRAM_B
#endif /* USE_L2_STACK || USE_L2_HEAP */
#if defined(USE_SDRAM)
sdram1_bank0
{
INPUT_SECTION_ALIGN(4)
INPUT_SECTIONS( $OBJECTS(sdram1) $LIBRARIES(sdram1))
INPUT_SECTIONS( $OBJECTS(sdram1_bank0) $LIBRARIES(sdram1_bank0))
#if defined(USE_SDRAM_STACK) && defined(USE_SDRAM_HEAP)
RESERVE(stack_and_heap_in_sdram1, stack_and_heap_in_sdram1_length = STACKHEAP_SIZE, 4)
#elif defined(USE_SDRAM_STACK)
RESERVE(stack_and_heap_in_sdram1, stack_and_heap_in_sdram1_length = STACK_SIZE, 4)
#elif defined(USE_SDRAM_HEAP)
RESERVE(stack_and_heap_in_sdram1, stack_and_heap_in_sdram1_length = HEAP_SIZE, 4)
#else
INPUT_SECTIONS( $OBJECTS(noncache_code) $LIBRARIES(noncache_code))
INPUT_SECTIONS( $OBJECTS(program) $LIBRARIES(program))
#endif
} >MEM_SDRAM1_BANK0
#if defined(USE_SDRAM_STACK) || defined(USE_SDRAM_HEAP)
stack_heap_sdram1_bank0
{
INPUT_SECTION_ALIGN(4)
RESERVE_EXPAND(stack_and_heap_in_sdram1, stack_and_heap_in_sdram1_length, 0, 4)
#if defined(USE_SDRAM_STACK) && defined(USE_SDRAM_HEAP)
ldf_stack_space = stack_and_heap_in_sdram1;
ldf_stack_end = (ldf_stack_space + ((stack_and_heap_in_sdram1_length * STACK_SIZE) / STACKHEAP_SIZE) - 4 ) & 0xfffffffc;
ldf_heap_space = ldf_stack_end + 4;
ldf_heap_end = ldf_stack_space + stack_and_heap_in_sdram1_length;
ldf_heap_length = ldf_heap_end - ldf_heap_space;
#elif defined(USE_SDRAM_STACK)
ldf_stack_space = stack_and_heap_in_sdram1;
ldf_stack_end = ldf_stack_space + stack_and_heap_in_sdram1_length;
#elif defined(USE_SDRAM_HEAP)
ldf_heap_space = stack_and_heap_in_sdram1;
ldf_heap_end = ldf_heap_space + stack_and_heap_in_sdram1_length;
ldf_heap_length = ldf_heap_end - ldf_heap_space;
#endif
} >MEM_SDRAM1_BANK0
#endif
sdram1_bank1 {
// Data
INPUT_SECTION_ALIGN(4)
INPUT_SECTIONS( $OBJECTS(sdram1_bank1) $LIBRARIES(sdram1_bank1))
INPUT_SECTIONS( $OBJECTS(sdram_data) $LIBRARIES(sdram_data))
#if defined(__cplusplus) || defined(USER_CRT)
INPUT_SECTIONS( $OBJECTS(.frt) $LIBRARIES(.frt) )
INPUT_SECTIONS( $OBJECTS(.frtl) $LIBRARIES(.frtl) )
INPUT_SECTIONS( $OBJECTS(ctor) $LIBRARIES(ctor) )
INPUT_SECTIONS( $OBJECTS(ctorl) $LIBRARIES(ctorl) )
INPUT_SECTIONS( $OBJECTS(.gdt) $LIBRARIES(.gdt) )
INPUT_SECTIONS( $OBJECTS(.gdtl) $LIBRARIES(.gdtl) )
#endif
INPUT_SECTIONS( $OBJECTS(data1) $LIBRARIES(data1))
INPUT_SECTIONS( $OBJECTS(voldata) $LIBRARIES(voldata))
INPUT_SECTIONS( $OBJECTS(cplb_data) $LIBRARIES(cplb_data))
#if defined(__cplusplus) || defined(USER_CRT)
INPUT_SECTIONS( $OBJECTS(.edt) $LIBRARIES(.edt) )
INPUT_SECTIONS( $OBJECTS(.cht) $LIBRARIES(.cht) )
INPUT_SECTIONS( $OBJECTS(.rtti) $LIBRARIES(.rtti) )
INPUT_SECTIONS( $OBJECTS(vtbl) $LIBRARIES(vtbl) )
#endif
} >MEM_SDRAM1_BANK1
sdram1_bank2 {
// Data
INPUT_SECTION_ALIGN(4)
INPUT_SECTIONS( $OBJECTS(sdram1_bank2) $LIBRARIES(sdram1_bank2))
INPUT_SECTIONS( $OBJECTS(sdram1) $LIBRARIES(sdram1))
INPUT_SECTIONS( $OBJECTS(constdata) $LIBRARIES(constdata))
#if defined(IDDE_ARGS)
RESERVE(___argv_string, ___argv_string_length = 0x100, 4)
#endif
#if defined(__MEMINIT__)
INPUT_SECTIONS( $OBJECTS(bsz_init) $LIBRARIES(bsz_init))
#endif
} >MEM_SDRAM1_BANK2
sdram1_bank2_bsz ZERO_INIT {
// Bsz
INPUT_SECTION_ALIGN(4)
INPUT_SECTIONS( $OBJECTS(sdram_bsz) $LIBRARIES(sdram_bsz))
INPUT_SECTIONS( $OBJECTS(bsz) $LIBRARIES(bsz))
} >MEM_SDRAM1_BANK2
#if defined(__MEMINIT__)
.meminit { ALIGN(4) } >MEM_SDRAM1_BANK2
#endif
sdram1_bank3 {
// Program Section
INPUT_SECTION_ALIGN(4)
INPUT_SECTIONS( $OBJECTS(sdram1_bank3) $LIBRARIES(sdram1_bank3))
INPUT_SECTIONS( $OBJECTS(program) $LIBRARIES(program))
INPUT_SECTIONS( $OBJECTS(noncache_code) $LIBRARIES(noncache_code))
} >MEM_SDRAM1_BANK3
sdram_shared {
// Shared section of SDRAM for both cores.
INPUT_SECTION_ALIGN(4)
INPUT_SECTIONS( $OBJECTS(sdram_shared))
// Holds control variable used to ensure atomic file I/O
// Must be in shared memory and NOT cached.
INPUT_SECTIONS( $LIBRARIES(primio_atomic_lock))
} >MEM_SDRAM1_SHARED
overspill_sdram1_bank0
{
INPUT_SECTION_ALIGN(4)
INPUT_SECTIONS( $OBJECTS(program) $LIBRARIES(program))
INPUT_SECTIONS( $OBJECTS(noncache_code) $LIBRARIES(noncache_code))
INPUT_SECTIONS( $OBJECTS(sdram1) $LIBRARIES(sdram1))
INPUT_SECTIONS( $OBJECTS(constdata) $LIBRARIES(constdata))
INPUT_SECTIONS( $OBJECTS(sdram_data) $LIBRARIES(sdram_data))
INPUT_SECTIONS( $OBJECTS(data1) $LIBRARIES(data1))
INPUT_SECTIONS( $OBJECTS(voldata) $LIBRARIES(voldata))
INPUT_SECTIONS( $OBJECTS(cplb_data) $LIBRARIES(cplb_data))
#if defined(__cplusplus) || defined(USER_CRT)
INPUT_SECTIONS( $OBJECTS(.edt) $LIBRARIES(.edt) )
INPUT_SECTIONS( $OBJECTS(.cht) $LIBRARIES(.cht) )
INPUT_SECTIONS( $OBJECTS(.rtti) $LIBRARIES(.rtti) )
INPUT_SECTIONS( $OBJECTS(vtbl) $LIBRARIES(vtbl) )
#endif
} >MEM_SDRAM1_BANK0
overspill_sdram1_bank1
{
INPUT_SECTION_ALIGN(4)
INPUT_SECTIONS( $OBJECTS(program) $LIBRARIES(program))
INPUT_SECTIONS( $OBJECTS(noncache_code) $LIBRARIES(noncache_code))
INPUT_SECTIONS( $OBJECTS(sdram1) $LIBRARIES(sdram1))
INPUT_SECTIONS( $OBJECTS(constdata) $LIBRARIES(constdata))
INPUT_SECTIONS( $OBJECTS(sdram_data) $LIBRARIES(sdram_data))
INPUT_SECTIONS( $OBJECTS(data1) $LIBRARIES(data1))
INPUT_SECTIONS( $OBJECTS(voldata) $LIBRARIES(voldata))
INPUT_SECTIONS( $OBJECTS(cplb_data) $LIBRARIES(cplb_data))
#if defined(__cplusplus) || defined(USER_CRT)
INPUT_SECTIONS( $OBJECTS(.edt) $LIBRARIES(.edt) )
INPUT_SECTIONS( $OBJECTS(.cht) $LIBRARIES(.cht) )
INPUT_SECTIONS( $OBJECTS(.rtti) $LIBRARIES(.rtti) )
INPUT_SECTIONS( $OBJECTS(vtbl) $LIBRARIES(vtbl) )
#endif
} >MEM_SDRAM1_BANK1
overspill_sdram1_bank2
{
INPUT_SECTION_ALIGN(4)
INPUT_SECTIONS( $OBJECTS(program) $LIBRARIES(program))
INPUT_SECTIONS( $OBJECTS(noncache_code) $LIBRARIES(noncache_code))
INPUT_SECTIONS( $OBJECTS(sdram1) $LIBRARIES(sdram1))
INPUT_SECTIONS( $OBJECTS(constdata) $LIBRARIES(constdata))
INPUT_SECTIONS( $OBJECTS(sdram_data) $LIBRARIES(sdram_data))
INPUT_SECTIONS( $OBJECTS(data1) $LIBRARIES(data1))
INPUT_SECTIONS( $OBJECTS(voldata) $LIBRARIES(voldata))
INPUT_SECTIONS( $OBJECTS(cplb_data) $LIBRARIES(cplb_data))
#if defined(__cplusplus) || defined(USER_CRT)
INPUT_SECTIONS( $OBJECTS(.edt) $LIBRARIES(.edt) )
INPUT_SECTIONS( $OBJECTS(.cht) $LIBRARIES(.cht) )
INPUT_SECTIONS( $OBJECTS(.rtti) $LIBRARIES(.rtti) )
INPUT_SECTIONS( $OBJECTS(vtbl) $LIBRARIES(vtbl) )
#endif
} >MEM_SDRAM1_BANK2
overspill_sdram1_bank3
{
INPUT_SECTION_ALIGN(4)
INPUT_SECTIONS( $OBJECTS(program) $LIBRARIES(program))
INPUT_SECTIONS( $OBJECTS(noncache_code) $LIBRARIES(noncache_code))
INPUT_SECTIONS( $OBJECTS(sdram1) $LIBRARIES(sdram1))
INPUT_SECTIONS( $OBJECTS(constdata) $LIBRARIES(constdata))
INPUT_SECTIONS( $OBJECTS(sdram_data) $LIBRARIES(sdram_data))
INPUT_SECTIONS( $OBJECTS(data1) $LIBRARIES(data1))
INPUT_SECTIONS( $OBJECTS(voldata) $LIBRARIES(voldata))
INPUT_SECTIONS( $OBJECTS(cplb_data) $LIBRARIES(cplb_data))
#if defined(__cplusplus) || defined(USER_CRT)
INPUT_SECTIONS( $OBJECTS(.edt) $LIBRARIES(.edt) )
INPUT_SECTIONS( $OBJECTS(.cht) $LIBRARIES(.cht) )
INPUT_SECTIONS( $OBJECTS(.rtti) $LIBRARIES(.rtti) )
INPUT_SECTIONS( $OBJECTS(vtbl) $LIBRARIES(vtbl) )
#endif
} >MEM_SDRAM1_BANK3
#endif /* USE_SDRAM */
}
}
#endif /* COREB */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -