xref: /openbmc/linux/drivers/media/v4l2-core/Kconfig (revision 5e2421ce)
1# SPDX-License-Identifier: GPL-2.0-only
2#
3# Generic video config states
4#
5
6# Enable the V4L2 core and API
7config VIDEO_V4L2
8	tristate
9	depends on (I2C || I2C=n) && VIDEO_DEV
10	select RATIONAL
11	select VIDEOBUF2_V4L2 if VIDEOBUF2_CORE
12	default (I2C || I2C=n) && VIDEO_DEV
13
14config VIDEO_V4L2_I2C
15	bool
16	depends on I2C && VIDEO_V4L2
17	default y
18
19config VIDEO_V4L2_SUBDEV_API
20	bool "V4L2 sub-device userspace API"
21	depends on VIDEO_DEV && MEDIA_CONTROLLER
22	help
23	  Enables the V4L2 sub-device pad-level userspace API used to configure
24	  video format, size and frame rate between hardware blocks.
25
26	  This API is mostly used by camera interfaces in embedded platforms.
27
28config VIDEO_ADV_DEBUG
29	bool "Enable advanced debug functionality on V4L2 drivers"
30	help
31	  Say Y here to enable advanced debugging functionality on some
32	  V4L devices.
33	  In doubt, say N.
34
35config VIDEO_FIXED_MINOR_RANGES
36	bool "Enable old-style fixed minor ranges on drivers/video devices"
37	help
38	  Say Y here to enable the old-style fixed-range minor assignments.
39	  Only useful if you rely on the old behavior and use mknod instead of udev.
40
41	  When in doubt, say N.
42
43# Used by drivers that need tuner.ko
44config VIDEO_TUNER
45	tristate
46
47# Used by drivers that need v4l2-jpeg.ko
48config V4L2_JPEG_HELPER
49	tristate
50
51# Used by drivers that need v4l2-h264.ko
52config V4L2_H264
53	tristate
54
55# Used by drivers that need v4l2-vp9.ko
56config V4L2_VP9
57	tristate
58
59# Used by drivers that need v4l2-mem2mem.ko
60config V4L2_MEM2MEM_DEV
61	tristate
62	depends on VIDEOBUF2_CORE
63
64# Used by LED subsystem flash drivers
65config V4L2_FLASH_LED_CLASS
66	tristate "V4L2 flash API for LED flash class devices"
67	depends on VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API
68	depends on LEDS_CLASS_FLASH
69	select V4L2_ASYNC
70	help
71	  Say Y here to enable V4L2 flash API support for LED flash
72	  class drivers.
73
74	  When in doubt, say N.
75
76config V4L2_FWNODE
77	tristate
78	select V4L2_ASYNC
79
80config V4L2_ASYNC
81	tristate
82
83# Used by drivers that need Videobuf modules
84config VIDEOBUF_GEN
85	tristate
86
87config VIDEOBUF_DMA_SG
88	tristate
89	select VIDEOBUF_GEN
90
91config VIDEOBUF_VMALLOC
92	tristate
93	select VIDEOBUF_GEN
94
95config VIDEOBUF_DMA_CONTIG
96	tristate
97	select VIDEOBUF_GEN
98