# SPDX-License-Identifier: GPL-2.0
config VIDEO_IMX_MEDIA
	tristate "i.MX5/6 V4L2 media drivers"
	depends on ARCH_MXC || COMPILE_TEST
	depends on HAS_DMA
	depends on VIDEO_DEV
	depends on VIDEO_DEV
	depends on IMX_IPUV3_CORE
	select MEDIA_CONTROLLER
	select V4L2_FWNODE
	select V4L2_MEM2MEM_DEV
	select VIDEOBUF2_DMA_CONTIG
	select VIDEO_V4L2_SUBDEV_API
	help
	  Say yes here to enable support for video4linux media controller
	  drivers for the i.MX5/6 SOC.

config VIDEO_IMX_CAPTURE
	tristate "i.MX V4L2 media core driver"
	depends on ARCH_MXC || COMPILE_TEST
	depends on MEDIA_CONTROLLER && VIDEO_DEV
	depends on VIDEO_V4L2_SUBDEV_API
	depends on HAS_DMA
	select VIDEOBUF2_DMA_CONTIG
	select V4L2_FWNODE
	help
	  Say yes here to enable support for video4linux media controller
	  driver for the i.MX5/6 SOC.

if VIDEO_IMX_CAPTURE
menu "i.MX8QXP/QM Camera ISI/MIPI Features support"

config IMX8_MIPI_CSI2
	tristate "IMX8 MIPI CSI2 Controller"
	depends on VIDEO_DEV && VIDEO_V4L2_SUBDEV_API
	default y
	help
	  Enable support for video4linux camera sensor interface driver for
	  i.MX8QM/QXP platform.

config IMX8_MIPI_CSI2_SAM
	tristate "IMX8 MIPI CSI2 SAMSUNG Controller"
	depends on VIDEO_DEV && VIDEO_V4L2_SUBDEV_API
	default y
	help
	  Enable support for video4linux MIPI CSI2 Samsung driver for
	  i.MX8MN platform.

config IMX8_ISI_HW
	tristate "IMX8 Image Sensor Interface hardware driver"
	depends on VIDEO_DEV && VIDEO_V4L2_SUBDEV_API
	default y
	help
	  ISI hardware driver is used to export functions to config
	  ISI registers and it is shared by isi capture and mem2mem
	  driver

config IMX8_ISI_CORE
	tristate "IMX8 Image Sensor Interface Core Driver"
	depends on IMX8_ISI_CAPTURE && IMX8_ISI_M2M
	default y

config IMX8_ISI_CAPTURE
	tristate "IMX8 Image Sensor Interface Capture Device Driver"
	depends on VIDEO_DEV && VIDEO_V4L2_SUBDEV_API
	depends on IMX8_ISI_HW
	select VIDEOBUF2_DMA_CONTIG
	default y

config IMX8_ISI_M2M
	tristate "IMX8 Image Sensor Interface Memory to Memory Device Driver"
	select V4L2_MEM2MEM_DEV
	depends on IMX8_ISI_HW
	default y

config GMSL_MAX9286
	tristate "GMSL MAX8286"
	depends on VIDEO_DEV && VIDEO_V4L2_SUBDEV_API
	default y
	help
	  Enable support for video4linux camera sensor driver for GMSL MAX9286

config IMX8_MEDIA_DEVICE
	tristate "IMX8 Media Device Driver"
	select V4L2_FWNODE
	default y
	help
	  This media device is a virtual device which used to manage
	  all modules in image subsystem of imx8qxp/qm platform.

config IMX8_PARALLEL_CSI
	tristate "IMX8 Parallel Capture Controller"
	depends on VIDEO_DEV && VIDEO_V4L2_SUBDEV_API
	default y
	help
	  Enable support for video4linux parallel camera sensor interface
	  driver for i.MX8QM/QXP platform.

source "drivers/staging/media/imx/hdmirx/Kconfig"

endmenu
endif  #VIDEO_IMX_CAPTURE

config DWC_MIPI_CSI2_HOST
       tristate "IMX93 MIPI CSI2 DWC Controller"
       depends on VIDEO_DEV && VIDEO_V4L2_SUBDEV_API
       default y
       help
         Enable support for video4linux MIPI CSI2 DWC driver for
         i.MX93 platform.
