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.

Compiler/PROCESSOR-SDK-OMAPL138: unresolved symbols when trying to use mcaspBindDev

Part Number: PROCESSOR-SDK-OMAPL138
Other Parts Discussed in Thread: OMAPL138, CODECOMPOSER, CCSTUDIO

Tool/software: TI C/C++ Compiler

We are currently using CodeComposer Studio v. 8.2 to use the Processor SDK RTOS for the Zoom OMAPL138 eXperimenter's kit (see https://www.logicpd.com/dev_kits/zoom-omap-l138-experimenter-kit/ ). However, when trying to use the McASP driver there are numerous unresolved symbol errors (see below). We are building for the the DSP core (not ARM).

Setup:

CCS version: 8.2.0.00007 

Compiler Tools version: 8.2.2

omapl138 pdk version: 1.0.6

XDCtools version: 3.50.8.24_core

Steps to create the project: 

Create new SYS/BIOS project for OMALP138:

SYS/BIOS typical for C67XX[C6000]

Products and Repositories: using SYS/BIOS and omapl138_pdk

add SOC_OMAPL138 to predefined symbols

add <pdk_install_path>/pdk_omapl138_1_0_6\packages\ti\drv\mcasp\lib\omapl138\c674\release/ti.drv.mcasp.ae674 to included library files in C6000 Linker

One other thing I noticed is that there seems to be an error in <pdk_root>/drv/pdk_omapl138_1_0_6/packages/ti/drv/mcasp/soc/mcasp_soc.h: It seems 

'#include "mcasp_types.h"' should really be '#include "../mcasp_types.h" ' (so I changed that to fix the 'file not found' error )
Code:
I included these two headers:

#include <ti/drv/mcasp/mcasp_drv.h>
#include <ti/drv/mcasp/soc/mcasp_soc.h>

And modified the auto generated taskFxn like this:

Void taskFxn(UArg a0, UArg a1)

{
System_printf("enter taskFxn()\n");
McaspDevice_init();
int32_t ret;
void* devHandle;
ret = mcaspBindDev(&devHandle, 0, 0);

Task_sleep(10);

System_printf("exit taskFxn()\n");

System_flush(); /* force SysMin output to console */
}

if the line containing the mcaspBindDev() call is commented out it builds fine, however as it is building yields the following errors:

For reference: my installation directory for CCS and all the components is 'D:/Programme/ti'

#10010 null: errors encountered during linking; "test_c822.out" not built

#10234-D null: unresolved symbols remain

gmake: *** [all] Error 2

gmake[1]: *** [test_c822.out] Error 1

unresolved symbol _DebugP_assert, first referenced in D:/Programme/ti/pdk_omapl138_1_0_6/packages/ti/drv/mcasp/lib/omapl138/c674/release/ti.drv.mcasp.ae674<mcasp_drv.oe674>

unresolved symbol HwiP_disable, first referenced in D:/Programme/ti/pdk_omapl138_1_0_6/packages/ti/drv/mcasp/lib/omapl138/c674/release/ti.drv.mcasp.ae674<mcasp_drv.oe674>

unresolved symbol HwiP_restore, first referenced in D:/Programme/ti/pdk_omapl138_1_0_6/packages/ti/drv/mcasp/lib/omapl138/c674/release/ti.drv.mcasp.ae674<mcasp_drv.oe674>

unresolved symbol McASPDITModeCtlWrite, first referenced in D:/Programme/ti/pdk_omapl138_1_0_6/packages/ti/drv/mcasp/lib/omapl138/c674/release/ti.drv.mcasp.ae674<mcasp_drv.oe674>

unresolved symbol McASPDlbRegWrite, first referenced in D:/Programme/ti/pdk_omapl138_1_0_6/packages/ti/drv/mcasp/lib/omapl138/c674/release/ti.drv.mcasp.ae674<mcasp_drv.oe674>

unresolved symbol McASPGlobalCtlReset, first referenced in D:/Programme/ti/pdk_omapl138_1_0_6/packages/ti/drv/mcasp/lib/omapl138/c674/release/ti.drv.mcasp.ae674<mcasp_drv.oe674>

unresolved symbol McASPGlobalCtlSet, first referenced in D:/Programme/ti/pdk_omapl138_1_0_6/packages/ti/drv/mcasp/lib/omapl138/c674/release/ti.drv.mcasp.ae674<mcasp_drv.oe674>

unresolved symbol McASPPinDirOutputSet, first referenced in D:/Programme/ti/pdk_omapl138_1_0_6/packages/ti/drv/mcasp/lib/omapl138/c674/release/ti.drv.mcasp.ae674<mcasp_drv.oe674>

unresolved symbol McASPPinGPIOSet, first referenced in D:/Programme/ti/pdk_omapl138_1_0_6/packages/ti/drv/mcasp/lib/omapl138/c674/release/ti.drv.mcasp.ae674<mcasp_drv.oe674>

unresolved symbol McASPRxClkCfg, first referenced in D:/Programme/ti/pdk_omapl138_1_0_6/packages/ti/drv/mcasp/lib/omapl138/c674/release/ti.drv.mcasp.ae674<mcasp_drv.oe674>

unresolved symbol McASPRxClkCheckRegWrite, first referenced in D:/Programme/ti/pdk_omapl138_1_0_6/packages/ti/drv/mcasp/lib/omapl138/c674/release/ti.drv.mcasp.ae674<mcasp_drv.oe674>

unresolved symbol McASPRxClkPolaritySet, first referenced in D:/Programme/ti/pdk_omapl138_1_0_6/packages/ti/drv/mcasp/lib/omapl138/c674/release/ti.drv.mcasp.ae674<mcasp_drv.oe674>

unresolved symbol McASPRxFmtMaskSet, first referenced in D:/Programme/ti/pdk_omapl138_1_0_6/packages/ti/drv/mcasp/lib/omapl138/c674/release/ti.drv.mcasp.ae674<mcasp_drv.oe674>

unresolved symbol McASPRxFmtSet, first referenced in D:/Programme/ti/pdk_omapl138_1_0_6/packages/ti/drv/mcasp/lib/omapl138/c674/release/ti.drv.mcasp.ae674<mcasp_drv.oe674>

unresolved symbol McASPRxFrameSyncCfg, first referenced in D:/Programme/ti/pdk_omapl138_1_0_6/packages/ti/drv/mcasp/lib/omapl138/c674/release/ti.drv.mcasp.ae674<mcasp_drv.oe674>

unresolved symbol McASPRxHFClkPolaritySet, first referenced in D:/Programme/ti/pdk_omapl138_1_0_6/packages/ti/drv/mcasp/lib/omapl138/c674/release/ti.drv.mcasp.ae674<mcasp_drv.oe674>

unresolved symbol McASPRxIntEnable, first referenced in D:/Programme/ti/pdk_omapl138_1_0_6/packages/ti/drv/mcasp/lib/omapl138/c674/release/ti.drv.mcasp.ae674<mcasp_drv.oe674>

unresolved symbol McASPRxStatusSet, first referenced in D:/Programme/ti/pdk_omapl138_1_0_6/packages/ti/drv/mcasp/lib/omapl138/c674/release/ti.drv.mcasp.ae674<mcasp_drv.oe674>

unresolved symbol McASPRxTimeSlotSet, first referenced in D:/Programme/ti/pdk_omapl138_1_0_6/packages/ti/drv/mcasp/lib/omapl138/c674/release/ti.drv.mcasp.ae674<mcasp_drv.oe674>

unresolved symbol McASPSerializerSet, first referenced in D:/Programme/ti/pdk_omapl138_1_0_6/packages/ti/drv/mcasp/lib/omapl138/c674/release/ti.drv.mcasp.ae674<mcasp_drv.oe674>

unresolved symbol McASPTxClkCfg, first referenced in D:/Programme/ti/pdk_omapl138_1_0_6/packages/ti/drv/mcasp/lib/omapl138/c674/release/ti.drv.mcasp.ae674<mcasp_drv.oe674>

unresolved symbol McASPTxClkCheckRegWrite, first referenced in D:/Programme/ti/pdk_omapl138_1_0_6/packages/ti/drv/mcasp/lib/omapl138/c674/release/ti.drv.mcasp.ae674<mcasp_drv.oe674>

unresolved symbol McASPTxClkPolaritySet, first referenced in D:/Programme/ti/pdk_omapl138_1_0_6/packages/ti/drv/mcasp/lib/omapl138/c674/release/ti.drv.mcasp.ae674<mcasp_drv.oe674>

unresolved symbol McASPTxFmtMaskSet, first referenced in D:/Programme/ti/pdk_omapl138_1_0_6/packages/ti/drv/mcasp/lib/omapl138/c674/release/ti.drv.mcasp.ae674<mcasp_drv.oe674>

unresolved symbol McASPTxFmtSet, first referenced in D:/Programme/ti/pdk_omapl138_1_0_6/packages/ti/drv/mcasp/lib/omapl138/c674/release/ti.drv.mcasp.ae674<mcasp_drv.oe674>

unresolved symbol McASPTxFrameSyncCfg, first referenced in D:/Programme/ti/pdk_omapl138_1_0_6/packages/ti/drv/mcasp/lib/omapl138/c674/release/ti.drv.mcasp.ae674<mcasp_drv.oe674>

unresolved symbol McASPTxHFClkPolaritySet, first referenced in D:/Programme/ti/pdk_omapl138_1_0_6/packages/ti/drv/mcasp/lib/omapl138/c674/release/ti.drv.mcasp.ae674<mcasp_drv.oe674>

unresolved symbol McASPTxIntEnable, first referenced in D:/Programme/ti/pdk_omapl138_1_0_6/packages/ti/drv/mcasp/lib/omapl138/c674/release/ti.drv.mcasp.ae674<mcasp_drv.oe674>

unresolved symbol McASPTxRxClkSyncDisable, first referenced in D:/Programme/ti/pdk_omapl138_1_0_6/packages/ti/drv/mcasp/lib/omapl138/c674/release/ti.drv.mcasp.ae674<mcasp_drv.oe674>

unresolved symbol McASPTxRxClkSyncEnable, first referenced in D:/Programme/ti/pdk_omapl138_1_0_6/packages/ti/drv/mcasp/lib/omapl138/c674/release/ti.drv.mcasp.ae674<mcasp_drv.oe674>

unresolved symbol McASPTxRxDMAEvtCntrlWrite, first referenced in D:/Programme/ti/pdk_omapl138_1_0_6/packages/ti/drv/mcasp/lib/omapl138/c674/release/ti.drv.mcasp.ae674<mcasp_drv.oe674>

unresolved symbol McASPTxStatusSet, first referenced in D:/Programme/ti/pdk_omapl138_1_0_6/packages/ti/drv/mcasp/lib/omapl138/c674/release/ti.drv.mcasp.ae674<mcasp_drv.oe674>

unresolved symbol McASPTxTimeSlotSet, first referenced in D:/Programme/ti/pdk_omapl138_1_0_6/packages/ti/drv/mcasp/lib/omapl138/c674/release/ti.drv.mcasp.ae674<mcasp_drv.oe674>

unresolved symbol Osal_Queue_construct, first referenced in D:/Programme/ti/pdk_omapl138_1_0_6/packages/ti/drv/mcasp/lib/omapl138/c674/release/ti.drv.mcasp.ae674<mcasp_drv.oe674>

Seems like part of the library might be missing? What am I missing?

Many Thanks
Urs

Description Resource Path Location Type#10010 null: errors encountered during linking; "test_c822.out" not built test_c822 C/C++ Problem#10234-D null: unresolved symbols remain test_c822 C/C++ Problemgmake: *** [all] Error 2 test_c822 C/C++ Problemgmake[1]: *** [test_c822.out] Error 1 test_c822 C/C++ Problemunresolved symbol _DebugP_assert, first referenced in D:/Programme/ti/pdk_omapl138_1_0_6/packages/ti/drv/mcasp/lib/omapl138/c674/release/ti.drv.mcasp.ae674<mcasp_drv.oe674> test_c822 C/C++ Problemunresolved symbol HwiP_disable, first referenced in D:/Programme/ti/pdk_omapl138_1_0_6/packages/ti/drv/mcasp/lib/omapl138/c674/release/ti.drv.mcasp.ae674<mcasp_drv.oe674> test_c822 C/C++ Problemunresolved symbol HwiP_restore, first referenced in D:/Programme/ti/pdk_omapl138_1_0_6/packages/ti/drv/mcasp/lib/omapl138/c674/release/ti.drv.mcasp.ae674<mcasp_drv.oe674> test_c822 C/C++ Problemunresolved symbol McASPDITModeCtlWrite, first referenced in D:/Programme/ti/pdk_omapl138_1_0_6/packages/ti/drv/mcasp/lib/omapl138/c674/release/ti.drv.mcasp.ae674<mcasp_drv.oe674> test_c822 C/C++ Problemunresolved symbol McASPDlbRegWrite, first referenced in D:/Programme/ti/pdk_omapl138_1_0_6/packages/ti/drv/mcasp/lib/omapl138/c674/release/ti.drv.mcasp.ae674<mcasp_drv.oe674> test_c822 C/C++ Problemunresolved symbol McASPGlobalCtlReset, first referenced in D:/Programme/ti/pdk_omapl138_1_0_6/packages/ti/drv/mcasp/lib/omapl138/c674/release/ti.drv.mcasp.ae674<mcasp_drv.oe674> test_c822 C/C++ Problemunresolved symbol McASPGlobalCtlSet, first referenced in D:/Programme/ti/pdk_omapl138_1_0_6/packages/ti/drv/mcasp/lib/omapl138/c674/release/ti.drv.mcasp.ae674<mcasp_drv.oe674> test_c822 C/C++ Problemunresolved symbol McASPPinDirOutputSet, first referenced in D:/Programme/ti/pdk_omapl138_1_0_6/packages/ti/drv/mcasp/lib/omapl138/c674/release/ti.drv.mcasp.ae674<mcasp_drv.oe674> test_c822 C/C++ Problemunresolved symbol McASPPinGPIOSet, first referenced in D:/Programme/ti/pdk_omapl138_1_0_6/packages/ti/drv/mcasp/lib/omapl138/c674/release/ti.drv.mcasp.ae674<mcasp_drv.oe674> test_c822 C/C++ Problemunresolved symbol McASPRxClkCfg, first referenced in D:/Programme/ti/pdk_omapl138_1_0_6/packages/ti/drv/mcasp/lib/omapl138/c674/release/ti.drv.mcasp.ae674<mcasp_drv.oe674> test_c822 C/C++ Problemunresolved symbol McASPRxClkCheckRegWrite, first referenced in D:/Programme/ti/pdk_omapl138_1_0_6/packages/ti/drv/mcasp/lib/omapl138/c674/release/ti.drv.mcasp.ae674<mcasp_drv.oe674> test_c822 C/C++ Problemunresolved symbol McASPRxClkPolaritySet, first referenced in D:/Programme/ti/pdk_omapl138_1_0_6/packages/ti/drv/mcasp/lib/omapl138/c674/release/ti.drv.mcasp.ae674<mcasp_drv.oe674> test_c822 C/C++ Problemunresolved symbol McASPRxFmtMaskSet, first referenced in D:/Programme/ti/pdk_omapl138_1_0_6/packages/ti/drv/mcasp/lib/omapl138/c674/release/ti.drv.mcasp.ae674<mcasp_drv.oe674> test_c822 C/C++ Problemunresolved symbol McASPRxFmtSet, first referenced in D:/Programme/ti/pdk_omapl138_1_0_6/packages/ti/drv/mcasp/lib/omapl138/c674/release/ti.drv.mcasp.ae674<mcasp_drv.oe674> test_c822 C/C++ Problemunresolved symbol McASPRxFrameSyncCfg, first referenced in D:/Programme/ti/pdk_omapl138_1_0_6/packages/ti/drv/mcasp/lib/omapl138/c674/release/ti.drv.mcasp.ae674<mcasp_drv.oe674> test_c822 C/C++ Problemunresolved symbol McASPRxHFClkPolaritySet, first referenced in D:/Programme/ti/pdk_omapl138_1_0_6/packages/ti/drv/mcasp/lib/omapl138/c674/release/ti.drv.mcasp.ae674<mcasp_drv.oe674> test_c822 C/C++ Problemunresolved symbol McASPRxIntEnable, first referenced in D:/Programme/ti/pdk_omapl138_1_0_6/packages/ti/drv/mcasp/lib/omapl138/c674/release/ti.drv.mcasp.ae674<mcasp_drv.oe674> test_c822 C/C++ Problemunresolved symbol McASPRxStatusSet, first referenced in D:/Programme/ti/pdk_omapl138_1_0_6/packages/ti/drv/mcasp/lib/omapl138/c674/release/ti.drv.mcasp.ae674<mcasp_drv.oe674> test_c822 C/C++ Problemunresolved symbol McASPRxTimeSlotSet, first referenced in D:/Programme/ti/pdk_omapl138_1_0_6/packages/ti/drv/mcasp/lib/omapl138/c674/release/ti.drv.mcasp.ae674<mcasp_drv.oe674> test_c822 C/C++ Problemunresolved symbol McASPSerializerSet, first referenced in D:/Programme/ti/pdk_omapl138_1_0_6/packages/ti/drv/mcasp/lib/omapl138/c674/release/ti.drv.mcasp.ae674<mcasp_drv.oe674> test_c822 C/C++ Problemunresolved symbol McASPTxClkCfg, first referenced in D:/Programme/ti/pdk_omapl138_1_0_6/packages/ti/drv/mcasp/lib/omapl138/c674/release/ti.drv.mcasp.ae674<mcasp_drv.oe674> test_c822 C/C++ Problemunresolved symbol McASPTxClkCheckRegWrite, first referenced in D:/Programme/ti/pdk_omapl138_1_0_6/packages/ti/drv/mcasp/lib/omapl138/c674/release/ti.drv.mcasp.ae674<mcasp_drv.oe674> test_c822 C/C++ Problemunresolved symbol McASPTxClkPolaritySet, first referenced in D:/Programme/ti/pdk_omapl138_1_0_6/packages/ti/drv/mcasp/lib/omapl138/c674/release/ti.drv.mcasp.ae674<mcasp_drv.oe674> test_c822 C/C++ Problemunresolved symbol McASPTxFmtMaskSet, first referenced in D:/Programme/ti/pdk_omapl138_1_0_6/packages/ti/drv/mcasp/lib/omapl138/c674/release/ti.drv.mcasp.ae674<mcasp_drv.oe674> test_c822 C/C++ Problemunresolved symbol McASPTxFmtSet, first referenced in D:/Programme/ti/pdk_omapl138_1_0_6/packages/ti/drv/mcasp/lib/omapl138/c674/release/ti.drv.mcasp.ae674<mcasp_drv.oe674> test_c822 C/C++ Problemunresolved symbol McASPTxFrameSyncCfg, first referenced in D:/Programme/ti/pdk_omapl138_1_0_6/packages/ti/drv/mcasp/lib/omapl138/c674/release/ti.drv.mcasp.ae674<mcasp_drv.oe674> test_c822 C/C++ Problemunresolved symbol McASPTxHFClkPolaritySet, first referenced in D:/Programme/ti/pdk_omapl138_1_0_6/packages/ti/drv/mcasp/lib/omapl138/c674/release/ti.drv.mcasp.ae674<mcasp_drv.oe674> test_c822 C/C++ Problemunresolved symbol McASPTxIntEnable, first referenced in D:/Programme/ti/pdk_omapl138_1_0_6/packages/ti/drv/mcasp/lib/omapl138/c674/release/ti.drv.mcasp.ae674<mcasp_drv.oe674> test_c822 C/C++ Problemunresolved symbol McASPTxRxClkSyncDisable, first referenced in D:/Programme/ti/pdk_omapl138_1_0_6/packages/ti/drv/mcasp/lib/omapl138/c674/release/ti.drv.mcasp.ae674<mcasp_drv.oe674> test_c822 C/C++ Problemunresolved symbol McASPTxRxClkSyncEnable, first referenced in D:/Programme/ti/pdk_omapl138_1_0_6/packages/ti/drv/mcasp/lib/omapl138/c674/release/ti.drv.mcasp.ae674<mcasp_drv.oe674> test_c822 C/C++ Problemunresolved symbol McASPTxRxDMAEvtCntrlWrite, first referenced in D:/Programme/ti/pdk_omapl138_1_0_6/packages/ti/drv/mcasp/lib/omapl138/c674/release/ti.drv.mcasp.ae674<mcasp_drv.oe674> test_c822 C/C++ Problemunresolved symbol McASPTxStatusSet, first referenced in D:/Programme/ti/pdk_omapl138_1_0_6/packages/ti/drv/mcasp/lib/omapl138/c674/release/ti.drv.mcasp.ae674<mcasp_drv.oe674> test_c822 C/C++ Problemunresolved symbol McASPTxTimeSlotSet, first referenced in D:/Programme/ti/pdk_omapl138_1_0_6/packages/ti/drv/mcasp/lib/omapl138/c674/release/ti.drv.mcasp.ae674<mcasp_drv.oe674> test_c822 C/C++ Problemunresolved symbol Osal_Queue_construct, first referenced in D:/Programme/ti/pdk_omapl138_1_0_6/packages/ti/drv/mcasp/lib/omapl138/c674/release/ti.drv.mcasp.ae674<mcasp_drv.oe674> test_c822 C/C++ Problem

  • Hello,

    You most likely need to add the following packages to your .cfg file:

    /* Load the packages */
    var socType = "omapl138";
    var McASP = xdc.loadPackage('ti.drv.mcasp');
    McASP.Settings.socType = socType;

    /* Load the Board package and set the board name */
    var Board = xdc.loadPackage('ti.board');
    Board.Settings.boardName = "lcdkOMAPL138";

    /* Load the OSAL package */
    var osType = "tirtos"
    var Osal = xdc.useModule('ti.osal.Settings');
    Osal.osType = osType;
    Osal.socType = socType;

    There is an example McASP CCS project in the PDK, can you use that as a starting point? It can be built using the following commands:

    > cd pdk\packages
    > pdksetupenv.bat
    > pdkProjectCreate.bat OMAPL138 all little mcasp all dsp

    I hope this helps.
  • Hi,

    Thanks, Adding that to the app.cfg seems to have done the trick!

    I tried to use pdkProjectCreate, however it never created any projects. Running your commands yields the following:

    D:\Programme\ti\pdk_omapl138_1_0_6\packages>pdksetupenv.bat
    'export' is not recognized as an internal or external command,
    operable program or batch file.
    ***************************************************
    Environment Configuration:
    ***************************************************
    SDK_INSTALL_PATH : D:/PROGRA~1/ti
    GMAKE_INSTALL_PATH : D:/PROGRA~1/ti/xdctools_3_50_07_20_core
    RULES_MAKE : D:/PROGRA~1/ti/pdk_omapl138_1_0_6/packages/Rules.make
    ***************************************************

    D:\Programme\ti\pdk_omapl138_1_0_6\packages>pdkProjectCreate.bat OMAPL138 all little mcasp all dsp
    =========================================================================
    Configuration:
    SOC : OMAPL138
    BOARD : all
    ENDIAN : little
    MODULE : mcasp
    PROJECT_TYPE : all
    PROCESSOR : dsp
    PDK_SHORT_NAME : D:\PROGRA~1\ti\PDK_OM~1\packages\
    =========================================================================
    Checking Configuration...
    Complete
    =========================================================================
    PDK_PARTNO : OMAPL138
    PDK_ECLIPSE_ID : com.ti.pdk.omapl138
    RTSC_PLATFORM_NAME : ti.platforms.evmOMAPL138
    RTSC_TARGET : ti.targets.elf.C674
    CCS_DEVICE : "com.ti.ccstudio.deviceModel.C6000.GenericC674xDevice"
    *****************************************************************************
    Detecting all projects in PDK and importing them in the workspace D:\PROGRA~1\ti\PDK_OM~1\packages\\MyExampleProjects
    Detected Test Project: MCASP_Audio_lcdkOMAPL138_c674xExampleProject
    The system cannot find the path specified.
    Copying macros.ini
    The system cannot find the path specified.
    0 file(s) copied.
    No projects detected
    Project generation complete
    *****************************************************************************

    Evidently I can't find something, but I have no idea what that something is. Any ideas?