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

📄 vdk-bf561.ldf

📁 analog device vdsp LAN driver and examples
💻 LDF
📖 第 1 页 / 共 4 页
字号:
            INPUT_SECTIONS( $OBJECTS_CORE_B(l1_data_b) $LIBRARIES_CORE_B(l1_data_b))
            INPUT_SECTIONS( $OBJECTS_CORE_B(L1_data_b) $LIBRARIES_CORE_B(L1_data_b))
            INPUT_SECTIONS( $OBJECTS_CORE_B(l1_data) $LIBRARIES_CORE_B(l1_data))
            INPUT_SECTIONS( $OBJECTS_CORE_B(L1_data) $LIBRARIES_CORE_B(L1_data))
            INPUT_SECTIONS( $OBJECTS_CORE_B(voldata) $LIBRARIES_CORE_B(voldata))
#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( $OBJECTS_CORE_B(constdata) $LIBRARIES_CORE_B(constdata))
            INPUT_SECTIONS( $OBJS_LIBS_INTERNAL(data1))
            INPUT_SECTIONS( $OBJS_LIBS_NOT_EXTERNAL(data1))
            INPUT_SECTIONS( $OBJECTS_CORE_B(vtbl) $LIBRARIES_CORE_B(vtbl) )
            INPUT_SECTIONS( $OBJECTS_CORE_B(.rtti) $LIBRARIES_CORE_B(.rtti) )
            INPUT_SECTIONS( $OBJECTS_CORE_B(.edt) $LIBRARIES_CORE_B(.edt) )
            INPUT_SECTIONS( $OBJECTS_CORE_B(.cht) $LIBRARIES_CORE_B(.cht) )
            INPUT_SECTIONS( $OBJECTS_CORE_B(data1) $LIBRARIES_CORE_B(constdata))
        } >mem_b_l1_data_b

         bsz_L1_data_b ZERO_INIT
        {
            INPUT_SECTION_ALIGN(4)
            INPUT_SECTIONS( $OBJECTS_CORE_B(L1_bsz) $LIBRARIES_CORE_B(L1_bsz))
            INPUT_SECTIONS( $OBJECTS_CORE_B(bsz) $LIBRARIES_CORE_B(bsz))
        } >mem_b_l1_data_b

#if USE_L1_DATA_STACK || USE_L1_DATA_HEAP
   stack_and_heap_L1_data_b
   {
      INPUT_SECTION_ALIGN(4)
      RESERVE_EXPAND(stack_and_heap_in_L1_data_b, stack_and_heap_in_L1_data_b_length,0,4)
#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_b_l1_data_b
#endif


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

#if DATAB_CACHE 
        l1_data_b
        {
            INPUT_SECTION_ALIGN(4)
            ___l1_data_cache_b = 1;
        } >mem_b_l1_data_b_cache
#endif /* DATAB_CACHE */

        l2_sram_b
        {
            INPUT_SECTION_ALIGN(4)
            INPUT_SECTIONS( $OBJECTS_CORE_B(l2_sram) $LIBRARIES_CORE_B(l2_sram))
            INPUT_SECTIONS( $OBJECTS_CORE_B(l2_sram_b) $LIBRARIES_CORE_B(l2_sram_b))
            INPUT_SECTIONS( $OBJECTS_CORE_B(L2_data) $LIBRARIES_CORE_B(L2_data))
#if defined (__MEMINIT__) && !defined(USE_SDRAM)
            INPUT_SECTIONS( $OBJS(bsz_init) $LIBS(bsz_init))
#endif
#if defined(USE_L2_HEAP) && defined(USE_L2_STACK)
            RESERVE(stack_and_heap_in_L2_sram, stack_and_heap_in_L2_sram_length = STACKHEAP_SIZE,4)
#elif defined(USE_L2_HEAP) 
            RESERVE(stack_and_heap_in_L2_sram, stack_and_heap_in_L2_sram_length = HEAP_SIZE,4)
#elif defined(USE_L2_STACK)
            RESERVE(stack_and_heap_in_L2_sram, stack_and_heap_in_L2_sram_length = STACK_SIZE,4)
#endif
            INPUT_SECTIONS( $OBJECTS_CORE_B(noncache_code) $LIBRARIES_CORE_B(noncache_code))
            INPUT_SECTIONS( $OBJS_LIBS_INTERNAL(program))
            INPUT_SECTIONS( $OBJS_LIBS_NOT_EXTERNAL(program))
            INPUT_SECTIONS( $OBJECTS_CORE_B(cplb) $LIBRARIES_CORE_B(cplb))
            INPUT_SECTIONS( $OBJECTS_CORE_B(cplb_code) $LIBRARIES_CORE_B(cplb_code))
            INPUT_SECTIONS( $OBJS_LIBS_INTERNAL(data1))
            INPUT_SECTIONS( $OBJS_LIBS_NOT_EXTERNAL(data1))
            INPUT_SECTIONS( $OBJECTS_CORE_B(voldata) $LIBRARIES_CORE_B(voldata))
            INPUT_SECTIONS( $OBJECTS_CORE_B(cplb_data) $LIBRARIES_CORE_B(cplb_data))
            INPUT_SECTIONS( $OBJECTS_CORE_B(vtbl) $LIBRARIES_CORE_B(vtbl) )
            INPUT_SECTIONS( $OBJECTS_CORE_B(.rtti) $LIBRARIES_CORE_B(.rtti) )
            INPUT_SECTIONS( $OBJECTS_CORE_B(.edt) $LIBRARIES_CORE_B(.edt))
            INPUT_SECTIONS( $OBJECTS_CORE_B(.cht) $LIBRARIES_CORE_B(.cht))
            INPUT_SECTIONS( $OBJECTS_CORE_B(constdata) $LIBRARIES_CORE_B(constdata))
            INPUT_SECTIONS( $OBJECTS_CORE_B(program) $LIBRARIES_CORE_B(program))
            INPUT_SECTIONS( $OBJECTS_CORE_B(data1) $LIBRARIES_CORE_B(data1))
        } >mem_b_l2_sram


         bsz_L2_sram_b ZERO_INIT
        {
            INPUT_SECTION_ALIGN(4)
            INPUT_SECTIONS( $OBJECTS_CORE_B(L2_bsz) $LIBRARIES_CORE_B(L2_bsz))
            INPUT_SECTIONS( $OBJECTS_CORE_B(bsz) $LIBRARIES_CORE_B(bsz))
        } >mem_b_l2_sram

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

#if defined(USE_L2_STACK) || defined(USE_L2_HEAP)
   stack_and_heap_L2_sram
   {
      INPUT_SECTION_ALIGN(4)
#if !(defined(__MEMINIT__) && !defined(USE_SDRAM))
      RESERVE_EXPAND(stack_and_heap_in_L2_sram, stack_and_heap_in_L2_sram_length,0,4)
#endif
#if defined(USE_L2_STACK) && defined(USE_L2_HEAP)
      ldf_stack_space = stack_and_heap_in_L2_sram;
      ldf_stack_end = (ldf_stack_space + (stack_and_heap_in_L2_sram_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_length;
      ldf_heap_length = ldf_heap_end - ldf_heap_space;
#elif defined(USE_L2_STACK)
      ldf_stack_space = stack_and_heap_in_L2_sram;
      ldf_stack_end = ldf_stack_space + stack_and_heap_in_L2_sram_length;
#elif defined(USE_L2_HEAP)
      ldf_heap_space = stack_and_heap_in_L2_sram;
      ldf_heap_end = ldf_heap_space + stack_and_heap_in_L2_sram_length;
      ldf_heap_length = ldf_heap_end - ldf_heap_space;
#endif
   } > mem_b_l2_sram
#endif


        primio_atomic_lock
        {

            // Contains data shared between cores - Requires use of resolve.
            INPUT_SECTION_ALIGN(4)
            INPUT_SECTIONS($OBJECTS_CORE_B(l2_shared) $LIBRARIES_CORE_B(l2_shared))

            // Holds control variable used to ensure atomic file I/O
            // Must be in shared memory and NOT cached.
            INPUT_SECTIONS($OBJECTS_CORE_B(primio_atomic_lock) $LIBRARIES_CORE_B(primio_atomic_lock))
        } >mem_l2_shared
#if defined (USE_SDRAM)

#ifdef PARTITION_EZKIT_SDRAM
       sdram1_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( $OBJECTS_CORE_B(sdram1) $LIBRARIES_CORE_B(sdram1))
            INPUT_SECTIONS( $OBJECTS_CORE_B(noncache_code) $LIBRARIES_CORE_B(noncache_code))
            INPUT_SECTIONS( $INPUT_BY_MEM_TYPE(program))
            INPUT_SECTIONS( $OBJECTS_CORE_B(cplb_code) $LIBRARIES_CORE_B(cplb_code))
#endif
       } >mem_sdram1_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_sdram1_bank0
#endif /* USE_SDRAM_STACK || USE_SDRAM_HEAP */

       sdram1_bank1
        {
          // Data
          INPUT_SECTION_ALIGN(4)
          INPUT_SECTIONS($OBJECTS_CORE_B(sdram_data) $LIBRARIES_CORE_B(sdram_data))
          INPUT_SECTIONS($OBJECTS_CORE_B(data1) $LIBRARIES_CORE_B(data1))
          INPUT_SECTIONS($OBJECTS_CORE_B(voldata) $LIBRARIES_CORE_B(voldata))
            INPUT_SECTIONS( $OBJECTS_CORE_B(vtbl) $LIBRARIES_CORE_B(vtbl) )
          INPUT_SECTIONS( $OBJECTS_CORE_B(.rtti) $LIBRARIES_CORE_B(.rtti) )
          INPUT_SECTIONS( $OBJECTS_CORE_B(.edt) $LIBRARIES_CORE_B(.edt))
          INPUT_SECTIONS( $OBJECTS_CORE_B(.cht) $LIBRARIES_CORE_B(.cht))
        } >mem_sdram1_bank1

        sdram1_bank2
        {
          // Data
          INPUT_SECTION_ALIGN(4)
          INPUT_SECTIONS($OBJECTS_CORE_B(sdram_data) $LIBRARIES_CORE_B(sdram_data))
          INPUT_SECTIONS($OBJECTS_CORE_B(constdata) $LIBRARIES_CORE_B(constdata))
#if defined(__MEMINIT__)
          INPUT_SECTIONS( $OBJECTS_CORE_B(bsz_init) $LIBRARIES_CORE_B(bsz_init))
#endif
        } > mem_sdram1_bank2

        sdram1_bank2_bsz ZERO_INIT
        {
          // Bsz
          INPUT_SECTION_ALIGN(4)
          INPUT_SECTIONS($OBJECTS_CORE_B(sdram_bsz) $LIBRARIES_CORE_B(sdram_bsz))
          INPUT_SECTIONS($OBJECTS_CORE_B(bsz) $LIBRARIES_CORE_B(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_CORE_B(program) $LIBRARIES_CORE_B(program))
          INPUT_SECTIONS( $OBJECTS_CORE_B(noncache_code) $LIBRARIES_CORE_B(noncache_code))
        } >mem_sdram1_bank3
#else
        sdram1
        {
            INPUT_SECTION_ALIGN(4)
            INPUT_SECTIONS( $OBJECTS_CORE_B(sdram1) $LIBRARIES_CORE_B(sdram1))
            INPUT_SECTIONS( $OBJECTS_CORE_B(sdram1_data) $LIBRARIES_CORE_B(sdram1_data))
#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( $OBJECTS_CORE_B(noncache_code) $LIBRARIES_CORE_B(noncache_code))
            INPUT_SECTIONS( $OBJECTS_CORE_B(program) $LIBRARIES_CORE_B(program))
            INPUT_SECTIONS( $OBJECTS_CORE_B(cplb) $LIBRARIES_CORE_B(cplb))
            INPUT_SECTIONS( $OBJECTS_CORE_B(cplb_code) $LIBRARIES_CORE_B(cplb_code))
            INPUT_SECTIONS($OBJECTS_CORE_B(data1) $LIBRARIES_CORE_B(data1))
            INPUT_SECTIONS($OBJECTS_CORE_B(voldata) $LIBRARIES_CORE_B(voldata))
            INPUT_SECTIONS($OBJECTS_CORE_B(constdata) $LIBRARIES_CORE_B(constdata))
            INPUT_SECTIONS( $OBJECTS_CORE_B(cplb_data) $LIBRARIES_CORE_B(cplb_data))
        } >mem_sdram1

        bsz_sdram1 ZERO_INIT
        {
            INPUT_SECTION_ALIGN(4)
            INPUT_SECTIONS( $OBJECTS_CORE_B(sdram_bsz) $LIBRARIES_CORE_B(sdram_bsz))
            INPUT_SECTIONS( $OBJECTS_CORE_B(bsz) $LIBRARIES_CORE_B(bsz))
        } >mem_sdram1
#if defined(__MEMINIT__)
           .meminit { ALIGN(4) } >mem_sdram1
#endif


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

#  if !DATAA_CACHE && !DATAB_CACHE
#    warning Putting stack/heap into external sdram without data cache enabled can have a serious performance impact
#endif
   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_sdram1
#endif /* USE_SDRAM_STACK || USE_SDRAM_HEAP */

#endif /* PARTITION_EZKIT_SDRAM */
#endif /* USE_SDRAM */

    }

}
#endif

⌨️ 快捷键说明

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