Lines Matching refs:hrng
155 HAL_StatusTypeDef HAL_RNG_Init(RNG_HandleTypeDef *hrng) in HAL_RNG_Init() argument
158 if (hrng == NULL) in HAL_RNG_Init()
163 assert_param(IS_RNG_ALL_INSTANCE(hrng->Instance)); in HAL_RNG_Init()
164 assert_param(IS_RNG_CED(hrng->Init.ClockErrorDetection)); in HAL_RNG_Init()
167 if (hrng->State == HAL_RNG_STATE_RESET) in HAL_RNG_Init()
170 hrng->Lock = HAL_UNLOCKED; in HAL_RNG_Init()
172 hrng->ReadyDataCallback = HAL_RNG_ReadyDataCallback; /* Legacy weak ReadyDataCallback */ in HAL_RNG_Init()
173 hrng->ErrorCallback = HAL_RNG_ErrorCallback; /* Legacy weak ErrorCallback */ in HAL_RNG_Init()
175 if (hrng->MspInitCallback == NULL) in HAL_RNG_Init()
177 hrng->MspInitCallback = HAL_RNG_MspInit; /* Legacy weak MspInit */ in HAL_RNG_Init()
181 hrng->MspInitCallback(hrng); in HAL_RNG_Init()
184 if (hrng->State == HAL_RNG_STATE_RESET) in HAL_RNG_Init()
187 hrng->Lock = HAL_UNLOCKED; in HAL_RNG_Init()
190 HAL_RNG_MspInit(hrng); in HAL_RNG_Init()
195 hrng->State = HAL_RNG_STATE_BUSY; in HAL_RNG_Init()
198 MODIFY_REG(hrng->Instance->CR, RNG_CR_CED, hrng->Init.ClockErrorDetection); in HAL_RNG_Init()
201 __HAL_RNG_ENABLE(hrng); in HAL_RNG_Init()
204 hrng->State = HAL_RNG_STATE_READY; in HAL_RNG_Init()
207 hrng->ErrorCode = HAL_RNG_ERROR_NONE; in HAL_RNG_Init()
219 HAL_StatusTypeDef HAL_RNG_DeInit(RNG_HandleTypeDef *hrng) in HAL_RNG_DeInit() argument
222 if (hrng == NULL) in HAL_RNG_DeInit()
228 CLEAR_BIT(hrng->Instance->CR, RNG_CR_CED); in HAL_RNG_DeInit()
230 CLEAR_BIT(hrng->Instance->CR, RNG_CR_IE | RNG_CR_RNGEN); in HAL_RNG_DeInit()
233 CLEAR_BIT(hrng->Instance->SR, RNG_SR_CEIS | RNG_SR_SEIS); in HAL_RNG_DeInit()
236 if (hrng->MspDeInitCallback == NULL) in HAL_RNG_DeInit()
238 hrng->MspDeInitCallback = HAL_RNG_MspDeInit; /* Legacy weak MspDeInit */ in HAL_RNG_DeInit()
242 hrng->MspDeInitCallback(hrng); in HAL_RNG_DeInit()
245 HAL_RNG_MspDeInit(hrng); in HAL_RNG_DeInit()
249 hrng->State = HAL_RNG_STATE_RESET; in HAL_RNG_DeInit()
252 hrng->ErrorCode = HAL_RNG_ERROR_NONE; in HAL_RNG_DeInit()
255 __HAL_UNLOCK(hrng); in HAL_RNG_DeInit()
267 __weak void HAL_RNG_MspInit(RNG_HandleTypeDef *hrng) in HAL_RNG_MspInit() argument
270 UNUSED(hrng); in HAL_RNG_MspInit()
282 __weak void HAL_RNG_MspDeInit(RNG_HandleTypeDef *hrng) in HAL_RNG_MspDeInit() argument
285 UNUSED(hrng); in HAL_RNG_MspDeInit()
304 HAL_StatusTypeDef HAL_RNG_RegisterCallback(RNG_HandleTypeDef *hrng, HAL_RNG_CallbackIDTypeDef Callb… in HAL_RNG_RegisterCallback() argument
312 hrng->ErrorCode = HAL_RNG_ERROR_INVALID_CALLBACK; in HAL_RNG_RegisterCallback()
316 __HAL_LOCK(hrng); in HAL_RNG_RegisterCallback()
318 if (HAL_RNG_STATE_READY == hrng->State) in HAL_RNG_RegisterCallback()
323 hrng->ErrorCallback = pCallback; in HAL_RNG_RegisterCallback()
327 hrng->MspInitCallback = pCallback; in HAL_RNG_RegisterCallback()
331 hrng->MspDeInitCallback = pCallback; in HAL_RNG_RegisterCallback()
336 hrng->ErrorCode = HAL_RNG_ERROR_INVALID_CALLBACK; in HAL_RNG_RegisterCallback()
342 else if (HAL_RNG_STATE_RESET == hrng->State) in HAL_RNG_RegisterCallback()
347 hrng->MspInitCallback = pCallback; in HAL_RNG_RegisterCallback()
351 hrng->MspDeInitCallback = pCallback; in HAL_RNG_RegisterCallback()
356 hrng->ErrorCode = HAL_RNG_ERROR_INVALID_CALLBACK; in HAL_RNG_RegisterCallback()
365 hrng->ErrorCode = HAL_RNG_ERROR_INVALID_CALLBACK; in HAL_RNG_RegisterCallback()
371 __HAL_UNLOCK(hrng); in HAL_RNG_RegisterCallback()
386 HAL_StatusTypeDef HAL_RNG_UnRegisterCallback(RNG_HandleTypeDef *hrng, HAL_RNG_CallbackIDTypeDef Cal… in HAL_RNG_UnRegisterCallback() argument
391 __HAL_LOCK(hrng); in HAL_RNG_UnRegisterCallback()
393 if (HAL_RNG_STATE_READY == hrng->State) in HAL_RNG_UnRegisterCallback()
398 hrng->ErrorCallback = HAL_RNG_ErrorCallback; /* Legacy weak ErrorCallback */ in HAL_RNG_UnRegisterCallback()
402 hrng->MspInitCallback = HAL_RNG_MspInit; /* Legacy weak MspInit */ in HAL_RNG_UnRegisterCallback()
406 hrng->MspDeInitCallback = HAL_RNG_MspDeInit; /* Legacy weak MspDeInit */ in HAL_RNG_UnRegisterCallback()
411 hrng->ErrorCode = HAL_RNG_ERROR_INVALID_CALLBACK; in HAL_RNG_UnRegisterCallback()
417 else if (HAL_RNG_STATE_RESET == hrng->State) in HAL_RNG_UnRegisterCallback()
422 hrng->MspInitCallback = HAL_RNG_MspInit; /* Legacy weak MspInit */ in HAL_RNG_UnRegisterCallback()
426 hrng->MspDeInitCallback = HAL_RNG_MspDeInit; /* Legacy weak MspInit */ in HAL_RNG_UnRegisterCallback()
431 hrng->ErrorCode = HAL_RNG_ERROR_INVALID_CALLBACK; in HAL_RNG_UnRegisterCallback()
440 hrng->ErrorCode = HAL_RNG_ERROR_INVALID_CALLBACK; in HAL_RNG_UnRegisterCallback()
446 __HAL_UNLOCK(hrng); in HAL_RNG_UnRegisterCallback()
457 HAL_StatusTypeDef HAL_RNG_RegisterReadyDataCallback(RNG_HandleTypeDef *hrng, pRNG_ReadyDataCallback… in HAL_RNG_RegisterReadyDataCallback() argument
464 hrng->ErrorCode = HAL_RNG_ERROR_INVALID_CALLBACK; in HAL_RNG_RegisterReadyDataCallback()
468 __HAL_LOCK(hrng); in HAL_RNG_RegisterReadyDataCallback()
470 if (HAL_RNG_STATE_READY == hrng->State) in HAL_RNG_RegisterReadyDataCallback()
472 hrng->ReadyDataCallback = pCallback; in HAL_RNG_RegisterReadyDataCallback()
477 hrng->ErrorCode = HAL_RNG_ERROR_INVALID_CALLBACK; in HAL_RNG_RegisterReadyDataCallback()
483 __HAL_UNLOCK(hrng); in HAL_RNG_RegisterReadyDataCallback()
493 HAL_StatusTypeDef HAL_RNG_UnRegisterReadyDataCallback(RNG_HandleTypeDef *hrng) in HAL_RNG_UnRegisterReadyDataCallback() argument
498 __HAL_LOCK(hrng); in HAL_RNG_UnRegisterReadyDataCallback()
500 if (HAL_RNG_STATE_READY == hrng->State) in HAL_RNG_UnRegisterReadyDataCallback()
502 hrng->ReadyDataCallback = HAL_RNG_ReadyDataCallback; /* Legacy weak ReadyDataCallback */ in HAL_RNG_UnRegisterReadyDataCallback()
507 hrng->ErrorCode = HAL_RNG_ERROR_INVALID_CALLBACK; in HAL_RNG_UnRegisterReadyDataCallback()
513 __HAL_UNLOCK(hrng); in HAL_RNG_UnRegisterReadyDataCallback()
557 HAL_StatusTypeDef HAL_RNG_GenerateRandomNumber(RNG_HandleTypeDef *hrng, uint32_t *random32bit) in HAL_RNG_GenerateRandomNumber() argument
563 __HAL_LOCK(hrng); in HAL_RNG_GenerateRandomNumber()
566 if (hrng->State == HAL_RNG_STATE_READY) in HAL_RNG_GenerateRandomNumber()
569 hrng->State = HAL_RNG_STATE_BUSY; in HAL_RNG_GenerateRandomNumber()
575 while (__HAL_RNG_GET_FLAG(hrng, RNG_FLAG_DRDY) == RESET) in HAL_RNG_GenerateRandomNumber()
580 if (__HAL_RNG_GET_FLAG(hrng, RNG_FLAG_DRDY) == RESET) in HAL_RNG_GenerateRandomNumber()
582 hrng->State = HAL_RNG_STATE_READY; in HAL_RNG_GenerateRandomNumber()
583 hrng->ErrorCode = HAL_RNG_ERROR_TIMEOUT; in HAL_RNG_GenerateRandomNumber()
585 __HAL_UNLOCK(hrng); in HAL_RNG_GenerateRandomNumber()
592 hrng->RandomNumber = hrng->Instance->DR; in HAL_RNG_GenerateRandomNumber()
593 *random32bit = hrng->RandomNumber; in HAL_RNG_GenerateRandomNumber()
595 hrng->State = HAL_RNG_STATE_READY; in HAL_RNG_GenerateRandomNumber()
599 hrng->ErrorCode = HAL_RNG_ERROR_BUSY; in HAL_RNG_GenerateRandomNumber()
604 __HAL_UNLOCK(hrng); in HAL_RNG_GenerateRandomNumber()
615 HAL_StatusTypeDef HAL_RNG_GenerateRandomNumber_IT(RNG_HandleTypeDef *hrng) in HAL_RNG_GenerateRandomNumber_IT() argument
620 __HAL_LOCK(hrng); in HAL_RNG_GenerateRandomNumber_IT()
623 if (hrng->State == HAL_RNG_STATE_READY) in HAL_RNG_GenerateRandomNumber_IT()
626 hrng->State = HAL_RNG_STATE_BUSY; in HAL_RNG_GenerateRandomNumber_IT()
629 __HAL_RNG_ENABLE_IT(hrng); in HAL_RNG_GenerateRandomNumber_IT()
634 __HAL_UNLOCK(hrng); in HAL_RNG_GenerateRandomNumber_IT()
636 hrng->ErrorCode = HAL_RNG_ERROR_BUSY; in HAL_RNG_GenerateRandomNumber_IT()
664 void HAL_RNG_IRQHandler(RNG_HandleTypeDef *hrng) in HAL_RNG_IRQHandler() argument
669 if (__HAL_RNG_GET_IT(hrng, RNG_IT_CEI) != RESET) in HAL_RNG_IRQHandler()
672 hrng->ErrorCode = HAL_RNG_ERROR_CLOCK; in HAL_RNG_IRQHandler()
675 else if (__HAL_RNG_GET_IT(hrng, RNG_IT_SEI) != RESET) in HAL_RNG_IRQHandler()
678 hrng->ErrorCode = HAL_RNG_ERROR_SEED; in HAL_RNG_IRQHandler()
689 hrng->State = HAL_RNG_STATE_ERROR; in HAL_RNG_IRQHandler()
693 hrng->ErrorCallback(hrng); in HAL_RNG_IRQHandler()
696 HAL_RNG_ErrorCallback(hrng); in HAL_RNG_IRQHandler()
700 __HAL_RNG_CLEAR_IT(hrng, RNG_IT_CEI | RNG_IT_SEI); in HAL_RNG_IRQHandler()
706 if (__HAL_RNG_GET_IT(hrng, RNG_IT_DRDY) != RESET) in HAL_RNG_IRQHandler()
709 __HAL_RNG_DISABLE_IT(hrng); in HAL_RNG_IRQHandler()
712 hrng->RandomNumber = hrng->Instance->DR; in HAL_RNG_IRQHandler()
714 if (hrng->State != HAL_RNG_STATE_ERROR) in HAL_RNG_IRQHandler()
717 hrng->State = HAL_RNG_STATE_READY; in HAL_RNG_IRQHandler()
719 __HAL_UNLOCK(hrng); in HAL_RNG_IRQHandler()
723 hrng->ReadyDataCallback(hrng, hrng->RandomNumber); in HAL_RNG_IRQHandler()
726 HAL_RNG_ReadyDataCallback(hrng, hrng->RandomNumber); in HAL_RNG_IRQHandler()
738 uint32_t HAL_RNG_ReadLastRandomNumber(RNG_HandleTypeDef *hrng) in HAL_RNG_ReadLastRandomNumber() argument
740 return (hrng->RandomNumber); in HAL_RNG_ReadLastRandomNumber()
755 __weak void HAL_RNG_ReadyDataCallback(RNG_HandleTypeDef *hrng, uint32_t random32bit) in HAL_RNG_ReadyDataCallback() argument
758 UNUSED(hrng); in HAL_RNG_ReadyDataCallback()
771 __weak void HAL_RNG_ErrorCallback(RNG_HandleTypeDef *hrng) in HAL_RNG_ErrorCallback() argument
774 UNUSED(hrng); in HAL_RNG_ErrorCallback()
805 HAL_RNG_StateTypeDef HAL_RNG_GetState(RNG_HandleTypeDef *hrng) in HAL_RNG_GetState() argument
807 return hrng->State; in HAL_RNG_GetState()
815 uint32_t HAL_RNG_GetError(RNG_HandleTypeDef *hrng) in HAL_RNG_GetError() argument
818 return hrng->ErrorCode; in HAL_RNG_GetError()