Other Parts Discussed in Thread: SYSBIOS
Tool/software: TI C/C++ Compiler
Hello,
I am back with another issue on loading a binary from an SD card into a BBB. I have already accomplished it for GCC projects, I understand what's going on and the issues using the pdkAppImageCreate.bat file... but now I need to do it with the TI compiler.
I am using CCS 7.2, and TI 17.9 compiler... also Sys/Bios 6.46.5.55
I have set the correct step for the post build, and it is generating the {project}.bin without any problem. I even checked off "Enable ARM HEX utility" in the project properties, but that doesn't seem to affect the the OUT or BIN files. I then manually use "tiimage.exe" to place the header on the file, rename it to "app" and place it on the SD card with MLO.
(With GCC, it ran it's own "tiimage" and was using an incorrect entry address... at least with this I manually run it, so I can control it)
However, it doesn't run.. or doesn't load... or had the wrong entry... or something.
I have tried using a start address of 0x80000000 and also using the start address which appears in the MAP file: ENTRY POINT SYMBOL: "_c_int00" address: 8038fa34 Neither one has yielded success.
I removed the comment from the batch file in order to get "debug" information, but that is minimal. (line 147 of the batch file).
I am at a loss. The program works great in both debug and release builds, when loaded via the JTAG XDS100 v2. But won't run with the SD card.
Here is the linker output stage. It doesn't run "tiimage", so I manually run it to create the "app" after the build is done. I have verified that "tiimage" is doing what it is supposed to.
making ../src/sysbios/sysbios.aea8fnv ... gmake[2]: Nothing to be done for 'all'. 'Building target: RNDIS_NDK.out' 'Invoking: ARM Linker' "C:/ti/ccsv7/tools/compiler/ti-cgt-arm_17.9.0.STS/bin/armcl" -mv7A8 --code_state=32 -me -O2 --opt_for_speed=3 --define=am3359 --define=am335x --define=SOC_AM335x
--define=bbbAM335x --diag_warning=225 --diag_wrap=off --display_error_number -z -m"RNDIS_NDK.map" --heap_size=0x800 --stack_size=0x800 -i"C:/ti/ccsv7/tools/compiler/ti-cgt-arm_17.9.0.STS/lib"
-i"C:/ti/ccsv7/tools/compiler/ti-cgt-arm_17.9.0.STS/include" --reread_libs --define=A8_CORE=1 --diag_wrap=off --display_error_number --warn_sections --xml_link_info="RNDIS_NDK_linkInfo.xml"
--rom_model -o "RNDIS_NDK.out" "./main.obj" "./LCD/lcd.obj" "./ti/custom/cpsw_driver_customization.obj" "./ti/ndk/hal/timer_bios/lltimer.obj" *** LONG LIST TRIMMED **** "./ti/starterware/platform/gpio.obj" "./ti/starterware/platform/usb.obj" "./ti/starterware/system/cp15.obj" "./tools/common.obj"
"./usb/rndis.obj" "./usb/stats.obj" "./usb/usbdriver.obj" -l"configPkg/linker.cmd" -llibc.a <Linking> 'Finished building target: RNDIS_NDK.out' ' ' 'Invoking: ARM Hex Utility' "C:/ti/ccsv7/tools/compiler/ti-cgt-arm_17.9.0.STS/bin/armhex" -o "RNDIS_NDK.hex" "RNDIS_NDK.out" Translating to Extended Tektronix format... "RNDIS_NDK.out" .text ==> .text "RNDIS_NDK.out" .const.1 ==> .const.1 "RNDIS_NDK.out" .const.2 ==> .const.2 "RNDIS_NDK.out" .init_array ==> .init_array "RNDIS_NDK.out" .vecs ==> .vecs "RNDIS_NDK.out" .cinit ==> .cinit warning: Data is being written to auto-generated file RNDIS_NDK.x1 warning: Data is being written to auto-generated file RNDIS_NDK.x2 warning: Data is being written to auto-generated file RNDIS_NDK.x3 'Finished building: RNDIS_NDK.hex' ' ' "C:/ti/ccsv7/utils/tiobj2bin/tiobj2bin.bat" "RNDIS_NDK.out" "RNDIS_NDK.bin" "C:/ti/ccsv7/tools/compiler/ti-cgt-arm_17.9.0.STS/bin/armofd.exe" "C:/ti/ccsv7/tools/compiler/ti-cgt-arm_17.9.0.STS/bin/armhex.exe" "C:/ti/ccsv7/utils/tiobj2bin/mkhex4bin.exe" ROMS { all_mem: o = 0x80369838, l = 0x40338 } ' ' **** Build Finished ****
All the other posts I've seen were from people who had errors locating and running these executable. I don't have any issue running them to make the conversions, only attempting to get it to load to the BBB via and SD card.
Any ideas where I can even start looking? I have no way to know if it's converting the OUT to BIN correctly.
I have to assume the MLO is loading this image, but something is configured wrong, or some entry point setting is wrong.
Thanks.
-CSW


