2019-05-19 05:07:45 -07:00
|
|
|
# SPDX-License-Identifier: GPL-2.0-only
|
2012-06-14 12:35:52 -07:00
|
|
|
#
|
|
|
|
# Generic video config states
|
|
|
|
#
|
|
|
|
|
2019-08-15 09:48:03 -07:00
|
|
|
config VIDEO_V4L2_I2C
|
|
|
|
bool
|
media: Kconfig: cleanup VIDEO_DEV dependencies
media Kconfig has two entries associated to V4L API:
VIDEO_DEV and VIDEO_V4L2.
On Kernel 2.6.x, there were two V4L APIs, each one with its own flag.
VIDEO_DEV were meant to:
1) enable Video4Linux and make its Kconfig options to appear;
2) it makes the Kernel build the V4L core.
while VIDEO_V4L2 where used to distinguish between drivers that
implement the newer API and drivers that implemented the former one.
With time, such meaning changed, specially after the removal of
all V4L version 1 drivers.
At the current implementation, VIDEO_DEV only does (1): it enables
the media options related to V4L, that now has:
menu "Video4Linux options"
visible if VIDEO_DEV
source "drivers/media/v4l2-core/Kconfig"
endmenu
but it doesn't affect anymore the V4L core drivers.
The rationale is that the V4L2 core has a "soft" dependency
at the I2C bus, and now requires to select a number of other
Kconfig options:
config VIDEO_V4L2
tristate
depends on (I2C || I2C=n) && VIDEO_DEV
select RATIONAL
select VIDEOBUF2_V4L2 if VIDEOBUF2_CORE
default (I2C || I2C=n) && VIDEO_DEV
In the past, merging them would be tricky, but it seems that it is now
possible to merge those symbols, in order to simplify V4L dependencies.
Let's keep VIDEO_DEV, as this one is used on some make *defconfig
configurations.
Suggested-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Reviewed-by: Jacopo Mondi <jacopo@jmondi.org>
Reviewed-by: Neil Armstrong <narmstrong@baylibre.com> # for meson-vdec & meson-ge2d
Acked-by: Andrzej Pietrasiewicz <andrzejtp2010@gmail.com>
Acked-by: Łukasz Stelmach <l.stelmach@samsung.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
2022-03-12 23:25:46 -07:00
|
|
|
depends on I2C && VIDEO_DEV
|
2019-08-15 09:48:03 -07:00
|
|
|
default y
|
|
|
|
|
2020-03-24 05:50:33 -07:00
|
|
|
config VIDEO_V4L2_SUBDEV_API
|
2022-06-18 11:54:19 -07:00
|
|
|
bool
|
2020-03-24 05:50:33 -07:00
|
|
|
depends on VIDEO_DEV && MEDIA_CONTROLLER
|
|
|
|
help
|
|
|
|
Enables the V4L2 sub-device pad-level userspace API used to configure
|
|
|
|
video format, size and frame rate between hardware blocks.
|
|
|
|
|
|
|
|
This API is mostly used by camera interfaces in embedded platforms.
|
|
|
|
|
2012-08-14 12:07:25 -07:00
|
|
|
config VIDEO_ADV_DEBUG
|
|
|
|
bool "Enable advanced debug functionality on V4L2 drivers"
|
2019-03-20 03:39:44 -07:00
|
|
|
help
|
2012-08-14 12:07:25 -07:00
|
|
|
Say Y here to enable advanced debugging functionality on some
|
|
|
|
V4L devices.
|
|
|
|
In doubt, say N.
|
|
|
|
|
|
|
|
config VIDEO_FIXED_MINOR_RANGES
|
|
|
|
bool "Enable old-style fixed minor ranges on drivers/video devices"
|
2019-03-20 03:39:44 -07:00
|
|
|
help
|
2012-08-14 12:07:25 -07:00
|
|
|
Say Y here to enable the old-style fixed-range minor assignments.
|
|
|
|
Only useful if you rely on the old behavior and use mknod instead of udev.
|
|
|
|
|
|
|
|
When in doubt, say N.
|
|
|
|
|
2012-08-20 06:32:19 -07:00
|
|
|
# Used by drivers that need tuner.ko
|
|
|
|
config VIDEO_TUNER
|
2012-06-14 12:35:52 -07:00
|
|
|
tristate
|
2012-08-20 06:32:19 -07:00
|
|
|
|
2020-03-18 11:35:32 -07:00
|
|
|
# Used by drivers that need v4l2-jpeg.ko
|
|
|
|
config V4L2_JPEG_HELPER
|
|
|
|
tristate
|
|
|
|
|
2020-04-03 15:13:41 -07:00
|
|
|
# Used by drivers that need v4l2-h264.ko
|
|
|
|
config V4L2_H264
|
|
|
|
tristate
|
|
|
|
|
2021-11-16 07:38:36 -07:00
|
|
|
# Used by drivers that need v4l2-vp9.ko
|
|
|
|
config V4L2_VP9
|
|
|
|
tristate
|
|
|
|
|
2012-08-20 06:32:19 -07:00
|
|
|
# Used by drivers that need v4l2-mem2mem.ko
|
|
|
|
config V4L2_MEM2MEM_DEV
|
2018-01-04 04:47:28 -07:00
|
|
|
tristate
|
|
|
|
depends on VIDEOBUF2_CORE
|
2012-06-14 12:35:52 -07:00
|
|
|
|
2015-06-19 00:31:47 -07:00
|
|
|
# Used by LED subsystem flash drivers
|
|
|
|
config V4L2_FLASH_LED_CLASS
|
|
|
|
tristate "V4L2 flash API for LED flash class devices"
|
2022-06-18 11:54:19 -07:00
|
|
|
depends on VIDEO_DEV
|
2015-06-19 00:31:47 -07:00
|
|
|
depends on LEDS_CLASS_FLASH
|
2022-06-18 11:54:19 -07:00
|
|
|
select MEDIA_CONTROLLER
|
2021-03-05 10:38:39 -07:00
|
|
|
select V4L2_ASYNC
|
2022-06-18 11:54:19 -07:00
|
|
|
select VIDEO_V4L2_SUBDEV_API
|
2019-03-20 03:39:44 -07:00
|
|
|
help
|
2015-06-19 00:31:47 -07:00
|
|
|
Say Y here to enable V4L2 flash API support for LED flash
|
|
|
|
class drivers.
|
|
|
|
|
|
|
|
When in doubt, say N.
|
|
|
|
|
2016-08-12 04:05:51 -07:00
|
|
|
config V4L2_FWNODE
|
|
|
|
tristate
|
2021-03-05 10:38:39 -07:00
|
|
|
select V4L2_ASYNC
|
|
|
|
|
|
|
|
config V4L2_ASYNC
|
|
|
|
tristate
|
2016-08-12 04:05:51 -07:00
|
|
|
|
2023-06-27 05:51:04 -07:00
|
|
|
config V4L2_CCI
|
|
|
|
tristate
|
|
|
|
|
|
|
|
config V4L2_CCI_I2C
|
|
|
|
tristate
|
|
|
|
depends on I2C
|
|
|
|
select REGMAP_I2C
|
|
|
|
select V4L2_CCI
|