[分享] ADI算法库,“警告”解决方案

杜拉是只狗   2016-9-9 15:13 楼主



加入你在使用BF609第二个核进行编译时,编译器弹出一个如下警告,你会出个处理?今天我们就分享下ADI工程师给出的建议吧https://ezchina.analog.com/thread/14085

警告:
        
Description      Resource
                  
Path Location                     
Type
li2131:
Input section(s) of incompatible init qualifier detected in the output section
'L1_data_a_custom'         
app.ldf     
         /Core1/system/startup_ldf        
                  
line 335            
C/C++ Problem
li2131:
Input section(s) of incompatible init qualifier detected in the output section
'sdram_bank0_custom'     
app.ldf     
        
/Core1/system/startup_ldf        
                  
line 943            
C/C++ Problem
        
core1的ldf文件,我使用的是默认的ldf文件,ldf文件中关于'L1_data_a_custom'和'sdram_bank0_custom'描述如下:
L1_data_a_custom
     
   {
        
INPUT_SECTION_ALIGN(4)
        
INPUT_SECTIONS($OBJECTS_LIB(adi_fastb0_prio1_r))
        
INPUT_SECTIONS($OBJECTS_LIB(adi_fastb0_prio1_rw))
        
INPUT_SECTIONS($OBJECTS_LIB(adi_fastb0_prio0_rw))
        
INPUT_SECTIONS($OBJECTS_LIB(adi_fastb0_prio0_temp))
        
INPUT_SECTIONS($OBJECTS_LIB(adi_fastb0_prio0_r))
        
INPUT_SECTIONS($OBJECTSVATDLB(adi_fastb0_prio0_r))
   
     } > MEM_L1_DATA_A
        
sdram_bank0_custom
     
   {
        
INPUT_SECTIONS($OBJECTS(adi_slow_noprio_code))
        
INPUT_SECTIONS($OBJECTS(adi_slow_prio0_code))
        
INPUT_SECTIONS($OBJECTS(program))
        
INPUT_SECTIONS($OBJECTS(adi_slow_prio0_r))
        
INPUT_SECTIONS($OBJECTS(constdata))
        
INPUT_SECTIONS($OBJECTS(data1))
        
INPUT_SECTIONS($OBJECTS_LIB(adi_slow_prio0_rw))
        
INPUT_SECTIONS($OBJECTS_LIB(adi_slow_prio0_temp))
   
     } > MEM_SDRAM_BANK0

想知道这个warning是如何引起的嘛?
想知道如何修改可以去掉这个warning吗?



答案来了~

1.     INPUT_SECTION中类似于adi_fastb0_prio1_r,adi_fastb0_prio0_temp这些section名称的定义应该都是算法库中已经定义好的,所以使用算法库时也需要把这些名称加到你们的ldf文件中。关键点在于这些名称在定义时都有自己的属性,比如NO_INIT,ZERO_INIT等等,这些section各自的属性在算法库的user manual里面应该都能找到。

2.      找到这些section各自的属性后,在ldf文件的output section定义时,应该保持和input section的属性一致。如warning中指出的,L1_data_a_custom后面没有属性定义,所以出现了警告信息。

回复评论 (1)

ADI的算法库确实不好理解
点赞  2016-9-20 08:21
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复