Tool/software: Code Composer Studio
Hello,
I am still trying to get an example, any example, of a NDK project to load and run on a BBB. I am getting a verification error most of the time. Otherwise, it loads but doesn't debug... or even appear to run. The putput from a debug launch is:
CortxA8: Output: EMIF Timing register configuration is done ....... CortxA8: Output: PHY is READY!! CortxA8: Output: DDR PHY Configuration done CortxA8: GEL Output: Turning on EDMA... CortxA8: GEL Output: EDMA is turned on... CortxA8: Output: **** AM3359_ICE Initialization is Done ****************** CortxA8: File Loader: Verification failed: Values at address 0x80068060 do not match Please verify target memory and memory map. CortxA8: GEL: File: C:\Users\scott\workspace_v7\NIMU_BasicExample_bbbAM335x_armExampleproject\Debug\NIMU_BasicExample_bbbAM335x_armExampleproject.out: a data verification error occurred, file load failed.
What I have done, starting from scratch:
I build the entire PDK as defined by these steps:
processors.wiki.ti.com/.../Rebuilding_The_PDK
C:\ti\pdk_am335x_1_0_7\packages>pdksetupenv.bat Optional parameter not configured : CG_XML_BIN_INSTALL_PATH REQUIRED for xdc release build Example: set CG_XML_BIN_INSTALL_PATH=C:/ti/cg_xml/bin Optional parameter not configured : DOXYGEN_INSTALL_PATH REQUIRED for xdc release build Example: set DOXYGEN_INSTALL_PATH=C:/ti/Doxygen/doxygen/1.5.1-p1/bin ************************************************************************** Environment Configuration: LIMIT_SOCS : am335x LIMIT_BOARDS : evmAM335x icev2AM335x bbbAM335x skAM335x PDK_INSTALL_PATH : /ti/PDK_AM~1/packages C6X_GEN_INSTALL_PATH : C:/ti/ti-cgt-c6000_8.1.3 TOOLCHAIN_PATH_GCC : C:/ti/gcc-arm-none-eabi-4_9-2015q3 TOOLCHAIN_PATH_A15 : C:/ti/gcc-arm-none-eabi-4_9-2015q3 TOOLCHAIN_PATH_A8 : C:/ti/gcc-arm-none-eabi-4_9-2015q3 TOOLCHAIN_PATH_A9 : C:/ti/gcc-arm-none-eabi-4_9-2015q3 TOOLCHAIN_PATH_M4 : C:/ti/ti-cgt-arm_16.9.2.LTS TOOLCHAIN_PATH_Arm9 : C:/ti/ti-cgt-arm_16.9.2.LTS TOOLCHAIN_PATH_EVE : C:/ti/arp32_1.0.8 CL_PRU_INSTALL_PATH : C:/ti/ti-cgt-pru_2.1.5 UTILS_INSTALL_DIR : C:/ti/xdctools_3_32_01_22_core/bin FPULIB_PATH : C:/ti/gcc-arm-none-eabi-4_9-2015q3/lib/gcc/arm-none-eabi/4.9.3/fpu CROSS_TOOL_PRFX : arm-none-eabi- XDC_INSTALL_PATH : C:/ti/xdctools_3_32_01_22_core BIOS_INSTALL_PATH : C:/ti/bios_6_46_05_55 IPC_INSTALL_PATH : C:/ti/ipc_3_46_00_02 EDMA3LLD_BIOS6_INSTALLDIR : C:/ti/edma3_lld_2_12_04_28 NDK_INSTALL_PATH : C:/ti/ndk_2_25_01_11 IMGLIB_INSTALL_PATH : C:/ti/imglib_c66x_3_1_1_0 DSPLIB_INSTALL_PATH : C:/ti/dsplib_c66x_3_4_0_0 MATHLIB_INSTALL_PATH : C:/ti/mathlib_c66x_3_1_1_0 UIA_INSTALL_PATH : C:/ti/uia_2_00_06_52 ************************************************************************** Changing to short name to support directory names containing spaces current directory: /ti/PDK_AM~1/packages PDK BUILD ENVIRONMENT CONFIGURED ************************************************************************** C:\ti\PDK_AM~1\packages>CG_XML_BIN_INSTALL_PATH=C:/ti/cg_xml/bin 'CG_XML_BIN_INSTALL_PATH' is not recognized as an internal or external command, operable program or batch file. C:\ti\PDK_AM~1\packages>set CG_XML_BIN_INSTALL_PATH=C:/ti/cg_xml/bin C:\ti\PDK_AM~1\packages>pdkProjectCreate.bat ========================================================================= Configuration: SOC : AM335x BOARD : all ENDIAN : little MODULE : all PROCESSOR : arm PDK_SHORT_NAME : C:\ti\PDK_AM~1\packages\ ========================================================================= Checking Configuration... Complete ========================================================================= PDK_PARTNO : AM335 PDK_ECLIPSE_ID : com.ti.pdk.am335x RTSC_PLATFORM_NAME : ti.platforms.evmAM3359 RTSC_TARGET : gnu.targets.arm.A8F CCS_DEVICE : "Cortex A.AM3359.ICE_AM3359" ***************************************************************************** Detecting all projects in PDK and importing them in the workspace C:\ti\PDK_AM~1\packages\\MyExampleProjects Detected Test Project: EMAC_BasicExample_evmAM335x_armExampleproject .... (a while later, it completes with no errors)
(Why it requires "CG_XML_BIN_INSTALL_PATH" and yet doesn't have it set by default is a mystery to me.. But none-the-less...)
I import the NIMU basic project:
I build the project, and try to launch it, and get a Stellaris error:
Okay, I'm not using Stellaris, as I did for the TM4C projects... So I change it to the XDS100 (I have a BlackHawk 20 pin)
The, I try to launch it again, and I get the error most times:
In anticipation of the question "Are you resetting the BBB?", Yes. In fact, I can run a "Typical" example project brought in with the "Resource Explorer".
Occasionally, I can actually get ti to complete loading. It appears to be random, and not related to anything I can control.
When that happens the debugger does NOT allow me debug, it doesn't stop on any break points, and doesn't even offer a PAUSE Option. And the console displays none of the messages that the project prints. I have to assume that it's not really running.
What is wrong with this "out of the box" sample project?
I also tried to import and run the NIMU FTP example project, and have the same results. However, I also noticed that these two projects share the same cfg file!! So, after I attempted to change the config for this example, it also messed with the FTP project.
Again, I can pull in the normal "typical_BeagleBone_Black_CortexA" from the resource explorer, build it, load it, and debug it. Which tells me that the BlackHawk JTAG unit is working, and the BBB board is functioning properly.
Any advice for this?
(And, for another thread, it appears impossible to simply add NDK support to the existing project... Using XGCONF leaves a potholes of unresolved symbols. And there is nothing documented about manually adding libs to the project, every resource says to use the cfg file. :-( )
-CSW