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.

IWR6843: Errata MSS#50 Occasional EDMA self-test failures

Part Number: IWR6843
Other Parts Discussed in Thread: MMWAVEICBOOST,

Tool/software:

Hello,

1. How to monitor the BOOTERRORSTATUS flag, where it's rewritten in the code.

2. How to issue NRESET, without power cycling the device, is there a specific register to use? 

3. If we used a soft reset, would it work?

Thanks,

Omar

  • I can see that we have EDMA self-test in  rlMssBootErrStatus_t struct, and it's somehow related to  RL_DEV_AE_MSS_BOOTERRSTATUS_SB; however, I don't know how to check it from the application side.

  • Hi Omar, 

    When you post on E2E, the topic of your question is reviewed and assigned to the appriate subject matter expert. Our policy and goal is to answer all E2E posts within 24 hours. There is no need to tag an engineer on the question. I'm actually a hardware expert and this is more of a software question. 

    Don't worry though, one of our experts will be by to answer your questions once the ticket has been reviewed and assigned. :) 

    Blake

  • Hello,

    You can check BOOTERRORSTATUS flag in memory for its status at any point you need it to. With 6843, due to the lack of XDS debugger there is no software NRESET. If you have a MMWAVEICBOOST, which allows communication with the 6843 via XDS debugger, you are able to have the XDS proc a NRESET. We have an example of doing just this within the Radar Toolbox's Applications Visualizer. It is open source and written in Python, and the "Reset Connection" button does a NRESET, so you can see how it is done there.

    Best Regards,

    Pedrhom

  • Hello ,

    I am evaluating the risk associated with Errata MSS#50 for the IWR6843 mmWave device and planning to implement the related workaround as outlined:

    "The host application needs to monitor the BOOTERRORSTATUS flag. If the EDMA_Self Test flag is set to ‘1’, indicating failure, it should issue an nReset to the mmWave device. This should be done without power cycling the device, i.e., disabling the power supplies to the mmWave device."

    To proceed, I need to check the flag and issue a nReset, but I have some questions about the implementation:

    1. Locating the EDMA_Self Test Flag

    I’ve reviewed the IWR6843 datasheet and the mmWave SDK, but couldn’t find the specific location or definition of the EDMA_Self Test flag within the BOOTERRORSTATUS register.

    • Is there a specific API provided in the SDK to check this flag?
    • Alternatively, is there a memory address or register I should directly access to read this flag?

    2. Applying the Workaround Without MMWAVEICBOOST

    I am using only the IWR6843 (without the MMWAVEICBOOST board), so I don’t have direct hardware control over the nRESET pin.

    • Given this setup, is it acceptable to use a software reset (SOFTRST) instead of an nReset to satisfy the workaround?

    Thank you for your assistance.
    Omar
  • Hello Omar,

    1. Detailed register level information is provided in the technical reference manual. For EDMA error detection, please look into EDMA_TPCC_ERRINT.

    2. https://dev.ti.com/tirex/explore/node?node=A__ANH6D6HtFwFeTI77T-jkbA__radar_toolbox__1AslXXD__LATEST

    Is how we suggest a soft reset using CLI. The code is an address write.

    Best Regards,

    Pedrhom

  • Hello

    I have checked EDMA_TPCC_ERRINT register in the datasheet, but I couldn't find any indication for the EDMA_Self test, which happens during the bootup.

    For me, it's all about applying the workaround mentioned for ERRATA MSS#50.

    What approach should I follow to avoid Occasional EDMA self-test failures?

    Kindly note that the IWR6843 will be used in the field, and we won't be able to connect it through an external device.

    Thank you,

    Omar

  • Hello ,

    Just following up on this issue—any updates or suggestions? Let me know if you need more info from my side.
    Thanks!

  • Hello.

    Pedrhom is out of office and will provide a response once he is back.  Thank you for your patience.

    Sincerely,

    Santosh

  • Hello ,

    Thanks for your response. When will he be available again?

    Thanks,

    Omar 

  • Hello Omar,

    There is no specific "EDMA_Self" register, in fact I believe this a typo of someone copying and pasting "EDMA_" rather than "EDMA". The more indepth workaround is that once the bootloader executes, the DSS CLK gets enabled which then has all the TPTC flops in a defined state. At this point if another nReset (warm reset) is provided, the flops would be in the reset state, hence avoiding the false CREQ (Command request) from being latched. If using a host processor, it can wait for HOST IRQ signal from 6843 device going high , which confirms the successful bootloader execution, and then issue a second nReset to the 6843 device.

    Best Regards,

    Pedrhom