I use ccsv5 and mcsdk2.0. Following is my code and after build the project, reported that undefined symbol CSL_edma3Open CSL_edma3Init. Why can normally use the cache API but EDMA3.
#include <stdio.h>
#include <xdc/std.h>
#include <xdc/runtime/System.h>
#include <ti/csl/csl_cacheAux.h>
#include <ti/csl/csl_edma3.h>
#include <ti/csl/csl_edma3Aux.h>
int main(void)
{
CACHE_L1Size cacheL1PSize;
CACHE_L1Size cacheL1DSize;
CACHE_L2Size cacheL2Size;
CSL_Edma3Obj edmaObj;
CSL_Status status;
// EDMA Init
CSL_edma3Init(NULL);
hModule = CSL_edma3Open(&edmaObj,1,NULL,&status);
// cache Init
cacheL1PSize = CACHE_L1_MAXIM3;
while(cacheL1PSize != CACHE_getL1PSize())
{
CACHE_setL1PSize(cacheL1PSize);
}
printf("L1P Cache Set Successed\n");
cacheL1DSize = CACHE_L1_MAXIM3;
while(cacheL1DSize != CACHE_getL1PSize())
{
CACHE_setL1PSize(cacheL1DSize);
}
printf("L1D Cache Set Successed\n");
cacheL2Size = CACHE_128KCACHE;
while(cacheL2Size != CACHE_getL2Size())
{
CACHE_setL2Size(cacheL2Size);
}
printf("L2 Cache Set Successed\n");
return 0;
}
