Browse Source

drivers: video: introduction of the stm32 DCMIPP driver

The STM32 Digital Camera Memory Interface Pixel Processor (DCMIPP)
is a multi-pipeline camera interface allowing to capture
and process frames from parallel or CSI interfaces depending on its
version.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
pull/91043/head
Alain Volmat 3 months ago committed by Benjamin Cabé
parent
commit
cd8dccf211
  1. 1
      drivers/video/CMakeLists.txt
  2. 2
      drivers/video/Kconfig
  3. 36
      drivers/video/Kconfig.stm32_dcmipp
  4. 1321
      drivers/video/video_stm32_dcmipp.c
  5. 5
      tests/drivers/build_all/video/testcase.yaml

1
drivers/video/CMakeLists.txt

@ -24,5 +24,6 @@ zephyr_library_sources_ifdef(CONFIG_VIDEO_EMUL_IMAGER video_emul_imager.c) @@ -24,5 +24,6 @@ zephyr_library_sources_ifdef(CONFIG_VIDEO_EMUL_IMAGER video_emul_imager.c)
zephyr_library_sources_ifdef(CONFIG_VIDEO_EMUL_RX video_emul_rx.c)
zephyr_library_sources_ifdef(CONFIG_VIDEO_IMX335 imx335.c)
zephyr_library_sources_ifdef(CONFIG_VIDEO_ST_MIPID02 video_st_mipid02.c)
zephyr_library_sources_ifdef(CONFIG_VIDEO_STM32_DCMIPP video_stm32_dcmipp.c)
zephyr_linker_sources(DATA_SECTIONS video.ld)

2
drivers/video/Kconfig

@ -94,4 +94,6 @@ source "drivers/video/Kconfig.imx335" @@ -94,4 +94,6 @@ source "drivers/video/Kconfig.imx335"
source "drivers/video/Kconfig.st_mipid02"
source "drivers/video/Kconfig.stm32_dcmipp"
endif # VIDEO

36
drivers/video/Kconfig.stm32_dcmipp

@ -0,0 +1,36 @@ @@ -0,0 +1,36 @@
# STM32 DCMIPP driver configuration options
# Copyright (c) 2025 STMicroelectronics.
# SPDX-License-Identifier: Apache-2.0
config VIDEO_STM32_DCMIPP
bool "STM32 Digital Camera Memory Interface Pixel Processor (DCMIPP) driver"
default y
depends on DT_HAS_ST_STM32_DCMIPP_ENABLED
select USE_STM32_HAL_DCMIPP
select USE_STM32_HAL_RIF if SOC_SERIES_STM32N6X
help
Enable driver for STM32 Digital Camera Memory Interface Pixel Processor
(DCMIPP) peripheral
if VIDEO_STM32_DCMIPP
config VIDEO_STM32_DCMIPP_SENSOR_WIDTH
int "Width of the sensor frame"
default 2592
help
Width of the sensor video frame.
config VIDEO_STM32_DCMIPP_SENSOR_HEIGHT
int "Height of the sensor frame"
default 1944
help
Height of the sensor video frame.
config VIDEO_STM32_DCMIPP_SENSOR_PIXEL_FORMAT
string "Pixel format of the sensor frame"
default "RG12"
help
Pixel format of the sensor video frame.
endif

1321
drivers/video/video_stm32_dcmipp.c

File diff suppressed because it is too large Load Diff

5
tests/drivers/build_all/video/testcase.yaml

@ -31,3 +31,8 @@ tests: @@ -31,3 +31,8 @@ tests:
drivers.video.esp32_dvp.build:
platform_allow:
- esp32s3_eye/esp32s3/procpu
drivers.video.stm32_dcmipp.build:
platform_allow:
- stm32n6570_dk/stm32n657xx/sb
extra_args:
- platform:stm32n6570_dk/stm32n657xx/sb:SHIELD=st_b_cams_imx_mb1854

Loading…
Cancel
Save