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

if VIDEO_IMX_MEDIA
menu "i.MX5/6/7 Media Sub devices"

config VIDEO_IMX_CSI
	tristate "i.MX5/6 Camera Sensor Interface driver"
	depends on VIDEO_IMX_MEDIA && VIDEO_DEV && I2C
	default y
	help
	  A video4linux camera sensor interface driver for i.MX5/6.

config VIDEO_IMX7_CSI
	tristate "i.MX6UL/L / i.MX7 Camera Sensor Interface driver"
	depends on VIDEO_IMX_MEDIA && VIDEO_DEV && I2C
	default y
	help
	  Enable support for video4linux camera sensor interface driver for
	  i.MX6UL/L or i.MX7.
endmenu
endif

config VIDEO_IMX_CAPTURE
	tristate "i.MX V4L2 media core driver"
	depends on ARCH_MXC || COMPILE_TEST
	depends on MEDIA_CONTROLLER && VIDEO_V4L2
	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_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_ISI_CORE
	bool "IMX8 Image Sensor Interface Core Driver"
	depends on VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API
	default y

config IMX8_ISI_CAPTURE
	bool "IMX8 Image Sensor Interface Capture Device Driver"
	depends on IMX8_ISI_CORE
	select VIDEOBUF2_DMA_CONTIG
	default y

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

config IMX8_MIPI_CSI2
	tristate "IMX8 MIPI CSI2 Controller"
	depends on VIDEO_V4L2 && 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_V4L2 && VIDEO_V4L2_SUBDEV_API
	default y
	help
	  Enable support for video4linux MIPI CSI2 Samsung driver for
	  i.MX8MN platform.

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

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

endmenu
endif  #VIDEO_IMX_CAPTURE
