Hi @VaneB ,
We are using below key catalogs:
/* Table containing NVM key catalog entries */
const hseKeyGroupCfgEntry_t aHseNvmKeyCatalog[] =
{
/* NvmKeyGroup_0 */
{(HSE_MU0_MASK), HSE_KEY_OWNER_CUST, HSE_KEY_TYPE_SHE, 1U, 128U, {0U, 0U}},
/* NvmKeyGroup_1 */
{(HSE_MU0_MASK), HSE_KEY_OWNER_CUST, HSE_KEY_TYPE_ECC_PAIR, 1U, 256U, {0U, 0U}},
/* NvmKeyGroup_2 */
{(HSE_MU0_MASK), HSE_KEY_OWNER_CUST, HSE_KEY_TYPE_AES, 1U, 256U, {0U, 0U}},
/* Marker to end the key catalog */
{0U, 0U, 0U, 0U, 0U, {0U, 0U}}
};
/* Table containing RAM key catalog entries */
const hseKeyGroupCfgEntry_t aHseRamKeyCatalog[] =
{
/* RamKeyGroup_0 */
{(HSE_MU0_MASK), HSE_KEY_OWNER_CUST, HSE_KEY_TYPE_SHE, 1U, 128U, {0U, 0U}},
/* Marker to end the key catalog */
{0U, 0U, 0U, 0U, 0U, {0U, 0U}}
};
For below function we receive HSE_SRV_RSP_INVALID_PARAM
hseSrvResponse_t Generic_ImportKeys(void)
{
hseSrvResponse_t srvResponse = HSE_SRV_RSP_GENERAL_ERROR;
/*Import key linked with SMR#0*/
srvResponse = ImportPlainSymKeyReqMuChannel(
MU0,
1U,
NVM_AES128_BOOT_KEY,
HSE_KEY_TYPE_AES,
( HSE_KF_USAGE_VERIFY ),
0U,
aesEcbKeyLength,
aesEcbKey,
TRUE
);
ASSERT(HSE_SRV_RSP_OK == srvResponse );
if(HSE_SRV_RSP_OK != srvResponse)
goto exit;
/* load keys for SHE secure boot */
srvResponse = LoadBootMacKey();
ASSERT(HSE_SRV_RSP_OK == srvResponse );
if(HSE_SRV_RSP_OK != srvResponse)
goto exit;
exit:
return srvResponse;
}
Please check attached global_defs.h for more details about the parameters.
Thanks and Regards,
Swapnil Gawade