# SPDX-License-Identifier: GPL-2.0-only
config VIDEO_MEDIATEK_VCODEC_SCP
	bool

config VIDEO_MEDIATEK_VCODEC_VPU
	bool

config VIDEO_MEDIATEK_VCODEC
	tristate "Mediatek Video Codec driver"
	depends on V4L_MEM2MEM_DRIVERS
	depends on MTK_IOMMU || COMPILE_TEST
	depends on VIDEO_DEV
	depends on ARCH_MEDIATEK || COMPILE_TEST
	depends on VIDEO_MEDIATEK_VPU || MTK_SCP
	# The two following lines ensure we have the same state ("m" or "y") as
	# our dependencies, to avoid missing symbols during link.
	depends on VIDEO_MEDIATEK_VPU || !VIDEO_MEDIATEK_VPU
	depends on MTK_SCP || !MTK_SCP
	depends on MTK_SMI || (COMPILE_TEST && MTK_SMI=n)
	select VIDEOBUF2_DMA_CONTIG
	select V4L2_MEM2MEM_DEV
	select VIDEO_MEDIATEK_VCODEC_VPU if VIDEO_MEDIATEK_VPU
	select VIDEO_MEDIATEK_VCODEC_SCP if MTK_SCP
	select V4L2_H264
	select V4L2_VP9
	select MEDIA_CONTROLLER
	select MEDIA_CONTROLLER_REQUEST_API
	help
	  Mediatek video codec driver provides HW capability to
	  encode and decode in a range of video formats on MT8173
	  and MT8183.

	  Note that support for MT8173 requires VIDEO_MEDIATEK_VPU to
	  also be selected. Support for MT8183 depends on MTK_SCP.

	  To compile this driver as modules, choose M here: the
	  modules will be called mtk-vcodec-dec and mtk-vcodec-enc.