uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(44):Out of memory
2009-01-19 11:00
357 查看
快乐虾 http://blog.csdn.net/lights_joy/ lights@hb165.com
本文适用于
ADI bf561 DSP
优视BF561EVB开发板
uclinux-2008r1.5-rc3(smp patch)
Visual DSP++ 5.0(update 5)
欢迎转载,但请保留作者信息
有一个错误:
[Error li1040] "./uclinux.ldf":581 Out of memory in output section 'L1_code' in processor 'p0'
Total of 0xc2 word(s) were not mapped.
For more details, see 'linker_log.xml' in the output directory.
看看L1_code里面放了什么东西:
L1_code
{
INPUT_SECTION_ALIGN(4)
__stext_l1 = .;
__CORE = 0;
INPUT_SECTIONS($OBJECTS_CORE_A(L1_code) $LIBRARIES_CORE_A(L1_code))
/*$VDSG<insert-input-sections-at-the-start-of-l1_code> */
/* Text inserted between these $VDSG comments will be preserved */
/*$VDSG<insert-input-sections-at-the-start-of-l1_code> */
INPUT_SECTIONS($OBJECTS_CORE_A(VDK_ISR_code) $LIBRARIES_CORE_A(VDK_ISR_code))
INPUT_SECTIONS($OBJECTS_CORE_A(cplb) $LIBRARIES_CORE_A(cplb))
INPUT_SECTIONS($OBJECTS_CORE_A(cplb_code) $LIBRARIES_CORE_A(cplb_code))
INPUT_SECTIONS($OBJECTS_CORE_A(noncache_code) $LIBRARIES_CORE_A(noncache_code))
INPUT_SECTIONS($OBJS_LIBS_INTERNAL_CORE_A(program))
INPUT_SECTIONS($OBJS_LIBS_NOT_EXTERNAL_CORE_A(program))
INPUT_SECTIONS($OBJECTS_CORE_A(program) $LIBRARIES_CORE_A(program))
/*$VDSG<insert-input-sections-at-the-end-of-l1_code> */
/* Text inserted between these $VDSG comments will be preserved */
/*$VDSG<insert-input-sections-at-the-end-of-l1_code> */
INPUT_SECTIONS($LIBRARIES_CORE_A(.l1.text))
INPUT_SECTION_ALIGN(4)
__etext_l1 = (. + 3) / 4 * 4;
} > MEM_A_L1_CODE
把L1_code和program段的内容移到uclinux_text中:
uclinux_text
{
__text = .;
_text = .;
__stext = .;
INPUT_SECTIONS($OBJECTS_CORE_A(L1_code) $LIBRARIES_CORE_A(L1_code))
INPUT_SECTIONS($OBJS_LIBS_INTERNAL_CORE_A(program))
INPUT_SECTIONS($OBJS_LIBS_NOT_EXTERNAL_CORE_A(program))
INPUT_SECTIONS($OBJECTS_CORE_A(program) $LIBRARIES_CORE_A(program))
/*
TEXT_TEXT
SCHED_TEXT
LOCK_TEXT
KPROBES_TEXT
*(.text.*)
*(.fixup)
. = ALIGN(16);
___start___ex_table = .;
*(__ex_table)
___stop___ex_table = .;
*/
INPUT_SECTION_ALIGN(4)
__etext = .;
} > MEM_UCLINUX_TEXT
uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(40):远调用(2009-1-17)
uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(41):bfin_write_EVT15(2009-1-17)
uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(42):.macro(2009-1-17)
uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(43):exception_stacks(2009-1-18)
本文适用于
ADI bf561 DSP
优视BF561EVB开发板
uclinux-2008r1.5-rc3(smp patch)
Visual DSP++ 5.0(update 5)
欢迎转载,但请保留作者信息
有一个错误:
[Error li1040] "./uclinux.ldf":581 Out of memory in output section 'L1_code' in processor 'p0'
Total of 0xc2 word(s) were not mapped.
For more details, see 'linker_log.xml' in the output directory.
看看L1_code里面放了什么东西:
L1_code
{
INPUT_SECTION_ALIGN(4)
__stext_l1 = .;
__CORE = 0;
INPUT_SECTIONS($OBJECTS_CORE_A(L1_code) $LIBRARIES_CORE_A(L1_code))
/*$VDSG<insert-input-sections-at-the-start-of-l1_code> */
/* Text inserted between these $VDSG comments will be preserved */
/*$VDSG<insert-input-sections-at-the-start-of-l1_code> */
INPUT_SECTIONS($OBJECTS_CORE_A(VDK_ISR_code) $LIBRARIES_CORE_A(VDK_ISR_code))
INPUT_SECTIONS($OBJECTS_CORE_A(cplb) $LIBRARIES_CORE_A(cplb))
INPUT_SECTIONS($OBJECTS_CORE_A(cplb_code) $LIBRARIES_CORE_A(cplb_code))
INPUT_SECTIONS($OBJECTS_CORE_A(noncache_code) $LIBRARIES_CORE_A(noncache_code))
INPUT_SECTIONS($OBJS_LIBS_INTERNAL_CORE_A(program))
INPUT_SECTIONS($OBJS_LIBS_NOT_EXTERNAL_CORE_A(program))
INPUT_SECTIONS($OBJECTS_CORE_A(program) $LIBRARIES_CORE_A(program))
/*$VDSG<insert-input-sections-at-the-end-of-l1_code> */
/* Text inserted between these $VDSG comments will be preserved */
/*$VDSG<insert-input-sections-at-the-end-of-l1_code> */
INPUT_SECTIONS($LIBRARIES_CORE_A(.l1.text))
INPUT_SECTION_ALIGN(4)
__etext_l1 = (. + 3) / 4 * 4;
} > MEM_A_L1_CODE
把L1_code和program段的内容移到uclinux_text中:
uclinux_text
{
__text = .;
_text = .;
__stext = .;
INPUT_SECTIONS($OBJECTS_CORE_A(L1_code) $LIBRARIES_CORE_A(L1_code))
INPUT_SECTIONS($OBJS_LIBS_INTERNAL_CORE_A(program))
INPUT_SECTIONS($OBJS_LIBS_NOT_EXTERNAL_CORE_A(program))
INPUT_SECTIONS($OBJECTS_CORE_A(program) $LIBRARIES_CORE_A(program))
/*
TEXT_TEXT
SCHED_TEXT
LOCK_TEXT
KPROBES_TEXT
*(.text.*)
*(.fixup)
. = ALIGN(16);
___start___ex_table = .;
*(__ex_table)
___stop___ex_table = .;
*/
INPUT_SECTION_ALIGN(4)
__etext = .;
} > MEM_UCLINUX_TEXT
1 参考资料
uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(39):CONFIG_BASE_SMALL(2009-1-16)uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(40):远调用(2009-1-17)
uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(41):bfin_write_EVT15(2009-1-17)
uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(42):.macro(2009-1-17)
uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(43):exception_stacks(2009-1-18)
相关文章推荐
- uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(56):L1 data memory overflow
- uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(69):SHARED_MEMORY
- uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(1):前言
- uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(5):'bf561.h'的问题
- uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(17):__bss_start
- uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(22):IRQ_PLL_WAKEUP
- uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(33):.l1.text
- uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(50):.spinlock.text
- uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(53):ARRAY_SIZE
- uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(2):代码注释
- uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(6):CONFIG_BFIN_KERNEL_CLOCK
- uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(10):CONFIG_FLASH_SPEED_BTT
- uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(23):PREEMPT_ACTIVE is too low
- uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(26):abs
- uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(29):cmdline_init
- uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(43):exception_stacks
- uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(48):__start___param
- uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(60):KBUILD_MODNAME
- uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(66):_ebss_l1
- uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(71):l1_data_sram_init的疑惑