# 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 HAS_DMA
	depends on VIDEO_DEV
	depends on VIDEO_DEV
	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
	  driver for the i.MX5/6 SOC.

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

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

config VIDEO_IMX7_CSI
	tristate "i.MX6UL/L / i.MX7 / i.MX8M Camera Sensor Interface driver"
	default y
	help
	  Enable support for video4linux camera sensor interface driver for
	  i.MX6UL/L, i.MX7 or i.MX8M.
endmenu
endif
