Commit d3ff6cbe authored by Alain Volmat's avatar Alain Volmat Committed by Erwan Gouriou
Browse files

dcmipp: allow PIPE_SetConfig when pipe state is READY



Allow to call HAL_DCMIPP_PIPE_SetConfig when the pipe state
is READY. Currently it is only possible to use this function
if the pipe state is RESET and ERROR states.
Indeed, it is possible to reconfigure the PIPE as soon as the
pipe is not currently being used, aka in the READY state.
With that done, it becomes possible to change the PIPE
configuration between two use-cases without having to
DeInit / Init the HAL_DCMIPP or use the unitary pixel packer
functions.

Signed-off-by: default avatarAlain Volmat <alain.volmat@foss.st.com>
parent e61c99ef
Loading
Loading
Loading
Loading
+9 −0
Original line number Diff line number Diff line
@@ -61,4 +61,13 @@ Patch List:
     Impacted file: 
      stm32cube/stm32h7rsxx/drivers/src/stm32h7rsxx_hal_sdio.c    

   *Allow usage of HAL_DCMIPP_PIPE_SetConfig when DCMIPP is in READY state
     Allow performing PIPE configuration when the DCMIPP device is not only
     in RESET and ERROR states but also in READY state. This allow to
     reconfigure a DCMIPP pipe between 2 use-cases without having to
     call HAL_DCMIPP_DeInit / HAL_DCMIPP_Init.
     Impacted file:
      stm32cube/stm32h7rsxx/drivers/src/stm32h7rsxx_hal_dcmipp.c
     Internal reference: 215688

   See release_note.html from STM32Cube
+2 −1
Original line number Diff line number Diff line
@@ -490,7 +490,8 @@ HAL_StatusTypeDef HAL_DCMIPP_PIPE_SetConfig(DCMIPP_HandleTypeDef *hdcmipp, uint3

  if (hdcmipp->State == HAL_DCMIPP_STATE_READY)
  {
    if ((pipe_state == HAL_DCMIPP_PIPE_STATE_RESET) || (pipe_state == HAL_DCMIPP_PIPE_STATE_ERROR))
    if ((pipe_state == HAL_DCMIPP_PIPE_STATE_READY) || (pipe_state == HAL_DCMIPP_PIPE_STATE_RESET) ||
        (pipe_state == HAL_DCMIPP_PIPE_STATE_ERROR))
    {
      /* Update the DCMIPP PIPE state */
      hdcmipp->PipeState[Pipe] = HAL_DCMIPP_PIPE_STATE_BUSY;
+10 −1
Original line number Diff line number Diff line
@@ -47,4 +47,13 @@ Patch List:
    Impacted files:
     drivers/include/Legacy/stm32_hal_legacy.h

   *Allow usage of HAL_DCMIPP_PIPE_SetConfig when DCMIPP is in READY state
     Allow performing PIPE configuration when the DCMIPP device is not only
     in RESET and ERROR states but also in READY state. This allow to
     reconfigure a DCMIPP pipe between 2 use-cases without having to
     call HAL_DCMIPP_DeInit / HAL_DCMIPP_Init.
     Impacted file:
      stm32cube/stm32mp13xx/drivers/src/stm32mp13xx_hal_dcmipp.c
     Internal reference: 215688

   See release_note.html from STM32Cube
+2 −1
Original line number Diff line number Diff line
@@ -484,7 +484,8 @@ HAL_StatusTypeDef HAL_DCMIPP_PIPE_Config(DCMIPP_HandleTypeDef *phdcmipp, uint32_

  if (phdcmipp->State == HAL_DCMIPP_STATE_READY)
  {
    if ((pipe_state == HAL_DCMIPP_PIPE_STATE_RESET) || \
    if ((pipe_state == HAL_DCMIPP_PIPE_STATE_READY) ||
	(pipe_state == HAL_DCMIPP_PIPE_STATE_RESET) ||
        (pipe_state == HAL_DCMIPP_PIPE_STATE_ERROR))
    {
      /* Update the DCMIPP PIPE state */
+9 −0
Original line number Diff line number Diff line
@@ -63,4 +63,13 @@ Patch List:
   - The stm32cube/stm32mp2xx/drivers/src/stm32mp2xx_ll_rcc.c file was modified
    for retrieving the clock configuration of the I2C8 peripheral.

   *Allow usage of HAL_DCMIPP_PIPE_SetConfig when DCMIPP is in READY state
     Allow performing PIPE configuration when the DCMIPP device is not only
     in RESET and ERROR states but also in READY state. This allow to
     reconfigure a DCMIPP pipe between 2 use-cases without having to
     call HAL_DCMIPP_DeInit / HAL_DCMIPP_Init.
     Impacted file:
      stm32cube/stm32mp2xx/drivers/src/stm32mp2xx_hal_dcmipp.c
     Internal reference: 215688

   See release_note.html from STM32Cube
Loading