This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
What is the error 10099-D? This worked fine on 6.0.25, but is failing with 6.1.19. Notice the size of the .trace object is 0. This is expected. What I don't understand is why this size 0 object can't be placed in IDRAM which has 0x2a3b of unused space.
cl6x ../obj/boot.obj ../obj/cp_com_s_mc.obj ../obj/cp_io.obj ../obj/cp_parse.obj ../obj/emif_test.obj ../obj/fault_isr.obj ../obj/hardware_support.obj ../obj/hitcfg_csl.obj ../obj/kernel.obj ../obj/lf_trace.obj ../obj/main.obj ../obj/misc_support.obj ../obj/msi_isr_util.obj ../obj/poke_sp_data.obj ../obj/ram_crc.obj ../obj/ram_test.obj ../obj/s_mc_util.obj ../obj/sai_isr_util.obj ../obj/sai_util.obj ../obj/sdi_util.obj ../obj/section_crc.obj ../obj/servo_error.obj ../obj/status_req.obj ../obj/t56xx_ob.obj ../obj/test_msi.obj ../obj/test_sai.obj ../obj/test_sdi.obj ../obj/test_sps.obj ../obj/tidc_api.obj ../obj/timer_support.obj ../obj/timer1_isr.obj ../obj/trace_dmp_s_mc.obj ../obj/wake_up.obj ../obj/tchitcfg.obj ../obj/tchitcfg_c.obj ../obj/cp_com_vars.obj ../obj/fixed_vars.obj ../obj/general_vars.obj ../obj/io_vars.obj ../obj/logic_vars.obj ../obj/msi_vars.obj ../obj/near_vars.obj ../obj/s_mc_vars.obj ../obj/sai_vars.obj ../obj/sdi_vars.obj ../obj/srv_trace_vars.obj ../obj/test_vars.obj ../obj/wake_up_vars.obj -z --display_error_number -z -q -a -cr -f0 -i"../obj" -i"/proj/eagle2/servo3/vendor/ti/tools33b/cgsol_6_0_21/bios/lib" -i"/proj/eagle2/servo3/vendor/ti/tools33b/cgsol_6_0_21/rtdx/lib" -i"/proj/eagle2/servo3/vendor/ti/tools33g/cglnx/lib" -i"/proj/eagle2/servo3/vendor/ti/tools33b/cgsol_6_0_21/csl/lib" --diag_remark=10068 --verbose_diagnostics -o ../out/xxx.out -m ../out/xxx.map -l /proj/eagle2/servo3/titan/make/tchitcfg.cmd /proj/eagle2/servo3/titan/make/ta_hit_user.cmd
<Linking>
"/proj/eagle2/servo3/titan/make/tchitcfg.cmd", line 211: error #10099-D:
placement fails for object ".trace", size 0x0 (page 0). Available ranges:
IDRAM size: 0x8000 unused: 0x2a3b max hole: 0x2a38
.trace: fill = 0x0 align = 0x4 {
error #10010: errors encountered during linking; "../out/xxx.out" not built
A relevant section of tchitcfg.cmd, starting at line 211, is
.trace: fill = 0x0 align = 0x4 {
_SYS_PUTCBEG = .;
. += 0x0;
_SYS_PUTCEND = . - 1;
} > IDRAM
Thanks
I'd appreciate if you would try again with compiler version 7.2.2. This page describes how to download it.
Thanks and regards,
-George
I am not able to try the 7.2.2 tools at this time.
I believe this is a linker bug in 6.1.19. I have a testcase. I would like to get this filed as a bug.
You are welcome to submit a test case. The last part of the forum welcome message describes what is required. Though in the case of a linker issue you need to provide a zip file which contains all the input the linker sees.
Thanks and regards,
-George
I have added the testcase to the files tab in my user profile (demo_pp.zip). see the README that is included. Please let me know when you have been able to reproduce the failure.
I took the test case files provided by st and tried this out myself, I was able to reproduce the same error with both the Linux 6.1.19 C6000 CGT set and the Linux 7.2.2 C6000 CGT set, so if this is a bug in the 6.1.19 CGT it does appear to still exist in 7.2.2, unless something else is going wrong here.
Thank you for submitting a test case. I filed SDSCM00039877 in the SDOWP system. Feel free to track it with the SDOWP link in my sig below.
Thanks and regards,
-George
SDSCM00039877, a problem with the C6000 tools, was duplicated to SDSCM00031246, a problem with the C2000 tools. SDSCM00031246 has been accepted, but there is no indication when it might be fixed. It is not clear to me that the resolution of SDSCM00031246 will result in a fix for the C6000 tools. When can I get a fix for the C6000 version 6.1 tools?
Thanks,
st
The plan is to fix this for the next 6.1 update, 6.1.20. The schedule for 6.1.20 is currently 6/30. If the date changes, if the 6.1.20 schedule is pulled in for example, the schedule is available on the tools external wiki here: http://processors.wiki.ti.com/index.php/Pending_Compiler_Releases.
I wanted to point out the workaround for this bug. The problem is with the ". +- 0x0;" expression. The 6.1.x linker attempts to place the .trace output section as it would any other zero-sized section. However, the placement for .trace gets incorrectly skipped because the dot expression could end up increasing the size of the section. This of course needs to be fixed. But to workaround the bug comment out this dot expression:
.trace: fill = 0x0 align = 0x4 {
_SYS_PUTCBEG = .;
/*. += 0x0;*/
_SYS_PUTCEND = . - 1;
} > IDRAM