Lines Matching refs:hcryp
198 static void CRYP_SetDMAConfig(CRYP_HandleTypeDef *hcryp, uint32_t inputaddr, uint16_t Size, uint32_…
202 static void CRYP_SetKey( CRYP_HandleTypeDef *hcryp, uint32_t KeySize);
203 static void CRYP_AES_IT(CRYP_HandleTypeDef *hcryp);
204 static void CRYP_AES_ProcessData(CRYP_HandleTypeDef *hcryp, uint32_t Timeout);
205 static HAL_StatusTypeDef CRYP_AES_Encrypt(CRYP_HandleTypeDef *hcryp, uint32_t Timeout);
206 static HAL_StatusTypeDef CRYP_AES_Decrypt(CRYP_HandleTypeDef *hcryp, uint32_t Timeout);
207 static HAL_StatusTypeDef CRYP_AES_Decrypt_IT(CRYP_HandleTypeDef *hcryp);
208 static HAL_StatusTypeDef CRYP_AES_Encrypt_IT(CRYP_HandleTypeDef *hcryp);
209 static HAL_StatusTypeDef CRYP_AES_Decrypt_DMA(CRYP_HandleTypeDef *hcryp);
210 static void CRYP_TDES_IT(CRYP_HandleTypeDef *hcryp);
211 static HAL_StatusTypeDef CRYP_WaitOnBUSYFlag(const CRYP_HandleTypeDef *hcryp, uint32_t Timeout);
212 static HAL_StatusTypeDef CRYP_WaitOnOFNEFlag(const CRYP_HandleTypeDef *hcryp, uint32_t Timeout);
213 static HAL_StatusTypeDef CRYP_TDES_Process(CRYP_HandleTypeDef *hcryp, uint32_t Timeout);
260 HAL_StatusTypeDef HAL_CRYP_Init(CRYP_HandleTypeDef *hcryp) in HAL_CRYP_Init() argument
263 if(hcryp == NULL) in HAL_CRYP_Init()
269 assert_param(IS_CRYP_KEYSIZE(hcryp->Init.KeySize)); in HAL_CRYP_Init()
270 assert_param(IS_CRYP_DATATYPE(hcryp->Init.DataType)); in HAL_CRYP_Init()
271 assert_param(IS_CRYP_ALGORITHM(hcryp->Init.Algorithm)); in HAL_CRYP_Init()
274 if(hcryp->State == HAL_CRYP_STATE_RESET) in HAL_CRYP_Init()
277 hcryp->Lock = HAL_UNLOCKED; in HAL_CRYP_Init()
279 hcryp->InCpltCallback = HAL_CRYP_InCpltCallback; /* Legacy weak InCpltCallback */ in HAL_CRYP_Init()
280 hcryp->OutCpltCallback = HAL_CRYP_OutCpltCallback; /* Legacy weak OutCpltCallback */ in HAL_CRYP_Init()
281 hcryp->ErrorCallback = HAL_CRYP_ErrorCallback; /* Legacy weak ErrorCallback */ in HAL_CRYP_Init()
283 if(hcryp->MspInitCallback == NULL) in HAL_CRYP_Init()
285 hcryp->MspInitCallback = HAL_CRYP_MspInit; /* Legacy weak MspInit */ in HAL_CRYP_Init()
289 hcryp->MspInitCallback(hcryp); in HAL_CRYP_Init()
292 if(hcryp->State == HAL_CRYP_STATE_RESET) in HAL_CRYP_Init()
295 hcryp->Lock = HAL_UNLOCKED; in HAL_CRYP_Init()
298 HAL_CRYP_MspInit(hcryp); in HAL_CRYP_Init()
303 …MODIFY_REG(hcryp->Instance->CR, CRYP_CR_DATATYPE|CRYP_CR_KEYSIZE|CRYP_CR_ALGOMODE, hcryp->Init.Dat… in HAL_CRYP_Init()
306 hcryp->ErrorCode = HAL_CRYP_ERROR_NONE; in HAL_CRYP_Init()
309 hcryp->State = HAL_CRYP_STATE_READY; in HAL_CRYP_Init()
312 hcryp->Phase = CRYP_PHASE_READY; in HAL_CRYP_Init()
324 HAL_StatusTypeDef HAL_CRYP_DeInit(CRYP_HandleTypeDef *hcryp) in HAL_CRYP_DeInit() argument
327 if(hcryp == NULL) in HAL_CRYP_DeInit()
333 hcryp->Phase = CRYP_PHASE_READY; in HAL_CRYP_DeInit()
336 hcryp->CrypInCount = 0; in HAL_CRYP_DeInit()
337 hcryp->CrypOutCount = 0; in HAL_CRYP_DeInit()
340 __HAL_CRYP_DISABLE(hcryp); in HAL_CRYP_DeInit()
343 if(hcryp->MspDeInitCallback == NULL) in HAL_CRYP_DeInit()
345 hcryp->MspDeInitCallback = HAL_CRYP_MspDeInit; /* Legacy weak MspDeInit */ in HAL_CRYP_DeInit()
348 hcryp->MspDeInitCallback(hcryp); in HAL_CRYP_DeInit()
352 HAL_CRYP_MspDeInit(hcryp); in HAL_CRYP_DeInit()
356 hcryp->State = HAL_CRYP_STATE_RESET; in HAL_CRYP_DeInit()
359 __HAL_UNLOCK(hcryp); in HAL_CRYP_DeInit()
373 HAL_StatusTypeDef HAL_CRYP_SetConfig(CRYP_HandleTypeDef *hcryp, CRYP_ConfigTypeDef *pConf ) in HAL_CRYP_SetConfig() argument
376 if((hcryp == NULL)|| (pConf == NULL) ) in HAL_CRYP_SetConfig()
386 if(hcryp->State == HAL_CRYP_STATE_READY) in HAL_CRYP_SetConfig()
389 hcryp->State = HAL_CRYP_STATE_BUSY; in HAL_CRYP_SetConfig()
392 __HAL_LOCK(hcryp); in HAL_CRYP_SetConfig()
395 hcryp->Init.DataType = pConf->DataType; in HAL_CRYP_SetConfig()
396 hcryp->Init.pKey = pConf->pKey; in HAL_CRYP_SetConfig()
397 hcryp->Init.Algorithm = pConf->Algorithm; in HAL_CRYP_SetConfig()
398 hcryp->Init.KeySize = pConf->KeySize; in HAL_CRYP_SetConfig()
399 hcryp->Init.pInitVect = pConf->pInitVect; in HAL_CRYP_SetConfig()
402 …MODIFY_REG(hcryp->Instance->CR, CRYP_CR_DATATYPE|CRYP_CR_KEYSIZE|CRYP_CR_ALGOMODE, hcryp->Init.Dat… in HAL_CRYP_SetConfig()
405 __HAL_UNLOCK(hcryp); in HAL_CRYP_SetConfig()
408 hcryp->ErrorCode = HAL_CRYP_ERROR_NONE; in HAL_CRYP_SetConfig()
411 hcryp->State = HAL_CRYP_STATE_READY; in HAL_CRYP_SetConfig()
414 hcryp->Phase = CRYP_PHASE_READY; in HAL_CRYP_SetConfig()
422 __HAL_UNLOCK(hcryp); in HAL_CRYP_SetConfig()
425 hcryp->ErrorCode |= HAL_CRYP_ERROR_BUSY; in HAL_CRYP_SetConfig()
437 HAL_StatusTypeDef HAL_CRYP_GetConfig(CRYP_HandleTypeDef *hcryp, CRYP_ConfigTypeDef *pConf ) in HAL_CRYP_GetConfig() argument
440 if((hcryp == NULL)|| (pConf == NULL) ) in HAL_CRYP_GetConfig()
445 if(hcryp->State == HAL_CRYP_STATE_READY) in HAL_CRYP_GetConfig()
448 hcryp->State = HAL_CRYP_STATE_BUSY; in HAL_CRYP_GetConfig()
451 __HAL_LOCK(hcryp); in HAL_CRYP_GetConfig()
454 pConf->DataType = hcryp->Init.DataType; in HAL_CRYP_GetConfig()
455 pConf->pKey = hcryp->Init.pKey; in HAL_CRYP_GetConfig()
456 pConf->Algorithm = hcryp->Init.Algorithm; in HAL_CRYP_GetConfig()
457 pConf->KeySize = hcryp->Init.KeySize ; in HAL_CRYP_GetConfig()
458 pConf->pInitVect = hcryp->Init.pInitVect; in HAL_CRYP_GetConfig()
461 __HAL_UNLOCK(hcryp); in HAL_CRYP_GetConfig()
464 hcryp->State = HAL_CRYP_STATE_READY; in HAL_CRYP_GetConfig()
472 __HAL_UNLOCK(hcryp); in HAL_CRYP_GetConfig()
475 hcryp->ErrorCode |= HAL_CRYP_ERROR_BUSY; in HAL_CRYP_GetConfig()
485 __weak void HAL_CRYP_MspInit(CRYP_HandleTypeDef *hcryp) in HAL_CRYP_MspInit() argument
488 UNUSED(hcryp); in HAL_CRYP_MspInit()
501 __weak void HAL_CRYP_MspDeInit(CRYP_HandleTypeDef *hcryp) in HAL_CRYP_MspDeInit() argument
504 UNUSED(hcryp); in HAL_CRYP_MspDeInit()
526 HAL_StatusTypeDef HAL_CRYP_RegisterCallback(CRYP_HandleTypeDef *hcryp, HAL_CRYP_CallbackIDTypeDef C… in HAL_CRYP_RegisterCallback() argument
533 hcryp->ErrorCode |= HAL_CRYP_ERROR_INVALID_CALLBACK; in HAL_CRYP_RegisterCallback()
538 __HAL_LOCK(hcryp); in HAL_CRYP_RegisterCallback()
540 if(hcryp->State == HAL_CRYP_STATE_READY) in HAL_CRYP_RegisterCallback()
545 hcryp->InCpltCallback = pCallback; in HAL_CRYP_RegisterCallback()
549 hcryp->OutCpltCallback = pCallback; in HAL_CRYP_RegisterCallback()
553 hcryp->ErrorCallback = pCallback; in HAL_CRYP_RegisterCallback()
557 hcryp->MspInitCallback = pCallback; in HAL_CRYP_RegisterCallback()
561 hcryp->MspDeInitCallback = pCallback; in HAL_CRYP_RegisterCallback()
566 hcryp->ErrorCode |= HAL_CRYP_ERROR_INVALID_CALLBACK; in HAL_CRYP_RegisterCallback()
572 else if(hcryp->State == HAL_CRYP_STATE_RESET) in HAL_CRYP_RegisterCallback()
577 hcryp->MspInitCallback = pCallback; in HAL_CRYP_RegisterCallback()
581 hcryp->MspDeInitCallback = pCallback; in HAL_CRYP_RegisterCallback()
586 hcryp->ErrorCode |= HAL_CRYP_ERROR_INVALID_CALLBACK; in HAL_CRYP_RegisterCallback()
595 hcryp->ErrorCode |= HAL_CRYP_ERROR_INVALID_CALLBACK; in HAL_CRYP_RegisterCallback()
601 __HAL_UNLOCK(hcryp); in HAL_CRYP_RegisterCallback()
619 HAL_StatusTypeDef HAL_CRYP_UnRegisterCallback(CRYP_HandleTypeDef *hcryp, HAL_CRYP_CallbackIDTypeDef… in HAL_CRYP_UnRegisterCallback() argument
624 __HAL_LOCK(hcryp); in HAL_CRYP_UnRegisterCallback()
626 if(hcryp->State == HAL_CRYP_STATE_READY) in HAL_CRYP_UnRegisterCallback()
631 hcryp->InCpltCallback = HAL_CRYP_InCpltCallback; /* Legacy weak InCpltCallback */ in HAL_CRYP_UnRegisterCallback()
635 … hcryp->OutCpltCallback = HAL_CRYP_OutCpltCallback; /* Legacy weak OutCpltCallback */ in HAL_CRYP_UnRegisterCallback()
639 … hcryp->ErrorCallback = HAL_CRYP_ErrorCallback; /* Legacy weak ErrorCallback */ in HAL_CRYP_UnRegisterCallback()
643 hcryp->MspInitCallback = HAL_CRYP_MspInit; in HAL_CRYP_UnRegisterCallback()
647 hcryp->MspDeInitCallback = HAL_CRYP_MspDeInit; in HAL_CRYP_UnRegisterCallback()
652 hcryp->ErrorCode |= HAL_CRYP_ERROR_INVALID_CALLBACK; in HAL_CRYP_UnRegisterCallback()
658 else if(hcryp->State == HAL_CRYP_STATE_RESET) in HAL_CRYP_UnRegisterCallback()
663 hcryp->MspInitCallback = HAL_CRYP_MspInit; in HAL_CRYP_UnRegisterCallback()
667 hcryp->MspDeInitCallback = HAL_CRYP_MspDeInit; in HAL_CRYP_UnRegisterCallback()
672 hcryp->ErrorCode |= HAL_CRYP_ERROR_INVALID_CALLBACK; in HAL_CRYP_UnRegisterCallback()
681 hcryp->ErrorCode |= HAL_CRYP_ERROR_INVALID_CALLBACK; in HAL_CRYP_UnRegisterCallback()
687 __HAL_UNLOCK(hcryp); in HAL_CRYP_UnRegisterCallback()
735 HAL_StatusTypeDef HAL_CRYP_Encrypt(CRYP_HandleTypeDef *hcryp, uint32_t *Input, uint16_t Size, uint3… in HAL_CRYP_Encrypt() argument
740 if(hcryp->State == HAL_CRYP_STATE_READY) in HAL_CRYP_Encrypt()
743 hcryp->State = HAL_CRYP_STATE_BUSY; in HAL_CRYP_Encrypt()
746 __HAL_LOCK(hcryp); in HAL_CRYP_Encrypt()
749 hcryp->CrypInCount = 0U; in HAL_CRYP_Encrypt()
750 hcryp->CrypOutCount = 0U; in HAL_CRYP_Encrypt()
751 hcryp->pCrypInBuffPtr = Input; in HAL_CRYP_Encrypt()
752 hcryp->pCrypOutBuffPtr = Output; in HAL_CRYP_Encrypt()
755 if (hcryp->Init.DataWidthUnit == CRYP_DATAWIDTHUNIT_WORD) in HAL_CRYP_Encrypt()
757 hcryp->Size = Size * 4U; in HAL_CRYP_Encrypt()
761 hcryp->Size = Size; in HAL_CRYP_Encrypt()
765 MODIFY_REG(hcryp->Instance->CR, CRYP_CR_ALGODIR, CRYP_OPERATINGMODE_ENCRYPT); in HAL_CRYP_Encrypt()
768 algo = hcryp->Instance->CR & CRYP_CR_ALGOMODE; in HAL_CRYP_Encrypt()
778 hcryp->Instance->K1LR = *(uint32_t*)(hcryp->Init.pKey); in HAL_CRYP_Encrypt()
779 hcryp->Instance->K1RR = *(uint32_t*)(hcryp->Init.pKey+1); in HAL_CRYP_Encrypt()
780 if ((hcryp->Init.Algorithm == CRYP_TDES_ECB) || (hcryp->Init.Algorithm == CRYP_TDES_CBC)) in HAL_CRYP_Encrypt()
782 hcryp->Instance->K2LR = *(uint32_t*)(hcryp->Init.pKey+2); in HAL_CRYP_Encrypt()
783 hcryp->Instance->K2RR = *(uint32_t*)(hcryp->Init.pKey+3); in HAL_CRYP_Encrypt()
784 hcryp->Instance->K3LR = *(uint32_t*)(hcryp->Init.pKey+4); in HAL_CRYP_Encrypt()
785 hcryp->Instance->K3RR = *(uint32_t*)(hcryp->Init.pKey+5); in HAL_CRYP_Encrypt()
789 if ((hcryp->Init.Algorithm == CRYP_DES_CBC) || (hcryp->Init.Algorithm == CRYP_TDES_CBC)) in HAL_CRYP_Encrypt()
791 hcryp->Instance->IV0LR = *(uint32_t*)(hcryp->Init.pInitVect); in HAL_CRYP_Encrypt()
792 hcryp->Instance->IV0RR = *(uint32_t*)(hcryp->Init.pInitVect+1); in HAL_CRYP_Encrypt()
796 HAL_CRYP_FIFO_FLUSH(hcryp); in HAL_CRYP_Encrypt()
799 hcryp->Phase = CRYP_PHASE_PROCESS; in HAL_CRYP_Encrypt()
802 status = CRYP_TDES_Process(hcryp,Timeout); in HAL_CRYP_Encrypt()
810 status = CRYP_AES_Encrypt(hcryp, Timeout); in HAL_CRYP_Encrypt()
814 hcryp->ErrorCode |= HAL_CRYP_ERROR_NOT_SUPPORTED; in HAL_CRYP_Encrypt()
822 hcryp->State = HAL_CRYP_STATE_READY; in HAL_CRYP_Encrypt()
825 __HAL_UNLOCK(hcryp); in HAL_CRYP_Encrypt()
831 __HAL_UNLOCK(hcryp); in HAL_CRYP_Encrypt()
834 hcryp->ErrorCode |= HAL_CRYP_ERROR_BUSY; in HAL_CRYP_Encrypt()
852 HAL_StatusTypeDef HAL_CRYP_Decrypt(CRYP_HandleTypeDef *hcryp, uint32_t *Input, uint16_t Size, uint3… in HAL_CRYP_Decrypt() argument
857 if(hcryp->State == HAL_CRYP_STATE_READY) in HAL_CRYP_Decrypt()
860 hcryp->State = HAL_CRYP_STATE_BUSY; in HAL_CRYP_Decrypt()
863 __HAL_LOCK(hcryp); in HAL_CRYP_Decrypt()
866 hcryp->CrypInCount = 0U; in HAL_CRYP_Decrypt()
867 hcryp->CrypOutCount = 0U; in HAL_CRYP_Decrypt()
868 hcryp->pCrypInBuffPtr = Input; in HAL_CRYP_Decrypt()
869 hcryp->pCrypOutBuffPtr = Output; in HAL_CRYP_Decrypt()
872 if (hcryp->Init.DataWidthUnit == CRYP_DATAWIDTHUNIT_WORD) in HAL_CRYP_Decrypt()
874 hcryp->Size = Size * 4U; in HAL_CRYP_Decrypt()
878 hcryp->Size = Size; in HAL_CRYP_Decrypt()
882 MODIFY_REG(hcryp->Instance->CR, CRYP_CR_ALGODIR, CRYP_OPERATINGMODE_DECRYPT); in HAL_CRYP_Decrypt()
885 algo = hcryp->Instance->CR & CRYP_CR_ALGOMODE; in HAL_CRYP_Decrypt()
895 hcryp->Instance->K1LR = *(uint32_t*)(hcryp->Init.pKey); in HAL_CRYP_Decrypt()
896 hcryp->Instance->K1RR = *(uint32_t*)(hcryp->Init.pKey+1); in HAL_CRYP_Decrypt()
897 if ((hcryp->Init.Algorithm == CRYP_TDES_ECB) || (hcryp->Init.Algorithm == CRYP_TDES_CBC)) in HAL_CRYP_Decrypt()
899 hcryp->Instance->K2LR = *(uint32_t*)(hcryp->Init.pKey+2); in HAL_CRYP_Decrypt()
900 hcryp->Instance->K2RR = *(uint32_t*)(hcryp->Init.pKey+3); in HAL_CRYP_Decrypt()
901 hcryp->Instance->K3LR = *(uint32_t*)(hcryp->Init.pKey+4); in HAL_CRYP_Decrypt()
902 hcryp->Instance->K3RR = *(uint32_t*)(hcryp->Init.pKey+5); in HAL_CRYP_Decrypt()
906 if ((hcryp->Init.Algorithm == CRYP_DES_CBC) || (hcryp->Init.Algorithm == CRYP_TDES_CBC)) in HAL_CRYP_Decrypt()
908 hcryp->Instance->IV0LR = *(uint32_t*)(hcryp->Init.pInitVect); in HAL_CRYP_Decrypt()
909 hcryp->Instance->IV0RR = *(uint32_t*)(hcryp->Init.pInitVect+1); in HAL_CRYP_Decrypt()
913 HAL_CRYP_FIFO_FLUSH(hcryp); in HAL_CRYP_Decrypt()
916 hcryp->Phase = CRYP_PHASE_PROCESS; in HAL_CRYP_Decrypt()
919 status = CRYP_TDES_Process(hcryp, Timeout); in HAL_CRYP_Decrypt()
928 status = CRYP_AES_Decrypt(hcryp, Timeout); in HAL_CRYP_Decrypt()
932 hcryp->ErrorCode |= HAL_CRYP_ERROR_NOT_SUPPORTED; in HAL_CRYP_Decrypt()
940 hcryp->State = HAL_CRYP_STATE_READY; in HAL_CRYP_Decrypt()
943 __HAL_UNLOCK(hcryp); in HAL_CRYP_Decrypt()
949 __HAL_UNLOCK(hcryp); in HAL_CRYP_Decrypt()
952 hcryp->ErrorCode |= HAL_CRYP_ERROR_BUSY; in HAL_CRYP_Decrypt()
969 HAL_StatusTypeDef HAL_CRYP_Encrypt_IT(CRYP_HandleTypeDef *hcryp, uint32_t *Input, uint16_t Size, ui… in HAL_CRYP_Encrypt_IT() argument
974 if(hcryp->State == HAL_CRYP_STATE_READY) in HAL_CRYP_Encrypt_IT()
977 hcryp->State = HAL_CRYP_STATE_BUSY; in HAL_CRYP_Encrypt_IT()
980 __HAL_LOCK(hcryp); in HAL_CRYP_Encrypt_IT()
983 hcryp->CrypInCount = 0U; in HAL_CRYP_Encrypt_IT()
984 hcryp->CrypOutCount = 0U; in HAL_CRYP_Encrypt_IT()
985 hcryp->pCrypInBuffPtr = Input; in HAL_CRYP_Encrypt_IT()
986 hcryp->pCrypOutBuffPtr = Output; in HAL_CRYP_Encrypt_IT()
989 if (hcryp->Init.DataWidthUnit == CRYP_DATAWIDTHUNIT_WORD) in HAL_CRYP_Encrypt_IT()
991 hcryp->Size = Size * 4U; in HAL_CRYP_Encrypt_IT()
995 hcryp->Size = Size; in HAL_CRYP_Encrypt_IT()
999 MODIFY_REG(hcryp->Instance->CR, CRYP_CR_ALGODIR, CRYP_OPERATINGMODE_ENCRYPT); in HAL_CRYP_Encrypt_IT()
1002 algo = (hcryp->Instance->CR & CRYP_CR_ALGOMODE); in HAL_CRYP_Encrypt_IT()
1012 hcryp->Instance->K1LR = *(uint32_t*)(hcryp->Init.pKey); in HAL_CRYP_Encrypt_IT()
1013 hcryp->Instance->K1RR = *(uint32_t*)(hcryp->Init.pKey+1); in HAL_CRYP_Encrypt_IT()
1014 if ((hcryp->Init.Algorithm == CRYP_TDES_ECB) || (hcryp->Init.Algorithm == CRYP_TDES_CBC)) in HAL_CRYP_Encrypt_IT()
1016 hcryp->Instance->K2LR = *(uint32_t*)(hcryp->Init.pKey+2); in HAL_CRYP_Encrypt_IT()
1017 hcryp->Instance->K2RR = *(uint32_t*)(hcryp->Init.pKey+3); in HAL_CRYP_Encrypt_IT()
1018 hcryp->Instance->K3LR = *(uint32_t*)(hcryp->Init.pKey+4); in HAL_CRYP_Encrypt_IT()
1019 hcryp->Instance->K3RR = *(uint32_t*)(hcryp->Init.pKey+5); in HAL_CRYP_Encrypt_IT()
1022 if ((hcryp->Init.Algorithm == CRYP_DES_CBC) || (hcryp->Init.Algorithm == CRYP_TDES_CBC)) in HAL_CRYP_Encrypt_IT()
1024 hcryp->Instance->IV0LR = *(uint32_t*)(hcryp->Init.pInitVect); in HAL_CRYP_Encrypt_IT()
1025 hcryp->Instance->IV0RR = *(uint32_t*)(hcryp->Init.pInitVect+1); in HAL_CRYP_Encrypt_IT()
1029 HAL_CRYP_FIFO_FLUSH(hcryp); in HAL_CRYP_Encrypt_IT()
1032 hcryp->Phase = CRYP_PHASE_PROCESS; in HAL_CRYP_Encrypt_IT()
1035 __HAL_CRYP_ENABLE_IT(hcryp, CRYP_IT_INI | CRYP_IT_OUTI); in HAL_CRYP_Encrypt_IT()
1038 __HAL_CRYP_ENABLE(hcryp); in HAL_CRYP_Encrypt_IT()
1047 status = CRYP_AES_Encrypt_IT(hcryp); in HAL_CRYP_Encrypt_IT()
1051 hcryp->ErrorCode |= HAL_CRYP_ERROR_NOT_SUPPORTED; in HAL_CRYP_Encrypt_IT()
1059 hcryp->ErrorCode |= HAL_CRYP_ERROR_BUSY; in HAL_CRYP_Encrypt_IT()
1076 HAL_StatusTypeDef HAL_CRYP_Decrypt_IT(CRYP_HandleTypeDef *hcryp, uint32_t *Input, uint16_t Size, ui… in HAL_CRYP_Decrypt_IT() argument
1081 if(hcryp->State == HAL_CRYP_STATE_READY) in HAL_CRYP_Decrypt_IT()
1084 hcryp->State = HAL_CRYP_STATE_BUSY; in HAL_CRYP_Decrypt_IT()
1087 __HAL_LOCK(hcryp); in HAL_CRYP_Decrypt_IT()
1090 hcryp->CrypInCount = 0U; in HAL_CRYP_Decrypt_IT()
1091 hcryp->CrypOutCount = 0U; in HAL_CRYP_Decrypt_IT()
1092 hcryp->pCrypInBuffPtr = Input; in HAL_CRYP_Decrypt_IT()
1093 hcryp->pCrypOutBuffPtr = Output; in HAL_CRYP_Decrypt_IT()
1096 if (hcryp->Init.DataWidthUnit == CRYP_DATAWIDTHUNIT_WORD) in HAL_CRYP_Decrypt_IT()
1098 hcryp->Size = Size * 4U; in HAL_CRYP_Decrypt_IT()
1102 hcryp->Size = Size; in HAL_CRYP_Decrypt_IT()
1106 MODIFY_REG(hcryp->Instance->CR, CRYP_CR_ALGODIR,CRYP_OPERATINGMODE_DECRYPT); in HAL_CRYP_Decrypt_IT()
1109 algo = hcryp->Instance->CR & CRYP_CR_ALGOMODE; in HAL_CRYP_Decrypt_IT()
1119 hcryp->Instance->K1LR = *(uint32_t*)(hcryp->Init.pKey); in HAL_CRYP_Decrypt_IT()
1120 hcryp->Instance->K1RR = *(uint32_t*)(hcryp->Init.pKey+1); in HAL_CRYP_Decrypt_IT()
1121 if ((hcryp->Init.Algorithm == CRYP_TDES_ECB) || (hcryp->Init.Algorithm == CRYP_TDES_CBC)) in HAL_CRYP_Decrypt_IT()
1123 hcryp->Instance->K2LR = *(uint32_t*)(hcryp->Init.pKey+2); in HAL_CRYP_Decrypt_IT()
1124 hcryp->Instance->K2RR = *(uint32_t*)(hcryp->Init.pKey+3); in HAL_CRYP_Decrypt_IT()
1125 hcryp->Instance->K3LR = *(uint32_t*)(hcryp->Init.pKey+4); in HAL_CRYP_Decrypt_IT()
1126 hcryp->Instance->K3RR = *(uint32_t*)(hcryp->Init.pKey+5); in HAL_CRYP_Decrypt_IT()
1130 if ((hcryp->Init.Algorithm == CRYP_DES_CBC) || (hcryp->Init.Algorithm == CRYP_TDES_CBC)) in HAL_CRYP_Decrypt_IT()
1132 hcryp->Instance->IV0LR = *(uint32_t*)(hcryp->Init.pInitVect); in HAL_CRYP_Decrypt_IT()
1133 hcryp->Instance->IV0RR = *(uint32_t*)(hcryp->Init.pInitVect+1); in HAL_CRYP_Decrypt_IT()
1136 HAL_CRYP_FIFO_FLUSH(hcryp); in HAL_CRYP_Decrypt_IT()
1139 hcryp->Phase = CRYP_PHASE_PROCESS; in HAL_CRYP_Decrypt_IT()
1142 __HAL_CRYP_ENABLE_IT(hcryp, CRYP_IT_INI | CRYP_IT_OUTI); in HAL_CRYP_Decrypt_IT()
1145 __HAL_CRYP_ENABLE(hcryp); in HAL_CRYP_Decrypt_IT()
1154 status = CRYP_AES_Decrypt_IT(hcryp); in HAL_CRYP_Decrypt_IT()
1158 hcryp->ErrorCode |= HAL_CRYP_ERROR_NOT_SUPPORTED; in HAL_CRYP_Decrypt_IT()
1166 hcryp->ErrorCode |= HAL_CRYP_ERROR_BUSY; in HAL_CRYP_Decrypt_IT()
1183 HAL_StatusTypeDef HAL_CRYP_Encrypt_DMA(CRYP_HandleTypeDef *hcryp, uint32_t *Input, uint16_t Size, u… in HAL_CRYP_Encrypt_DMA() argument
1188 if(hcryp->State == HAL_CRYP_STATE_READY) in HAL_CRYP_Encrypt_DMA()
1191 hcryp->State = HAL_CRYP_STATE_BUSY; in HAL_CRYP_Encrypt_DMA()
1194 __HAL_LOCK(hcryp); in HAL_CRYP_Encrypt_DMA()
1197 hcryp->CrypInCount = 0U; in HAL_CRYP_Encrypt_DMA()
1198 hcryp->CrypOutCount = 0U; in HAL_CRYP_Encrypt_DMA()
1199 hcryp->pCrypInBuffPtr = Input; in HAL_CRYP_Encrypt_DMA()
1200 hcryp->pCrypOutBuffPtr = Output; in HAL_CRYP_Encrypt_DMA()
1203 if (hcryp->Init.DataWidthUnit == CRYP_DATAWIDTHUNIT_WORD) in HAL_CRYP_Encrypt_DMA()
1205 hcryp->Size = Size * 4U; in HAL_CRYP_Encrypt_DMA()
1209 hcryp->Size = Size; in HAL_CRYP_Encrypt_DMA()
1213 MODIFY_REG(hcryp->Instance->CR, CRYP_CR_ALGODIR, CRYP_OPERATINGMODE_ENCRYPT); in HAL_CRYP_Encrypt_DMA()
1216 algo = hcryp->Instance->CR & CRYP_CR_ALGOMODE; in HAL_CRYP_Encrypt_DMA()
1226 hcryp->Instance->K1LR = *(uint32_t*)(hcryp->Init.pKey); in HAL_CRYP_Encrypt_DMA()
1227 hcryp->Instance->K1RR = *(uint32_t*)(hcryp->Init.pKey+1); in HAL_CRYP_Encrypt_DMA()
1228 if ((hcryp->Init.Algorithm == CRYP_TDES_ECB) || (hcryp->Init.Algorithm == CRYP_TDES_CBC)) in HAL_CRYP_Encrypt_DMA()
1230 hcryp->Instance->K2LR = *(uint32_t*)(hcryp->Init.pKey+2); in HAL_CRYP_Encrypt_DMA()
1231 hcryp->Instance->K2RR = *(uint32_t*)(hcryp->Init.pKey+3); in HAL_CRYP_Encrypt_DMA()
1232 hcryp->Instance->K3LR = *(uint32_t*)(hcryp->Init.pKey+4); in HAL_CRYP_Encrypt_DMA()
1233 hcryp->Instance->K3RR = *(uint32_t*)(hcryp->Init.pKey+5); in HAL_CRYP_Encrypt_DMA()
1237 if ((hcryp->Init.Algorithm == CRYP_DES_CBC) || (hcryp->Init.Algorithm == CRYP_TDES_CBC)) in HAL_CRYP_Encrypt_DMA()
1239 hcryp->Instance->IV0LR = *(uint32_t*)(hcryp->Init.pInitVect); in HAL_CRYP_Encrypt_DMA()
1240 hcryp->Instance->IV0RR = *(uint32_t*)(hcryp->Init.pInitVect+1); in HAL_CRYP_Encrypt_DMA()
1244 HAL_CRYP_FIFO_FLUSH(hcryp); in HAL_CRYP_Encrypt_DMA()
1247 hcryp->Phase = CRYP_PHASE_PROCESS; in HAL_CRYP_Encrypt_DMA()
1250 …CRYP_SetDMAConfig(hcryp, (uint32_t)( hcryp->pCrypInBuffPtr), (hcryp->Size/4U), (uint32_t)(hcryp->p… in HAL_CRYP_Encrypt_DMA()
1259 CRYP_SetKey(hcryp, hcryp->Init.KeySize); in HAL_CRYP_Encrypt_DMA()
1262 if (hcryp->Init.Algorithm != CRYP_AES_ECB) in HAL_CRYP_Encrypt_DMA()
1264 hcryp->Instance->IV0LR = *(uint32_t*)(hcryp->Init.pInitVect); in HAL_CRYP_Encrypt_DMA()
1265 hcryp->Instance->IV0RR = *(uint32_t*)(hcryp->Init.pInitVect+1); in HAL_CRYP_Encrypt_DMA()
1266 hcryp->Instance->IV1LR = *(uint32_t*)(hcryp->Init.pInitVect+2); in HAL_CRYP_Encrypt_DMA()
1267 hcryp->Instance->IV1RR = *(uint32_t*)(hcryp->Init.pInitVect+3); in HAL_CRYP_Encrypt_DMA()
1271 hcryp->Phase = CRYP_PHASE_PROCESS; in HAL_CRYP_Encrypt_DMA()
1274 …CRYP_SetDMAConfig(hcryp, (uint32_t)( hcryp->pCrypInBuffPtr), (hcryp->Size/4U), (uint32_t)(hcryp->p… in HAL_CRYP_Encrypt_DMA()
1278 hcryp->ErrorCode |= HAL_CRYP_ERROR_NOT_SUPPORTED; in HAL_CRYP_Encrypt_DMA()
1286 hcryp->ErrorCode |= HAL_CRYP_ERROR_BUSY; in HAL_CRYP_Encrypt_DMA()
1303 HAL_StatusTypeDef HAL_CRYP_Decrypt_DMA(CRYP_HandleTypeDef *hcryp, uint32_t *Input, uint16_t Size, u… in HAL_CRYP_Decrypt_DMA() argument
1308 if(hcryp->State == HAL_CRYP_STATE_READY) in HAL_CRYP_Decrypt_DMA()
1311 hcryp->State = HAL_CRYP_STATE_BUSY; in HAL_CRYP_Decrypt_DMA()
1314 __HAL_LOCK(hcryp); in HAL_CRYP_Decrypt_DMA()
1317 hcryp->CrypInCount = 0U; in HAL_CRYP_Decrypt_DMA()
1318 hcryp->CrypOutCount = 0U; in HAL_CRYP_Decrypt_DMA()
1319 hcryp->pCrypInBuffPtr = Input; in HAL_CRYP_Decrypt_DMA()
1320 hcryp->pCrypOutBuffPtr = Output; in HAL_CRYP_Decrypt_DMA()
1323 if (hcryp->Init.DataWidthUnit == CRYP_DATAWIDTHUNIT_WORD) in HAL_CRYP_Decrypt_DMA()
1325 hcryp->Size = Size * 4U; in HAL_CRYP_Decrypt_DMA()
1329 hcryp->Size = Size; in HAL_CRYP_Decrypt_DMA()
1333 MODIFY_REG(hcryp->Instance->CR, CRYP_CR_ALGODIR, CRYP_OPERATINGMODE_DECRYPT); in HAL_CRYP_Decrypt_DMA()
1336 algo = hcryp->Instance->CR & CRYP_CR_ALGOMODE; in HAL_CRYP_Decrypt_DMA()
1346 hcryp->Instance->K1LR = *(uint32_t*)(hcryp->Init.pKey); in HAL_CRYP_Decrypt_DMA()
1347 hcryp->Instance->K1RR = *(uint32_t*)(hcryp->Init.pKey+1); in HAL_CRYP_Decrypt_DMA()
1348 if ((hcryp->Init.Algorithm == CRYP_TDES_ECB) || (hcryp->Init.Algorithm == CRYP_TDES_CBC)) in HAL_CRYP_Decrypt_DMA()
1350 hcryp->Instance->K2LR = *(uint32_t*)(hcryp->Init.pKey+2); in HAL_CRYP_Decrypt_DMA()
1351 hcryp->Instance->K2RR = *(uint32_t*)(hcryp->Init.pKey+3); in HAL_CRYP_Decrypt_DMA()
1352 hcryp->Instance->K3LR = *(uint32_t*)(hcryp->Init.pKey+4); in HAL_CRYP_Decrypt_DMA()
1353 hcryp->Instance->K3RR = *(uint32_t*)(hcryp->Init.pKey+5); in HAL_CRYP_Decrypt_DMA()
1357 if ((hcryp->Init.Algorithm == CRYP_DES_CBC) || (hcryp->Init.Algorithm == CRYP_TDES_CBC)) in HAL_CRYP_Decrypt_DMA()
1359 hcryp->Instance->IV0LR = *(uint32_t*)(hcryp->Init.pInitVect); in HAL_CRYP_Decrypt_DMA()
1360 hcryp->Instance->IV0RR = *(uint32_t*)(hcryp->Init.pInitVect+1); in HAL_CRYP_Decrypt_DMA()
1364 HAL_CRYP_FIFO_FLUSH(hcryp); in HAL_CRYP_Decrypt_DMA()
1367 hcryp->Phase = CRYP_PHASE_PROCESS; in HAL_CRYP_Decrypt_DMA()
1370 …CRYP_SetDMAConfig(hcryp, (uint32_t)( hcryp->pCrypInBuffPtr), (hcryp->Size/4U), (uint32_t)(hcryp->p… in HAL_CRYP_Decrypt_DMA()
1378 status = CRYP_AES_Decrypt_DMA(hcryp); in HAL_CRYP_Decrypt_DMA()
1382 hcryp->ErrorCode |= HAL_CRYP_ERROR_NOT_SUPPORTED; in HAL_CRYP_Decrypt_DMA()
1390 hcryp->ErrorCode |= HAL_CRYP_ERROR_BUSY; in HAL_CRYP_Decrypt_DMA()
1426 void HAL_CRYP_IRQHandler(CRYP_HandleTypeDef *hcryp) in HAL_CRYP_IRQHandler() argument
1429 …if((__HAL_CRYP_GET_IT(hcryp, CRYP_IT_INI) != 0U) || (__HAL_CRYP_GET_IT(hcryp, CRYP_IT_OUTI) != 0U)) in HAL_CRYP_IRQHandler()
1431 …if ((hcryp->Init.Algorithm == CRYP_DES_ECB)|| (hcryp->Init.Algorithm == CRYP_DES_CBC) || (hcryp->I… in HAL_CRYP_IRQHandler()
1433 CRYP_TDES_IT(hcryp); /* DES or TDES*/ in HAL_CRYP_IRQHandler()
1435 …else if((hcryp->Init.Algorithm == CRYP_AES_ECB) || (hcryp->Init.Algorithm == CRYP_AES_CBC) || (hcr… in HAL_CRYP_IRQHandler()
1437 CRYP_AES_IT(hcryp); /*AES*/ in HAL_CRYP_IRQHandler()
1452 uint32_t HAL_CRYP_GetError(CRYP_HandleTypeDef *hcryp) in HAL_CRYP_GetError() argument
1454 return hcryp->ErrorCode; in HAL_CRYP_GetError()
1463 HAL_CRYP_STATETypeDef HAL_CRYP_GetState(CRYP_HandleTypeDef *hcryp) in HAL_CRYP_GetState() argument
1465 return hcryp->State; in HAL_CRYP_GetState()
1474 __weak void HAL_CRYP_InCpltCallback(CRYP_HandleTypeDef *hcryp) in HAL_CRYP_InCpltCallback() argument
1477 UNUSED(hcryp); in HAL_CRYP_InCpltCallback()
1490 __weak void HAL_CRYP_OutCpltCallback(CRYP_HandleTypeDef *hcryp) in HAL_CRYP_OutCpltCallback() argument
1493 UNUSED(hcryp); in HAL_CRYP_OutCpltCallback()
1506 __weak void HAL_CRYP_ErrorCallback(CRYP_HandleTypeDef *hcryp) in HAL_CRYP_ErrorCallback() argument
1509 UNUSED(hcryp); in HAL_CRYP_ErrorCallback()
1531 static HAL_StatusTypeDef CRYP_TDES_Process(CRYP_HandleTypeDef *hcryp, uint32_t Timeout) in CRYP_TDES_Process() argument
1539 __HAL_CRYP_ENABLE(hcryp); in CRYP_TDES_Process()
1541 outcount = hcryp->CrypOutCount; in CRYP_TDES_Process()
1544 while((hcryp->CrypInCount < (hcryp->Size/4U)) && (outcount < (hcryp->Size/4U))) in CRYP_TDES_Process()
1547 incount = hcryp->CrypInCount; in CRYP_TDES_Process()
1549 if(((hcryp->Instance->SR & CRYP_FLAG_IFNF ) != 0x0U) && (incount < (hcryp->Size/4U))) in CRYP_TDES_Process()
1552 hcryp->Instance->DIN = *(uint32_t *)(hcryp->pCrypInBuffPtr + hcryp->CrypInCount ); in CRYP_TDES_Process()
1553 hcryp->CrypInCount++; in CRYP_TDES_Process()
1554 hcryp->Instance->DIN = *(uint32_t *)(hcryp->pCrypInBuffPtr + hcryp->CrypInCount ); in CRYP_TDES_Process()
1555 hcryp->CrypInCount++; in CRYP_TDES_Process()
1559 if(CRYP_WaitOnOFNEFlag(hcryp, Timeout) != HAL_OK) in CRYP_TDES_Process()
1562 __HAL_CRYP_DISABLE(hcryp); in CRYP_TDES_Process()
1565 hcryp->ErrorCode |= HAL_CRYP_ERROR_TIMEOUT; in CRYP_TDES_Process()
1566 hcryp->State = HAL_CRYP_STATE_READY; in CRYP_TDES_Process()
1569 __HAL_UNLOCK(hcryp); in CRYP_TDES_Process()
1572 hcryp->ErrorCallback(hcryp); in CRYP_TDES_Process()
1575 HAL_CRYP_ErrorCallback(hcryp); in CRYP_TDES_Process()
1580 outcount = hcryp->CrypOutCount; in CRYP_TDES_Process()
1582 if(((hcryp->Instance->SR & CRYP_FLAG_OFNE ) != 0x0U) && (outcount < (hcryp->Size/4U))) in CRYP_TDES_Process()
1585 temp = hcryp->Instance->DOUT; in CRYP_TDES_Process()
1586 *(uint32_t *)(hcryp->pCrypOutBuffPtr + (hcryp->CrypOutCount)) = temp; in CRYP_TDES_Process()
1587 hcryp->CrypOutCount++; in CRYP_TDES_Process()
1588 temp = hcryp->Instance->DOUT; in CRYP_TDES_Process()
1589 *(uint32_t *)(hcryp->pCrypOutBuffPtr + (hcryp->CrypOutCount)) = temp; in CRYP_TDES_Process()
1590 hcryp->CrypOutCount++; in CRYP_TDES_Process()
1593 outcount = hcryp->CrypOutCount; in CRYP_TDES_Process()
1596 __HAL_CRYP_DISABLE(hcryp); in CRYP_TDES_Process()
1598 hcryp->State = HAL_CRYP_STATE_READY; in CRYP_TDES_Process()
1612 static void CRYP_TDES_IT(CRYP_HandleTypeDef *hcryp) in CRYP_TDES_IT() argument
1616 if(hcryp->State == HAL_CRYP_STATE_BUSY) in CRYP_TDES_IT()
1618 …if((__HAL_CRYP_GET_IT(hcryp, CRYP_IT_INI) != 0x0U) && (__HAL_CRYP_GET_FLAG(hcryp, CRYP_FLAG_INRIS)… in CRYP_TDES_IT()
1622 hcryp->Instance->DIN = *(uint32_t *)(hcryp->pCrypInBuffPtr + hcryp->CrypInCount ); in CRYP_TDES_IT()
1623 hcryp->CrypInCount++; in CRYP_TDES_IT()
1624 hcryp->Instance->DIN = *(uint32_t *)(hcryp->pCrypInBuffPtr + hcryp->CrypInCount ); in CRYP_TDES_IT()
1625 hcryp->CrypInCount++; in CRYP_TDES_IT()
1627 if(hcryp->CrypInCount == (hcryp->Size/4U)) in CRYP_TDES_IT()
1630 __HAL_CRYP_DISABLE_IT(hcryp, CRYP_IT_INI); in CRYP_TDES_IT()
1635 hcryp->InCpltCallback(hcryp); in CRYP_TDES_IT()
1638 HAL_CRYP_InCpltCallback(hcryp); in CRYP_TDES_IT()
1642 …if((__HAL_CRYP_GET_IT(hcryp, CRYP_IT_OUTI) != 0x0U)&& (__HAL_CRYP_GET_FLAG(hcryp, CRYP_FLAG_OUTRIS… in CRYP_TDES_IT()
1645 temp = hcryp->Instance->DOUT; in CRYP_TDES_IT()
1646 *(uint32_t *)(hcryp->pCrypOutBuffPtr + (hcryp->CrypOutCount)) = temp; in CRYP_TDES_IT()
1647 hcryp->CrypOutCount++; in CRYP_TDES_IT()
1648 temp = hcryp->Instance->DOUT; in CRYP_TDES_IT()
1649 *(uint32_t *)(hcryp->pCrypOutBuffPtr + (hcryp->CrypOutCount)) = temp; in CRYP_TDES_IT()
1650 hcryp->CrypOutCount++; in CRYP_TDES_IT()
1651 if(hcryp->CrypOutCount == (hcryp->Size/4U)) in CRYP_TDES_IT()
1654 __HAL_CRYP_DISABLE_IT(hcryp, CRYP_IT_OUTI); in CRYP_TDES_IT()
1657 __HAL_CRYP_DISABLE(hcryp); in CRYP_TDES_IT()
1660 __HAL_UNLOCK(hcryp); in CRYP_TDES_IT()
1663 hcryp->State = HAL_CRYP_STATE_READY; in CRYP_TDES_IT()
1668 hcryp->OutCpltCallback(hcryp); in CRYP_TDES_IT()
1671 HAL_CRYP_OutCpltCallback(hcryp); in CRYP_TDES_IT()
1680 __HAL_UNLOCK(hcryp); in CRYP_TDES_IT()
1682 hcryp->ErrorCode |= HAL_CRYP_ERROR_BUSY; in CRYP_TDES_IT()
1685 hcryp->ErrorCallback(hcryp); in CRYP_TDES_IT()
1688 HAL_CRYP_ErrorCallback(hcryp); in CRYP_TDES_IT()
1699 static HAL_StatusTypeDef CRYP_AES_Encrypt(CRYP_HandleTypeDef *hcryp, uint32_t Timeout) in CRYP_AES_Encrypt() argument
1704 CRYP_SetKey(hcryp, hcryp->Init.KeySize); in CRYP_AES_Encrypt()
1706 if (hcryp->Init.Algorithm != CRYP_AES_ECB) in CRYP_AES_Encrypt()
1709 hcryp->Instance->IV0LR = *(uint32_t*)(hcryp->Init.pInitVect); in CRYP_AES_Encrypt()
1710 hcryp->Instance->IV0RR = *(uint32_t*)(hcryp->Init.pInitVect+1); in CRYP_AES_Encrypt()
1711 hcryp->Instance->IV1LR = *(uint32_t*)(hcryp->Init.pInitVect+2); in CRYP_AES_Encrypt()
1712 hcryp->Instance->IV1RR = *(uint32_t*)(hcryp->Init.pInitVect+3); in CRYP_AES_Encrypt()
1716 hcryp->Phase = CRYP_PHASE_PROCESS; in CRYP_AES_Encrypt()
1719 __HAL_CRYP_ENABLE(hcryp); in CRYP_AES_Encrypt()
1721 outcount = hcryp->CrypOutCount; in CRYP_AES_Encrypt()
1723 while((hcryp->CrypInCount < (hcryp->Size/4U)) && (outcount < (hcryp->Size/4U))) in CRYP_AES_Encrypt()
1726 CRYP_AES_ProcessData(hcryp,Timeout); in CRYP_AES_Encrypt()
1728 outcount = hcryp->CrypOutCount; in CRYP_AES_Encrypt()
1732 __HAL_CRYP_DISABLE(hcryp); in CRYP_AES_Encrypt()
1735 hcryp->State = HAL_CRYP_STATE_READY; in CRYP_AES_Encrypt()
1747 static HAL_StatusTypeDef CRYP_AES_Encrypt_IT(CRYP_HandleTypeDef *hcryp) in CRYP_AES_Encrypt_IT() argument
1751 CRYP_SetKey(hcryp, hcryp->Init.KeySize); in CRYP_AES_Encrypt_IT()
1753 if (hcryp->Init.Algorithm != CRYP_AES_ECB) in CRYP_AES_Encrypt_IT()
1756 hcryp->Instance->IV0LR = *(uint32_t*)(hcryp->Init.pInitVect); in CRYP_AES_Encrypt_IT()
1757 hcryp->Instance->IV0RR = *(uint32_t*)(hcryp->Init.pInitVect+1); in CRYP_AES_Encrypt_IT()
1758 hcryp->Instance->IV1LR = *(uint32_t*)(hcryp->Init.pInitVect+2); in CRYP_AES_Encrypt_IT()
1759 hcryp->Instance->IV1RR = *(uint32_t*)(hcryp->Init.pInitVect+3); in CRYP_AES_Encrypt_IT()
1762 hcryp->Phase = CRYP_PHASE_PROCESS; in CRYP_AES_Encrypt_IT()
1764 if(hcryp->Size != 0U) in CRYP_AES_Encrypt_IT()
1767 __HAL_CRYP_ENABLE_IT(hcryp, CRYP_IT_INI | CRYP_IT_OUTI); in CRYP_AES_Encrypt_IT()
1770 __HAL_CRYP_ENABLE(hcryp); in CRYP_AES_Encrypt_IT()
1775 hcryp->State = HAL_CRYP_STATE_READY; in CRYP_AES_Encrypt_IT()
1778 __HAL_UNLOCK(hcryp); in CRYP_AES_Encrypt_IT()
1791 static HAL_StatusTypeDef CRYP_AES_Decrypt(CRYP_HandleTypeDef *hcryp, uint32_t Timeout ) in CRYP_AES_Decrypt() argument
1796 if (hcryp->Init.Algorithm != CRYP_AES_CTR) /*ECB or CBC*/ in CRYP_AES_Decrypt()
1799 MODIFY_REG(hcryp->Instance->CR, CRYP_CR_ALGOMODE, CRYP_CR_ALGOMODE_AES_KEY ); in CRYP_AES_Decrypt()
1802 CRYP_SetKey(hcryp, hcryp->Init.KeySize); in CRYP_AES_Decrypt()
1805 __HAL_CRYP_ENABLE(hcryp); in CRYP_AES_Decrypt()
1808 if(CRYP_WaitOnBUSYFlag(hcryp, Timeout) != HAL_OK) in CRYP_AES_Decrypt()
1811 __HAL_CRYP_DISABLE(hcryp); in CRYP_AES_Decrypt()
1814 hcryp->ErrorCode |= HAL_CRYP_ERROR_TIMEOUT; in CRYP_AES_Decrypt()
1815 hcryp->State = HAL_CRYP_STATE_READY; in CRYP_AES_Decrypt()
1818 __HAL_UNLOCK(hcryp); in CRYP_AES_Decrypt()
1822 MODIFY_REG(hcryp->Instance->CR, CRYP_CR_ALGOMODE, hcryp->Init.Algorithm ); in CRYP_AES_Decrypt()
1827 CRYP_SetKey(hcryp, hcryp->Init.KeySize); in CRYP_AES_Decrypt()
1831 if (hcryp->Init.Algorithm != CRYP_AES_ECB) in CRYP_AES_Decrypt()
1834 hcryp->Instance->IV0LR = *(uint32_t*)(hcryp->Init.pInitVect); in CRYP_AES_Decrypt()
1835 hcryp->Instance->IV0RR = *(uint32_t*)(hcryp->Init.pInitVect+1); in CRYP_AES_Decrypt()
1836 hcryp->Instance->IV1LR = *(uint32_t*)(hcryp->Init.pInitVect+2); in CRYP_AES_Decrypt()
1837 hcryp->Instance->IV1RR = *(uint32_t*)(hcryp->Init.pInitVect+3); in CRYP_AES_Decrypt()
1840 hcryp->Phase = CRYP_PHASE_PROCESS; in CRYP_AES_Decrypt()
1843 __HAL_CRYP_ENABLE(hcryp); in CRYP_AES_Decrypt()
1846 outcount = hcryp->CrypOutCount; in CRYP_AES_Decrypt()
1848 while((hcryp->CrypInCount < (hcryp->Size/4U)) && (outcount < (hcryp->Size/4U))) in CRYP_AES_Decrypt()
1851 CRYP_AES_ProcessData(hcryp,Timeout); in CRYP_AES_Decrypt()
1853 outcount = hcryp->CrypOutCount; in CRYP_AES_Decrypt()
1857 __HAL_CRYP_DISABLE(hcryp); in CRYP_AES_Decrypt()
1860 hcryp->State = HAL_CRYP_STATE_READY; in CRYP_AES_Decrypt()
1871 static HAL_StatusTypeDef CRYP_AES_Decrypt_IT(CRYP_HandleTypeDef *hcryp) in CRYP_AES_Decrypt_IT() argument
1876 if (hcryp->Init.Algorithm != CRYP_AES_CTR) in CRYP_AES_Decrypt_IT()
1879 MODIFY_REG(hcryp->Instance->CR, CRYP_CR_ALGOMODE, CRYP_CR_ALGOMODE_AES_KEY ); in CRYP_AES_Decrypt_IT()
1882 CRYP_SetKey(hcryp, hcryp->Init.KeySize); in CRYP_AES_Decrypt_IT()
1885 __HAL_CRYP_ENABLE(hcryp); in CRYP_AES_Decrypt_IT()
1895 hcryp->ErrorCode |= HAL_CRYP_ERROR_TIMEOUT; in CRYP_AES_Decrypt_IT()
1896 hcryp->State = HAL_CRYP_STATE_READY; in CRYP_AES_Decrypt_IT()
1899 __HAL_UNLOCK(hcryp); in CRYP_AES_Decrypt_IT()
1903 while(HAL_IS_BIT_SET(hcryp->Instance->SR, CRYP_FLAG_BUSY)); in CRYP_AES_Decrypt_IT()
1906 MODIFY_REG(hcryp->Instance->CR, CRYP_CR_ALGOMODE, hcryp->Init.Algorithm ); in CRYP_AES_Decrypt_IT()
1911 CRYP_SetKey(hcryp, hcryp->Init.KeySize); in CRYP_AES_Decrypt_IT()
1915 if (hcryp->Init.Algorithm != CRYP_AES_ECB) in CRYP_AES_Decrypt_IT()
1918 hcryp->Instance->IV0LR = *(uint32_t*)(hcryp->Init.pInitVect); in CRYP_AES_Decrypt_IT()
1919 hcryp->Instance->IV0RR = *(uint32_t*)(hcryp->Init.pInitVect+1); in CRYP_AES_Decrypt_IT()
1920 hcryp->Instance->IV1LR = *(uint32_t*)(hcryp->Init.pInitVect+2); in CRYP_AES_Decrypt_IT()
1921 hcryp->Instance->IV1RR = *(uint32_t*)(hcryp->Init.pInitVect+3); in CRYP_AES_Decrypt_IT()
1924 hcryp->Phase = CRYP_PHASE_PROCESS; in CRYP_AES_Decrypt_IT()
1925 if(hcryp->Size != 0U) in CRYP_AES_Decrypt_IT()
1928 __HAL_CRYP_ENABLE_IT(hcryp, CRYP_IT_INI | CRYP_IT_OUTI); in CRYP_AES_Decrypt_IT()
1931 __HAL_CRYP_ENABLE(hcryp); in CRYP_AES_Decrypt_IT()
1936 __HAL_UNLOCK(hcryp); in CRYP_AES_Decrypt_IT()
1939 hcryp->State = HAL_CRYP_STATE_READY; in CRYP_AES_Decrypt_IT()
1950 static HAL_StatusTypeDef CRYP_AES_Decrypt_DMA(CRYP_HandleTypeDef *hcryp) in CRYP_AES_Decrypt_DMA() argument
1955 if (hcryp->Init.Algorithm != CRYP_AES_CTR) in CRYP_AES_Decrypt_DMA()
1958 MODIFY_REG(hcryp->Instance->CR, CRYP_CR_ALGOMODE, CRYP_CR_ALGOMODE_AES_KEY ); in CRYP_AES_Decrypt_DMA()
1961 CRYP_SetKey(hcryp, hcryp->Init.KeySize); in CRYP_AES_Decrypt_DMA()
1964 __HAL_CRYP_ENABLE(hcryp); in CRYP_AES_Decrypt_DMA()
1974 __HAL_CRYP_DISABLE(hcryp); in CRYP_AES_Decrypt_DMA()
1977 hcryp->ErrorCode |= HAL_CRYP_ERROR_TIMEOUT; in CRYP_AES_Decrypt_DMA()
1978 hcryp->State = HAL_CRYP_STATE_READY; in CRYP_AES_Decrypt_DMA()
1981 __HAL_UNLOCK(hcryp); in CRYP_AES_Decrypt_DMA()
1985 while(HAL_IS_BIT_SET(hcryp->Instance->SR, CRYP_FLAG_BUSY)); in CRYP_AES_Decrypt_DMA()
1988 MODIFY_REG(hcryp->Instance->CR, CRYP_CR_ALGOMODE, hcryp->Init.Algorithm ); in CRYP_AES_Decrypt_DMA()
1993 CRYP_SetKey(hcryp, hcryp->Init.KeySize); in CRYP_AES_Decrypt_DMA()
1996 if (hcryp->Init.Algorithm != CRYP_AES_ECB) in CRYP_AES_Decrypt_DMA()
1999 hcryp->Instance->IV0LR = *(uint32_t*)(hcryp->Init.pInitVect); in CRYP_AES_Decrypt_DMA()
2000 hcryp->Instance->IV0RR = *(uint32_t*)(hcryp->Init.pInitVect+1); in CRYP_AES_Decrypt_DMA()
2001 hcryp->Instance->IV1LR = *(uint32_t*)(hcryp->Init.pInitVect+2); in CRYP_AES_Decrypt_DMA()
2002 hcryp->Instance->IV1RR = *(uint32_t*)(hcryp->Init.pInitVect+3); in CRYP_AES_Decrypt_DMA()
2005 hcryp->Phase = CRYP_PHASE_PROCESS; in CRYP_AES_Decrypt_DMA()
2007 if(hcryp->Size != 0U) in CRYP_AES_Decrypt_DMA()
2010 …CRYP_SetDMAConfig(hcryp, (uint32_t)( hcryp->pCrypInBuffPtr), (hcryp->Size/4U), (uint32_t)(hcryp->p… in CRYP_AES_Decrypt_DMA()
2015 __HAL_UNLOCK(hcryp); in CRYP_AES_Decrypt_DMA()
2018 hcryp->State = HAL_CRYP_STATE_READY; in CRYP_AES_Decrypt_DMA()
2033 CRYP_HandleTypeDef* hcryp = (CRYP_HandleTypeDef*)((DMA_HandleTypeDef*)hdma)->Parent; in CRYP_DMAInCplt() local
2037 hcryp->Instance->DMACR &= (uint32_t)(~CRYP_DMACR_DIEN); in CRYP_DMAInCplt()
2042 hcryp->InCpltCallback(hcryp); in CRYP_DMAInCplt()
2045 HAL_CRYP_InCpltCallback(hcryp); in CRYP_DMAInCplt()
2056 CRYP_HandleTypeDef* hcryp = (CRYP_HandleTypeDef*)((DMA_HandleTypeDef*)hdma)->Parent; in CRYP_DMAOutCplt() local
2060 hcryp->Instance->DMACR &= (uint32_t)(~CRYP_DMACR_DOEN); in CRYP_DMAOutCplt()
2063 hcryp->State = HAL_CRYP_STATE_READY; in CRYP_DMAOutCplt()
2066 __HAL_UNLOCK(hcryp); in CRYP_DMAOutCplt()
2069 __HAL_CRYP_DISABLE(hcryp); in CRYP_DMAOutCplt()
2075 hcryp->OutCpltCallback(hcryp); in CRYP_DMAOutCplt()
2078 HAL_CRYP_OutCpltCallback(hcryp); in CRYP_DMAOutCplt()
2089 CRYP_HandleTypeDef* hcryp = (CRYP_HandleTypeDef*)((DMA_HandleTypeDef*)hdma)->Parent; in CRYP_DMAError() local
2092 hcryp->State= HAL_CRYP_STATE_READY; in CRYP_DMAError()
2095 hcryp->ErrorCode |= HAL_CRYP_ERROR_DMA; in CRYP_DMAError()
2100 hcryp->ErrorCallback(hcryp); in CRYP_DMAError()
2103 HAL_CRYP_ErrorCallback(hcryp); in CRYP_DMAError()
2116 static void CRYP_SetDMAConfig(CRYP_HandleTypeDef *hcryp, uint32_t inputaddr, uint16_t Size, uint32_… in CRYP_SetDMAConfig() argument
2119 hcryp->hdmain->XferCpltCallback = CRYP_DMAInCplt; in CRYP_SetDMAConfig()
2122 hcryp->hdmain->XferErrorCallback = CRYP_DMAError; in CRYP_SetDMAConfig()
2125 hcryp->hdmaout->XferCpltCallback = CRYP_DMAOutCplt; in CRYP_SetDMAConfig()
2128 hcryp->hdmaout->XferErrorCallback = CRYP_DMAError; in CRYP_SetDMAConfig()
2131 __HAL_CRYP_ENABLE(hcryp); in CRYP_SetDMAConfig()
2134 if (HAL_DMA_Start_IT(hcryp->hdmain, inputaddr, (uint32_t)&hcryp->Instance->DIN, Size)!=HAL_OK) in CRYP_SetDMAConfig()
2137 hcryp->ErrorCode |= HAL_CRYP_ERROR_DMA; in CRYP_SetDMAConfig()
2142 hcryp->ErrorCallback(hcryp); in CRYP_SetDMAConfig()
2145 HAL_CRYP_ErrorCallback(hcryp); in CRYP_SetDMAConfig()
2150 if (HAL_DMA_Start_IT(hcryp->hdmaout, (uint32_t)&hcryp->Instance->DOUT, outputaddr, Size)!=HAL_OK) in CRYP_SetDMAConfig()
2153 hcryp->ErrorCode |= HAL_CRYP_ERROR_DMA; in CRYP_SetDMAConfig()
2158 hcryp->ErrorCallback(hcryp); in CRYP_SetDMAConfig()
2161 HAL_CRYP_ErrorCallback(hcryp); in CRYP_SetDMAConfig()
2165 hcryp->Instance->DMACR = CRYP_DMACR_DOEN | CRYP_DMACR_DIEN; in CRYP_SetDMAConfig()
2175 static void CRYP_AES_ProcessData(CRYP_HandleTypeDef *hcryp, uint32_t Timeout) in CRYP_AES_ProcessData() argument
2183 incount = hcryp->CrypInCount; in CRYP_AES_ProcessData()
2185 if(((hcryp->Instance->SR & CRYP_FLAG_IFNF ) != 0x0U) && (incount < ((hcryp->Size)/4U))) in CRYP_AES_ProcessData()
2188 hcryp->Instance->DIN = *(uint32_t *)(hcryp->pCrypInBuffPtr + hcryp->CrypInCount ); in CRYP_AES_ProcessData()
2189 hcryp->CrypInCount++; in CRYP_AES_ProcessData()
2190 hcryp->Instance->DIN = *(uint32_t *)(hcryp->pCrypInBuffPtr + hcryp->CrypInCount ); in CRYP_AES_ProcessData()
2191 hcryp->CrypInCount++; in CRYP_AES_ProcessData()
2192 hcryp->Instance->DIN = *(uint32_t *)(hcryp->pCrypInBuffPtr + hcryp->CrypInCount ); in CRYP_AES_ProcessData()
2193 hcryp->CrypInCount++; in CRYP_AES_ProcessData()
2194 hcryp->Instance->DIN = *(uint32_t *)(hcryp->pCrypInBuffPtr + hcryp->CrypInCount ); in CRYP_AES_ProcessData()
2195 hcryp->CrypInCount++; in CRYP_AES_ProcessData()
2199 if(CRYP_WaitOnOFNEFlag(hcryp, Timeout) != HAL_OK) in CRYP_AES_ProcessData()
2202 __HAL_CRYP_DISABLE(hcryp); in CRYP_AES_ProcessData()
2205 hcryp->ErrorCode |= HAL_CRYP_ERROR_TIMEOUT; in CRYP_AES_ProcessData()
2206 hcryp->State = HAL_CRYP_STATE_READY; in CRYP_AES_ProcessData()
2209 __HAL_UNLOCK(hcryp); in CRYP_AES_ProcessData()
2212 hcryp->ErrorCallback(hcryp); in CRYP_AES_ProcessData()
2215 HAL_CRYP_ErrorCallback(hcryp); in CRYP_AES_ProcessData()
2219 outcount = hcryp->CrypOutCount; in CRYP_AES_ProcessData()
2221 if(((hcryp->Instance->SR & CRYP_FLAG_OFNE ) != 0x0U) && (outcount < ((hcryp->Size)/4U))) in CRYP_AES_ProcessData()
2224 temp = hcryp->Instance->DOUT; in CRYP_AES_ProcessData()
2225 *(uint32_t *)(hcryp->pCrypOutBuffPtr + hcryp->CrypOutCount) = temp; in CRYP_AES_ProcessData()
2226 hcryp->CrypOutCount++; in CRYP_AES_ProcessData()
2227 temp = hcryp->Instance->DOUT; in CRYP_AES_ProcessData()
2228 *(uint32_t *)(hcryp->pCrypOutBuffPtr + hcryp->CrypOutCount) = temp; in CRYP_AES_ProcessData()
2229 hcryp->CrypOutCount++; in CRYP_AES_ProcessData()
2230 temp = hcryp->Instance->DOUT; in CRYP_AES_ProcessData()
2231 *(uint32_t *)(hcryp->pCrypOutBuffPtr + hcryp->CrypOutCount) = temp; in CRYP_AES_ProcessData()
2232 hcryp->CrypOutCount++; in CRYP_AES_ProcessData()
2233 temp = hcryp->Instance->DOUT; in CRYP_AES_ProcessData()
2234 *(uint32_t *)(hcryp->pCrypOutBuffPtr + hcryp->CrypOutCount) = temp; in CRYP_AES_ProcessData()
2235 hcryp->CrypOutCount++; in CRYP_AES_ProcessData()
2247 static void CRYP_AES_IT(CRYP_HandleTypeDef *hcryp) in CRYP_AES_IT() argument
2253 if(hcryp->State == HAL_CRYP_STATE_BUSY) in CRYP_AES_IT()
2256 incount = hcryp->CrypInCount; in CRYP_AES_IT()
2258 if(((hcryp->Instance->SR & CRYP_FLAG_IFNF ) != 0x0U) && (incount < (hcryp->Size/4U))) in CRYP_AES_IT()
2261 hcryp->Instance->DIN = *(uint32_t *)(hcryp->pCrypInBuffPtr + hcryp->CrypInCount ); in CRYP_AES_IT()
2262 hcryp->CrypInCount++; in CRYP_AES_IT()
2263 hcryp->Instance->DIN = *(uint32_t *)(hcryp->pCrypInBuffPtr + hcryp->CrypInCount ); in CRYP_AES_IT()
2264 hcryp->CrypInCount++; in CRYP_AES_IT()
2265 hcryp->Instance->DIN = *(uint32_t *)(hcryp->pCrypInBuffPtr + hcryp->CrypInCount ); in CRYP_AES_IT()
2266 hcryp->CrypInCount++; in CRYP_AES_IT()
2267 hcryp->Instance->DIN = *(uint32_t *)(hcryp->pCrypInBuffPtr + hcryp->CrypInCount ); in CRYP_AES_IT()
2268 hcryp->CrypInCount++; in CRYP_AES_IT()
2269 if(hcryp->CrypInCount == (hcryp->Size/4U)) in CRYP_AES_IT()
2272 __HAL_CRYP_DISABLE_IT(hcryp, CRYP_IT_INI); in CRYP_AES_IT()
2277 hcryp->InCpltCallback(hcryp); in CRYP_AES_IT()
2280 HAL_CRYP_InCpltCallback(hcryp); in CRYP_AES_IT()
2286 outcount = hcryp->CrypOutCount; in CRYP_AES_IT()
2288 if(((hcryp->Instance->SR & CRYP_FLAG_OFNE ) != 0x0U) && (outcount < (hcryp->Size/4U))) in CRYP_AES_IT()
2291 temp = hcryp->Instance->DOUT; in CRYP_AES_IT()
2292 *(uint32_t *)(hcryp->pCrypOutBuffPtr + hcryp->CrypOutCount) = temp; in CRYP_AES_IT()
2293 hcryp->CrypOutCount++; in CRYP_AES_IT()
2294 temp = hcryp->Instance->DOUT; in CRYP_AES_IT()
2295 *(uint32_t *)(hcryp->pCrypOutBuffPtr + hcryp->CrypOutCount) = temp; in CRYP_AES_IT()
2296 hcryp->CrypOutCount++; in CRYP_AES_IT()
2297 temp = hcryp->Instance->DOUT; in CRYP_AES_IT()
2298 *(uint32_t *)(hcryp->pCrypOutBuffPtr + hcryp->CrypOutCount) = temp; in CRYP_AES_IT()
2299 hcryp->CrypOutCount++; in CRYP_AES_IT()
2300 temp = hcryp->Instance->DOUT; in CRYP_AES_IT()
2301 *(uint32_t *)(hcryp->pCrypOutBuffPtr + hcryp->CrypOutCount) = temp; in CRYP_AES_IT()
2302 hcryp->CrypOutCount++; in CRYP_AES_IT()
2303 if(hcryp->CrypOutCount == (hcryp->Size/4U)) in CRYP_AES_IT()
2306 __HAL_CRYP_DISABLE_IT(hcryp, CRYP_IT_OUTI); in CRYP_AES_IT()
2309 hcryp->State = HAL_CRYP_STATE_READY; in CRYP_AES_IT()
2312 __HAL_CRYP_DISABLE(hcryp); in CRYP_AES_IT()
2315 __HAL_UNLOCK(hcryp); in CRYP_AES_IT()
2320 hcryp->OutCpltCallback(hcryp); in CRYP_AES_IT()
2323 HAL_CRYP_OutCpltCallback(hcryp); in CRYP_AES_IT()
2331 __HAL_UNLOCK(hcryp); in CRYP_AES_IT()
2333 hcryp->ErrorCode |= HAL_CRYP_ERROR_BUSY; in CRYP_AES_IT()
2336 hcryp->ErrorCallback(hcryp); in CRYP_AES_IT()
2339 HAL_CRYP_ErrorCallback(hcryp); in CRYP_AES_IT()
2351 static void CRYP_SetKey( CRYP_HandleTypeDef *hcryp, uint32_t KeySize) in CRYP_SetKey() argument
2356 hcryp->Instance->K0LR = *(uint32_t*)(hcryp->Init.pKey); in CRYP_SetKey()
2357 hcryp->Instance->K0RR = *(uint32_t*)(hcryp->Init.pKey+1); in CRYP_SetKey()
2358 hcryp->Instance->K1LR = *(uint32_t*)(hcryp->Init.pKey+2); in CRYP_SetKey()
2359 hcryp->Instance->K1RR = *(uint32_t*)(hcryp->Init.pKey+3); in CRYP_SetKey()
2360 hcryp->Instance->K2LR = *(uint32_t*)(hcryp->Init.pKey+4); in CRYP_SetKey()
2361 hcryp->Instance->K2RR = *(uint32_t*)(hcryp->Init.pKey+5); in CRYP_SetKey()
2362 hcryp->Instance->K3LR = *(uint32_t*)(hcryp->Init.pKey+6); in CRYP_SetKey()
2363 hcryp->Instance->K3RR = *(uint32_t*)(hcryp->Init.pKey+7); in CRYP_SetKey()
2366 hcryp->Instance->K1LR = *(uint32_t*)(hcryp->Init.pKey); in CRYP_SetKey()
2367 hcryp->Instance->K1RR = *(uint32_t*)(hcryp->Init.pKey+1); in CRYP_SetKey()
2368 hcryp->Instance->K2LR = *(uint32_t*)(hcryp->Init.pKey+2); in CRYP_SetKey()
2369 hcryp->Instance->K2RR = *(uint32_t*)(hcryp->Init.pKey+3); in CRYP_SetKey()
2370 hcryp->Instance->K3LR = *(uint32_t*)(hcryp->Init.pKey+4); in CRYP_SetKey()
2371 hcryp->Instance->K3RR = *(uint32_t*)(hcryp->Init.pKey+5); in CRYP_SetKey()
2374 hcryp->Instance->K2LR = *(uint32_t*)(hcryp->Init.pKey); in CRYP_SetKey()
2375 hcryp->Instance->K2RR = *(uint32_t*)(hcryp->Init.pKey+1); in CRYP_SetKey()
2376 hcryp->Instance->K3LR = *(uint32_t*)(hcryp->Init.pKey+2); in CRYP_SetKey()
2377 hcryp->Instance->K3RR = *(uint32_t*)(hcryp->Init.pKey+3); in CRYP_SetKey()
2392 static HAL_StatusTypeDef CRYP_WaitOnBUSYFlag(const CRYP_HandleTypeDef *hcryp, uint32_t Timeout) in CRYP_WaitOnBUSYFlag() argument
2399 while(HAL_IS_BIT_SET(hcryp->Instance->SR, CRYP_FLAG_BUSY)) in CRYP_WaitOnBUSYFlag()
2421 static HAL_StatusTypeDef CRYP_WaitOnOFNEFlag(const CRYP_HandleTypeDef *hcryp, uint32_t Timeout) in CRYP_WaitOnOFNEFlag() argument
2428 while(HAL_IS_BIT_CLR(hcryp->Instance->SR, CRYP_FLAG_OFNE)) in CRYP_WaitOnOFNEFlag()