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.

IWRL6432BOOST: ccs debug and system hang on not receiving edma done Semaphore

Part Number: IWRL6432BOOST
Other Parts Discussed in Thread: AWRL6432, SYSCONFIG

Tool/software:

Hi TI engineer : 

    I'm using sampling code of Capon2D from radar_toolbox_2_10_00_04\source\ti\examples\InCabin_Sensing\AWRL6432_Life_Presence_Detection_Demo_Capon2D\src\xwrl6432, 

 we burn empty.release.appimage into 6432 BOOST,and ccs 12.6 debug with following switch pin setting

We turn on CLI_ByPassApi with .syscfg setting as following

#define FEATURE_LITE_BUILD_EN 0
#define SPI_ADC_DATA_STREAMING 0
#define QUICK_START 1
#define DYNAMIC_RECONFIG 1
#define ENABLE_MONITORS 0

char* radarCmdString[MAX_RADAR_CMD] =
{
"sensorStop 0 \r\n",
"channelCfg 7 3 0 \r\n",
"chirpComnCfg 40 0 0 128 4 61.0 1 \r\n",
"chirpTimingCfg 7 24 0 65 57.5 \r\n",
"frameCfg 2 15 4080 16 200 0 \r\n",
"guiMonitor 2 0 0 0 0 1 0 0 0 0 0 \r\n",
"sigProcChainCfg 32 16 2 0 4 16 0 20 \r\n",
"angleHeatmapGenCfg 1 1 -3 3 \r\n",
"clusterCfg 0 0.5 2 \r\n",
"cfarCfg 2 8 4 3 0 9.0 0 1 4 6 2 9.0 0.80 0 0 0 1 1 1 1 0.5 1.5 0.15 \r\n",
"aoaFovCfg -60 60 -60 60 \r\n",
"rangeSelCfg 0.2 2.0 \r\n",
"clutterRemoval 1 \r\n",
"antGeometryCfg 0 0 1 1 0 2 0 1 1 2 0 3 2.418 2.418 \r\n",
"compRangeBiasAndRxChanPhase 0.0 1.00000 0.00000 -1.00000 0.00000 1.00000 0.00000 -1.00000 0.00000 1.00000 0.00000 -1.00000 0.00000 \r\n",
"adcDataSource 0 adc_data_0001_CtestAdc6Ant.bin \r\n",
"adcLogging 0 \r\n",
"lowPowerCfg 0 \r\n",
"factoryCalibCfg 1 0 40 0 0x1ff000 \r\n",
"sensorStart 0 0 0 0 \r\n"
};

We add some debug message inside the code, and observe the system will hang in DPU_RangeProcHWA_process() waiting edma done semaphore

console debug message

[Cortex_M4_0] 
Drivers open
Get Device Version
DPC_Init begin
DPC_Init done
CLI_init begin
CLI_init done
inside powerManagementTask

 Starting the Demo with Default Configurations...
InRadar: sensorStop 0 
Done

CLI_MMWaveChannelCfg: 7 3 0 
InRadar: channelCfg 7 3 0 
Done

CLI_MMWaveChirpCommonCfg: 40 0 0 128 4 610.00 1 
InRadar: chirpComnCfg 40 0 0 128 4 61.0 1 
Done

CLI_MMWaveChirpTimingCfg: 70.00 24576 0.00 65.00 57.50 
InRadar: chirpTimingCfg 7 24 0 65 57.5 
Done

CLI_MMWaveFrameCfg: 2 15 4080.00 16 8000000.00 0 
InRadar: frameCfg 2 15 4080 16 200 0 
Done

CLI_MMWaveGuiMonSel: 2, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 
InRadar: guiMonitor 2 0 0 0 0 1 0 0 0 0 0 
Done

CLI_MMWaveSigProcChainCfg: 32 16 2 0 4 16 0 20.00 
InRadar: sigProcChainCfg 32 16 2 0 4 16 0 20 
Done

CLI_MMWaveAngleHeatmapGenCfg: 87 89 91 94 
InRadar: angleHeatmapGenCfg 1 1 -3 3 
Done

CLI_MMWaveClusterParamCfg: 0 0 0 
InRadar: clusterCfg 0 0.5 2 
Done

CLI_MMWaveCfarCfg: 2 8 4 3 0 9.00 0 1 4 6 2 9.00 204 0 0 0 1 1 1 1 0.50 1.50 0.15
InRadar: cfarCfg 2 8 4 3 0 9.0 0 1 4 6 2 9.0 0.80 0 0 0 1 1 1 1 0.5 1.5 0.15 
Done

CLI_MMWaveAoaCfg: 0, -1068630016, 0, 1078853632 
InRadar: aoaFovCfg -60 60 -60 60 
Done

CLI_MMWaveRangeSelCfg: 0.20 2.00 
InRadar: rangeSelCfg 0.2 2.0 
Done

CLI_MMWaveClutterRemoval: 1 
InRadar: clutterRemoval 1 
Done

CLI_MmwDemo_AntGeometryCfg: 0 0 1 1 0 2 0 1 1 2 0 3 2.418 2.418
InRadar: antGeometryCfg 0 0 1 1 0 2 0 1 1 2 0 3 2.418 2.418 
Done

CLI_MMWaveCompRangeBiasAndRxChanPhaseCfg: 0 1048575 0 -1048576 0 1048575 0 -1048576 0 1048575 0 -1048576 0 
InRadar: compRangeBiasAndRxChanPhase 0.0 1.00000 0.00000 -1.00000 0.00000 1.00000 0.00000 -1.00000 0.00000 1.00000 0.00000 -1.00000 0.00000 
Done

CLI_MMWaveAdcDataSourceCfg: 0 adc_data_0001_CtestAdc6Ant.bin 
InRadar: adcDataSource 0 adc_data_0001_CtestAdc6Ant.bin 
Done

CLI_MMWaveAdcLogging: 0 0 0 0 2 
InRadar: adcLogging 0 
Done

CLI_MMWaveLowPwrModeEnable: 0 
InRadar: lowPowerCfg 0 
Done

CLI_MMWaveFactoryCalConfig: 1 0 40 0 0 
CLI_MMWaveFactoryCalConfig: 1 0 40 0 1ff000 
InRadar: factoryCalibCfg 1 0 40 0 0x1ff000 
Done

CLI_MMWaveSensorStart: 0 0 0 0 
rfBandwidth = 3965.00
rampDownTime = 6.00
h_CrdNSlopeMag = 1444
******************************************
xWRL6432 MMW Demo 05.04.00.00
******************************************
Platform                : XWRL6432
RFS Firmware Version    : 07.01.00.04
FECSS Lib Version       : 03.01.08.01
mmWaveLink Version      : 03.02.00.03
RFS Patch Version       : 07.02.00.00
mmWave SDK Version      : 05.04.00.00
dpc_task initial
DPC Config Initial
DPC mmwDemo_rangeProcConfig
DPU_RangeProcHWA_config
DPU_RangeProcHWA_config 1
DPU_RangeProcHWA_config 2
DPU_RangeProcHWA_config 3
DPU_RangeProcHWA_config 4
DPU_RangeProcHWA_config 5
DPU_RangeProcHWA_config 6
DPU_RangeProcHWA_config 7
DPU_RangeProcHWA_config 8
DPU_RangeProcHWA_config 9
DPU_RangeProcHWA_config 10
DPU_RangeProcHWA_config 11
DPU_RangeProcHWA_config 13
DPU_RangeProcHWA_config 14
DPU_RangeProcHWA_config 15
numDopplerChirpsPerFrame = 1, numMinorMotionChirpsPerFrame = 0, DPParams->enableMinorMotion = 1
numMajorPingPongPaths = 5, pingPongInd = 0
without_EDMA_callback
numDopplerChirpsPerFrame = 1, numMinorMotionChirpsPerFrame = 0, DPParams->enableMinorMotion = 1
numMajorPingPongPaths = 5, pingPongInd = 0
without_EDMA_callback
numDopplerChirpsPerFrame = 16, numMinorMotionChirpsPerFrame = 16
MM_with_EDMA_callback
isIntermediateTransferCompletionEnabled = 1, isTransferCompletionEnabled = 1
numDopplerChirpsPerFrame = 16, numMinorMotionChirpsPerFrame = 16
MM_with_EDMA_callback
isIntermediateTransferCompletionEnabled = 1, isTransferCompletionEnabled = 1
DPU_RangeProcHWA_config 16
DPU_RangeProcHWA_config 17
DPU_RangeProcHWA_config 12
numUsedHwaParamSets = 4
DPC mmwDemo_doaProcConfig
 ========== Memory Stats ==========
                             Size         Used         Free
                  L3       425984       237712       188272
               Local        28672         2416        26256
             Tracker        25600           64        25536
             FeatExt         2048           64         1984
DPC Config Done
DPC Execute
DPC_Execute:reloadHwaParamSetPerFrameFlag:0
DPC_Execute:DPU_RangeProcHWA_control
rangeProcHWA_TriggerHWA
rangeProcHWA_ConfigHWACommon
HWA_configCommon
HWA_enableDoneInterrupt
HWA_enableDoneInterrupt done
HWA_enable
DPC_Execute:Major:0, Minor:1
DPU_RangeProcHWA_process
wait rangeProcObj->hwaDoneSemaHandle
tlv_task initial
spiADCStream
App: MMWave_start Issued
MMWave_start outside
rangeProcObj->hwaDoneSemaHandle
wait rangeProcObj->edmaDoneSemaHandle
InRadar: sensorStart 0 0 0 0 
Done

CLI Done
Running the demo...

We also add debug message inside the call back function of rangeProcHWA_EDMA_transferCompletionMMCallbackFxn(), but not print any debug information inside the call back function

Please help us

Sincerely,

Eric Syu