Lines Matching refs:hdcmi

195 HAL_StatusTypeDef HAL_DCMI_Init(DCMI_HandleTypeDef *hdcmi)  in HAL_DCMI_Init()  argument
198 if (hdcmi == NULL) in HAL_DCMI_Init()
204 assert_param(IS_DCMI_ALL_INSTANCE(hdcmi->Instance)); in HAL_DCMI_Init()
205 assert_param(IS_DCMI_PCKPOLARITY(hdcmi->Init.PCKPolarity)); in HAL_DCMI_Init()
206 assert_param(IS_DCMI_VSPOLARITY(hdcmi->Init.VSPolarity)); in HAL_DCMI_Init()
207 assert_param(IS_DCMI_HSPOLARITY(hdcmi->Init.HSPolarity)); in HAL_DCMI_Init()
208 assert_param(IS_DCMI_SYNCHRO(hdcmi->Init.SynchroMode)); in HAL_DCMI_Init()
209 assert_param(IS_DCMI_CAPTURE_RATE(hdcmi->Init.CaptureRate)); in HAL_DCMI_Init()
210 assert_param(IS_DCMI_EXTENDED_DATA(hdcmi->Init.ExtendedDataMode)); in HAL_DCMI_Init()
211 assert_param(IS_DCMI_MODE_JPEG(hdcmi->Init.JPEGMode)); in HAL_DCMI_Init()
214 assert_param(IS_DCMI_BYTE_SELECT_MODE(hdcmi->Init.ByteSelectMode)); in HAL_DCMI_Init()
215 assert_param(IS_DCMI_BYTE_SELECT_START(hdcmi->Init.ByteSelectStart)); in HAL_DCMI_Init()
216 assert_param(IS_DCMI_LINE_SELECT_MODE(hdcmi->Init.LineSelectMode)); in HAL_DCMI_Init()
217 assert_param(IS_DCMI_LINE_SELECT_START(hdcmi->Init.LineSelectStart)); in HAL_DCMI_Init()
220 if (hdcmi->State == HAL_DCMI_STATE_RESET) in HAL_DCMI_Init()
225 hdcmi->FrameEventCallback = HAL_DCMI_FrameEventCallback; /* Legacy weak FrameEventCallback */ in HAL_DCMI_Init()
226 hdcmi->VsyncEventCallback = HAL_DCMI_VsyncEventCallback; /* Legacy weak VsyncEventCallback */ in HAL_DCMI_Init()
227 hdcmi->LineEventCallback = HAL_DCMI_LineEventCallback; /* Legacy weak LineEventCallback */ in HAL_DCMI_Init()
228 hdcmi->ErrorCallback = HAL_DCMI_ErrorCallback; /* Legacy weak ErrorCallback */ in HAL_DCMI_Init()
230 if (hdcmi->MspInitCallback == NULL) in HAL_DCMI_Init()
233 hdcmi->MspInitCallback = HAL_DCMI_MspInit; in HAL_DCMI_Init()
236 hdcmi->MspInitCallback(hdcmi); in HAL_DCMI_Init()
239 HAL_DCMI_MspInit(hdcmi); in HAL_DCMI_Init()
244 hdcmi->State = HAL_DCMI_STATE_BUSY; in HAL_DCMI_Init()
247 if (hdcmi->Init.ExtendedDataMode != DCMI_EXTEND_DATA_8B) in HAL_DCMI_Init()
251 hdcmi->Init.ByteSelectMode = DCMI_BSM_ALL; in HAL_DCMI_Init()
256 hdcmi->Instance->CR &= ~(DCMI_CR_PCKPOL | DCMI_CR_HSPOL | DCMI_CR_VSPOL | DCMI_CR_EDM_0 | \ in HAL_DCMI_Init()
261 hdcmi->Instance->CR |= (uint32_t)(hdcmi->Init.SynchroMode | hdcmi->Init.CaptureRate | \ in HAL_DCMI_Init()
262 hdcmi->Init.VSPolarity | hdcmi->Init.HSPolarity | \ in HAL_DCMI_Init()
263 hdcmi->Init.PCKPolarity | hdcmi->Init.ExtendedDataMode | \ in HAL_DCMI_Init()
264 hdcmi->Init.JPEGMode | hdcmi->Init.ByteSelectMode | \ in HAL_DCMI_Init()
265 hdcmi->Init.ByteSelectStart | hdcmi->Init.LineSelectMode | \ in HAL_DCMI_Init()
266 hdcmi->Init.LineSelectStart); in HAL_DCMI_Init()
268 hdcmi->Instance->CR &= ~(DCMI_CR_PCKPOL | DCMI_CR_HSPOL | DCMI_CR_VSPOL | DCMI_CR_EDM_0 | \ in HAL_DCMI_Init()
271 hdcmi->Instance->CR |= (uint32_t)(hdcmi->Init.SynchroMode | hdcmi->Init.CaptureRate | \ in HAL_DCMI_Init()
272 hdcmi->Init.VSPolarity | hdcmi->Init.HSPolarity | \ in HAL_DCMI_Init()
273 hdcmi->Init.PCKPolarity | hdcmi->Init.ExtendedDataMode | \ in HAL_DCMI_Init()
274 hdcmi->Init.JPEGMode); in HAL_DCMI_Init()
277 if (hdcmi->Init.SynchroMode == DCMI_SYNCHRO_EMBEDDED) in HAL_DCMI_Init()
279 hdcmi->Instance->ESCR = (((uint32_t)hdcmi->Init.SyncroCode.FrameStartCode) | \ in HAL_DCMI_Init()
280 … ((uint32_t)hdcmi->Init.SyncroCode.LineStartCode << DCMI_ESCR_LSC_Pos) | \ in HAL_DCMI_Init()
281 ((uint32_t)hdcmi->Init.SyncroCode.LineEndCode << DCMI_ESCR_LEC_Pos) | \ in HAL_DCMI_Init()
282 ((uint32_t)hdcmi->Init.SyncroCode.FrameEndCode << DCMI_ESCR_FEC_Pos)); in HAL_DCMI_Init()
287 __HAL_DCMI_ENABLE_IT(hdcmi, DCMI_IT_LINE | DCMI_IT_VSYNC | DCMI_IT_ERR | DCMI_IT_OVR); in HAL_DCMI_Init()
290 hdcmi->ErrorCode = HAL_DCMI_ERROR_NONE; in HAL_DCMI_Init()
293 hdcmi->State = HAL_DCMI_STATE_READY; in HAL_DCMI_Init()
306 HAL_StatusTypeDef HAL_DCMI_DeInit(DCMI_HandleTypeDef *hdcmi) in HAL_DCMI_DeInit() argument
309 if (hdcmi->MspDeInitCallback == NULL) in HAL_DCMI_DeInit()
311 hdcmi->MspDeInitCallback = HAL_DCMI_MspDeInit; in HAL_DCMI_DeInit()
314 hdcmi->MspDeInitCallback(hdcmi); in HAL_DCMI_DeInit()
317 HAL_DCMI_MspDeInit(hdcmi); in HAL_DCMI_DeInit()
321 hdcmi->ErrorCode = HAL_DCMI_ERROR_NONE; in HAL_DCMI_DeInit()
324 hdcmi->State = HAL_DCMI_STATE_RESET; in HAL_DCMI_DeInit()
327 __HAL_UNLOCK(hdcmi); in HAL_DCMI_DeInit()
338 __weak void HAL_DCMI_MspInit(DCMI_HandleTypeDef *hdcmi) in HAL_DCMI_MspInit() argument
341 UNUSED(hdcmi); in HAL_DCMI_MspInit()
354 __weak void HAL_DCMI_MspDeInit(DCMI_HandleTypeDef *hdcmi) in HAL_DCMI_MspDeInit() argument
357 UNUSED(hdcmi); in HAL_DCMI_MspDeInit()
393 HAL_StatusTypeDef HAL_DCMI_Start_DMA(DCMI_HandleTypeDef *hdcmi, uint32_t DCMI_Mode, uint32_t pData,… in HAL_DCMI_Start_DMA() argument
403 __HAL_LOCK(hdcmi); in HAL_DCMI_Start_DMA()
406 hdcmi->State = HAL_DCMI_STATE_BUSY; in HAL_DCMI_Start_DMA()
409 __HAL_DCMI_ENABLE(hdcmi); in HAL_DCMI_Start_DMA()
412 hdcmi->Instance->CR &= ~(DCMI_CR_CM); in HAL_DCMI_Start_DMA()
413 hdcmi->Instance->CR |= (uint32_t)(DCMI_Mode); in HAL_DCMI_Start_DMA()
416 hdcmi->DMA_Handle->XferCpltCallback = DCMI_DMAXferCplt; in HAL_DCMI_Start_DMA()
419 hdcmi->DMA_Handle->XferErrorCallback = DCMI_DMAError; in HAL_DCMI_Start_DMA()
422 hdcmi->DMA_Handle->XferAbortCallback = NULL; in HAL_DCMI_Start_DMA()
425 hdcmi->XferCount = 0; in HAL_DCMI_Start_DMA()
426 hdcmi->XferTransferNumber = 0; in HAL_DCMI_Start_DMA()
427 hdcmi->XferSize = 0; in HAL_DCMI_Start_DMA()
428 hdcmi->pBuffPtr = 0; in HAL_DCMI_Start_DMA()
433 …if (HAL_DMA_Start_IT(hdcmi->DMA_Handle, (uint32_t)&hdcmi->Instance->DR, (uint32_t)pData, tmp_lengt… in HAL_DCMI_Start_DMA()
436 hdcmi->ErrorCode = HAL_DCMI_ERROR_DMA; in HAL_DCMI_Start_DMA()
438 hdcmi->State = HAL_DCMI_STATE_READY; in HAL_DCMI_Start_DMA()
440 __HAL_UNLOCK(hdcmi); in HAL_DCMI_Start_DMA()
448 hdcmi->DMA_Handle->XferM1CpltCallback = DCMI_DMAXferCplt; in HAL_DCMI_Start_DMA()
451 hdcmi->XferCount = 1; in HAL_DCMI_Start_DMA()
452 hdcmi->XferSize = tmp_length; in HAL_DCMI_Start_DMA()
453 hdcmi->pBuffPtr = pData; in HAL_DCMI_Start_DMA()
456 while (hdcmi->XferSize > 0xFFFFU) in HAL_DCMI_Start_DMA()
458 hdcmi->XferSize = (hdcmi->XferSize / 2U); in HAL_DCMI_Start_DMA()
459 hdcmi->XferCount = hdcmi->XferCount * 2U; in HAL_DCMI_Start_DMA()
463 hdcmi->XferCount = (hdcmi->XferCount - 2U); in HAL_DCMI_Start_DMA()
464 hdcmi->XferTransferNumber = hdcmi->XferCount; in HAL_DCMI_Start_DMA()
467 SecondMemAddress = (uint32_t)(pData + (4U * hdcmi->XferSize)); in HAL_DCMI_Start_DMA()
470 …(HAL_DMAEx_MultiBufferStart_IT(hdcmi->DMA_Handle, (uint32_t)&hdcmi->Instance->DR, (uint32_t)pData,… in HAL_DCMI_Start_DMA()
473 hdcmi->ErrorCode = HAL_DCMI_ERROR_DMA; in HAL_DCMI_Start_DMA()
475 hdcmi->State = HAL_DCMI_STATE_READY; in HAL_DCMI_Start_DMA()
477 __HAL_UNLOCK(hdcmi); in HAL_DCMI_Start_DMA()
484 hdcmi->Instance->CR |= DCMI_CR_CAPTURE; in HAL_DCMI_Start_DMA()
487 __HAL_UNLOCK(hdcmi); in HAL_DCMI_Start_DMA()
499 HAL_StatusTypeDef HAL_DCMI_Stop(DCMI_HandleTypeDef *hdcmi) in HAL_DCMI_Stop() argument
505 __HAL_LOCK(hdcmi); in HAL_DCMI_Stop()
508 hdcmi->State = HAL_DCMI_STATE_BUSY; in HAL_DCMI_Stop()
511 hdcmi->Instance->CR &= ~(DCMI_CR_CAPTURE); in HAL_DCMI_Stop()
520 hdcmi->ErrorCode |= HAL_DCMI_ERROR_TIMEOUT; in HAL_DCMI_Stop()
525 } while ((hdcmi->Instance->CR & DCMI_CR_CAPTURE) != 0U); in HAL_DCMI_Stop()
528 __HAL_DCMI_DISABLE(hdcmi); in HAL_DCMI_Stop()
531 (void)HAL_DMA_Abort(hdcmi->DMA_Handle); in HAL_DCMI_Stop()
534 hdcmi->ErrorCode |= HAL_DCMI_ERROR_NONE; in HAL_DCMI_Stop()
537 hdcmi->State = HAL_DCMI_STATE_READY; in HAL_DCMI_Stop()
540 __HAL_UNLOCK(hdcmi); in HAL_DCMI_Stop()
552 HAL_StatusTypeDef HAL_DCMI_Suspend(DCMI_HandleTypeDef *hdcmi) in HAL_DCMI_Suspend() argument
558 __HAL_LOCK(hdcmi); in HAL_DCMI_Suspend()
560 if (hdcmi->State == HAL_DCMI_STATE_BUSY) in HAL_DCMI_Suspend()
563 hdcmi->State = HAL_DCMI_STATE_SUSPENDED; in HAL_DCMI_Suspend()
566 hdcmi->Instance->CR &= ~(DCMI_CR_CAPTURE); in HAL_DCMI_Suspend()
575 hdcmi->ErrorCode |= HAL_DCMI_ERROR_TIMEOUT; in HAL_DCMI_Suspend()
578 hdcmi->State = HAL_DCMI_STATE_READY; in HAL_DCMI_Suspend()
583 } while ((hdcmi->Instance->CR & DCMI_CR_CAPTURE) != 0U); in HAL_DCMI_Suspend()
586 __HAL_UNLOCK(hdcmi); in HAL_DCMI_Suspend()
598 HAL_StatusTypeDef HAL_DCMI_Resume(DCMI_HandleTypeDef *hdcmi) in HAL_DCMI_Resume() argument
601 __HAL_LOCK(hdcmi); in HAL_DCMI_Resume()
603 if (hdcmi->State == HAL_DCMI_STATE_SUSPENDED) in HAL_DCMI_Resume()
606 hdcmi->State = HAL_DCMI_STATE_BUSY; in HAL_DCMI_Resume()
609 hdcmi->Instance->CR |= DCMI_CR_CAPTURE; in HAL_DCMI_Resume()
612 __HAL_UNLOCK(hdcmi); in HAL_DCMI_Resume()
624 void HAL_DCMI_IRQHandler(DCMI_HandleTypeDef *hdcmi) in HAL_DCMI_IRQHandler() argument
626 uint32_t isr_value = READ_REG(hdcmi->Instance->MISR); in HAL_DCMI_IRQHandler()
632 __HAL_DCMI_CLEAR_FLAG(hdcmi, DCMI_FLAG_ERRRI); in HAL_DCMI_IRQHandler()
635 hdcmi->ErrorCode |= HAL_DCMI_ERROR_SYNC; in HAL_DCMI_IRQHandler()
638 hdcmi->State = HAL_DCMI_STATE_ERROR; in HAL_DCMI_IRQHandler()
641 hdcmi->DMA_Handle->XferAbortCallback = DCMI_DMAError; in HAL_DCMI_IRQHandler()
644 if (HAL_DMA_Abort_IT(hdcmi->DMA_Handle) != HAL_OK) in HAL_DCMI_IRQHandler()
646 DCMI_DMAError(hdcmi->DMA_Handle); in HAL_DCMI_IRQHandler()
653 __HAL_DCMI_CLEAR_FLAG(hdcmi, DCMI_FLAG_OVRRI); in HAL_DCMI_IRQHandler()
656 hdcmi->ErrorCode |= HAL_DCMI_ERROR_OVR; in HAL_DCMI_IRQHandler()
659 hdcmi->State = HAL_DCMI_STATE_ERROR; in HAL_DCMI_IRQHandler()
662 hdcmi->DMA_Handle->XferAbortCallback = DCMI_DMAError; in HAL_DCMI_IRQHandler()
665 if (HAL_DMA_Abort_IT(hdcmi->DMA_Handle) != HAL_OK) in HAL_DCMI_IRQHandler()
667 DCMI_DMAError(hdcmi->DMA_Handle); in HAL_DCMI_IRQHandler()
674 __HAL_DCMI_CLEAR_FLAG(hdcmi, DCMI_FLAG_LINERI); in HAL_DCMI_IRQHandler()
679 hdcmi->LineEventCallback(hdcmi); in HAL_DCMI_IRQHandler()
681 HAL_DCMI_LineEventCallback(hdcmi); in HAL_DCMI_IRQHandler()
688 __HAL_DCMI_CLEAR_FLAG(hdcmi, DCMI_FLAG_VSYNCRI); in HAL_DCMI_IRQHandler()
693 hdcmi->VsyncEventCallback(hdcmi); in HAL_DCMI_IRQHandler()
695 HAL_DCMI_VsyncEventCallback(hdcmi); in HAL_DCMI_IRQHandler()
702 if ((hdcmi->Instance->CR & DCMI_CR_CM) == DCMI_MODE_SNAPSHOT) in HAL_DCMI_IRQHandler()
705 __HAL_DCMI_DISABLE_IT(hdcmi, DCMI_IT_LINE | DCMI_IT_VSYNC | DCMI_IT_ERR | DCMI_IT_OVR); in HAL_DCMI_IRQHandler()
709 __HAL_DCMI_DISABLE_IT(hdcmi, DCMI_IT_FRAME); in HAL_DCMI_IRQHandler()
712 __HAL_DCMI_CLEAR_FLAG(hdcmi, DCMI_FLAG_FRAMERI); in HAL_DCMI_IRQHandler()
717 hdcmi->FrameEventCallback(hdcmi); in HAL_DCMI_IRQHandler()
719 HAL_DCMI_FrameEventCallback(hdcmi); in HAL_DCMI_IRQHandler()
730 __weak void HAL_DCMI_ErrorCallback(DCMI_HandleTypeDef *hdcmi) in HAL_DCMI_ErrorCallback() argument
733 UNUSED(hdcmi); in HAL_DCMI_ErrorCallback()
746 __weak void HAL_DCMI_LineEventCallback(DCMI_HandleTypeDef *hdcmi) in HAL_DCMI_LineEventCallback() argument
749 UNUSED(hdcmi); in HAL_DCMI_LineEventCallback()
761 __weak void HAL_DCMI_VsyncEventCallback(DCMI_HandleTypeDef *hdcmi) in HAL_DCMI_VsyncEventCallback() argument
764 UNUSED(hdcmi); in HAL_DCMI_VsyncEventCallback()
777 __weak void HAL_DCMI_FrameEventCallback(DCMI_HandleTypeDef *hdcmi) in HAL_DCMI_FrameEventCallback() argument
780 UNUSED(hdcmi); in HAL_DCMI_FrameEventCallback()
817 HAL_StatusTypeDef HAL_DCMI_ConfigCrop(DCMI_HandleTypeDef *hdcmi, uint32_t X0, uint32_t Y0, uint32_t… in HAL_DCMI_ConfigCrop() argument
821 __HAL_LOCK(hdcmi); in HAL_DCMI_ConfigCrop()
824 hdcmi->State = HAL_DCMI_STATE_BUSY; in HAL_DCMI_ConfigCrop()
833 hdcmi->Instance->CWSIZER = (XSize | (YSize << DCMI_CWSIZE_VLINE_Pos)); in HAL_DCMI_ConfigCrop()
834 hdcmi->Instance->CWSTRTR = (X0 | (Y0 << DCMI_CWSTRT_VST_Pos)); in HAL_DCMI_ConfigCrop()
837 hdcmi->State = HAL_DCMI_STATE_READY; in HAL_DCMI_ConfigCrop()
840 __HAL_UNLOCK(hdcmi); in HAL_DCMI_ConfigCrop()
851 HAL_StatusTypeDef HAL_DCMI_DisableCrop(DCMI_HandleTypeDef *hdcmi) in HAL_DCMI_DisableCrop() argument
854 __HAL_LOCK(hdcmi); in HAL_DCMI_DisableCrop()
857 hdcmi->State = HAL_DCMI_STATE_BUSY; in HAL_DCMI_DisableCrop()
860 hdcmi->Instance->CR &= ~(uint32_t)DCMI_CR_CROP; in HAL_DCMI_DisableCrop()
863 hdcmi->State = HAL_DCMI_STATE_READY; in HAL_DCMI_DisableCrop()
866 __HAL_UNLOCK(hdcmi); in HAL_DCMI_DisableCrop()
877 HAL_StatusTypeDef HAL_DCMI_EnableCrop(DCMI_HandleTypeDef *hdcmi) in HAL_DCMI_EnableCrop() argument
880 __HAL_LOCK(hdcmi); in HAL_DCMI_EnableCrop()
883 hdcmi->State = HAL_DCMI_STATE_BUSY; in HAL_DCMI_EnableCrop()
886 hdcmi->Instance->CR |= (uint32_t)DCMI_CR_CROP; in HAL_DCMI_EnableCrop()
889 hdcmi->State = HAL_DCMI_STATE_READY; in HAL_DCMI_EnableCrop()
892 __HAL_UNLOCK(hdcmi); in HAL_DCMI_EnableCrop()
905 HAL_StatusTypeDef HAL_DCMI_ConfigSyncUnmask(DCMI_HandleTypeDef *hdcmi, DCMI_SyncUnmaskTypeDef *Syn… in HAL_DCMI_ConfigSyncUnmask() argument
908 __HAL_LOCK(hdcmi); in HAL_DCMI_ConfigSyncUnmask()
911 hdcmi->State = HAL_DCMI_STATE_BUSY; in HAL_DCMI_ConfigSyncUnmask()
914 hdcmi->Instance->ESUR = (((uint32_t)SyncUnmask->FrameStartUnmask) | \ in HAL_DCMI_ConfigSyncUnmask()
920 hdcmi->State = HAL_DCMI_STATE_READY; in HAL_DCMI_ConfigSyncUnmask()
923 __HAL_UNLOCK(hdcmi); in HAL_DCMI_ConfigSyncUnmask()
954 HAL_DCMI_StateTypeDef HAL_DCMI_GetState(const DCMI_HandleTypeDef *hdcmi) in HAL_DCMI_GetState() argument
956 return hdcmi->State; in HAL_DCMI_GetState()
965 uint32_t HAL_DCMI_GetError(const DCMI_HandleTypeDef *hdcmi) in HAL_DCMI_GetError() argument
967 return hdcmi->ErrorCode; in HAL_DCMI_GetError()
986 HAL_StatusTypeDef HAL_DCMI_RegisterCallback(DCMI_HandleTypeDef *hdcmi, HAL_DCMI_CallbackIDTypeDef C… in HAL_DCMI_RegisterCallback() argument
994 hdcmi->ErrorCode |= HAL_DCMI_ERROR_INVALID_CALLBACK; in HAL_DCMI_RegisterCallback()
1000 if (hdcmi->State == HAL_DCMI_STATE_READY) in HAL_DCMI_RegisterCallback()
1005 hdcmi->FrameEventCallback = pCallback; in HAL_DCMI_RegisterCallback()
1009 hdcmi->VsyncEventCallback = pCallback; in HAL_DCMI_RegisterCallback()
1013 hdcmi->LineEventCallback = pCallback; in HAL_DCMI_RegisterCallback()
1017 hdcmi->ErrorCallback = pCallback; in HAL_DCMI_RegisterCallback()
1021 hdcmi->MspInitCallback = pCallback; in HAL_DCMI_RegisterCallback()
1025 hdcmi->MspDeInitCallback = pCallback; in HAL_DCMI_RegisterCallback()
1034 else if (hdcmi->State == HAL_DCMI_STATE_RESET) in HAL_DCMI_RegisterCallback()
1039 hdcmi->MspInitCallback = pCallback; in HAL_DCMI_RegisterCallback()
1043 hdcmi->MspDeInitCallback = pCallback; in HAL_DCMI_RegisterCallback()
1048 hdcmi->ErrorCode |= HAL_DCMI_ERROR_INVALID_CALLBACK; in HAL_DCMI_RegisterCallback()
1057 hdcmi->ErrorCode |= HAL_DCMI_ERROR_INVALID_CALLBACK; in HAL_DCMI_RegisterCallback()
1080 HAL_StatusTypeDef HAL_DCMI_UnRegisterCallback(DCMI_HandleTypeDef *hdcmi, HAL_DCMI_CallbackIDTypeDef… in HAL_DCMI_UnRegisterCallback() argument
1084 if (hdcmi->State == HAL_DCMI_STATE_READY) in HAL_DCMI_UnRegisterCallback()
1089hdcmi->FrameEventCallback = HAL_DCMI_FrameEventCallback; /* Legacy weak FrameEventCallback */ in HAL_DCMI_UnRegisterCallback()
1093hdcmi->VsyncEventCallback = HAL_DCMI_VsyncEventCallback; /* Legacy weak VsyncEventCallback */ in HAL_DCMI_UnRegisterCallback()
1097hdcmi->LineEventCallback = HAL_DCMI_LineEventCallback; /* Legacy weak LineEventCallback */ in HAL_DCMI_UnRegisterCallback()
1101hdcmi->ErrorCallback = HAL_DCMI_ErrorCallback; /* Legacy weak ErrorCallback */ in HAL_DCMI_UnRegisterCallback()
1105 hdcmi->MspInitCallback = HAL_DCMI_MspInit; in HAL_DCMI_UnRegisterCallback()
1109 hdcmi->MspDeInitCallback = HAL_DCMI_MspDeInit; in HAL_DCMI_UnRegisterCallback()
1114 hdcmi->ErrorCode |= HAL_DCMI_ERROR_INVALID_CALLBACK; in HAL_DCMI_UnRegisterCallback()
1120 else if (hdcmi->State == HAL_DCMI_STATE_RESET) in HAL_DCMI_UnRegisterCallback()
1125 hdcmi->MspInitCallback = HAL_DCMI_MspInit; in HAL_DCMI_UnRegisterCallback()
1129 hdcmi->MspDeInitCallback = HAL_DCMI_MspDeInit; in HAL_DCMI_UnRegisterCallback()
1134 hdcmi->ErrorCode |= HAL_DCMI_ERROR_INVALID_CALLBACK; in HAL_DCMI_UnRegisterCallback()
1143 hdcmi->ErrorCode |= HAL_DCMI_ERROR_INVALID_CALLBACK; in HAL_DCMI_UnRegisterCallback()
1174 DCMI_HandleTypeDef *hdcmi = (DCMI_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent; in DCMI_DMAXferCplt() local
1176 if (hdcmi->XferCount != 0U) in DCMI_DMAXferCplt()
1179 tmp = ((((DMA_Stream_TypeDef *)(hdcmi->DMA_Handle->Instance))->CR) & DMA_SxCR_CT); in DCMI_DMAXferCplt()
1180 if (((hdcmi->XferCount % 2U) == 0U) && (tmp != 0U)) in DCMI_DMAXferCplt()
1182 tmp = ((DMA_Stream_TypeDef *)(hdcmi->DMA_Handle->Instance))->M0AR; in DCMI_DMAXferCplt()
1183 (void)HAL_DMAEx_ChangeMemory(hdcmi->DMA_Handle, (tmp + (8U * hdcmi->XferSize)), MEMORY0); in DCMI_DMAXferCplt()
1184 hdcmi->XferCount--; in DCMI_DMAXferCplt()
1187 else if ((((DMA_Stream_TypeDef *)(hdcmi->DMA_Handle->Instance))->CR & DMA_SxCR_CT) == 0U) in DCMI_DMAXferCplt()
1189 tmp = ((DMA_Stream_TypeDef *)(hdcmi->DMA_Handle->Instance))->M1AR; in DCMI_DMAXferCplt()
1190 (void)HAL_DMAEx_ChangeMemory(hdcmi->DMA_Handle, (tmp + (8U * hdcmi->XferSize)), MEMORY1); in DCMI_DMAXferCplt()
1191 hdcmi->XferCount--; in DCMI_DMAXferCplt()
1199 else if ((((DMA_Stream_TypeDef *)(hdcmi->DMA_Handle->Instance))->CR & DMA_SxCR_CT) != 0U) in DCMI_DMAXferCplt()
1201 ((DMA_Stream_TypeDef *)(hdcmi->DMA_Handle->Instance))->M0AR = hdcmi->pBuffPtr; in DCMI_DMAXferCplt()
1204 else if ((((DMA_Stream_TypeDef *)(hdcmi->DMA_Handle->Instance))->CR & DMA_SxCR_CT) == 0U) in DCMI_DMAXferCplt()
1206 tmp = hdcmi->pBuffPtr; in DCMI_DMAXferCplt()
1207 ((DMA_Stream_TypeDef *)(hdcmi->DMA_Handle->Instance))->M1AR = (tmp + (4U * hdcmi->XferSize)); in DCMI_DMAXferCplt()
1208 hdcmi->XferCount = hdcmi->XferTransferNumber; in DCMI_DMAXferCplt()
1216 if (hdcmi->XferCount == hdcmi->XferTransferNumber) in DCMI_DMAXferCplt()
1219 __HAL_DCMI_ENABLE_IT(hdcmi, DCMI_IT_FRAME); in DCMI_DMAXferCplt()
1222 if ((hdcmi->Instance->CR & DCMI_CR_CM) == DCMI_MODE_SNAPSHOT) in DCMI_DMAXferCplt()
1224 hdcmi->State = HAL_DCMI_STATE_READY; in DCMI_DMAXferCplt()
1237 DCMI_HandleTypeDef *hdcmi = (DCMI_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent; in DCMI_DMAError() local
1239 if (hdcmi->DMA_Handle->ErrorCode != HAL_DMA_ERROR_FE) in DCMI_DMAError()
1242 hdcmi->State = HAL_DCMI_STATE_READY; in DCMI_DMAError()
1245 hdcmi->ErrorCode |= HAL_DCMI_ERROR_DMA; in DCMI_DMAError()
1251 hdcmi->ErrorCallback(hdcmi); in DCMI_DMAError()
1253 HAL_DCMI_ErrorCallback(hdcmi); in DCMI_DMAError()