Lines Matching refs:hfmac

323 static HAL_StatusTypeDef FMAC_Reset(FMAC_HandleTypeDef *hfmac);
324 static void FMAC_ResetDataPointers(FMAC_HandleTypeDef *hfmac);
325 static void FMAC_ResetOutputStateAndDataPointers(FMAC_HandleTypeDef *hfmac);
326 static void FMAC_ResetInputStateAndDataPointers(FMAC_HandleTypeDef *hfmac);
327 static HAL_StatusTypeDef FMAC_FilterConfig(FMAC_HandleTypeDef *hfmac, FMAC_FilterConfigTypeDef *pCo…
329 static HAL_StatusTypeDef FMAC_FilterPreload(FMAC_HandleTypeDef *hfmac, int16_t *pInput, uint8_t Inp…
331 static void FMAC_WritePreloadDataIncrementPtr(FMAC_HandleTypeDef *hfmac, int16_t **ppData, uint8_t …
332 static HAL_StatusTypeDef FMAC_WaitOnStartUntilTimeout(FMAC_HandleTypeDef *hfmac, uint32_t Tickstart…
333 static HAL_StatusTypeDef FMAC_AppendFilterDataUpdateState(FMAC_HandleTypeDef *hfmac, int16_t *pInpu…
335 static HAL_StatusTypeDef FMAC_ConfigFilterOutputBufferUpdateState(FMAC_HandleTypeDef *hfmac, int16_…
337 static void FMAC_WriteDataIncrementPtr(FMAC_HandleTypeDef *hfmac, uint16_t MaxSizeToWrite);
338 static void FMAC_ReadDataIncrementPtr(FMAC_HandleTypeDef *hfmac, uint16_t MaxSizeToRead);
378 HAL_StatusTypeDef HAL_FMAC_Init(FMAC_HandleTypeDef *hfmac) in HAL_FMAC_Init() argument
383 if (hfmac == NULL) in HAL_FMAC_Init()
389 assert_param(IS_FMAC_ALL_INSTANCE(hfmac->Instance)); in HAL_FMAC_Init()
391 if (hfmac->State == HAL_FMAC_STATE_RESET) in HAL_FMAC_Init()
394 hfmac->Lock = HAL_UNLOCKED; in HAL_FMAC_Init()
398 hfmac->ErrorCallback = HAL_FMAC_ErrorCallback; in HAL_FMAC_Init()
399 hfmac->HalfGetDataCallback = HAL_FMAC_HalfGetDataCallback; in HAL_FMAC_Init()
400 hfmac->GetDataCallback = HAL_FMAC_GetDataCallback; in HAL_FMAC_Init()
401 hfmac->HalfOutputDataReadyCallback = HAL_FMAC_HalfOutputDataReadyCallback; in HAL_FMAC_Init()
402 hfmac->OutputDataReadyCallback = HAL_FMAC_OutputDataReadyCallback; in HAL_FMAC_Init()
403 hfmac->FilterConfigCallback = HAL_FMAC_FilterConfigCallback; in HAL_FMAC_Init()
404 hfmac->FilterPreloadCallback = HAL_FMAC_FilterPreloadCallback; in HAL_FMAC_Init()
406 if (hfmac->MspInitCallback == NULL) in HAL_FMAC_Init()
408 hfmac->MspInitCallback = HAL_FMAC_MspInit; in HAL_FMAC_Init()
412 hfmac->MspInitCallback(hfmac); in HAL_FMAC_Init()
415 HAL_FMAC_MspInit(hfmac); in HAL_FMAC_Init()
420 hfmac->FilterParam = 0U; in HAL_FMAC_Init()
421 FMAC_ResetDataPointers(hfmac); in HAL_FMAC_Init()
424 if (FMAC_Reset(hfmac) == HAL_ERROR) in HAL_FMAC_Init()
427 hfmac->ErrorCode |= HAL_FMAC_ERROR_RESET; in HAL_FMAC_Init()
428 hfmac->State = HAL_FMAC_STATE_TIMEOUT; in HAL_FMAC_Init()
435 hfmac->ErrorCode = HAL_FMAC_ERROR_NONE; in HAL_FMAC_Init()
436 hfmac->State = HAL_FMAC_STATE_READY; in HAL_FMAC_Init()
441 __HAL_UNLOCK(hfmac); in HAL_FMAC_Init()
451 HAL_StatusTypeDef HAL_FMAC_DeInit(FMAC_HandleTypeDef *hfmac) in HAL_FMAC_DeInit() argument
454 if (hfmac == NULL) in HAL_FMAC_DeInit()
460 assert_param(IS_FMAC_ALL_INSTANCE(hfmac->Instance)); in HAL_FMAC_DeInit()
463 hfmac->State = HAL_FMAC_STATE_BUSY; in HAL_FMAC_DeInit()
466 hfmac->ErrorCode = HAL_FMAC_ERROR_NONE; in HAL_FMAC_DeInit()
469 hfmac->FilterParam = 0U; in HAL_FMAC_DeInit()
470 FMAC_ResetDataPointers(hfmac); in HAL_FMAC_DeInit()
473 if (hfmac->MspDeInitCallback == NULL) in HAL_FMAC_DeInit()
475 hfmac->MspDeInitCallback = HAL_FMAC_MspDeInit; in HAL_FMAC_DeInit()
478 hfmac->MspDeInitCallback(hfmac); in HAL_FMAC_DeInit()
481 HAL_FMAC_MspDeInit(hfmac); in HAL_FMAC_DeInit()
485 hfmac->State = HAL_FMAC_STATE_RESET; in HAL_FMAC_DeInit()
488 __HAL_UNLOCK(hfmac); in HAL_FMAC_DeInit()
498 __weak void HAL_FMAC_MspInit(FMAC_HandleTypeDef *hfmac) in HAL_FMAC_MspInit() argument
501 UNUSED(hfmac); in HAL_FMAC_MspInit()
513 __weak void HAL_FMAC_MspDeInit(FMAC_HandleTypeDef *hfmac) in HAL_FMAC_MspDeInit() argument
516 UNUSED(hfmac); in HAL_FMAC_MspDeInit()
545 HAL_StatusTypeDef HAL_FMAC_RegisterCallback(FMAC_HandleTypeDef *hfmac, HAL_FMAC_CallbackIDTypeDef C… in HAL_FMAC_RegisterCallback() argument
551 if (hfmac == NULL) in HAL_FMAC_RegisterCallback()
559 hfmac->ErrorCode |= HAL_FMAC_ERROR_INVALID_CALLBACK; in HAL_FMAC_RegisterCallback()
564 if (hfmac->State == HAL_FMAC_STATE_READY) in HAL_FMAC_RegisterCallback()
569 hfmac->ErrorCallback = pCallback; in HAL_FMAC_RegisterCallback()
573 hfmac->HalfGetDataCallback = pCallback; in HAL_FMAC_RegisterCallback()
577 hfmac->GetDataCallback = pCallback; in HAL_FMAC_RegisterCallback()
581 hfmac->HalfOutputDataReadyCallback = pCallback; in HAL_FMAC_RegisterCallback()
585 hfmac->OutputDataReadyCallback = pCallback; in HAL_FMAC_RegisterCallback()
589 hfmac->FilterConfigCallback = pCallback; in HAL_FMAC_RegisterCallback()
593 hfmac->FilterPreloadCallback = pCallback; in HAL_FMAC_RegisterCallback()
597 hfmac->MspInitCallback = pCallback; in HAL_FMAC_RegisterCallback()
601 hfmac->MspDeInitCallback = pCallback; in HAL_FMAC_RegisterCallback()
606 hfmac->ErrorCode |= HAL_FMAC_ERROR_INVALID_CALLBACK; in HAL_FMAC_RegisterCallback()
613 else if (hfmac->State == HAL_FMAC_STATE_RESET) in HAL_FMAC_RegisterCallback()
618 hfmac->MspInitCallback = pCallback; in HAL_FMAC_RegisterCallback()
622 hfmac->MspDeInitCallback = pCallback; in HAL_FMAC_RegisterCallback()
627 hfmac->ErrorCode |= HAL_FMAC_ERROR_INVALID_CALLBACK; in HAL_FMAC_RegisterCallback()
637 hfmac->ErrorCode |= HAL_FMAC_ERROR_INVALID_CALLBACK; in HAL_FMAC_RegisterCallback()
666 HAL_StatusTypeDef HAL_FMAC_UnRegisterCallback(FMAC_HandleTypeDef *hfmac, HAL_FMAC_CallbackIDTypeDef… in HAL_FMAC_UnRegisterCallback() argument
671 if (hfmac == NULL) in HAL_FMAC_UnRegisterCallback()
676 if (hfmac->State == HAL_FMAC_STATE_READY) in HAL_FMAC_UnRegisterCallback()
681hfmac->ErrorCallback = HAL_FMAC_ErrorCallback; /* Legacy weak ErrorCal… in HAL_FMAC_UnRegisterCallback()
685hfmac->HalfGetDataCallback = HAL_FMAC_HalfGetDataCallback; /* Legacy weak HalfGetD… in HAL_FMAC_UnRegisterCallback()
689hfmac->GetDataCallback = HAL_FMAC_GetDataCallback; /* Legacy weak GetDataC… in HAL_FMAC_UnRegisterCallback()
693 hfmac->HalfOutputDataReadyCallback = HAL_FMAC_HalfOutputDataReadyCallback; /* Legacy weak in HAL_FMAC_UnRegisterCallback()
698 hfmac->OutputDataReadyCallback = HAL_FMAC_OutputDataReadyCallback; /* Legacy weak in HAL_FMAC_UnRegisterCallback()
703 hfmac->FilterConfigCallback = HAL_FMAC_FilterConfigCallback; /* Legacy weak in HAL_FMAC_UnRegisterCallback()
708hfmac->FilterPreloadCallback = HAL_FMAC_FilterPreloadCallback; /* Legacy weak FilterPr… in HAL_FMAC_UnRegisterCallback()
712hfmac->MspInitCallback = HAL_FMAC_MspInit; /* Legacy weak MspInitC… in HAL_FMAC_UnRegisterCallback()
716hfmac->MspDeInitCallback = HAL_FMAC_MspDeInit; /* Legacy weak MspDeIni… in HAL_FMAC_UnRegisterCallback()
721 hfmac->ErrorCode |= HAL_FMAC_ERROR_INVALID_CALLBACK; in HAL_FMAC_UnRegisterCallback()
728 else if (hfmac->State == HAL_FMAC_STATE_RESET) in HAL_FMAC_UnRegisterCallback()
733 hfmac->MspInitCallback = HAL_FMAC_MspInit; in HAL_FMAC_UnRegisterCallback()
737 hfmac->MspDeInitCallback = HAL_FMAC_MspDeInit; in HAL_FMAC_UnRegisterCallback()
742 hfmac->ErrorCode |= HAL_FMAC_ERROR_INVALID_CALLBACK; in HAL_FMAC_UnRegisterCallback()
752 hfmac->ErrorCode |= HAL_FMAC_ERROR_INVALID_CALLBACK; in HAL_FMAC_UnRegisterCallback()
796 HAL_StatusTypeDef HAL_FMAC_FilterConfig(FMAC_HandleTypeDef *hfmac, FMAC_FilterConfigTypeDef *pConfi… in HAL_FMAC_FilterConfig() argument
798 return (FMAC_FilterConfig(hfmac, pConfig, PRELOAD_ACCESS_POLLING)); in HAL_FMAC_FilterConfig()
812 HAL_StatusTypeDef HAL_FMAC_FilterConfig_DMA(FMAC_HandleTypeDef *hfmac, FMAC_FilterConfigTypeDef *pC… in HAL_FMAC_FilterConfig_DMA() argument
814 return (FMAC_FilterConfig(hfmac, pConfig, PRELOAD_ACCESS_DMA)); in HAL_FMAC_FilterConfig_DMA()
836 HAL_StatusTypeDef HAL_FMAC_FilterPreload(FMAC_HandleTypeDef *hfmac, int16_t *pInput, uint8_t InputS… in HAL_FMAC_FilterPreload() argument
839 …return (FMAC_FilterPreload(hfmac, pInput, InputSize, pOutput, OutputSize, PRELOAD_ACCESS_POLLING)); in HAL_FMAC_FilterPreload()
861 HAL_StatusTypeDef HAL_FMAC_FilterPreload_DMA(FMAC_HandleTypeDef *hfmac, int16_t *pInput, uint8_t In… in HAL_FMAC_FilterPreload_DMA() argument
864 return (FMAC_FilterPreload(hfmac, pInput, InputSize, pOutput, OutputSize, PRELOAD_ACCESS_DMA)); in HAL_FMAC_FilterPreload_DMA()
879 HAL_StatusTypeDef HAL_FMAC_FilterStart(FMAC_HandleTypeDef *hfmac, int16_t *pOutput, uint16_t *pOutp… in HAL_FMAC_FilterStart() argument
885 if (FMAC_GET_START_BIT(hfmac) != 0U) in HAL_FMAC_FilterStart()
891 if (hfmac->FilterParam == 0U) in HAL_FMAC_FilterStart()
897 if (hfmac->State == HAL_FMAC_STATE_READY) in HAL_FMAC_FilterStart()
900 hfmac->State = HAL_FMAC_STATE_BUSY; in HAL_FMAC_FilterStart()
903 if (hfmac->InputAccess == FMAC_BUFFER_ACCESS_DMA) in HAL_FMAC_FilterStart()
907 else if (hfmac->InputAccess == FMAC_BUFFER_ACCESS_IT) in HAL_FMAC_FilterStart()
917 if (hfmac->OutputAccess == FMAC_BUFFER_ACCESS_DMA) in HAL_FMAC_FilterStart()
921 else if (hfmac->OutputAccess == FMAC_BUFFER_ACCESS_IT) in HAL_FMAC_FilterStart()
931 MODIFY_REG(hfmac->Instance->CR, \ in HAL_FMAC_FilterStart()
936 status = FMAC_ConfigFilterOutputBufferUpdateState(hfmac, pOutput, pOutputSize); in HAL_FMAC_FilterStart()
941 WRITE_REG(hfmac->Instance->PARAM, (uint32_t)(hfmac->FilterParam)); in HAL_FMAC_FilterStart()
945 hfmac->State = HAL_FMAC_STATE_READY; in HAL_FMAC_FilterStart()
964 HAL_StatusTypeDef HAL_FMAC_AppendFilterData(FMAC_HandleTypeDef *hfmac, int16_t *pInput, uint16_t *p… in HAL_FMAC_AppendFilterData() argument
979 if (FMAC_GET_START_BIT(hfmac) == 0U) in HAL_FMAC_AppendFilterData()
985 if (hfmac->InputAccess == FMAC_BUFFER_ACCESS_NONE) in HAL_FMAC_AppendFilterData()
991 if ((hfmac->pInputSize != NULL) && (hfmac->InputCurrentSize < * (hfmac->pInputSize))) in HAL_FMAC_AppendFilterData()
997 if (hfmac->WrState == HAL_FMAC_STATE_READY) in HAL_FMAC_AppendFilterData()
1000 status = FMAC_AppendFilterDataUpdateState(hfmac, pInput, pInputSize); in HAL_FMAC_AppendFilterData()
1020 HAL_StatusTypeDef HAL_FMAC_ConfigFilterOutputBuffer(FMAC_HandleTypeDef *hfmac, int16_t *pOutput, ui… in HAL_FMAC_ConfigFilterOutputBuffer() argument
1035 if (FMAC_GET_START_BIT(hfmac) == 0U) in HAL_FMAC_ConfigFilterOutputBuffer()
1041 if (hfmac->OutputAccess == FMAC_BUFFER_ACCESS_NONE) in HAL_FMAC_ConfigFilterOutputBuffer()
1047 if ((hfmac->pOutputSize != NULL) && (hfmac->OutputCurrentSize < * (hfmac->pOutputSize))) in HAL_FMAC_ConfigFilterOutputBuffer()
1053 if (hfmac->RdState == HAL_FMAC_STATE_READY) in HAL_FMAC_ConfigFilterOutputBuffer()
1056 status = FMAC_ConfigFilterOutputBufferUpdateState(hfmac, pOutput, pOutputSize); in HAL_FMAC_ConfigFilterOutputBuffer()
1081 HAL_StatusTypeDef HAL_FMAC_PollFilterData(FMAC_HandleTypeDef *hfmac, uint32_t Timeout) in HAL_FMAC_PollFilterData() argument
1091 if (FMAC_GET_START_BIT(hfmac) == 0U) in HAL_FMAC_PollFilterData()
1099 if ((hfmac->InputAccess == FMAC_BUFFER_ACCESS_POLLING) && (hfmac->pInput != NULL)) in HAL_FMAC_PollFilterData()
1107 if ((hfmac->OutputAccess == FMAC_BUFFER_ACCESS_POLLING) && (hfmac->pOutput != NULL)) in HAL_FMAC_PollFilterData()
1123 if (hfmac->State == HAL_FMAC_STATE_READY) in HAL_FMAC_PollFilterData()
1126 hfmac->State = HAL_FMAC_STATE_BUSY; in HAL_FMAC_PollFilterData()
1137 FMAC_WriteDataIncrementPtr(hfmac, MAX_FILTER_DATA_SIZE_TO_HANDLE); in HAL_FMAC_PollFilterData()
1138 if (hfmac->InputCurrentSize == *(hfmac->pInputSize)) in HAL_FMAC_PollFilterData()
1147 FMAC_ReadDataIncrementPtr(hfmac, MAX_FILTER_DATA_SIZE_TO_HANDLE); in HAL_FMAC_PollFilterData()
1148 if (hfmac->OutputCurrentSize == *(hfmac->pOutputSize)) in HAL_FMAC_PollFilterData()
1164 (*(hfmac->pInputSize)) = hfmac->InputCurrentSize; in HAL_FMAC_PollFilterData()
1165 FMAC_ResetInputStateAndDataPointers(hfmac); in HAL_FMAC_PollFilterData()
1169 (*(hfmac->pOutputSize)) = hfmac->OutputCurrentSize; in HAL_FMAC_PollFilterData()
1170 FMAC_ResetOutputStateAndDataPointers(hfmac); in HAL_FMAC_PollFilterData()
1174 hfmac->State = HAL_FMAC_STATE_READY; in HAL_FMAC_PollFilterData()
1178 hfmac->ErrorCode |= HAL_FMAC_ERROR_TIMEOUT; in HAL_FMAC_PollFilterData()
1200 HAL_StatusTypeDef HAL_FMAC_FilterStop(FMAC_HandleTypeDef *hfmac) in HAL_FMAC_FilterStop() argument
1205 if (hfmac->State == HAL_FMAC_STATE_READY) in HAL_FMAC_FilterStop()
1208 hfmac->State = HAL_FMAC_STATE_BUSY; in HAL_FMAC_FilterStop()
1211 CLEAR_BIT(hfmac->Instance->PARAM, FMAC_PARAM_START); in HAL_FMAC_FilterStop()
1214 CLEAR_BIT(hfmac->Instance->CR, FMAC_DMA_REN | FMAC_DMA_WEN | FMAC_IT_RIEN | FMAC_IT_WIEN); in HAL_FMAC_FilterStop()
1217 if ((hfmac->InputAccess == FMAC_BUFFER_ACCESS_IT) && (hfmac->pInput != NULL)) in HAL_FMAC_FilterStop()
1219 (*(hfmac->pInputSize)) = hfmac->InputCurrentSize; in HAL_FMAC_FilterStop()
1222 if ((hfmac->OutputAccess == FMAC_BUFFER_ACCESS_IT) && (hfmac->pOutput != NULL)) in HAL_FMAC_FilterStop()
1224 (*(hfmac->pOutputSize)) = hfmac->OutputCurrentSize; in HAL_FMAC_FilterStop()
1227 if (hfmac->InputAccess == FMAC_BUFFER_ACCESS_DMA) in HAL_FMAC_FilterStop()
1230 status = HAL_DMA_Abort_IT(hfmac->hdmaIn); in HAL_FMAC_FilterStop()
1233 if ((hfmac->OutputAccess == FMAC_BUFFER_ACCESS_DMA) && (status == HAL_OK)) in HAL_FMAC_FilterStop()
1236 status = HAL_DMA_Abort_IT(hfmac->hdmaOut); in HAL_FMAC_FilterStop()
1240 if (FMAC_Reset(hfmac) == HAL_ERROR) in HAL_FMAC_FilterStop()
1243 hfmac->ErrorCode = HAL_FMAC_ERROR_RESET; in HAL_FMAC_FilterStop()
1244 hfmac->State = HAL_FMAC_STATE_TIMEOUT; in HAL_FMAC_FilterStop()
1250 FMAC_ResetDataPointers(hfmac); in HAL_FMAC_FilterStop()
1254 hfmac->State = HAL_FMAC_STATE_READY; in HAL_FMAC_FilterStop()
1292 __weak void HAL_FMAC_ErrorCallback(FMAC_HandleTypeDef *hfmac) in HAL_FMAC_ErrorCallback() argument
1295 UNUSED(hfmac); in HAL_FMAC_ErrorCallback()
1308 __weak void HAL_FMAC_HalfGetDataCallback(FMAC_HandleTypeDef *hfmac) in HAL_FMAC_HalfGetDataCallback() argument
1311 UNUSED(hfmac); in HAL_FMAC_HalfGetDataCallback()
1324 __weak void HAL_FMAC_GetDataCallback(FMAC_HandleTypeDef *hfmac) in HAL_FMAC_GetDataCallback() argument
1327 UNUSED(hfmac); in HAL_FMAC_GetDataCallback()
1340 __weak void HAL_FMAC_HalfOutputDataReadyCallback(FMAC_HandleTypeDef *hfmac) in HAL_FMAC_HalfOutputDataReadyCallback() argument
1343 UNUSED(hfmac); in HAL_FMAC_HalfOutputDataReadyCallback()
1356 __weak void HAL_FMAC_OutputDataReadyCallback(FMAC_HandleTypeDef *hfmac) in HAL_FMAC_OutputDataReadyCallback() argument
1359 UNUSED(hfmac); in HAL_FMAC_OutputDataReadyCallback()
1372 __weak void HAL_FMAC_FilterConfigCallback(FMAC_HandleTypeDef *hfmac) in HAL_FMAC_FilterConfigCallback() argument
1375 UNUSED(hfmac); in HAL_FMAC_FilterConfigCallback()
1388 __weak void HAL_FMAC_FilterPreloadCallback(FMAC_HandleTypeDef *hfmac) in HAL_FMAC_FilterPreloadCallback() argument
1391 UNUSED(hfmac); in HAL_FMAC_FilterPreloadCallback()
1421 void HAL_FMAC_IRQHandler(FMAC_HandleTypeDef *hfmac) in HAL_FMAC_IRQHandler() argument
1426 itsource = __HAL_FMAC_GET_IT_SOURCE(hfmac, FMAC_IT_RIEN); in HAL_FMAC_IRQHandler()
1427 if ((__HAL_FMAC_GET_FLAG(hfmac, FMAC_FLAG_YEMPTY) == 0U) && (itsource != 0U)) in HAL_FMAC_IRQHandler()
1432 if (hfmac->pOutput != NULL) in HAL_FMAC_IRQHandler()
1434 FMAC_ReadDataIncrementPtr(hfmac, (uint16_t)FMAC_GET_Y_SIZE(hfmac)); in HAL_FMAC_IRQHandler()
1438 if ((hfmac->pOutput == NULL) || (hfmac->OutputCurrentSize == *(hfmac->pOutputSize))) in HAL_FMAC_IRQHandler()
1441 FMAC_ResetOutputStateAndDataPointers(hfmac); in HAL_FMAC_IRQHandler()
1445 hfmac->OutputDataReadyCallback(hfmac); in HAL_FMAC_IRQHandler()
1447 HAL_FMAC_OutputDataReadyCallback(hfmac); in HAL_FMAC_IRQHandler()
1453 itsource = __HAL_FMAC_GET_IT_SOURCE(hfmac, FMAC_IT_WIEN); in HAL_FMAC_IRQHandler()
1454 if ((__HAL_FMAC_GET_FLAG(hfmac, FMAC_FLAG_X1FULL) == 0U) && (itsource != 0U)) in HAL_FMAC_IRQHandler()
1459 if (hfmac->pInput != NULL) in HAL_FMAC_IRQHandler()
1461 FMAC_WriteDataIncrementPtr(hfmac, (uint16_t)FMAC_GET_X1_SIZE(hfmac)); in HAL_FMAC_IRQHandler()
1465 if ((hfmac->pInput == NULL) || (hfmac->InputCurrentSize == *(hfmac->pInputSize))) in HAL_FMAC_IRQHandler()
1468 FMAC_ResetInputStateAndDataPointers(hfmac); in HAL_FMAC_IRQHandler()
1472 hfmac->GetDataCallback(hfmac); in HAL_FMAC_IRQHandler()
1474 HAL_FMAC_GetDataCallback(hfmac); in HAL_FMAC_IRQHandler()
1480 itsource = __HAL_FMAC_GET_IT_SOURCE(hfmac, FMAC_IT_OVFLIEN); in HAL_FMAC_IRQHandler()
1481 if ((__HAL_FMAC_GET_FLAG(hfmac, FMAC_FLAG_OVFL) != 0U) && (itsource != 0U)) in HAL_FMAC_IRQHandler()
1483 hfmac->ErrorCode |= HAL_FMAC_ERROR_OVFL; in HAL_FMAC_IRQHandler()
1487 itsource = __HAL_FMAC_GET_IT_SOURCE(hfmac, FMAC_IT_UNFLIEN); in HAL_FMAC_IRQHandler()
1488 if ((__HAL_FMAC_GET_FLAG(hfmac, FMAC_FLAG_UNFL) != 0U) && (itsource != 0U)) in HAL_FMAC_IRQHandler()
1490 hfmac->ErrorCode |= HAL_FMAC_ERROR_UNFL; in HAL_FMAC_IRQHandler()
1494 itsource = __HAL_FMAC_GET_IT_SOURCE(hfmac, FMAC_IT_SATIEN); in HAL_FMAC_IRQHandler()
1495 if ((__HAL_FMAC_GET_FLAG(hfmac, FMAC_FLAG_SAT) != 0U) && (itsource != 0U)) in HAL_FMAC_IRQHandler()
1497 hfmac->ErrorCode |= HAL_FMAC_ERROR_SAT; in HAL_FMAC_IRQHandler()
1501 if (hfmac->ErrorCode != HAL_FMAC_ERROR_NONE) in HAL_FMAC_IRQHandler()
1505 hfmac->ErrorCallback(hfmac); in HAL_FMAC_IRQHandler()
1507 HAL_FMAC_ErrorCallback(hfmac); in HAL_FMAC_IRQHandler()
1537 HAL_FMAC_StateTypeDef HAL_FMAC_GetState(const FMAC_HandleTypeDef *hfmac) in HAL_FMAC_GetState() argument
1540 return hfmac->State; in HAL_FMAC_GetState()
1550 uint32_t HAL_FMAC_GetError(const FMAC_HandleTypeDef *hfmac) in HAL_FMAC_GetError() argument
1553 return hfmac->ErrorCode; in HAL_FMAC_GetError()
1578 static HAL_StatusTypeDef FMAC_Reset(FMAC_HandleTypeDef *hfmac) in FMAC_Reset() argument
1586 SET_BIT(hfmac->Instance->CR, FMAC_CR_RESET); in FMAC_Reset()
1589 while (READ_BIT(hfmac->Instance->CR, FMAC_CR_RESET) != 0U) in FMAC_Reset()
1593 hfmac->ErrorCode |= HAL_FMAC_ERROR_TIMEOUT; in FMAC_Reset()
1598 hfmac->ErrorCode = HAL_FMAC_ERROR_NONE; in FMAC_Reset()
1607 static void FMAC_ResetDataPointers(FMAC_HandleTypeDef *hfmac) in FMAC_ResetDataPointers() argument
1609 FMAC_ResetInputStateAndDataPointers(hfmac); in FMAC_ResetDataPointers()
1610 FMAC_ResetOutputStateAndDataPointers(hfmac); in FMAC_ResetDataPointers()
1618 static void FMAC_ResetInputStateAndDataPointers(FMAC_HandleTypeDef *hfmac) in FMAC_ResetInputStateAndDataPointers() argument
1620 hfmac->pInput = NULL; in FMAC_ResetInputStateAndDataPointers()
1621 hfmac->pInputSize = NULL; in FMAC_ResetInputStateAndDataPointers()
1622 hfmac->InputCurrentSize = 0U; in FMAC_ResetInputStateAndDataPointers()
1623 hfmac->WrState = HAL_FMAC_STATE_READY; in FMAC_ResetInputStateAndDataPointers()
1631 static void FMAC_ResetOutputStateAndDataPointers(FMAC_HandleTypeDef *hfmac) in FMAC_ResetOutputStateAndDataPointers() argument
1633 hfmac->pOutput = NULL; in FMAC_ResetOutputStateAndDataPointers()
1634 hfmac->pOutputSize = NULL; in FMAC_ResetOutputStateAndDataPointers()
1635 hfmac->OutputCurrentSize = 0U; in FMAC_ResetOutputStateAndDataPointers()
1636 hfmac->RdState = HAL_FMAC_STATE_READY; in FMAC_ResetOutputStateAndDataPointers()
1650 static HAL_StatusTypeDef FMAC_FilterConfig(FMAC_HandleTypeDef *hfmac, FMAC_FilterConfigTypeDef *pCo… in FMAC_FilterConfig() argument
1671 if (FMAC_GET_START_BIT(hfmac) != 0U) in FMAC_FilterConfig()
1677 if (hfmac->State != HAL_FMAC_STATE_READY) in FMAC_FilterConfig()
1683 hfmac->State = HAL_FMAC_STATE_BUSY; in FMAC_FilterConfig()
1689 hfmac->FilterParam = 0U; in FMAC_FilterConfig()
1694 …MODIFY_REG(hfmac->Instance->X1BUFCFG, … in FMAC_FilterConfig()
1705 …assert_param(IS_FMAC_THRESHOLD_APPLICABLE(FMAC_GET_X1_SIZE(hfmac), pConfig->InputThreshold, pConfi… in FMAC_FilterConfig()
1707 MODIFY_REG(hfmac->Instance->X1BUFCFG, \ in FMAC_FilterConfig()
1715 …MODIFY_REG(hfmac->Instance->X2BUFCFG, … in FMAC_FilterConfig()
1725 …MODIFY_REG(hfmac->Instance->YBUFCFG, … in FMAC_FilterConfig()
1735 …assert_param(IS_FMAC_THRESHOLD_APPLICABLE(FMAC_GET_Y_SIZE(hfmac), pConfig->OutputThreshold, pConfi… in FMAC_FilterConfig()
1737 MODIFY_REG(hfmac->Instance->YBUFCFG, \ in FMAC_FilterConfig()
1754 WRITE_REG(hfmac->Instance->CR, tmpcr); in FMAC_FilterConfig()
1757 hfmac->InputAccess = pConfig->InputAccess; in FMAC_FilterConfig()
1758 hfmac->OutputAccess = pConfig->OutputAccess; in FMAC_FilterConfig()
1762 x2size = FMAC_GET_X2_SIZE(hfmac); in FMAC_FilterConfig()
1769 hfmac->FilterParam = (FMAC_PARAM_START | pConfig->Filter | \ in FMAC_FilterConfig()
1791 WRITE_REG(hfmac->Instance->PARAM, \ in FMAC_FilterConfig()
1799 FMAC_WritePreloadDataIncrementPtr(hfmac, &(pConfig->pCoeffB), pConfig->CoeffBSize); in FMAC_FilterConfig()
1805 FMAC_WritePreloadDataIncrementPtr(hfmac, &(pConfig->pCoeffA), pConfig->CoeffASize); in FMAC_FilterConfig()
1809 if (FMAC_WaitOnStartUntilTimeout(hfmac, tickstart, HAL_FMAC_TIMEOUT_VALUE) != HAL_OK) in FMAC_FilterConfig()
1811 hfmac->ErrorCode |= HAL_FMAC_ERROR_TIMEOUT; in FMAC_FilterConfig()
1812 hfmac->State = HAL_FMAC_STATE_TIMEOUT; in FMAC_FilterConfig()
1817 hfmac->State = HAL_FMAC_STATE_READY; in FMAC_FilterConfig()
1821 hfmac->pInput = pConfig->pCoeffA; in FMAC_FilterConfig()
1822 hfmac->InputCurrentSize = pConfig->CoeffASize; in FMAC_FilterConfig()
1825 hfmac->hdmaPreload->XferHalfCpltCallback = NULL; in FMAC_FilterConfig()
1826 hfmac->hdmaPreload->XferCpltCallback = FMAC_DMAFilterConfig; in FMAC_FilterConfig()
1828 hfmac->hdmaPreload->XferErrorCallback = FMAC_DMAError; in FMAC_FilterConfig()
1831 …return (HAL_DMA_Start_IT(hfmac->hdmaPreload, (uint32_t)pConfig->pCoeffB, (uint32_t)&hfmac->Instanc… in FMAC_FilterConfig()
1838 hfmac->State = HAL_FMAC_STATE_READY; in FMAC_FilterConfig()
1863 static HAL_StatusTypeDef FMAC_FilterPreload(FMAC_HandleTypeDef *hfmac, int16_t *pInput, uint8_t Inp… in FMAC_FilterPreload() argument
1870 if (FMAC_GET_START_BIT(hfmac) != 0U) in FMAC_FilterPreload()
1876 if (hfmac->FilterParam == 0U) in FMAC_FilterPreload()
1882 if ((InputSize > FMAC_GET_X1_SIZE(hfmac)) && (pInput != NULL)) in FMAC_FilterPreload()
1888 if ((OutputSize > FMAC_GET_Y_SIZE(hfmac)) && (pOutput != NULL)) in FMAC_FilterPreload()
1894 if (hfmac->State != HAL_FMAC_STATE_READY) in FMAC_FilterPreload()
1900 hfmac->State = HAL_FMAC_STATE_BUSY; in FMAC_FilterPreload()
1909 WRITE_REG(hfmac->Instance->PARAM, \ in FMAC_FilterPreload()
1915 FMAC_WritePreloadDataIncrementPtr(hfmac, &pInput, InputSize); in FMAC_FilterPreload()
1918 if (FMAC_WaitOnStartUntilTimeout(hfmac, tickstart, HAL_FMAC_TIMEOUT_VALUE) != HAL_OK) in FMAC_FilterPreload()
1920 hfmac->ErrorCode |= HAL_FMAC_ERROR_TIMEOUT; in FMAC_FilterPreload()
1921 hfmac->State = HAL_FMAC_STATE_TIMEOUT; in FMAC_FilterPreload()
1927 hfmac->pInput = pOutput; in FMAC_FilterPreload()
1928 hfmac->InputCurrentSize = OutputSize; in FMAC_FilterPreload()
1931 hfmac->hdmaPreload->XferHalfCpltCallback = NULL; in FMAC_FilterPreload()
1932 hfmac->hdmaPreload->XferCpltCallback = FMAC_DMAFilterPreload; in FMAC_FilterPreload()
1934 hfmac->hdmaPreload->XferErrorCallback = FMAC_DMAError; in FMAC_FilterPreload()
1937 …return (HAL_DMA_Start_IT(hfmac->hdmaPreload, (uint32_t)pInput, (uint32_t)&hfmac->Instance->WDATA, … in FMAC_FilterPreload()
1945 WRITE_REG(hfmac->Instance->PARAM, \ in FMAC_FilterPreload()
1951 FMAC_WritePreloadDataIncrementPtr(hfmac, &pOutput, OutputSize); in FMAC_FilterPreload()
1954 if (FMAC_WaitOnStartUntilTimeout(hfmac, tickstart, HAL_FMAC_TIMEOUT_VALUE) != HAL_OK) in FMAC_FilterPreload()
1956 hfmac->ErrorCode |= HAL_FMAC_ERROR_TIMEOUT; in FMAC_FilterPreload()
1957 hfmac->State = HAL_FMAC_STATE_TIMEOUT; in FMAC_FilterPreload()
1963 hfmac->pInput = NULL; in FMAC_FilterPreload()
1964 hfmac->InputCurrentSize = 0U; in FMAC_FilterPreload()
1967 hfmac->hdmaPreload->XferHalfCpltCallback = NULL; in FMAC_FilterPreload()
1968 hfmac->hdmaPreload->XferCpltCallback = FMAC_DMAFilterPreload; in FMAC_FilterPreload()
1970 hfmac->hdmaPreload->XferErrorCallback = FMAC_DMAError; in FMAC_FilterPreload()
1973 …return (HAL_DMA_Start_IT(hfmac->hdmaPreload, (uint32_t)pOutput, (uint32_t)&hfmac->Instance->WDATA,… in FMAC_FilterPreload()
1978 if (__HAL_FMAC_GET_FLAG(hfmac, FMAC_FLAG_OVFL)) in FMAC_FilterPreload()
1980 hfmac->ErrorCode |= HAL_FMAC_ERROR_OVFL; in FMAC_FilterPreload()
1982 if (__HAL_FMAC_GET_FLAG(hfmac, FMAC_FLAG_UNFL)) in FMAC_FilterPreload()
1984 hfmac->ErrorCode |= HAL_FMAC_ERROR_UNFL; in FMAC_FilterPreload()
1986 if (__HAL_FMAC_GET_FLAG(hfmac, FMAC_FLAG_SAT)) in FMAC_FilterPreload()
1988 hfmac->ErrorCode |= HAL_FMAC_ERROR_SAT; in FMAC_FilterPreload()
1992 hfmac->State = HAL_FMAC_STATE_READY; in FMAC_FilterPreload()
1995 if (hfmac->ErrorCode == HAL_FMAC_ERROR_NONE) in FMAC_FilterPreload()
2015 static void FMAC_WritePreloadDataIncrementPtr(FMAC_HandleTypeDef *hfmac, int16_t **ppData, uint8_t … in FMAC_WritePreloadDataIncrementPtr() argument
2022 WRITE_REG(hfmac->Instance->WDATA, (((uint32_t)(*(*ppData))) & FMAC_WDATA_WDATA)); in FMAC_WritePreloadDataIncrementPtr()
2034 static HAL_StatusTypeDef FMAC_WaitOnStartUntilTimeout(FMAC_HandleTypeDef *hfmac, uint32_t Tickstart… in FMAC_WaitOnStartUntilTimeout() argument
2037 while (READ_BIT(hfmac->Instance->PARAM, FMAC_PARAM_START) != 0U) in FMAC_WaitOnStartUntilTimeout()
2041 hfmac->ErrorCode |= HAL_FMAC_ERROR_TIMEOUT; in FMAC_WaitOnStartUntilTimeout()
2058 static HAL_StatusTypeDef FMAC_AppendFilterDataUpdateState(FMAC_HandleTypeDef *hfmac, int16_t *pInpu… in FMAC_AppendFilterDataUpdateState() argument
2062 hfmac->WrState = HAL_FMAC_STATE_BUSY_WR; in FMAC_AppendFilterDataUpdateState()
2065 hfmac->InputCurrentSize = 0U; in FMAC_AppendFilterDataUpdateState()
2068 if (hfmac->InputAccess == FMAC_BUFFER_ACCESS_DMA) in FMAC_AppendFilterDataUpdateState()
2070 hfmac->pInput = NULL; in FMAC_AppendFilterDataUpdateState()
2071 hfmac->pInputSize = NULL; in FMAC_AppendFilterDataUpdateState()
2074 hfmac->hdmaIn->XferHalfCpltCallback = FMAC_DMAHalfGetData; in FMAC_AppendFilterDataUpdateState()
2075 hfmac->hdmaIn->XferCpltCallback = FMAC_DMAGetData; in FMAC_AppendFilterDataUpdateState()
2077 hfmac->hdmaIn->XferErrorCallback = FMAC_DMAError; in FMAC_AppendFilterDataUpdateState()
2080 …return (HAL_DMA_Start_IT(hfmac->hdmaIn, (uint32_t)pInput, (uint32_t)&hfmac->Instance->WDATA, *pInp… in FMAC_AppendFilterDataUpdateState()
2085 hfmac->pInput = pInput; in FMAC_AppendFilterDataUpdateState()
2086 hfmac->pInputSize = pInputSize; in FMAC_AppendFilterDataUpdateState()
2102 static HAL_StatusTypeDef FMAC_ConfigFilterOutputBufferUpdateState(FMAC_HandleTypeDef *hfmac, int16_… in FMAC_ConfigFilterOutputBufferUpdateState() argument
2106 hfmac->OutputCurrentSize = 0U; in FMAC_ConfigFilterOutputBufferUpdateState()
2112 hfmac->pOutput = NULL; in FMAC_ConfigFilterOutputBufferUpdateState()
2113 hfmac->pOutputSize = NULL; in FMAC_ConfigFilterOutputBufferUpdateState()
2114 hfmac->RdState = HAL_FMAC_STATE_READY; in FMAC_ConfigFilterOutputBufferUpdateState()
2117 else if (hfmac->OutputAccess == FMAC_BUFFER_ACCESS_DMA) in FMAC_ConfigFilterOutputBufferUpdateState()
2119 hfmac->pOutput = NULL; in FMAC_ConfigFilterOutputBufferUpdateState()
2120 hfmac->pOutputSize = NULL; in FMAC_ConfigFilterOutputBufferUpdateState()
2121 hfmac->RdState = HAL_FMAC_STATE_BUSY_RD; in FMAC_ConfigFilterOutputBufferUpdateState()
2124 hfmac->hdmaOut->XferHalfCpltCallback = FMAC_DMAHalfOutputDataReady; in FMAC_ConfigFilterOutputBufferUpdateState()
2125 hfmac->hdmaOut->XferCpltCallback = FMAC_DMAOutputDataReady; in FMAC_ConfigFilterOutputBufferUpdateState()
2127 hfmac->hdmaOut->XferErrorCallback = FMAC_DMAError; in FMAC_ConfigFilterOutputBufferUpdateState()
2130 …return (HAL_DMA_Start_IT(hfmac->hdmaOut, (uint32_t)&hfmac->Instance->RDATA, (uint32_t)pOutput, *pO… in FMAC_ConfigFilterOutputBufferUpdateState()
2132 else if (hfmac->OutputAccess == FMAC_BUFFER_ACCESS_NONE) in FMAC_ConfigFilterOutputBufferUpdateState()
2134 hfmac->pOutput = NULL; in FMAC_ConfigFilterOutputBufferUpdateState()
2135 hfmac->pOutputSize = NULL; in FMAC_ConfigFilterOutputBufferUpdateState()
2136 hfmac->RdState = HAL_FMAC_STATE_READY; in FMAC_ConfigFilterOutputBufferUpdateState()
2141 hfmac->pOutput = pOutput; in FMAC_ConfigFilterOutputBufferUpdateState()
2142 hfmac->pOutputSize = pOutputSize; in FMAC_ConfigFilterOutputBufferUpdateState()
2143 hfmac->RdState = HAL_FMAC_STATE_BUSY_RD; in FMAC_ConfigFilterOutputBufferUpdateState()
2156 static void FMAC_ReadDataIncrementPtr(FMAC_HandleTypeDef *hfmac, uint16_t MaxSizeToRead) in FMAC_ReadDataIncrementPtr() argument
2163 if (READ_BIT(hfmac->Instance->SR, FMAC_SR_YEMPTY) != 0U) in FMAC_ReadDataIncrementPtr()
2169 if ((hfmac->OutputCurrentSize + MaxSizeToRead) > *(hfmac->pOutputSize)) in FMAC_ReadDataIncrementPtr()
2171 maxsize = *(hfmac->pOutputSize); in FMAC_ReadDataIncrementPtr()
2175 maxsize = hfmac->OutputCurrentSize + MaxSizeToRead; in FMAC_ReadDataIncrementPtr()
2182 if (!(hfmac->OutputCurrentSize < maxsize)) in FMAC_ReadDataIncrementPtr()
2188 tmpvalue = ((READ_REG(hfmac->Instance->RDATA))& FMAC_RDATA_RDATA); in FMAC_ReadDataIncrementPtr()
2189 *(hfmac->pOutput) = (int16_t)tmpvalue; in FMAC_ReadDataIncrementPtr()
2190 hfmac->pOutput++; in FMAC_ReadDataIncrementPtr()
2191 hfmac->OutputCurrentSize++; in FMAC_ReadDataIncrementPtr()
2192 } while (READ_BIT(hfmac->Instance->SR, FMAC_SR_YEMPTY) == 0U); in FMAC_ReadDataIncrementPtr()
2195 threshold = (uint16_t)FMAC_GET_THRESHOLD_FROM_WM(FMAC_GET_Y_EMPTY_WM(hfmac)) - 1U; in FMAC_ReadDataIncrementPtr()
2198 if ((hfmac->OutputCurrentSize + threshold) < maxsize) in FMAC_ReadDataIncrementPtr()
2200 maxsize = hfmac->OutputCurrentSize + threshold; in FMAC_ReadDataIncrementPtr()
2204 while (hfmac->OutputCurrentSize < maxsize) in FMAC_ReadDataIncrementPtr()
2206 tmpvalue = ((READ_REG(hfmac->Instance->RDATA))& FMAC_RDATA_RDATA); in FMAC_ReadDataIncrementPtr()
2207 *(hfmac->pOutput) = (int16_t)tmpvalue; in FMAC_ReadDataIncrementPtr()
2208 hfmac->pOutput++; in FMAC_ReadDataIncrementPtr()
2209 hfmac->OutputCurrentSize++; in FMAC_ReadDataIncrementPtr()
2220 static void FMAC_WriteDataIncrementPtr(FMAC_HandleTypeDef *hfmac, uint16_t MaxSizeToWrite) in FMAC_WriteDataIncrementPtr() argument
2226 if (READ_BIT(hfmac->Instance->SR, FMAC_SR_X1FULL) != 0U) in FMAC_WriteDataIncrementPtr()
2232 if ((hfmac->InputCurrentSize + MaxSizeToWrite) > *(hfmac->pInputSize)) in FMAC_WriteDataIncrementPtr()
2234 maxsize = *(hfmac->pInputSize); in FMAC_WriteDataIncrementPtr()
2238 maxsize = hfmac->InputCurrentSize + MaxSizeToWrite; in FMAC_WriteDataIncrementPtr()
2245 if (!(hfmac->InputCurrentSize < maxsize)) in FMAC_WriteDataIncrementPtr()
2251 WRITE_REG(hfmac->Instance->WDATA, (((uint32_t)(*(hfmac->pInput))) & FMAC_WDATA_WDATA)); in FMAC_WriteDataIncrementPtr()
2252 hfmac->pInput++; in FMAC_WriteDataIncrementPtr()
2253 hfmac->InputCurrentSize++; in FMAC_WriteDataIncrementPtr()
2254 } while (READ_BIT(hfmac->Instance->SR, FMAC_SR_X1FULL) == 0U); in FMAC_WriteDataIncrementPtr()
2257 threshold = (uint16_t)FMAC_GET_THRESHOLD_FROM_WM(FMAC_GET_X1_FULL_WM(hfmac)) - 1U; in FMAC_WriteDataIncrementPtr()
2260 if ((hfmac->InputCurrentSize + threshold) < maxsize) in FMAC_WriteDataIncrementPtr()
2262 maxsize = hfmac->InputCurrentSize + threshold; in FMAC_WriteDataIncrementPtr()
2266 while (hfmac->InputCurrentSize < maxsize) in FMAC_WriteDataIncrementPtr()
2268 WRITE_REG(hfmac->Instance->WDATA, (((uint32_t)(*(hfmac->pInput))) & FMAC_WDATA_WDATA)); in FMAC_WriteDataIncrementPtr()
2269 hfmac->pInput++; in FMAC_WriteDataIncrementPtr()
2270 hfmac->InputCurrentSize++; in FMAC_WriteDataIncrementPtr()
2281 FMAC_HandleTypeDef *hfmac = (FMAC_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent; in FMAC_DMAHalfGetData() local
2285 hfmac->HalfGetDataCallback(hfmac); in FMAC_DMAHalfGetData()
2287 HAL_FMAC_HalfGetDataCallback(hfmac); in FMAC_DMAHalfGetData()
2298 FMAC_HandleTypeDef *hfmac = (FMAC_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent; in FMAC_DMAGetData() local
2301 FMAC_ResetInputStateAndDataPointers(hfmac); in FMAC_DMAGetData()
2305 hfmac->GetDataCallback(hfmac); in FMAC_DMAGetData()
2307 HAL_FMAC_GetDataCallback(hfmac); in FMAC_DMAGetData()
2318 FMAC_HandleTypeDef *hfmac = (FMAC_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent; in FMAC_DMAHalfOutputDataReady() local
2322 hfmac->HalfOutputDataReadyCallback(hfmac); in FMAC_DMAHalfOutputDataReady()
2324 HAL_FMAC_HalfOutputDataReadyCallback(hfmac); in FMAC_DMAHalfOutputDataReady()
2335 FMAC_HandleTypeDef *hfmac = (FMAC_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent; in FMAC_DMAOutputDataReady() local
2338 FMAC_ResetOutputStateAndDataPointers(hfmac); in FMAC_DMAOutputDataReady()
2342 hfmac->OutputDataReadyCallback(hfmac); in FMAC_DMAOutputDataReady()
2344 HAL_FMAC_OutputDataReadyCallback(hfmac); in FMAC_DMAOutputDataReady()
2357 FMAC_HandleTypeDef *hfmac = (FMAC_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent; in FMAC_DMAFilterConfig() local
2360 if (hfmac->pInput != NULL) in FMAC_DMAFilterConfig()
2363 hfmac->hdmaPreload->XferHalfCpltCallback = NULL; in FMAC_DMAFilterConfig()
2364 hfmac->hdmaPreload->XferCpltCallback = FMAC_DMAFilterConfig; in FMAC_DMAFilterConfig()
2366 hfmac->hdmaPreload->XferErrorCallback = FMAC_DMAError; in FMAC_DMAFilterConfig()
2369 …if (HAL_DMA_Start_IT(hfmac->hdmaPreload, (uint32_t)hfmac->pInput, (uint32_t)&hfmac->Instance->WDAT… in FMAC_DMAFilterConfig()
2370 hfmac->InputCurrentSize) == HAL_OK) in FMAC_DMAFilterConfig()
2372 hfmac->pInput = NULL; in FMAC_DMAFilterConfig()
2373 hfmac->InputCurrentSize = 0U; in FMAC_DMAFilterConfig()
2378 hfmac->State = HAL_FMAC_STATE_ERROR; in FMAC_DMAFilterConfig()
2385 if (READ_BIT(hfmac->Instance->PARAM, FMAC_PARAM_START) == 0U) in FMAC_DMAFilterConfig()
2392 if (READ_BIT(hfmac->Instance->PARAM, FMAC_PARAM_START) != 0U) in FMAC_DMAFilterConfig()
2394 hfmac->State = HAL_FMAC_STATE_TIMEOUT; in FMAC_DMAFilterConfig()
2399 hfmac->State = HAL_FMAC_STATE_READY; in FMAC_DMAFilterConfig()
2403 hfmac->FilterConfigCallback(hfmac); in FMAC_DMAFilterConfig()
2405 HAL_FMAC_FilterConfigCallback(hfmac); in FMAC_DMAFilterConfig()
2412 hfmac->ErrorCode |= HAL_FMAC_ERROR_DMA; in FMAC_DMAFilterConfig()
2416 hfmac->ErrorCallback(hfmac); in FMAC_DMAFilterConfig()
2418 HAL_FMAC_ErrorCallback(hfmac); in FMAC_DMAFilterConfig()
2431 FMAC_HandleTypeDef *hfmac = (FMAC_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent; in FMAC_DMAFilterPreload() local
2436 if (READ_BIT(hfmac->Instance->PARAM, FMAC_PARAM_START) == 0U) in FMAC_DMAFilterPreload()
2443 if (READ_BIT(hfmac->Instance->PARAM, FMAC_PARAM_START) != 0U) in FMAC_DMAFilterPreload()
2445 hfmac->State = HAL_FMAC_STATE_TIMEOUT; in FMAC_DMAFilterPreload()
2446 hfmac->ErrorCode |= HAL_FMAC_ERROR_TIMEOUT; in FMAC_DMAFilterPreload()
2449 else if ((hfmac->pInput != NULL) && (hfmac->InputCurrentSize != 0U)) in FMAC_DMAFilterPreload()
2452 WRITE_REG(hfmac->Instance->PARAM, \ in FMAC_DMAFilterPreload()
2453 …(((uint32_t)(hfmac->InputCurrentSize) << FMAC_PARAM_P_Pos) | FMAC_FUNC_LOAD_Y | FMAC_PARAM_START)); in FMAC_DMAFilterPreload()
2456 hfmac->hdmaPreload->XferHalfCpltCallback = NULL; in FMAC_DMAFilterPreload()
2457 hfmac->hdmaPreload->XferCpltCallback = FMAC_DMAFilterPreload; in FMAC_DMAFilterPreload()
2459 hfmac->hdmaPreload->XferErrorCallback = FMAC_DMAError; in FMAC_DMAFilterPreload()
2462 …if (HAL_DMA_Start_IT(hfmac->hdmaPreload, (uint32_t)hfmac->pInput, (uint32_t)&hfmac->Instance->WDAT… in FMAC_DMAFilterPreload()
2463 hfmac->InputCurrentSize) == HAL_OK) in FMAC_DMAFilterPreload()
2465 hfmac->pInput = NULL; in FMAC_DMAFilterPreload()
2466 hfmac->InputCurrentSize = 0U; in FMAC_DMAFilterPreload()
2471 hfmac->ErrorCode = HAL_FMAC_ERROR_DMA; in FMAC_DMAFilterPreload()
2472 hfmac->State = HAL_FMAC_STATE_ERROR; in FMAC_DMAFilterPreload()
2479 if (hfmac->ErrorCode == HAL_FMAC_ERROR_NONE) in FMAC_DMAFilterPreload()
2482 hfmac->State = HAL_FMAC_STATE_READY; in FMAC_DMAFilterPreload()
2486 hfmac->FilterPreloadCallback(hfmac); in FMAC_DMAFilterPreload()
2488 HAL_FMAC_FilterPreloadCallback(hfmac); in FMAC_DMAFilterPreload()
2495 hfmac->ErrorCallback(hfmac); in FMAC_DMAFilterPreload()
2497 HAL_FMAC_ErrorCallback(hfmac); in FMAC_DMAFilterPreload()
2510 FMAC_HandleTypeDef *hfmac = (FMAC_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent; in FMAC_DMAError() local
2513 hfmac->State = HAL_FMAC_STATE_ERROR; in FMAC_DMAError()
2516 hfmac->ErrorCode |= HAL_FMAC_ERROR_DMA; in FMAC_DMAError()
2520 hfmac->ErrorCallback(hfmac); in FMAC_DMAError()
2522 HAL_FMAC_ErrorCallback(hfmac); in FMAC_DMAError()