We are using IWR6843 ES1.0 samples on custom PCBs very closely following the IWR6843ISK layout & BOM, running the lab0015 firmware from mmWave industrial toolkit 3.6.2.
Startup is not reliable, on some boards the firmware only sometimes reaches the point of starting the CLI.
I have now built the firmware from source in CCS, and using the XDS110 debugger I have identified that when this happens, both the DSS and MSS cores are hanging in SOC_waitBSSpowerUp at the following line:
while (CSL_FEXTR(ptrSOCDriverMCB->ptrTopRCMRegs->SPARE0, 18U, 16U) != 0x7)
with call stacks as shown below:
I have found two previous reports of BSS startup problems:
IWR6843: Problem with BSS power up
IWR6843ISK: MMWAVEICBOOST and IWR6843ISK Unreliable
The TI answer to the second of these mentions a problem with SDK 3.0 which is fixed in SDK 3.1:
There was a firmware issue identified in SDK 3.0.0.8 (and hence all binaries built on top of it) which could cause the power up sequence to hang in the loop you mentioned. EVMs shipped from the assembly house are flashed with the SDK 3.0.0.8 OOB demo and need to be updated with the corresponding demo from SDK 3.1.1.2 in which the firmware issue was resolved.
In fact we had similar intermittent problems with earlier versions of the lab0015 firmware running on TI's IWR6843ISK boards, and those problems went away when we used the new prebuilt image from mmWave industrial toolkit 3.6.2.
However it seems we now we are getting the same symptoms on our own boards with the 3.6.2 version of the code.
My questions are:
1. Do you have a solution?
2. What was the firmware issue fixed in SDK 3.1.1.2 which could cause a hang in this loop?
3. Are you sure the 3.1.1.2 change definitely fixed the problem?
4. What factors could be causing the BSS to sometimes fail to start up?