I think you see this if you build your server with --mem_model:data=far.  
Servers shouldn't throw that build flag.  I checked and CE 1.20's config.bld 
_did_ have this option thrown - looks like we removed it in CE 2.00.

[ FYI, some details on C6000 memory models are here:
http://tiexpressdsp.com/wiki/index.php?title=C6000_Memory_models ]

Can you see if your config.bld has this option thrown, and if so, remove it?

Chris

________________________________
From: [email protected] 
[mailto:[email protected]] On Behalf Of 
Avishai Hendel
Sent: Sunday, March 29, 2009 7:43 AM
To: [email protected]
Subject: migration to CE 2.10: DSP server linkage failure

Hello all,

I've been trying to migrate our DSP server combo to CE 2.10 environment from CE 
1.20. I haven't changed anything in our usual configuration (server.cfg, 
server.tcf etc.), except for the xdcpaths.mak file, which now specifies these 
recommended packages:

CE Ver: 2_10_02
XDC: 3_00_06
DSP/BIOS: 5_32_01
CG: 6_0_22 (I have also used 6_0_16, with the same outcome)

The rest of the modules are presumably taken from the CE internal 'cetools' 
directory.

Compilation fails with these warnings:

>> warning: Detected a near (.bss section relative) data reference to the symbol
            _VISA_checked defined in section .far.  The reference occurs in
            videnc1.o64P
            
(/home/dvevm/codec_engine_2_10_02/packages/ti/sdo/ce/video1/lib/debug/videnc1.a64P),
 section .text, SPC offset 00000000.  Either make the symbol near data by 
placing it in the .bss section, or make the references to the symbol far.  For 
C/C++ code use 'far' or 'near' modifiers on the type definition of the symbol 
or compile with the --mem_model:data switch.

>> warning: Detected a near (.bss section relative) data reference to the symbol
            _VISA_checked defined in section .far.  The reference occurs in
            imgenc.o64P
            
(/home/dvevm/codec_engine_2_10_02/packages/ti/sdo/ce/image/lib/debug/image.a64P),
 section .text, SPC offset 00000000.  Either make the symbol near data by 
placing it in the .bss section, or make the references to the symbol far.  For 
C/C++ code use 'far' or 'near' modifiers on the type definition of the symbol 
or compile with the --mem_model:data switch.

>> warning: Detected a near (.bss section relative) data reference to the symbol
            _VISA_checked defined in section .far.  The reference occurs in
            videnc.o64P
            
(/home/dvevm/codec_engine_2_10_02/packages/ti/sdo/ce/video/lib/debug/video.a64P),
 section .text, SPC offset 00000000.  Either make the symbol near data by 
placing it in the .bss section, or make the references to the symbol far.  For 
C/C++ code use 'far' or 'near' modifiers on the type definition of the symbol 
or compile with the --mem_model:data switch.

>> warning: Detected a near (.bss section relative) data reference to the symbol
            _VISA_checked defined in section .far.  The reference occurs in
            viddec.o64P
            
(/home/dvevm/codec_engine_2_10_02/packages/ti/sdo/ce/video/lib/debug/video.a64P),
 section .text, SPC offset 00000000.  Either make the symbol near data by 
placing it in the .bss section, or make the references to the symbol far.  For 
C/C++ code use 'far' or 'near' modifiers on the type definition of the symbol 
or compile with the --mem_model:data switch.

>> warning: Detected a near (.bss section relative) data reference to the symbol
            _Global_traceBufferSize defined in section .far.  The reference
            occurs in GT_config_BIOS.o64P
            
(/home/dvevm/codec_engine_2_10_02/packages/ti/sdo/ce/osal/bios/lib/osal_bios.a64P),
 section .text, SPC offset 000001b0.  Either make the symbol near data by 
placing it in the .bss section, or make the references to the symbol far.  For 
C/C++ code use 'far' or 'near' modifiers on the type definition of the symbol 
or compile with the --mem_model:data switch.

>> warning: Detected a near (.bss section relative) data reference to the symbol
            _Memory_numHeaps defined in section .far.  The reference occurs in
            Memory_BIOS.o64P
            
(/home/dvevm/codec_engine_2_10_02/packages/ti/sdo/ce/osal/bios/lib/osal_bios.a64P),
 section .text, SPC offset 00000418.  Either make the symbol near data by 
placing it in the .bss section, or make the references to the symbol far.  For 
C/C++ code use 'far' or 'near' modifiers on the type definition of the symbol 
or compile with the --mem_model:data switch.


and this error:

>>   error: relocation overflow occurred at address 0x000001b0 in section
            '.text' of input file
            
'/home/dvevm/codec_engine_2_10_02/packages/ti/sdo/ce/osal/bios/lib/osal_bios.a64P'.
  The 17-bit relocated address 0x142c6 is too large to encode in the 15-bit 
field. You may need to add a mask to the assembly instruction or use other 
target specific assembly features if you really only need the lowest 15 bits of 
this symbol. Please see the section on Relocation in the Assembly User's Guide.

Since the warnings and the error stem (apparently) from TI's binaries, I don't 
see a way for me to follow the suggestions (using the modifiers, or placing the 
symbols in a different section).
Where have I gone wrong?

Regards,

Avishai Hendel
Software Engineer
MangoDSP Ltd.
E-mail: [email protected]<mailto:[email protected]>
Work: +972 2 588 5037

_______________________________________________
Davinci-linux-open-source mailing list
[email protected]
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source

Reply via email to