Lines Matching refs:hpka

280 uint32_t PKA_GetMode(const PKA_HandleTypeDef *hpka);
281 HAL_StatusTypeDef PKA_PollEndOfOperation(const PKA_HandleTypeDef *hpka, uint32_t Timeout, uint32_t …
282 uint32_t PKA_CheckError(const PKA_HandleTypeDef *hpka, uint32_t mode);
290 HAL_StatusTypeDef PKA_Process(PKA_HandleTypeDef *hpka, uint32_t mode, uint32_t Timeout);
291 HAL_StatusTypeDef PKA_Process_IT(PKA_HandleTypeDef *hpka, uint32_t mode);
292 void PKA_ModExp_Set(PKA_HandleTypeDef *hpka, PKA_ModExpInTypeDef *in);
293 void PKA_ModExpFastMode_Set(PKA_HandleTypeDef *hpka, PKA_ModExpFastModeInTypeDef *in);
294 void PKA_ECDSASign_Set(PKA_HandleTypeDef *hpka, PKA_ECDSASignInTypeDef *in);
295 void PKA_ECDSAVerif_Set(PKA_HandleTypeDef *hpka, PKA_ECDSAVerifInTypeDef *in);
296 void PKA_RSACRTExp_Set(PKA_HandleTypeDef *hpka, PKA_RSACRTExpInTypeDef *in);
297 void PKA_PointCheck_Set(PKA_HandleTypeDef *hpka, PKA_PointCheckInTypeDef *in);
298 void PKA_ECCMul_Set(PKA_HandleTypeDef *hpka, PKA_ECCMulInTypeDef *in);
299 void PKA_ECCMulFastMode_Set(PKA_HandleTypeDef *hpka, PKA_ECCMulFastModeInTypeDef *in);
300 void PKA_ModRed_Set(PKA_HandleTypeDef *hpka, PKA_ModRedInTypeDef *in);
301 void PKA_ModInv_Set(PKA_HandleTypeDef *hpka, PKA_ModInvInTypeDef *in);
302 void PKA_MontgomeryParam_Set(PKA_HandleTypeDef *hpka, const uint32_t size, const uint8_t *pOp1);
303 void PKA_ARI_Set(PKA_HandleTypeDef *hpka, const uint32_t size, const uint32_t *pOp1, const uint32_t…
343 HAL_StatusTypeDef HAL_PKA_Init(PKA_HandleTypeDef *hpka) in HAL_PKA_Init() argument
349 if (hpka != NULL) in HAL_PKA_Init()
352 assert_param(IS_PKA_ALL_INSTANCE(hpka->Instance)); in HAL_PKA_Init()
354 if (hpka->State == HAL_PKA_STATE_RESET) in HAL_PKA_Init()
359hpka->OperationCpltCallback = HAL_PKA_OperationCpltCallback; /* Legacy weak OperationCpltCallback … in HAL_PKA_Init()
360hpka->ErrorCallback = HAL_PKA_ErrorCallback; /* Legacy weak ErrorCallback … in HAL_PKA_Init()
362 if (hpka->MspInitCallback == NULL) in HAL_PKA_Init()
364 hpka->MspInitCallback = HAL_PKA_MspInit; /* Legacy weak MspInit */ in HAL_PKA_Init()
368 hpka->MspInitCallback(hpka); in HAL_PKA_Init()
371 HAL_PKA_MspInit(hpka); in HAL_PKA_Init()
376 hpka->State = HAL_PKA_STATE_BUSY; in HAL_PKA_Init()
382 while ((hpka->Instance->CR & PKA_CR_EN) != PKA_CR_EN) in HAL_PKA_Init()
384 hpka->Instance->CR = PKA_CR_EN; in HAL_PKA_Init()
398 … SET_BIT(hpka->Instance->CLRFR, PKA_CLRFR_PROCENDFC | PKA_CLRFR_RAMERRFC | PKA_CLRFR_ADDRERRFC); in HAL_PKA_Init()
401 hpka->ErrorCode = HAL_PKA_ERROR_NONE; in HAL_PKA_Init()
404 hpka->State = HAL_PKA_STATE_READY; in HAL_PKA_Init()
409 hpka->ErrorCode = HAL_PKA_ERROR_TIMEOUT; in HAL_PKA_Init()
412 hpka->State = HAL_PKA_STATE_ERROR; in HAL_PKA_Init()
428 HAL_StatusTypeDef HAL_PKA_DeInit(PKA_HandleTypeDef *hpka) in HAL_PKA_DeInit() argument
433 if (hpka != NULL) in HAL_PKA_DeInit()
436 assert_param(IS_PKA_ALL_INSTANCE(hpka->Instance)); in HAL_PKA_DeInit()
439 hpka->State = HAL_PKA_STATE_BUSY; in HAL_PKA_DeInit()
443 hpka->Instance->CR = 0; in HAL_PKA_DeInit()
446 SET_BIT(hpka->Instance->CLRFR, PKA_CLRFR_PROCENDFC | PKA_CLRFR_RAMERRFC | PKA_CLRFR_ADDRERRFC); in HAL_PKA_DeInit()
449 if (hpka->MspDeInitCallback == NULL) in HAL_PKA_DeInit()
451 hpka->MspDeInitCallback = HAL_PKA_MspDeInit; /* Legacy weak MspDeInit */ in HAL_PKA_DeInit()
455 hpka->MspDeInitCallback(hpka); in HAL_PKA_DeInit()
458 HAL_PKA_MspDeInit(hpka); in HAL_PKA_DeInit()
462 hpka->ErrorCode = HAL_PKA_ERROR_NONE; in HAL_PKA_DeInit()
465 hpka->State = HAL_PKA_STATE_RESET; in HAL_PKA_DeInit()
480 __weak void HAL_PKA_MspInit(PKA_HandleTypeDef *hpka) in HAL_PKA_MspInit() argument
483 UNUSED(hpka); in HAL_PKA_MspInit()
495 __weak void HAL_PKA_MspDeInit(PKA_HandleTypeDef *hpka) in HAL_PKA_MspDeInit() argument
498 UNUSED(hpka); in HAL_PKA_MspDeInit()
520 HAL_StatusTypeDef HAL_PKA_RegisterCallback(PKA_HandleTypeDef *hpka, HAL_PKA_CallbackIDTypeDef Callb… in HAL_PKA_RegisterCallback() argument
528 hpka->ErrorCode |= HAL_PKA_ERROR_INVALID_CALLBACK; in HAL_PKA_RegisterCallback()
533 if (HAL_PKA_STATE_READY == hpka->State) in HAL_PKA_RegisterCallback()
538 hpka->OperationCpltCallback = pCallback; in HAL_PKA_RegisterCallback()
542 hpka->ErrorCallback = pCallback; in HAL_PKA_RegisterCallback()
546 hpka->MspInitCallback = pCallback; in HAL_PKA_RegisterCallback()
550 hpka->MspDeInitCallback = pCallback; in HAL_PKA_RegisterCallback()
555 hpka->ErrorCode |= HAL_PKA_ERROR_INVALID_CALLBACK; in HAL_PKA_RegisterCallback()
562 else if (HAL_PKA_STATE_RESET == hpka->State) in HAL_PKA_RegisterCallback()
567 hpka->MspInitCallback = pCallback; in HAL_PKA_RegisterCallback()
571 hpka->MspDeInitCallback = pCallback; in HAL_PKA_RegisterCallback()
576 hpka->ErrorCode |= HAL_PKA_ERROR_INVALID_CALLBACK; in HAL_PKA_RegisterCallback()
586 hpka->ErrorCode |= HAL_PKA_ERROR_INVALID_CALLBACK; in HAL_PKA_RegisterCallback()
608 HAL_StatusTypeDef HAL_PKA_UnRegisterCallback(PKA_HandleTypeDef *hpka, HAL_PKA_CallbackIDTypeDef Cal… in HAL_PKA_UnRegisterCallback() argument
612 if (HAL_PKA_STATE_READY == hpka->State) in HAL_PKA_UnRegisterCallback()
617hpka->OperationCpltCallback = HAL_PKA_OperationCpltCallback; /* Legacy weak OperationCpltCallback … in HAL_PKA_UnRegisterCallback()
621hpka->ErrorCallback = HAL_PKA_ErrorCallback; /* Legacy weak ErrorCallback */ in HAL_PKA_UnRegisterCallback()
625hpka->MspInitCallback = HAL_PKA_MspInit; /* Legacy weak MspInit */ in HAL_PKA_UnRegisterCallback()
629hpka->MspDeInitCallback = HAL_PKA_MspDeInit; /* Legacy weak MspDeInit */ in HAL_PKA_UnRegisterCallback()
634 hpka->ErrorCode |= HAL_PKA_ERROR_INVALID_CALLBACK; in HAL_PKA_UnRegisterCallback()
641 else if (HAL_PKA_STATE_RESET == hpka->State) in HAL_PKA_UnRegisterCallback()
646hpka->MspInitCallback = HAL_PKA_MspInit; /* Legacy weak MspInit */ in HAL_PKA_UnRegisterCallback()
650hpka->MspDeInitCallback = HAL_PKA_MspDeInit; /* Legacy weak MspDeInit */ in HAL_PKA_UnRegisterCallback()
655 hpka->ErrorCode |= HAL_PKA_ERROR_INVALID_CALLBACK; in HAL_PKA_UnRegisterCallback()
665 hpka->ErrorCode |= HAL_PKA_ERROR_INVALID_CALLBACK; in HAL_PKA_UnRegisterCallback()
786 HAL_StatusTypeDef HAL_PKA_ModExp(PKA_HandleTypeDef *hpka, PKA_ModExpInTypeDef *in, uint32_t Timeout) in HAL_PKA_ModExp() argument
789 PKA_ModExp_Set(hpka, in); in HAL_PKA_ModExp()
791 return PKA_Process(hpka, PKA_MODE_MODULAR_EXP, Timeout); in HAL_PKA_ModExp()
800 HAL_StatusTypeDef HAL_PKA_ModExp_IT(PKA_HandleTypeDef *hpka, PKA_ModExpInTypeDef *in) in HAL_PKA_ModExp_IT() argument
803 PKA_ModExp_Set(hpka, in); in HAL_PKA_ModExp_IT()
805 return PKA_Process_IT(hpka, PKA_MODE_MODULAR_EXP); in HAL_PKA_ModExp_IT()
815 HAL_StatusTypeDef HAL_PKA_ModExpFastMode(PKA_HandleTypeDef *hpka, PKA_ModExpFastModeInTypeDef *in, … in HAL_PKA_ModExpFastMode() argument
818 PKA_ModExpFastMode_Set(hpka, in); in HAL_PKA_ModExpFastMode()
820 return PKA_Process(hpka, PKA_MODE_MODULAR_EXP_FAST_MODE, Timeout); in HAL_PKA_ModExpFastMode()
829 HAL_StatusTypeDef HAL_PKA_ModExpFastMode_IT(PKA_HandleTypeDef *hpka, PKA_ModExpFastModeInTypeDef *i… in HAL_PKA_ModExpFastMode_IT() argument
832 PKA_ModExpFastMode_Set(hpka, in); in HAL_PKA_ModExpFastMode_IT()
834 return PKA_Process_IT(hpka, PKA_MODE_MODULAR_EXP_FAST_MODE); in HAL_PKA_ModExpFastMode_IT()
844 void HAL_PKA_ModExp_GetResult(PKA_HandleTypeDef *hpka, uint8_t *pRes) in HAL_PKA_ModExp_GetResult() argument
849 size = (hpka->Instance->RAM[PKA_MODULAR_EXP_IN_OP_NB_BITS] + 7UL) / 8UL; in HAL_PKA_ModExp_GetResult()
852 PKA_Memcpy_u32_to_u8(pRes, &hpka->Instance->RAM[PKA_MODULAR_EXP_OUT_SM_ALGO_ACC1], size); in HAL_PKA_ModExp_GetResult()
862 HAL_StatusTypeDef HAL_PKA_ECDSASign(PKA_HandleTypeDef *hpka, PKA_ECDSASignInTypeDef *in, uint32_t T… in HAL_PKA_ECDSASign() argument
865 PKA_ECDSASign_Set(hpka, in); in HAL_PKA_ECDSASign()
867 return PKA_Process(hpka, PKA_MODE_ECDSA_SIGNATURE, Timeout); in HAL_PKA_ECDSASign()
876 HAL_StatusTypeDef HAL_PKA_ECDSASign_IT(PKA_HandleTypeDef *hpka, PKA_ECDSASignInTypeDef *in) in HAL_PKA_ECDSASign_IT() argument
879 PKA_ECDSASign_Set(hpka, in); in HAL_PKA_ECDSASign_IT()
881 return PKA_Process_IT(hpka, PKA_MODE_ECDSA_SIGNATURE); in HAL_PKA_ECDSASign_IT()
890 void HAL_PKA_ECDSASign_GetResult(PKA_HandleTypeDef *hpka, PKA_ECDSASignOutTypeDef *out, in HAL_PKA_ECDSASign_GetResult() argument
895 size = (hpka->Instance->RAM[PKA_ECDSA_SIGN_IN_MOD_NB_BITS] + 7UL) / 8UL; in HAL_PKA_ECDSASign_GetResult()
899 PKA_Memcpy_u32_to_u8(out->RSign, &hpka->Instance->RAM[PKA_ECDSA_SIGN_OUT_SIGNATURE_R], size); in HAL_PKA_ECDSASign_GetResult()
900 PKA_Memcpy_u32_to_u8(out->SSign, &hpka->Instance->RAM[PKA_ECDSA_SIGN_OUT_SIGNATURE_S], size); in HAL_PKA_ECDSASign_GetResult()
907 PKA_Memcpy_u32_to_u8(outExt->ptX, &hpka->Instance->RAM[PKA_ECDSA_SIGN_OUT_FINAL_POINT_X], size); in HAL_PKA_ECDSASign_GetResult()
908 PKA_Memcpy_u32_to_u8(outExt->ptY, &hpka->Instance->RAM[PKA_ECDSA_SIGN_OUT_FINAL_POINT_Y], size); in HAL_PKA_ECDSASign_GetResult()
919 HAL_StatusTypeDef HAL_PKA_ECDSAVerif(PKA_HandleTypeDef *hpka, PKA_ECDSAVerifInTypeDef *in, uint32_t… in HAL_PKA_ECDSAVerif() argument
922 PKA_ECDSAVerif_Set(hpka, in); in HAL_PKA_ECDSAVerif()
925 return PKA_Process(hpka, PKA_MODE_ECDSA_VERIFICATION, Timeout); in HAL_PKA_ECDSAVerif()
935 HAL_StatusTypeDef HAL_PKA_ECDSAVerif_IT(PKA_HandleTypeDef *hpka, PKA_ECDSAVerifInTypeDef *in) in HAL_PKA_ECDSAVerif_IT() argument
938 PKA_ECDSAVerif_Set(hpka, in); in HAL_PKA_ECDSAVerif_IT()
941 return PKA_Process_IT(hpka, PKA_MODE_ECDSA_VERIFICATION); in HAL_PKA_ECDSAVerif_IT()
949 uint32_t HAL_PKA_ECDSAVerif_IsValidSignature(PKA_HandleTypeDef const *const hpka) in HAL_PKA_ECDSAVerif_IsValidSignature() argument
952 return (hpka->Instance->RAM[PKA_ECDSA_VERIF_OUT_RESULT] == 0UL) ? 1UL : 0UL; in HAL_PKA_ECDSAVerif_IsValidSignature()
962 HAL_StatusTypeDef HAL_PKA_RSACRTExp(PKA_HandleTypeDef *hpka, PKA_RSACRTExpInTypeDef *in, uint32_t T… in HAL_PKA_RSACRTExp() argument
965 PKA_RSACRTExp_Set(hpka, in); in HAL_PKA_RSACRTExp()
968 return PKA_Process(hpka, PKA_MODE_RSA_CRT_EXP, Timeout); in HAL_PKA_RSACRTExp()
977 HAL_StatusTypeDef HAL_PKA_RSACRTExp_IT(PKA_HandleTypeDef *hpka, PKA_RSACRTExpInTypeDef *in) in HAL_PKA_RSACRTExp_IT() argument
980 PKA_RSACRTExp_Set(hpka, in); in HAL_PKA_RSACRTExp_IT()
983 return PKA_Process_IT(hpka, PKA_MODE_RSA_CRT_EXP); in HAL_PKA_RSACRTExp_IT()
992 void HAL_PKA_RSACRTExp_GetResult(PKA_HandleTypeDef *hpka, uint8_t *pRes) in HAL_PKA_RSACRTExp_GetResult() argument
997 size = (hpka->Instance->RAM[PKA_RSA_CRT_EXP_IN_MOD_NB_BITS] + 7UL) / 8UL; in HAL_PKA_RSACRTExp_GetResult()
999 PKA_Memcpy_u32_to_u8(pRes, &hpka->Instance->RAM[PKA_RSA_CRT_EXP_OUT_RESULT], size); in HAL_PKA_RSACRTExp_GetResult()
1009 HAL_StatusTypeDef HAL_PKA_PointCheck(PKA_HandleTypeDef *hpka, PKA_PointCheckInTypeDef *in, uint32_t… in HAL_PKA_PointCheck() argument
1012 PKA_PointCheck_Set(hpka, in); in HAL_PKA_PointCheck()
1015 return PKA_Process(hpka, PKA_MODE_POINT_CHECK, Timeout); in HAL_PKA_PointCheck()
1024 HAL_StatusTypeDef HAL_PKA_PointCheck_IT(PKA_HandleTypeDef *hpka, PKA_PointCheckInTypeDef *in) in HAL_PKA_PointCheck_IT() argument
1027 PKA_PointCheck_Set(hpka, in); in HAL_PKA_PointCheck_IT()
1030 return PKA_Process_IT(hpka, PKA_MODE_POINT_CHECK); in HAL_PKA_PointCheck_IT()
1038 uint32_t HAL_PKA_PointCheck_IsOnCurve(PKA_HandleTypeDef const *const hpka) in HAL_PKA_PointCheck_IsOnCurve() argument
1042 return (hpka->Instance->RAM[PKA_POINT_CHECK_OUT_ERROR] == PKA_POINT_IS_ON_CURVE) ? 1UL : 0UL; in HAL_PKA_PointCheck_IsOnCurve()
1052 HAL_StatusTypeDef HAL_PKA_ECCMul(PKA_HandleTypeDef *hpka, PKA_ECCMulInTypeDef *in, uint32_t Timeout) in HAL_PKA_ECCMul() argument
1055 PKA_ECCMul_Set(hpka, in); in HAL_PKA_ECCMul()
1057 return PKA_Process(hpka, PKA_MODE_ECC_MUL, Timeout); in HAL_PKA_ECCMul()
1066 HAL_StatusTypeDef HAL_PKA_ECCMul_IT(PKA_HandleTypeDef *hpka, PKA_ECCMulInTypeDef *in) in HAL_PKA_ECCMul_IT() argument
1069 PKA_ECCMul_Set(hpka, in); in HAL_PKA_ECCMul_IT()
1071 return PKA_Process_IT(hpka, PKA_MODE_ECC_MUL); in HAL_PKA_ECCMul_IT()
1080 HAL_StatusTypeDef HAL_PKA_ECCMulFastMode(PKA_HandleTypeDef *hpka, PKA_ECCMulFastModeInTypeDef *in, … in HAL_PKA_ECCMulFastMode() argument
1083 PKA_ECCMulFastMode_Set(hpka, in); in HAL_PKA_ECCMulFastMode()
1086 return PKA_Process(hpka, PKA_MODE_ECC_MUL_FAST_MODE, Timeout); in HAL_PKA_ECCMulFastMode()
1095 HAL_StatusTypeDef HAL_PKA_ECCMulFastMode_IT(PKA_HandleTypeDef *hpka, PKA_ECCMulFastModeInTypeDef *i… in HAL_PKA_ECCMulFastMode_IT() argument
1098 PKA_ECCMulFastMode_Set(hpka, in); in HAL_PKA_ECCMulFastMode_IT()
1101 return PKA_Process_IT(hpka, PKA_MODE_ECC_MUL_FAST_MODE); in HAL_PKA_ECCMulFastMode_IT()
1109 void HAL_PKA_ECCMul_GetResult(PKA_HandleTypeDef *hpka, PKA_ECCMulOutTypeDef *out) in HAL_PKA_ECCMul_GetResult() argument
1114 size = (hpka->Instance->RAM[PKA_ECC_SCALAR_MUL_IN_OP_NB_BITS] + 7UL) / 8UL; in HAL_PKA_ECCMul_GetResult()
1120 PKA_Memcpy_u32_to_u8(out->ptX, &hpka->Instance->RAM[PKA_ECC_SCALAR_MUL_OUT_RESULT_X], size); in HAL_PKA_ECCMul_GetResult()
1121 PKA_Memcpy_u32_to_u8(out->ptY, &hpka->Instance->RAM[PKA_ECC_SCALAR_MUL_OUT_RESULT_Y], size); in HAL_PKA_ECCMul_GetResult()
1132 HAL_StatusTypeDef HAL_PKA_Add(PKA_HandleTypeDef *hpka, PKA_AddInTypeDef *in, uint32_t Timeout) in HAL_PKA_Add() argument
1135 PKA_ARI_Set(hpka, in->size, in->pOp1, in->pOp2, NULL); in HAL_PKA_Add()
1138 return PKA_Process(hpka, PKA_MODE_ARITHMETIC_ADD, Timeout); in HAL_PKA_Add()
1147 HAL_StatusTypeDef HAL_PKA_Add_IT(PKA_HandleTypeDef *hpka, PKA_AddInTypeDef *in) in HAL_PKA_Add_IT() argument
1150 PKA_ARI_Set(hpka, in->size, in->pOp1, in->pOp2, NULL); in HAL_PKA_Add_IT()
1153 return PKA_Process_IT(hpka, PKA_MODE_ARITHMETIC_ADD); in HAL_PKA_Add_IT()
1163 HAL_StatusTypeDef HAL_PKA_Sub(PKA_HandleTypeDef *hpka, PKA_SubInTypeDef *in, uint32_t Timeout) in HAL_PKA_Sub() argument
1166 PKA_ARI_Set(hpka, in->size, in->pOp1, in->pOp2, NULL); in HAL_PKA_Sub()
1169 return PKA_Process(hpka, PKA_MODE_ARITHMETIC_SUB, Timeout); in HAL_PKA_Sub()
1178 HAL_StatusTypeDef HAL_PKA_Sub_IT(PKA_HandleTypeDef *hpka, PKA_SubInTypeDef *in) in HAL_PKA_Sub_IT() argument
1181 PKA_ARI_Set(hpka, in->size, in->pOp1, in->pOp2, NULL); in HAL_PKA_Sub_IT()
1184 return PKA_Process_IT(hpka, PKA_MODE_ARITHMETIC_SUB); in HAL_PKA_Sub_IT()
1194 HAL_StatusTypeDef HAL_PKA_Mul(PKA_HandleTypeDef *hpka, PKA_MulInTypeDef *in, uint32_t Timeout) in HAL_PKA_Mul() argument
1197 PKA_ARI_Set(hpka, in->size, in->pOp1, in->pOp2, NULL); in HAL_PKA_Mul()
1200 return PKA_Process(hpka, PKA_MODE_ARITHMETIC_MUL, Timeout); in HAL_PKA_Mul()
1209 HAL_StatusTypeDef HAL_PKA_Mul_IT(PKA_HandleTypeDef *hpka, PKA_MulInTypeDef *in) in HAL_PKA_Mul_IT() argument
1212 PKA_ARI_Set(hpka, in->size, in->pOp1, in->pOp2, NULL); in HAL_PKA_Mul_IT()
1215 return PKA_Process_IT(hpka, PKA_MODE_ARITHMETIC_MUL); in HAL_PKA_Mul_IT()
1225 HAL_StatusTypeDef HAL_PKA_Cmp(PKA_HandleTypeDef *hpka, PKA_CmpInTypeDef *in, uint32_t Timeout) in HAL_PKA_Cmp() argument
1228 PKA_ARI_Set(hpka, in->size, in->pOp1, in->pOp2, NULL); in HAL_PKA_Cmp()
1231 return PKA_Process(hpka, PKA_MODE_COMPARISON, Timeout); in HAL_PKA_Cmp()
1240 HAL_StatusTypeDef HAL_PKA_Cmp_IT(PKA_HandleTypeDef *hpka, PKA_CmpInTypeDef *in) in HAL_PKA_Cmp_IT() argument
1243 PKA_ARI_Set(hpka, in->size, in->pOp1, in->pOp2, NULL); in HAL_PKA_Cmp_IT()
1246 return PKA_Process_IT(hpka, PKA_MODE_COMPARISON); in HAL_PKA_Cmp_IT()
1256 HAL_StatusTypeDef HAL_PKA_ModAdd(PKA_HandleTypeDef *hpka, PKA_ModAddInTypeDef *in, uint32_t Timeout) in HAL_PKA_ModAdd() argument
1259 PKA_ARI_Set(hpka, in->size, in->pOp1, in->pOp2, in->pOp3); in HAL_PKA_ModAdd()
1262 return PKA_Process(hpka, PKA_MODE_MODULAR_ADD, Timeout); in HAL_PKA_ModAdd()
1271 HAL_StatusTypeDef HAL_PKA_ModAdd_IT(PKA_HandleTypeDef *hpka, PKA_ModAddInTypeDef *in) in HAL_PKA_ModAdd_IT() argument
1274 PKA_ARI_Set(hpka, in->size, in->pOp1, in->pOp2, in->pOp3); in HAL_PKA_ModAdd_IT()
1277 return PKA_Process_IT(hpka, PKA_MODE_MODULAR_ADD); in HAL_PKA_ModAdd_IT()
1287 HAL_StatusTypeDef HAL_PKA_ModInv(PKA_HandleTypeDef *hpka, PKA_ModInvInTypeDef *in, uint32_t Timeout) in HAL_PKA_ModInv() argument
1290 PKA_ModInv_Set(hpka, in); in HAL_PKA_ModInv()
1293 return PKA_Process(hpka, PKA_MODE_MODULAR_INV, Timeout); in HAL_PKA_ModInv()
1302 HAL_StatusTypeDef HAL_PKA_ModInv_IT(PKA_HandleTypeDef *hpka, PKA_ModInvInTypeDef *in) in HAL_PKA_ModInv_IT() argument
1305 PKA_ModInv_Set(hpka, in); in HAL_PKA_ModInv_IT()
1308 return PKA_Process_IT(hpka, PKA_MODE_MODULAR_INV); in HAL_PKA_ModInv_IT()
1318 HAL_StatusTypeDef HAL_PKA_ModSub(PKA_HandleTypeDef *hpka, PKA_ModSubInTypeDef *in, uint32_t Timeout) in HAL_PKA_ModSub() argument
1321 PKA_ARI_Set(hpka, in->size, in->pOp1, in->pOp2, in->pOp3); in HAL_PKA_ModSub()
1324 return PKA_Process(hpka, PKA_MODE_MODULAR_SUB, Timeout); in HAL_PKA_ModSub()
1333 HAL_StatusTypeDef HAL_PKA_ModSub_IT(PKA_HandleTypeDef *hpka, PKA_ModSubInTypeDef *in) in HAL_PKA_ModSub_IT() argument
1336 PKA_ARI_Set(hpka, in->size, in->pOp1, in->pOp2, in->pOp3); in HAL_PKA_ModSub_IT()
1339 return PKA_Process_IT(hpka, PKA_MODE_MODULAR_SUB); in HAL_PKA_ModSub_IT()
1349 HAL_StatusTypeDef HAL_PKA_ModRed(PKA_HandleTypeDef *hpka, PKA_ModRedInTypeDef *in, uint32_t Timeout) in HAL_PKA_ModRed() argument
1352 PKA_ModRed_Set(hpka, in); in HAL_PKA_ModRed()
1355 return PKA_Process(hpka, PKA_MODE_MODULAR_RED, Timeout); in HAL_PKA_ModRed()
1364 HAL_StatusTypeDef HAL_PKA_ModRed_IT(PKA_HandleTypeDef *hpka, PKA_ModRedInTypeDef *in) in HAL_PKA_ModRed_IT() argument
1367 PKA_ModRed_Set(hpka, in); in HAL_PKA_ModRed_IT()
1370 return PKA_Process_IT(hpka, PKA_MODE_MODULAR_RED); in HAL_PKA_ModRed_IT()
1380 HAL_StatusTypeDef HAL_PKA_MontgomeryMul(PKA_HandleTypeDef *hpka, PKA_MontgomeryMulInTypeDef *in, ui… in HAL_PKA_MontgomeryMul() argument
1383 PKA_ARI_Set(hpka, in->size, in->pOp1, in->pOp2, in->pOp3); in HAL_PKA_MontgomeryMul()
1386 return PKA_Process(hpka, PKA_MODE_MONTGOMERY_MUL, Timeout); in HAL_PKA_MontgomeryMul()
1395 HAL_StatusTypeDef HAL_PKA_MontgomeryMul_IT(PKA_HandleTypeDef *hpka, PKA_MontgomeryMulInTypeDef *in) in HAL_PKA_MontgomeryMul_IT() argument
1398 PKA_ARI_Set(hpka, in->size, in->pOp1, in->pOp2, in->pOp3); in HAL_PKA_MontgomeryMul_IT()
1401 return PKA_Process_IT(hpka, PKA_MODE_MONTGOMERY_MUL); in HAL_PKA_MontgomeryMul_IT()
1409 void HAL_PKA_Arithmetic_GetResult(PKA_HandleTypeDef *hpka, uint32_t *pRes) in HAL_PKA_Arithmetic_GetResult() argument
1411 uint32_t mode = (hpka->Instance->CR & PKA_CR_MODE_Msk) >> PKA_CR_MODE_Pos; in HAL_PKA_Arithmetic_GetResult()
1423 size = hpka->Instance->RAM[1] / 32UL; in HAL_PKA_Arithmetic_GetResult()
1426 size = hpka->Instance->RAM[1] / 32UL; in HAL_PKA_Arithmetic_GetResult()
1429 if (hpka->Instance->RAM[500U + size] != 0UL) in HAL_PKA_Arithmetic_GetResult()
1439 size = hpka->Instance->RAM[1] / 32UL * 2UL; in HAL_PKA_Arithmetic_GetResult()
1458 PKA_Memcpy_u32_to_u32(pRes, &hpka->Instance->RAM[PKA_ARITHMETIC_ALL_OPS_OUT_RESULT], size); in HAL_PKA_Arithmetic_GetResult()
1473 HAL_StatusTypeDef HAL_PKA_MontgomeryParam(PKA_HandleTypeDef *hpka, PKA_MontgomeryParamInTypeDef *in… in HAL_PKA_MontgomeryParam() argument
1476 PKA_MontgomeryParam_Set(hpka, in->size, in->pOp1); in HAL_PKA_MontgomeryParam()
1479 return PKA_Process(hpka, PKA_MODE_MONTGOMERY_PARAM, Timeout); in HAL_PKA_MontgomeryParam()
1488 HAL_StatusTypeDef HAL_PKA_MontgomeryParam_IT(PKA_HandleTypeDef *hpka, PKA_MontgomeryParamInTypeDef … in HAL_PKA_MontgomeryParam_IT() argument
1491 PKA_MontgomeryParam_Set(hpka, in->size, in->pOp1); in HAL_PKA_MontgomeryParam_IT()
1494 return PKA_Process_IT(hpka, PKA_MODE_MONTGOMERY_PARAM); in HAL_PKA_MontgomeryParam_IT()
1504 void HAL_PKA_MontgomeryParam_GetResult(PKA_HandleTypeDef *hpka, uint32_t *pRes) in HAL_PKA_MontgomeryParam_GetResult() argument
1509 size = (hpka->Instance->RAM[PKA_MONTGOMERY_PARAM_IN_MOD_NB_BITS] + 31UL) / 32UL; in HAL_PKA_MontgomeryParam_GetResult()
1512 PKA_Memcpy_u32_to_u32(pRes, &hpka->Instance->RAM[PKA_MONTGOMERY_PARAM_OUT_PARAMETER], size); in HAL_PKA_MontgomeryParam_GetResult()
1520 HAL_StatusTypeDef HAL_PKA_Abort(PKA_HandleTypeDef *hpka) in HAL_PKA_Abort() argument
1526 CLEAR_BIT(hpka->Instance->CR, PKA_CR_EN); in HAL_PKA_Abort()
1527 SET_BIT(hpka->Instance->CR, PKA_CR_EN); in HAL_PKA_Abort()
1530 SET_BIT(hpka->Instance->CLRFR, PKA_CLRFR_PROCENDFC | PKA_CLRFR_RAMERRFC | PKA_CLRFR_ADDRERRFC); in HAL_PKA_Abort()
1533 hpka->ErrorCode = HAL_PKA_ERROR_NONE; in HAL_PKA_Abort()
1536 hpka->State = HAL_PKA_STATE_READY; in HAL_PKA_Abort()
1546 void HAL_PKA_RAMReset(PKA_HandleTypeDef *hpka) in HAL_PKA_RAMReset() argument
1554 hpka->Instance->RAM[index] = 0UL; in HAL_PKA_RAMReset()
1563 void HAL_PKA_IRQHandler(PKA_HandleTypeDef *hpka) in HAL_PKA_IRQHandler() argument
1565 uint32_t mode = PKA_GetMode(hpka); in HAL_PKA_IRQHandler()
1566 uint32_t itsource = READ_REG(hpka->Instance->CR); in HAL_PKA_IRQHandler()
1567 uint32_t flag = READ_REG(hpka->Instance->SR); in HAL_PKA_IRQHandler()
1572 hpka->ErrorCode |= HAL_PKA_ERROR_ADDRERR; in HAL_PKA_IRQHandler()
1575 __HAL_PKA_CLEAR_FLAG(hpka, PKA_FLAG_ADDRERR); in HAL_PKA_IRQHandler()
1581 hpka->ErrorCode |= HAL_PKA_ERROR_RAMERR; in HAL_PKA_IRQHandler()
1584 __HAL_PKA_CLEAR_FLAG(hpka, PKA_FLAG_RAMERR); in HAL_PKA_IRQHandler()
1591 if (hpka->Instance->RAM[PKA_ECDSA_SIGN_OUT_ERROR] != 0UL) in HAL_PKA_IRQHandler()
1593 hpka->ErrorCode |= HAL_PKA_ERROR_OPERATION; in HAL_PKA_IRQHandler()
1597 if (hpka->ErrorCode != HAL_PKA_ERROR_NONE) in HAL_PKA_IRQHandler()
1600 hpka->ErrorCallback(hpka); in HAL_PKA_IRQHandler()
1602 HAL_PKA_ErrorCallback(hpka); in HAL_PKA_IRQHandler()
1610 __HAL_PKA_CLEAR_FLAG(hpka, PKA_FLAG_PROCEND); in HAL_PKA_IRQHandler()
1613 hpka->State = HAL_PKA_STATE_READY; in HAL_PKA_IRQHandler()
1616 hpka->OperationCpltCallback(hpka); in HAL_PKA_IRQHandler()
1618 HAL_PKA_OperationCpltCallback(hpka); in HAL_PKA_IRQHandler()
1628 __weak void HAL_PKA_OperationCpltCallback(PKA_HandleTypeDef *hpka) in HAL_PKA_OperationCpltCallback() argument
1631 UNUSED(hpka); in HAL_PKA_OperationCpltCallback()
1643 __weak void HAL_PKA_ErrorCallback(PKA_HandleTypeDef *hpka) in HAL_PKA_ErrorCallback() argument
1646 UNUSED(hpka); in HAL_PKA_ErrorCallback()
1676 HAL_PKA_StateTypeDef HAL_PKA_GetState(const PKA_HandleTypeDef *hpka) in HAL_PKA_GetState() argument
1679 return hpka->State; in HAL_PKA_GetState()
1687 uint32_t HAL_PKA_GetError(const PKA_HandleTypeDef *hpka) in HAL_PKA_GetError() argument
1690 return hpka->ErrorCode; in HAL_PKA_GetError()
1710 uint32_t PKA_GetMode(const PKA_HandleTypeDef *hpka) in PKA_GetMode() argument
1713 return (uint32_t)(READ_BIT(hpka->Instance->CR, PKA_CR_MODE) >> PKA_CR_MODE_Pos); in PKA_GetMode()
1723 HAL_StatusTypeDef PKA_PollEndOfOperation(const PKA_HandleTypeDef *hpka, uint32_t Timeout, uint32_t … in PKA_PollEndOfOperation() argument
1726 while ((hpka->Instance->SR & PKA_SR_PROCENDF) == 0UL) in PKA_PollEndOfOperation()
1746 uint32_t PKA_CheckError(const PKA_HandleTypeDef *hpka, uint32_t mode) in PKA_CheckError() argument
1751 if (__HAL_PKA_GET_FLAG(hpka, PKA_FLAG_RAMERR) == SET) in PKA_CheckError()
1757 if (__HAL_PKA_GET_FLAG(hpka, PKA_FLAG_ADDRERR) == SET) in PKA_CheckError()
1767 if (hpka->Instance->RAM[PKA_ECDSA_SIGN_OUT_ERROR] != EDCSA_SIGN_NOERROR) in PKA_CheckError()
1952 HAL_StatusTypeDef PKA_Process(PKA_HandleTypeDef *hpka, uint32_t mode, uint32_t Timeout) in PKA_Process() argument
1957 if (hpka->State == HAL_PKA_STATE_READY) in PKA_Process()
1960 hpka->State = HAL_PKA_STATE_BUSY; in PKA_Process()
1963 hpka->ErrorCode = HAL_PKA_ERROR_NONE; in PKA_Process()
1969 …MODIFY_REG(hpka->Instance->CR, PKA_CR_MODE | PKA_CR_PROCENDIE | PKA_CR_RAMERRIE | PKA_CR_ADDRERRIE, in PKA_Process()
1973 hpka->Instance->CR |= PKA_CR_START; in PKA_Process()
1976 if (PKA_PollEndOfOperation(hpka, Timeout, tickstart) != HAL_OK) in PKA_Process()
1979 CLEAR_BIT(hpka->Instance->CR, PKA_CR_EN); in PKA_Process()
1981 hpka->ErrorCode |= HAL_PKA_ERROR_TIMEOUT; in PKA_Process()
1984 SET_BIT(hpka->Instance->CR, PKA_CR_EN); in PKA_Process()
1988 hpka->ErrorCode |= PKA_CheckError(hpka, mode); in PKA_Process()
1991 hpka->Instance->CLRFR |= (PKA_CLRFR_PROCENDFC | PKA_CLRFR_RAMERRFC | PKA_CLRFR_ADDRERRFC); in PKA_Process()
1994 hpka->State = HAL_PKA_STATE_READY; in PKA_Process()
1997 if (hpka->ErrorCode != HAL_PKA_ERROR_NONE) in PKA_Process()
2015 HAL_StatusTypeDef PKA_Process_IT(PKA_HandleTypeDef *hpka, uint32_t mode) in PKA_Process_IT() argument
2019 if (hpka->State == HAL_PKA_STATE_READY) in PKA_Process_IT()
2022 hpka->State = HAL_PKA_STATE_BUSY; in PKA_Process_IT()
2025 hpka->ErrorCode = HAL_PKA_ERROR_NONE; in PKA_Process_IT()
2028 …MODIFY_REG(hpka->Instance->CR, PKA_CR_MODE | PKA_CR_PROCENDIE | PKA_CR_RAMERRIE | PKA_CR_ADDRERRIE, in PKA_Process_IT()
2032 hpka->Instance->CR |= PKA_CR_START; in PKA_Process_IT()
2046 void PKA_ModExp_Set(PKA_HandleTypeDef *hpka, PKA_ModExpInTypeDef *in) in PKA_ModExp_Set() argument
2049 hpka->Instance->RAM[PKA_MODULAR_EXP_IN_OP_NB_BITS] = PKA_GetBitSize_u8(in->OpSize); in PKA_ModExp_Set()
2052 hpka->Instance->RAM[PKA_MODULAR_EXP_IN_EXP_NB_BITS] = PKA_GetBitSize_u8(in->expSize); in PKA_ModExp_Set()
2055 …PKA_Memcpy_u8_to_u32(&hpka->Instance->RAM[PKA_MODULAR_EXP_IN_EXPONENT_BASE], in->pOp1, in->OpSize); in PKA_ModExp_Set()
2056 …__PKA_RAM_PARAM_END(hpka->Instance->RAM, PKA_MODULAR_EXP_IN_EXPONENT_BASE + ((in->OpSize + 3UL) / … in PKA_ModExp_Set()
2059 PKA_Memcpy_u8_to_u32(&hpka->Instance->RAM[PKA_MODULAR_EXP_IN_EXPONENT], in->pExp, in->expSize); in PKA_ModExp_Set()
2060 …__PKA_RAM_PARAM_END(hpka->Instance->RAM, PKA_MODULAR_EXP_IN_EXPONENT + ((in->expSize + 3UL) / 4UL)… in PKA_ModExp_Set()
2063 PKA_Memcpy_u8_to_u32(&hpka->Instance->RAM[PKA_MODULAR_EXP_IN_MODULUS], in->pMod, in->OpSize); in PKA_ModExp_Set()
2064 __PKA_RAM_PARAM_END(hpka->Instance->RAM, PKA_MODULAR_EXP_IN_MODULUS + ((in->OpSize + 3UL) / 4UL)); in PKA_ModExp_Set()
2072 void PKA_ModExpFastMode_Set(PKA_HandleTypeDef *hpka, PKA_ModExpFastModeInTypeDef *in) in PKA_ModExpFastMode_Set() argument
2075 hpka->Instance->RAM[PKA_MODULAR_EXP_IN_OP_NB_BITS] = PKA_GetBitSize_u8(in->OpSize); in PKA_ModExpFastMode_Set()
2078 hpka->Instance->RAM[PKA_MODULAR_EXP_IN_EXP_NB_BITS] = PKA_GetBitSize_u8(in->expSize); in PKA_ModExpFastMode_Set()
2081 …PKA_Memcpy_u8_to_u32(&hpka->Instance->RAM[PKA_MODULAR_EXP_IN_EXPONENT_BASE], in->pOp1, in->OpSize); in PKA_ModExpFastMode_Set()
2082 __PKA_RAM_PARAM_END(hpka->Instance->RAM, PKA_MODULAR_EXP_IN_EXPONENT_BASE + (in->OpSize / 4UL)); in PKA_ModExpFastMode_Set()
2085 PKA_Memcpy_u8_to_u32(&hpka->Instance->RAM[PKA_MODULAR_EXP_IN_EXPONENT], in->pExp, in->expSize); in PKA_ModExpFastMode_Set()
2086 __PKA_RAM_PARAM_END(hpka->Instance->RAM, PKA_MODULAR_EXP_IN_EXPONENT + (in->expSize / 4UL)); in PKA_ModExpFastMode_Set()
2089 PKA_Memcpy_u8_to_u32(&hpka->Instance->RAM[PKA_MODULAR_EXP_IN_MODULUS], in->pMod, in->OpSize); in PKA_ModExpFastMode_Set()
2090 __PKA_RAM_PARAM_END(hpka->Instance->RAM, PKA_MODULAR_EXP_IN_MODULUS + (in->OpSize / 4UL)); in PKA_ModExpFastMode_Set()
2093 …PKA_Memcpy_u32_to_u32(&hpka->Instance->RAM[PKA_MODULAR_EXP_IN_MONTGOMERY_PARAM], in->pMontgomeryPa… in PKA_ModExpFastMode_Set()
2095 …__PKA_RAM_PARAM_END(hpka->Instance->RAM, PKA_MODULAR_EXP_IN_MONTGOMERY_PARAM + (in->OpSize / 4UL)); in PKA_ModExpFastMode_Set()
2106 void PKA_ECDSASign_Set(PKA_HandleTypeDef *hpka, PKA_ECDSASignInTypeDef *in) in PKA_ECDSASign_Set() argument
2109hpka->Instance->RAM[PKA_ECDSA_SIGN_IN_ORDER_NB_BITS] = PKA_GetOptBitSize_u8(in->primeOrderSize, *(… in PKA_ECDSASign_Set()
2112hpka->Instance->RAM[PKA_ECDSA_SIGN_IN_MOD_NB_BITS] = PKA_GetOptBitSize_u8(in->modulusSize, *(in->m… in PKA_ECDSASign_Set()
2115 hpka->Instance->RAM[PKA_ECDSA_SIGN_IN_A_COEFF_SIGN] = in->coefSign; in PKA_ECDSASign_Set()
2118 PKA_Memcpy_u8_to_u32(&hpka->Instance->RAM[PKA_ECDSA_SIGN_IN_A_COEFF], in->coef, in->modulusSize); in PKA_ECDSASign_Set()
2119 …__PKA_RAM_PARAM_END(hpka->Instance->RAM, PKA_ECDSA_SIGN_IN_A_COEFF + ((in->modulusSize + 3UL) / 4U… in PKA_ECDSASign_Set()
2122 …PKA_Memcpy_u8_to_u32(&hpka->Instance->RAM[PKA_ECDSA_SIGN_IN_MOD_GF], in->modulus, in->modulusSize); in PKA_ECDSASign_Set()
2123 …__PKA_RAM_PARAM_END(hpka->Instance->RAM, PKA_ECDSA_SIGN_IN_MOD_GF + ((in->modulusSize + 3UL) / 4UL… in PKA_ECDSASign_Set()
2126 PKA_Memcpy_u8_to_u32(&hpka->Instance->RAM[PKA_ECDSA_SIGN_IN_K], in->integer, in->primeOrderSize); in PKA_ECDSASign_Set()
2127 …__PKA_RAM_PARAM_END(hpka->Instance->RAM, PKA_ECDSA_SIGN_IN_K + ((in->primeOrderSize + 3UL) / 4UL)); in PKA_ECDSASign_Set()
2130 …PKA_Memcpy_u8_to_u32(&hpka->Instance->RAM[PKA_ECDSA_SIGN_IN_INITIAL_POINT_X], in->basePointX, in->… in PKA_ECDSASign_Set()
2131 …__PKA_RAM_PARAM_END(hpka->Instance->RAM, PKA_ECDSA_SIGN_IN_INITIAL_POINT_X + ((in->modulusSize + 3… in PKA_ECDSASign_Set()
2134 …PKA_Memcpy_u8_to_u32(&hpka->Instance->RAM[PKA_ECDSA_SIGN_IN_INITIAL_POINT_Y], in->basePointY, in->… in PKA_ECDSASign_Set()
2135 …__PKA_RAM_PARAM_END(hpka->Instance->RAM, PKA_ECDSA_SIGN_IN_INITIAL_POINT_Y + ((in->modulusSize + 3… in PKA_ECDSASign_Set()
2138 …PKA_Memcpy_u8_to_u32(&hpka->Instance->RAM[PKA_ECDSA_SIGN_IN_HASH_E], in->hash, in->primeOrderSize); in PKA_ECDSASign_Set()
2139 …__PKA_RAM_PARAM_END(hpka->Instance->RAM, PKA_ECDSA_SIGN_IN_HASH_E + ((in->primeOrderSize + 3UL) / … in PKA_ECDSASign_Set()
2142 …PKA_Memcpy_u8_to_u32(&hpka->Instance->RAM[PKA_ECDSA_SIGN_IN_PRIVATE_KEY_D], in->privateKey, in->pr… in PKA_ECDSASign_Set()
2143 …__PKA_RAM_PARAM_END(hpka->Instance->RAM, PKA_ECDSA_SIGN_IN_PRIVATE_KEY_D + ((in->primeOrderSize + … in PKA_ECDSASign_Set()
2146 …PKA_Memcpy_u8_to_u32(&hpka->Instance->RAM[PKA_ECDSA_SIGN_IN_ORDER_N], in->primeOrder, in->primeOrd… in PKA_ECDSASign_Set()
2147 …__PKA_RAM_PARAM_END(hpka->Instance->RAM, PKA_ECDSA_SIGN_IN_ORDER_N + ((in->primeOrderSize + 3UL) /… in PKA_ECDSASign_Set()
2155 void PKA_ECDSAVerif_Set(PKA_HandleTypeDef *hpka, PKA_ECDSAVerifInTypeDef *in) in PKA_ECDSAVerif_Set() argument
2158hpka->Instance->RAM[PKA_ECDSA_VERIF_IN_ORDER_NB_BITS] = PKA_GetOptBitSize_u8(in->primeOrderSize, *… in PKA_ECDSAVerif_Set()
2161hpka->Instance->RAM[PKA_ECDSA_VERIF_IN_MOD_NB_BITS] = PKA_GetOptBitSize_u8(in->modulusSize, *(in->… in PKA_ECDSAVerif_Set()
2164 hpka->Instance->RAM[PKA_ECDSA_VERIF_IN_A_COEFF_SIGN] = in->coefSign; in PKA_ECDSAVerif_Set()
2167 PKA_Memcpy_u8_to_u32(&hpka->Instance->RAM[PKA_ECDSA_VERIF_IN_A_COEFF], in->coef, in->modulusSize); in PKA_ECDSAVerif_Set()
2168 …__PKA_RAM_PARAM_END(hpka->Instance->RAM, PKA_ECDSA_VERIF_IN_A_COEFF + ((in->modulusSize + 3UL) / 4… in PKA_ECDSAVerif_Set()
2171 …PKA_Memcpy_u8_to_u32(&hpka->Instance->RAM[PKA_ECDSA_VERIF_IN_MOD_GF], in->modulus, in->modulusSize… in PKA_ECDSAVerif_Set()
2172 …__PKA_RAM_PARAM_END(hpka->Instance->RAM, PKA_ECDSA_VERIF_IN_MOD_GF + ((in->modulusSize + 3UL) / 4U… in PKA_ECDSAVerif_Set()
2175 …PKA_Memcpy_u8_to_u32(&hpka->Instance->RAM[PKA_ECDSA_VERIF_IN_INITIAL_POINT_X], in->basePointX, in-… in PKA_ECDSAVerif_Set()
2176 …__PKA_RAM_PARAM_END(hpka->Instance->RAM, PKA_ECDSA_VERIF_IN_INITIAL_POINT_X + ((in->modulusSize + … in PKA_ECDSAVerif_Set()
2179 …PKA_Memcpy_u8_to_u32(&hpka->Instance->RAM[PKA_ECDSA_VERIF_IN_INITIAL_POINT_Y], in->basePointY, in-… in PKA_ECDSAVerif_Set()
2180 …__PKA_RAM_PARAM_END(hpka->Instance->RAM, PKA_ECDSA_VERIF_IN_INITIAL_POINT_Y + ((in->modulusSize + … in PKA_ECDSAVerif_Set()
2183 …PKA_Memcpy_u8_to_u32(&hpka->Instance->RAM[PKA_ECDSA_VERIF_IN_PUBLIC_KEY_POINT_X], in->pPubKeyCurve… in PKA_ECDSAVerif_Set()
2185 …__PKA_RAM_PARAM_END(hpka->Instance->RAM, PKA_ECDSA_VERIF_IN_PUBLIC_KEY_POINT_X + ((in->modulusSize… in PKA_ECDSAVerif_Set()
2188 …PKA_Memcpy_u8_to_u32(&hpka->Instance->RAM[PKA_ECDSA_VERIF_IN_PUBLIC_KEY_POINT_Y], in->pPubKeyCurve… in PKA_ECDSAVerif_Set()
2190 …__PKA_RAM_PARAM_END(hpka->Instance->RAM, PKA_ECDSA_VERIF_IN_PUBLIC_KEY_POINT_Y + ((in->modulusSize… in PKA_ECDSAVerif_Set()
2193 …PKA_Memcpy_u8_to_u32(&hpka->Instance->RAM[PKA_ECDSA_VERIF_IN_SIGNATURE_R], in->RSign, in->primeOrd… in PKA_ECDSAVerif_Set()
2194 …__PKA_RAM_PARAM_END(hpka->Instance->RAM, PKA_ECDSA_VERIF_IN_SIGNATURE_R + ((in->primeOrderSize + 3… in PKA_ECDSAVerif_Set()
2197 …PKA_Memcpy_u8_to_u32(&hpka->Instance->RAM[PKA_ECDSA_VERIF_IN_SIGNATURE_S], in->SSign, in->primeOrd… in PKA_ECDSAVerif_Set()
2198 …__PKA_RAM_PARAM_END(hpka->Instance->RAM, PKA_ECDSA_VERIF_IN_SIGNATURE_S + ((in->primeOrderSize + 3… in PKA_ECDSAVerif_Set()
2201 …PKA_Memcpy_u8_to_u32(&hpka->Instance->RAM[PKA_ECDSA_VERIF_IN_HASH_E], in->hash, in->primeOrderSize… in PKA_ECDSAVerif_Set()
2202 …__PKA_RAM_PARAM_END(hpka->Instance->RAM, PKA_ECDSA_VERIF_IN_HASH_E + ((in->primeOrderSize + 3UL) /… in PKA_ECDSAVerif_Set()
2205 …PKA_Memcpy_u8_to_u32(&hpka->Instance->RAM[PKA_ECDSA_VERIF_IN_ORDER_N], in->primeOrder, in->primeOr… in PKA_ECDSAVerif_Set()
2206 …__PKA_RAM_PARAM_END(hpka->Instance->RAM, PKA_ECDSA_VERIF_IN_ORDER_N + ((in->primeOrderSize + 3UL) … in PKA_ECDSAVerif_Set()
2214 void PKA_RSACRTExp_Set(PKA_HandleTypeDef *hpka, PKA_RSACRTExpInTypeDef *in) in PKA_RSACRTExp_Set() argument
2217 hpka->Instance->RAM[PKA_RSA_CRT_EXP_IN_MOD_NB_BITS] = PKA_GetBitSize_u8(in->size); in PKA_RSACRTExp_Set()
2220 PKA_Memcpy_u8_to_u32(&hpka->Instance->RAM[PKA_RSA_CRT_EXP_IN_DP_CRT], in->pOpDp, in->size / 2UL); in PKA_RSACRTExp_Set()
2221 __PKA_RAM_PARAM_END(hpka->Instance->RAM, PKA_RSA_CRT_EXP_IN_DP_CRT + (in->size / 8UL)); in PKA_RSACRTExp_Set()
2224 PKA_Memcpy_u8_to_u32(&hpka->Instance->RAM[PKA_RSA_CRT_EXP_IN_DQ_CRT], in->pOpDq, in->size / 2UL); in PKA_RSACRTExp_Set()
2225 __PKA_RAM_PARAM_END(hpka->Instance->RAM, PKA_RSA_CRT_EXP_IN_DQ_CRT + (in->size / 8UL)); in PKA_RSACRTExp_Set()
2228 …PKA_Memcpy_u8_to_u32(&hpka->Instance->RAM[PKA_RSA_CRT_EXP_IN_QINV_CRT], in->pOpQinv, in->size / 2U… in PKA_RSACRTExp_Set()
2229 __PKA_RAM_PARAM_END(hpka->Instance->RAM, PKA_RSA_CRT_EXP_IN_QINV_CRT + (in->size / 8UL)); in PKA_RSACRTExp_Set()
2232 …PKA_Memcpy_u8_to_u32(&hpka->Instance->RAM[PKA_RSA_CRT_EXP_IN_PRIME_P], in->pPrimeP, in->size / 2UL… in PKA_RSACRTExp_Set()
2233 __PKA_RAM_PARAM_END(hpka->Instance->RAM, PKA_RSA_CRT_EXP_IN_PRIME_P + (in->size / 8UL)); in PKA_RSACRTExp_Set()
2236 …PKA_Memcpy_u8_to_u32(&hpka->Instance->RAM[PKA_RSA_CRT_EXP_IN_PRIME_Q], in->pPrimeQ, in->size / 2UL… in PKA_RSACRTExp_Set()
2237 __PKA_RAM_PARAM_END(hpka->Instance->RAM, PKA_RSA_CRT_EXP_IN_PRIME_Q + (in->size / 8UL)); in PKA_RSACRTExp_Set()
2240 PKA_Memcpy_u8_to_u32(&hpka->Instance->RAM[PKA_RSA_CRT_EXP_IN_EXPONENT_BASE], in->popA, in->size); in PKA_RSACRTExp_Set()
2241 __PKA_RAM_PARAM_END(hpka->Instance->RAM, PKA_RSA_CRT_EXP_IN_EXPONENT_BASE + (in->size / 4UL)); in PKA_RSACRTExp_Set()
2249 void PKA_PointCheck_Set(PKA_HandleTypeDef *hpka, PKA_PointCheckInTypeDef *in) in PKA_PointCheck_Set() argument
2252hpka->Instance->RAM[PKA_POINT_CHECK_IN_MOD_NB_BITS] = PKA_GetOptBitSize_u8(in->modulusSize, *(in->… in PKA_PointCheck_Set()
2255 hpka->Instance->RAM[PKA_POINT_CHECK_IN_A_COEFF_SIGN] = in->coefSign; in PKA_PointCheck_Set()
2258 …PKA_Memcpy_u8_to_u32(&hpka->Instance->RAM[PKA_POINT_CHECK_IN_A_COEFF], in->coefA, in->modulusSize); in PKA_PointCheck_Set()
2259 …__PKA_RAM_PARAM_END(hpka->Instance->RAM, PKA_POINT_CHECK_IN_A_COEFF + ((in->modulusSize + 3UL) / 4… in PKA_PointCheck_Set()
2262 …PKA_Memcpy_u8_to_u32(&hpka->Instance->RAM[PKA_POINT_CHECK_IN_B_COEFF], in->coefB, in->modulusSize); in PKA_PointCheck_Set()
2263 …__PKA_RAM_PARAM_END(hpka->Instance->RAM, PKA_POINT_CHECK_IN_B_COEFF + ((in->modulusSize + 3UL) / 4… in PKA_PointCheck_Set()
2266 …PKA_Memcpy_u8_to_u32(&hpka->Instance->RAM[PKA_POINT_CHECK_IN_MOD_GF], in->modulus, in->modulusSize… in PKA_PointCheck_Set()
2267 …__PKA_RAM_PARAM_END(hpka->Instance->RAM, PKA_POINT_CHECK_IN_MOD_GF + ((in->modulusSize + 3UL) / 4U… in PKA_PointCheck_Set()
2270 …PKA_Memcpy_u8_to_u32(&hpka->Instance->RAM[PKA_POINT_CHECK_IN_INITIAL_POINT_X], in->pointX, in->mod… in PKA_PointCheck_Set()
2271 …__PKA_RAM_PARAM_END(hpka->Instance->RAM, PKA_POINT_CHECK_IN_INITIAL_POINT_X + ((in->modulusSize + … in PKA_PointCheck_Set()
2274 …PKA_Memcpy_u8_to_u32(&hpka->Instance->RAM[PKA_POINT_CHECK_IN_INITIAL_POINT_Y], in->pointY, in->mod… in PKA_PointCheck_Set()
2275 …__PKA_RAM_PARAM_END(hpka->Instance->RAM, PKA_POINT_CHECK_IN_INITIAL_POINT_Y + ((in->modulusSize + … in PKA_PointCheck_Set()
2283 void PKA_ECCMul_Set(PKA_HandleTypeDef *hpka, PKA_ECCMulInTypeDef *in) in PKA_ECCMul_Set() argument
2286hpka->Instance->RAM[PKA_ECC_SCALAR_MUL_IN_EXP_NB_BITS] = PKA_GetOptBitSize_u8(in->scalarMulSize, *… in PKA_ECCMul_Set()
2289hpka->Instance->RAM[PKA_ECC_SCALAR_MUL_IN_OP_NB_BITS] = PKA_GetOptBitSize_u8(in->modulusSize, *(in… in PKA_ECCMul_Set()
2292 hpka->Instance->RAM[PKA_ECC_SCALAR_MUL_IN_A_COEFF_SIGN] = in->coefSign; in PKA_ECCMul_Set()
2295 …PKA_Memcpy_u8_to_u32(&hpka->Instance->RAM[PKA_ECC_SCALAR_MUL_IN_A_COEFF], in->coefA, in->modulusSi… in PKA_ECCMul_Set()
2296 …__PKA_RAM_PARAM_END(hpka->Instance->RAM, PKA_ECC_SCALAR_MUL_IN_A_COEFF + ((in->modulusSize + 3UL) … in PKA_ECCMul_Set()
2300 …PKA_Memcpy_u8_to_u32(&hpka->Instance->RAM[PKA_ECC_SCALAR_MUL_IN_MOD_GF], in->modulus, in->modulusS… in PKA_ECCMul_Set()
2301 …__PKA_RAM_PARAM_END(hpka->Instance->RAM, PKA_ECC_SCALAR_MUL_IN_MOD_GF + ((in->modulusSize + 3UL) /… in PKA_ECCMul_Set()
2304 …PKA_Memcpy_u8_to_u32(&hpka->Instance->RAM[PKA_ECC_SCALAR_MUL_IN_K], in->scalarMul, in->scalarMulSi… in PKA_ECCMul_Set()
2305 …__PKA_RAM_PARAM_END(hpka->Instance->RAM, PKA_ECC_SCALAR_MUL_IN_K + ((in->scalarMulSize + 3UL) / 4U… in PKA_ECCMul_Set()
2308 …PKA_Memcpy_u8_to_u32(&hpka->Instance->RAM[PKA_ECC_SCALAR_MUL_IN_INITIAL_POINT_X], in->pointX, in->… in PKA_ECCMul_Set()
2309 …__PKA_RAM_PARAM_END(hpka->Instance->RAM, PKA_ECC_SCALAR_MUL_IN_INITIAL_POINT_X + ((in->modulusSize… in PKA_ECCMul_Set()
2312 …PKA_Memcpy_u8_to_u32(&hpka->Instance->RAM[PKA_ECC_SCALAR_MUL_IN_INITIAL_POINT_Y], in->pointY, in->… in PKA_ECCMul_Set()
2313 …__PKA_RAM_PARAM_END(hpka->Instance->RAM, PKA_ECC_SCALAR_MUL_IN_INITIAL_POINT_Y + ((in->modulusSize… in PKA_ECCMul_Set()
2322 void PKA_ECCMulFastMode_Set(PKA_HandleTypeDef *hpka, PKA_ECCMulFastModeInTypeDef *in) in PKA_ECCMulFastMode_Set() argument
2325hpka->Instance->RAM[PKA_ECC_SCALAR_MUL_IN_EXP_NB_BITS] = PKA_GetOptBitSize_u8(in->scalarMulSize, *… in PKA_ECCMulFastMode_Set()
2328hpka->Instance->RAM[PKA_ECC_SCALAR_MUL_IN_OP_NB_BITS] = PKA_GetOptBitSize_u8(in->modulusSize, *(in… in PKA_ECCMulFastMode_Set()
2331 hpka->Instance->RAM[PKA_ECC_SCALAR_MUL_IN_A_COEFF_SIGN] = in->coefSign; in PKA_ECCMulFastMode_Set()
2334 …PKA_Memcpy_u8_to_u32(&hpka->Instance->RAM[PKA_ECC_SCALAR_MUL_IN_A_COEFF], in->coefA, in->modulusSi… in PKA_ECCMulFastMode_Set()
2335 …__PKA_RAM_PARAM_END(hpka->Instance->RAM, PKA_ECC_SCALAR_MUL_IN_A_COEFF + ((in->modulusSize + 3UL) … in PKA_ECCMulFastMode_Set()
2338 …PKA_Memcpy_u8_to_u32(&hpka->Instance->RAM[PKA_ECC_SCALAR_MUL_IN_MOD_GF], in->modulus, in->modulusS… in PKA_ECCMulFastMode_Set()
2339 …__PKA_RAM_PARAM_END(hpka->Instance->RAM, PKA_ECC_SCALAR_MUL_IN_MOD_GF + ((in->modulusSize + 3UL) /… in PKA_ECCMulFastMode_Set()
2342 …PKA_Memcpy_u8_to_u32(&hpka->Instance->RAM[PKA_ECC_SCALAR_MUL_IN_K], in->scalarMul, in->scalarMulSi… in PKA_ECCMulFastMode_Set()
2343 …__PKA_RAM_PARAM_END(hpka->Instance->RAM, PKA_ECC_SCALAR_MUL_IN_K + ((in->scalarMulSize + 3UL) / 4U… in PKA_ECCMulFastMode_Set()
2346 …PKA_Memcpy_u8_to_u32(&hpka->Instance->RAM[PKA_POINT_CHECK_IN_INITIAL_POINT_X], in->pointX, in->mod… in PKA_ECCMulFastMode_Set()
2347 …__PKA_RAM_PARAM_END(hpka->Instance->RAM, PKA_POINT_CHECK_IN_INITIAL_POINT_X + ((in->modulusSize + … in PKA_ECCMulFastMode_Set()
2350 …PKA_Memcpy_u8_to_u32(&hpka->Instance->RAM[PKA_POINT_CHECK_IN_INITIAL_POINT_Y], in->pointY, in->mod… in PKA_ECCMulFastMode_Set()
2351 …__PKA_RAM_PARAM_END(hpka->Instance->RAM, PKA_POINT_CHECK_IN_INITIAL_POINT_Y + ((in->modulusSize + … in PKA_ECCMulFastMode_Set()
2354 …PKA_Memcpy_u32_to_u32(&hpka->Instance->RAM[PKA_ECC_SCALAR_MUL_IN_MONTGOMERY_PARAM], in->pMontgomer… in PKA_ECCMulFastMode_Set()
2356 …__PKA_RAM_PARAM_END(hpka->Instance->RAM, PKA_ECC_SCALAR_MUL_IN_MONTGOMERY_PARAM + ((in->modulusSiz… in PKA_ECCMulFastMode_Set()
2363 void PKA_ModInv_Set(PKA_HandleTypeDef *hpka, PKA_ModInvInTypeDef *in) in PKA_ModInv_Set() argument
2366 hpka->Instance->RAM[PKA_MODULAR_INV_NB_BITS] = PKA_GetBitSize_u32(in->size); in PKA_ModInv_Set()
2369 PKA_Memcpy_u32_to_u32(&hpka->Instance->RAM[PKA_MODULAR_INV_IN_OP1], in->pOp1, in->size); in PKA_ModInv_Set()
2370 __PKA_RAM_PARAM_END(hpka->Instance->RAM, PKA_MODULAR_INV_IN_OP1 + in->size); in PKA_ModInv_Set()
2373 PKA_Memcpy_u8_to_u32(&hpka->Instance->RAM[PKA_MODULAR_INV_IN_OP2_MOD], in->pMod, in->size * 4UL); in PKA_ModInv_Set()
2374 __PKA_RAM_PARAM_END(hpka->Instance->RAM, PKA_MODULAR_INV_IN_OP2_MOD + in->size); in PKA_ModInv_Set()
2382 void PKA_ModRed_Set(PKA_HandleTypeDef *hpka, PKA_ModRedInTypeDef *in) in PKA_ModRed_Set() argument
2385 hpka->Instance->RAM[PKA_MODULAR_REDUC_IN_OP_LENGTH] = PKA_GetBitSize_u32(in->OpSize); in PKA_ModRed_Set()
2388 hpka->Instance->RAM[PKA_MODULAR_REDUC_IN_MOD_LENGTH] = PKA_GetBitSize_u8(in->modSize); in PKA_ModRed_Set()
2391 PKA_Memcpy_u32_to_u32(&hpka->Instance->RAM[PKA_MODULAR_REDUC_IN_OPERAND], in->pOp1, in->OpSize); in PKA_ModRed_Set()
2392 __PKA_RAM_PARAM_END(hpka->Instance->RAM, PKA_MODULAR_REDUC_IN_OPERAND + in->OpSize); in PKA_ModRed_Set()
2395 PKA_Memcpy_u8_to_u32(&hpka->Instance->RAM[PKA_MODULAR_REDUC_IN_MODULUS], in->pMod, in->modSize); in PKA_ModRed_Set()
2396 …__PKA_RAM_PARAM_END(hpka->Instance->RAM, PKA_MODULAR_REDUC_IN_MODULUS + ((in->modSize + 3UL) / 4UL… in PKA_ModRed_Set()
2405 void PKA_MontgomeryParam_Set(PKA_HandleTypeDef *hpka, const uint32_t size, const uint8_t *pOp1) in PKA_MontgomeryParam_Set() argument
2422hpka->Instance->RAM[PKA_MONTGOMERY_PARAM_IN_MOD_NB_BITS] = PKA_GetOptBitSize_u8(newSize, pOp1[byte… in PKA_MontgomeryParam_Set()
2425 PKA_Memcpy_u8_to_u32(&hpka->Instance->RAM[PKA_MONTGOMERY_PARAM_IN_MODULUS], pOp1, size); in PKA_MontgomeryParam_Set()
2426 … __PKA_RAM_PARAM_END(hpka->Instance->RAM, PKA_MONTGOMERY_PARAM_IN_MODULUS + ((size + 3UL) / 4UL)); in PKA_MontgomeryParam_Set()
2438 void PKA_ARI_Set(PKA_HandleTypeDef *hpka, const uint32_t size, const uint32_t *pOp1, const uint32_t… in PKA_ARI_Set() argument
2442 hpka->Instance->RAM[PKA_ARITHMETIC_ALL_OPS_NB_BITS] = PKA_GetBitSize_u32(size); in PKA_ARI_Set()
2447 PKA_Memcpy_u32_to_u32(&hpka->Instance->RAM[PKA_ARITHMETIC_ALL_OPS_IN_OP1], pOp1, size); in PKA_ARI_Set()
2448 __PKA_RAM_PARAM_END(hpka->Instance->RAM, PKA_ARITHMETIC_ALL_OPS_IN_OP1 + size); in PKA_ARI_Set()
2454 PKA_Memcpy_u32_to_u32(&hpka->Instance->RAM[PKA_ARITHMETIC_ALL_OPS_IN_OP2], pOp2, size); in PKA_ARI_Set()
2455 __PKA_RAM_PARAM_END(hpka->Instance->RAM, PKA_ARITHMETIC_ALL_OPS_IN_OP2 + size); in PKA_ARI_Set()
2461 PKA_Memcpy_u8_to_u32(&hpka->Instance->RAM[PKA_ARITHMETIC_ALL_OPS_IN_OP3], pOp3, size * 4UL); in PKA_ARI_Set()
2462 __PKA_RAM_PARAM_END(hpka->Instance->RAM, PKA_ARITHMETIC_ALL_OPS_IN_OP3 + size); in PKA_ARI_Set()