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.

AM2634-Q1: Why APP app project integrated the Crypto driver code and then SIPC_isr can not run normally when called HSM services?

Part Number: AM2634-Q1

Tool/software:

Hi Experts,

I am asking for my customer here.

Prior to this, the HSM firmware had been successfully burned on the customer's board, and it could successfully jump from SBL to app in HSSE mode, and could run the HSM project based on the demo project in the SDK, and the HSM encryption service could be executed normally. Now they want to the app project integrated the Crypto driver code and adapted the SIPC interrupt. Then, when calling the HSM service, the following program execution problems were encountered:


The program is stuck at SIPC_mailboxRead in the SIPC_isr function. When calling SIPC_mailboxRead, it is stuck at line 82 in the figure below. The rdIdx and wrIdx in the HSM's Mailbox are always 1, causing the sipc interrupt to be unable to exit, as shown in the red box. In addition, the version number on the HSM side can be obtained normally, as shown in the green box. Could you give us debug dir/suggestion? Thanks.

  • Hi,

    May I know which crypto driver is being integrated here?

    We have the demo examples for all the crypto drivers as part of the TIFS package. Have you referred the implementation of the same?

    Also, May I know the SDK version used here?

    Regards,

    Nikhil Dasan

  • Hi Nikhil,

    I have sent the calendar to you, and then we can discuss this issue here. Thanks.

  • As discussed in the call, 

    copying the latest content on the mail here

    We have multiple R5 based examples that calls the HSM services.

    These are part of the TIFS package in ${TIFS}/examples folder.

     

    You can refer the hsm_getversion example, where the R5 core requests the Keywriter version, soc type from HSM core.


    The regions used by this application can be found in the linker.cmd file generated and also in the hsm_getversion.release.map file
    The MPU configurations for the same is also part of the example.syscfg in this folder.

     

    The same applies to other examples in the ${TIFS}/examples folder.

    Regards,

    Nikhil Dasan