⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 vdk-bf537.ldf

📁 analog device vdsp LAN driver and examples
💻 LDF
📖 第 1 页 / 共 2 页
字号:
      ldf_heap_length = ldf_heap_end - ldf_heap_space;
#elif defined(USE_SCRATCHPAD_STACK)
      ldf_stack_space = stack_and_heap_in_scratchpad;
      ldf_stack_end = ldf_stack_space + stack_and_heap_in_scratchpad_length;
#elif defined(USE_SCRATCHPAD_HEAP)
      ldf_heap_space = stack_and_heap_in_scratchpad;
      ldf_heap_end = ldf_heap_space + stack_and_heap_in_scratchpad_length;
      ldf_heap_length = ldf_heap_end - ldf_heap_space;
#endif
   } > mem_l1_scratch
#endif

	sec_program
        {
            INPUT_SECTION_ALIGN(4)
            INPUT_SECTIONS( $LIBS(VDK_ISR_code) )
            INPUT_SECTIONS( $OBJS(L1_code) $LIBS(L1_code))
            INPUT_SECTIONS( $OBJS(cplb_code) $LIBS(cplb_code))
            INPUT_SECTIONS( $OBJS(cplb) $LIBS(cplb))
            INPUT_SECTIONS( $OBJS(noncache_code) $LIBS(noncache_code))
            INPUT_SECTIONS( $INPUT_BY_MEM_TYPE(program))
        } >mem_l1_code

        l1_code
        {
            INPUT_SECTION_ALIGN(4)
#if INSTR_CACHE 
            ___l1_code_cache = 1;
#else
            ___l1_code_cache = 0;
            INPUT_SECTIONS( $LIBS(VDK_ISR_code) )
            INPUT_SECTIONS( $OBJS(L1_code) $LIBS(L1_code))
            INPUT_SECTIONS( $OBJS(cplb_code) $LIBS(cplb_code))
            INPUT_SECTIONS( $OBJS(cplb) $LIBS(cplb))
            INPUT_SECTIONS( $INPUT_BY_MEM_TYPE(program))
#endif /* INSTR_CACHE */
        } >mem_l1_code_cache

        data_L1_data_a
        {
            INPUT_SECTION_ALIGN(4)
#if !DATAA_CACHE
            ___l1_data_cache_a = 0;
#endif
            INPUT_SECTIONS( $OBJS(l1_data_a) $LIBS(l1_data_a))
            INPUT_SECTIONS( $OBJS(L1_data_a) $LIBS(L1_data_a))
            INPUT_SECTIONS( $OBJS(l1_data) $LIBS(l1_data))
            INPUT_SECTIONS( $OBJS(L1_data) $LIBS(L1_data))
            INPUT_SECTIONS( $OBJS(.frt) $LIBS(.frt) )
            INPUT_SECTIONS( $OBJS(.frtl) $LIBS(.frtl) )
            INPUT_SECTIONS( $OBJS(ctor) $LIBS(ctor) )
            INPUT_SECTIONS( $OBJS(ctorl) $LIBS(ctorl) )
            INPUT_SECTIONS( $OBJS(.gdt) $LIBS(.gdt) )
            INPUT_SECTIONS( $OBJS(.gdtl) $LIBS(.gdtl) )
            INPUT_SECTIONS( $OBJS(vtbl) $LIBS(vtbl) )
            INPUT_SECTIONS( $OBJS(.rtti) $LIBS(.rtti) )
            INPUT_SECTIONS( $OBJS(.edt) $LIBS(.edt) )
            INPUT_SECTIONS( $OBJS(.cht) $LIBS(.cht) )
            INPUT_SECTIONS( $OBJS(cplb_data) $LIBS(cplb_data))
            INPUT_SECTIONS( $OBJS_LIBS_INTERNAL(data1))
            INPUT_SECTIONS( $OBJS_LIBS_NOT_EXTERNAL(data1))
            INPUT_SECTIONS($OBJS(voldata) $LIBS(voldata))
            INPUT_SECTIONS($OBJS(constdata) $LIBS(constdata))
            INPUT_SECTIONS($OBJS(data1) $LIBS(data1))
        } >mem_l1_data_a

        bsz_L1_data_a ZERO_INIT
        {
            INPUT_SECTION_ALIGN(4)
            INPUT_SECTIONS( $OBJS(L1_bsz) $LIBS(L1_bsz))
            INPUT_SECTIONS( $INPUT_BY_MEM_TYPE(bsz))
        } >mem_l1_data_a

        data_L1_data_b
        {
            INPUT_SECTION_ALIGN(4)
#if !DATAB_CACHE
            ___l1_data_cache_b = 0;
#endif
            INPUT_SECTIONS( $OBJS(l1_data_b) $LIBS(l1_data_b))
            INPUT_SECTIONS( $OBJS(L1_data_b) $LIBS(L1_data_b))
            INPUT_SECTIONS( $OBJS(l1_data) $LIBS(l1_data))
            INPUT_SECTIONS( $OBJS(L1_data) $LIBS(L1_data))
#if defined(__MEMINIT__) && !defined (USE_SDRAM)
            INPUT_SECTIONS( $OBJS(bsz_init) $LIBS(bsz_init))
#endif
#if USE_L1_DATA_HEAP && USE_L1_DATA_STACK
            RESERVE(stack_and_heap_in_L1_data_b, stack_and_heap_in_L1_data_b_length = STACKHEAP_SIZE,4)
#elif USE_L1_DATA_HEAP 
            RESERVE(stack_and_heap_in_L1_data_b, stack_and_heap_in_L1_data_b_length = HEAP_SIZE,4)
#elif USE_L1_DATA_STACK
            RESERVE(stack_and_heap_in_L1_data_b, stack_and_heap_in_L1_data_b_length = STACK_SIZE,4)
#endif
            INPUT_SECTIONS( $OBJS(vtbl) $LIBS(vtbl) )
            INPUT_SECTIONS( $OBJS(.rtti) $LIBS(.rtti) )
            INPUT_SECTIONS( $OBJS(.edt) $LIBS(.edt) )
            INPUT_SECTIONS( $OBJS(.cht) $LIBS(.cht) )
            INPUT_SECTIONS( $OBJS(cplb_data) $LIBS(cplb_data))
            INPUT_SECTIONS( $OBJS_LIBS_INTERNAL(data1))
            INPUT_SECTIONS( $OBJS_LIBS_NOT_EXTERNAL(data1))
            INPUT_SECTIONS($OBJS(voldata) $LIBS(voldata))
            INPUT_SECTIONS($OBJS(constdata) $LIBS(constdata))
            INPUT_SECTIONS($OBJS(data1) $LIBS(data1))
        } >mem_l1_data_b

#if defined(__MEMINIT__) && !defined (USE_SDRAM)
        .meminit { ALIGN(4) } >mem_l1_data_b
#endif

        bsz_L1_data_b ZERO_INIT
        {
            INPUT_SECTION_ALIGN(4)
            INPUT_SECTIONS( $OBJS(L1_bsz) $LIBS(L1_bsz))
            INPUT_SECTIONS( $INPUT_BY_MEM_TYPE(bsz))
        } >mem_l1_data_b

#if USE_L1_DATA_STACK || USE_L1_DATA_HEAP
   stack_and_heap_L1_data_b
   {
      INPUT_SECTION_ALIGN(4)
#if !(defined(__MEMINIT__) && !defined(USE_SDRAM))
      RESERVE_EXPAND(stack_and_heap_in_L1_data_b, stack_and_heap_in_L1_data_b_length,0,4)
#endif
#if USE_L1_DATA_STACK && USE_L1_DATA_HEAP
      ldf_stack_space = stack_and_heap_in_L1_data_b;
      ldf_stack_end = (ldf_stack_space + (stack_and_heap_in_L1_data_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_L1_data_b_length;
      ldf_heap_length = ldf_heap_end - ldf_heap_space;
#elif USE_L1_DATA_STACK
      ldf_stack_space = stack_and_heap_in_L1_data_b;
      ldf_stack_end = ldf_stack_space + stack_and_heap_in_L1_data_b_length;
#elif USE_L1_DATA_HEAP
      ldf_heap_space = stack_and_heap_in_L1_data_b;
      ldf_heap_end = ldf_heap_space + stack_and_heap_in_L1_data_b_length;
      ldf_heap_length = ldf_heap_end - ldf_heap_space;
#endif
   } > mem_l1_data_b
#endif

#if DATAA_CACHE 
        l1_data_a_cache
        {
            INPUT_SECTION_ALIGN(4)
             ___l1_data_cache_a = 1;
        } >mem_l1_data_a_cache
#endif /* } DATAA_CACHE */

#if DATAB_CACHE 
        l1_data_b_cache
        {
            INPUT_SECTION_ALIGN(4)
            ___l1_data_cache_b = 1;
        } >mem_l1_data_b_cache
#endif /* } DATAB_CACHE */
#if (defined(USE_SDRAM_STACK) || defined(USE_SDRAM_HEAP)) && \
    (!DATAA_CACHE && !DATAB_CACHE)
#   warning Putting stack/heap into external sdram without \
            data cache enabled can have a serious performance \
            impact
#endif

#ifdef USE_SDRAM
#ifdef PARTITION_EZKIT_SDRAM 
       sdram0_bank0
       {
#if defined(USE_SDRAM_STACK) && defined(USE_SDRAM_HEAP)
            RESERVE(stack_and_heap_in_sdram, stack_and_heap_in_sdram_length = STACKHEAP_SIZE,4)
#elif defined(USE_SDRAM_STACK)
            RESERVE(stack_and_heap_in_sdram, stack_and_heap_in_sdram_length = STACK_SIZE,4)
#elif defined(USE_SDRAM_HEAP)
            RESERVE(stack_and_heap_in_sdram, stack_and_heap_in_sdram_length = HEAP_SIZE,4)
#else
            INPUT_SECTION_ALIGN(4)
            INPUT_SECTIONS( $OBJS(sdram0_bank0) $LIBS(sdram0_bank0))
            INPUT_SECTIONS( $OBJS(noncache_code) $LIBS(noncache_code))
            INPUT_SECTIONS( $INPUT_BY_MEM_TYPE(program))
            INPUT_SECTIONS( $OBJS(cplb_code) $LIBS(cplb_code))
#endif
       } >mem_sdram0_bank0

#if defined(USE_SDRAM_STACK) || defined(USE_SDRAM_HEAP)

   stack_heap_sdram
   {
      INPUT_SECTION_ALIGN(4)
      RESERVE_EXPAND(stack_and_heap_in_sdram, stack_and_heap_in_sdram_length,0,4)
#if defined(USE_SDRAM_STACK) && defined(USE_SDRAM_HEAP)
      ldf_stack_space = stack_and_heap_in_sdram;
      ldf_stack_end = (ldf_stack_space + ((stack_and_heap_in_sdram_length * STACK_SIZE)/ STACKHEAP_SIZE) - 4 ) & 0xfffffffc;
      ldf_heap_space = ldf_stack_end + 4;
      ldf_heap_end = ldf_stack_space + stack_and_heap_in_sdram_length;
      ldf_heap_length = ldf_heap_end - ldf_heap_space;
#elif defined(USE_SDRAM_STACK)
      ldf_stack_space = stack_and_heap_in_sdram;
      ldf_stack_end = ldf_stack_space + stack_and_heap_in_sdram_length;
#elif defined(USE_SDRAM_HEAP)
      ldf_heap_space = stack_and_heap_in_sdram;
      ldf_heap_end = ldf_heap_space + stack_and_heap_in_sdram_length;
      ldf_heap_length = ldf_heap_end - ldf_heap_space;
#endif
   } >mem_sdram0_bank0
#endif /* USE_SDRAM_STACK || USE_SDRAM_HEAP */

       sdram0_bank1
       {
            INPUT_SECTION_ALIGN(4)
            INPUT_SECTIONS( $OBJS(sdram0_bank1) $LIBS(sdram0_bank1))
            INPUT_SECTIONS( $OBJS(sdram0_data) $LIBS(sdram0_data))
            INPUT_SECTIONS( $OBJS(cplb) $LIBS(cplb))
            INPUT_SECTIONS( $OBJS(data1) $LIBS(data1))
            INPUT_SECTIONS( $OBJS(voldata) $LIBS(voldata))
            INPUT_SECTIONS( $OBJS(constdata) $LIBS(constdata))
            INPUT_SECTIONS( $OBJS(cplb_data) $LIBS(cplb_data))
            INPUT_SECTIONS( $OBJS(.edt) $LIBS(.edt) )
            INPUT_SECTIONS( $OBJS(.cht) $LIBS(.cht) )
            INPUT_SECTIONS( $OBJS(.rtti) $LIBS(.rtti) )
            INPUT_SECTIONS( $OBJS(vtbl) $LIBS(vtbl) )
       } >mem_sdram0_bank1

       sdram0_bank2
       {
            INPUT_SECTION_ALIGN(4)
            INPUT_SECTIONS( $OBJS(sdram0_bank2) $LIBS(sdram0_bank2))
            INPUT_SECTIONS( $OBJS(sdram0_data) $LIBS(sdram0_data))
#if defined(__MEMINIT__)
            INPUT_SECTIONS( $OBJS(bsz_init) $LIBS(bsz_init))
#endif
            INPUT_SECTIONS( $OBJS(cplb) $LIBS(cplb))
            INPUT_SECTIONS($OBJS(data1) $LIBS(data1))
            INPUT_SECTIONS($OBJS(voldata) $LIBS(voldata))
            INPUT_SECTIONS($OBJS(constdata) $LIBS(constdata))
            INPUT_SECTIONS( $OBJS(cplb_data) $LIBS(cplb_data))
            INPUT_SECTIONS( $OBJS(.edt) $LIBS(.edt) )
            INPUT_SECTIONS( $OBJS(.cht) $LIBS(.cht) )
            INPUT_SECTIONS( $OBJS(.rtti) $LIBS(.rtti) )
            INPUT_SECTIONS( $OBJS(vtbl) $LIBS(vtbl) )
       } >mem_sdram0_bank2

       sdram0_bank2_bsz ZERO_INIT
       {
            INPUT_SECTION_ALIGN(4)
            INPUT_SECTIONS( $OBJS(sdram_bsz) $LIBS(sdram_bsz))
            INPUT_SECTIONS( $OBJS(bsz) $LIBS(bsz))
       } >mem_sdram0_bank2


       sdram0_bank3
       {
            INPUT_SECTION_ALIGN(4)
            INPUT_SECTIONS( $OBJS(sdram0_bank3) $LIBS(sdram0_bank3))
            INPUT_SECTIONS( $OBJS(noncache_code) $LIBS(noncache_code))
            INPUT_SECTIONS( $INPUT_BY_MEM_TYPE(program))
            INPUT_SECTIONS( $OBJS(cplb_code) $LIBS(cplb_code))
       } >mem_sdram0_bank3


#else /* PARTITION_EZKIT_SDRAM */
        sdram
        {
            INPUT_SECTION_ALIGN(4)
            INPUT_SECTIONS( $OBJS(sdram0) $LIBS(sdram0))
#if defined(__MEMINIT__)
            INPUT_SECTIONS( $OBJS(bsz_init) $LIBS(bsz_init))
#endif
#if defined(USE_SDRAM_STACK) && defined(USE_SDRAM_HEAP)
            RESERVE(stack_and_heap_in_sdram, stack_and_heap_in_sdram_length = STACKHEAP_SIZE,4)
#elif defined(USE_SDRAM_STACK)
            RESERVE(stack_and_heap_in_sdram, stack_and_heap_in_sdram_length = STACK_SIZE,4)
#elif defined(USE_SDRAM_HEAP)
            RESERVE(stack_and_heap_in_sdram, stack_and_heap_in_sdram_length = HEAP_SIZE,4)
#endif
            INPUT_SECTIONS( $OBJS(noncache_code) $LIBS(noncache_code))
            INPUT_SECTIONS( $OBJS(program) $LIBS(program))
            INPUT_SECTIONS( $OBJS(cplb) $LIBS(cplb))
            INPUT_SECTIONS( $OBJS(cplb_code) $LIBS(cplb_code))
            INPUT_SECTIONS($OBJS(data1) $LIBS(data1))
            INPUT_SECTIONS($OBJS(voldata) $LIBS(voldata))
            INPUT_SECTIONS($OBJS(constdata) $LIBS(constdata))
            INPUT_SECTIONS( $OBJS(cplb_data) $LIBS(cplb_data))
            INPUT_SECTIONS( $OBJS(.edt) $LIBS(.edt) )
            INPUT_SECTIONS( $OBJS(.cht) $LIBS(.cht) )
            INPUT_SECTIONS( $OBJS(.rtti) $LIBS(.rtti) )
            INPUT_SECTIONS( $OBJS(vtbl) $LIBS(vtbl) )
        } >mem_sdram0

        bsz_sdram0 ZERO_INIT
        {
            INPUT_SECTION_ALIGN(4)
            INPUT_SECTIONS( $OBJS(sdram_bsz) $LIBS(sdram_bsz))
            INPUT_SECTIONS( $OBJS(bsz) $LIBS(bsz))
        } >mem_sdram0

#if defined(__MEMINIT__)
   .meminit { ALIGN(4) } >mem_sdram0
#endif


#if defined(USE_SDRAM_STACK) || defined(USE_SDRAM_HEAP)

   stack_heap_sdram
   {
      INPUT_SECTION_ALIGN(4)
#if !defined(__MEMINIT__)
      RESERVE_EXPAND(stack_and_heap_in_sdram, stack_and_heap_in_sdram_length,0,4)
#endif
#if defined(USE_SDRAM_STACK) && defined(USE_SDRAM_HEAP)
      ldf_stack_space = stack_and_heap_in_sdram;
      ldf_stack_end = (ldf_stack_space + ((stack_and_heap_in_sdram_length * STACK_SIZE)/ STACKHEAP_SIZE) - 4 ) & 0xfffffffc;
      ldf_heap_space = ldf_stack_end + 4;
      ldf_heap_end = ldf_stack_space + stack_and_heap_in_sdram_length;
      ldf_heap_length = ldf_heap_end - ldf_heap_space;
#elif defined(USE_SDRAM_STACK)
      ldf_stack_space = stack_and_heap_in_sdram;
      ldf_stack_end = ldf_stack_space + stack_and_heap_in_sdram_length;
#elif defined(USE_SDRAM_HEAP)
      ldf_heap_space = stack_and_heap_in_sdram;
      ldf_heap_end = ldf_heap_space + stack_and_heap_in_sdram_length;
      ldf_heap_length = ldf_heap_end - ldf_heap_space;
#endif
   } >mem_sdram0
#endif /* USE_SDRAM_STACK || USE_SDRAM_HEAP */
#endif /* PARTITION_EZKIT_SDRAM */
#endif
    }

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -