Home
last modified time | relevance | path

Searched full:v4l2 (Results 1 – 25 of 1311) sorted by relevance

12345678910>>...53

/linux-6.15/Documentation/driver-api/media/
Dv4l2-core.rst9 v4l2-intro
10 v4l2-dev
11 v4l2-device
12 v4l2-fh
13 v4l2-subdev
14 v4l2-event
15 v4l2-controls
16 v4l2-videobuf2
17 v4l2-dv-timings
18 v4l2-flash-led-class
[all …]
Dv4l2-intro.rst6 The V4L2 drivers tend to be very complex due to the complexity of the
8 /dev, and create also non-V4L2 devices such as DVB, ALSA, FB, I2C and input
11 Especially the fact that V4L2 drivers have to setup supporting ICs to
32 A good example to look at as a reference is the v4l2-pci-skeleton.c
34 a PCI capture card, and demonstrates how to use the V4L2 driver
46 3) Creating V4L2 device nodes (/dev/videoX, /dev/vbiX and /dev/radioX)
61 \-V4L2 device nodes
66 Structure of the V4L2 framework
71 sub-device instances, the video_device struct stores V4L2 device node data
74 The V4L2 framework also optionally integrates with the media framework. If a
/linux-6.15/drivers/media/v4l2-core/
DMakefile3 # Makefile for the V4L2 core
11 videodev-objs := v4l2-dev.o v4l2-ioctl.o v4l2-device.o v4l2-fh.o \
12 v4l2-event.o v4l2-subdev.o v4l2-common.o \
13 v4l2-ctrls-core.o v4l2-ctrls-api.o \
14 v4l2-ctrls-request.o v4l2-ctrls-defs.o
18 videodev-$(CONFIG_COMPAT) += v4l2-compat-ioctl32.o
19 videodev-$(CONFIG_MEDIA_CONTROLLER) += v4l2-mc.o
20 videodev-$(CONFIG_SPI) += v4l2-spi.o
21 videodev-$(CONFIG_TRACEPOINTS) += v4l2-trace.o
22 videodev-$(CONFIG_VIDEO_V4L2_I2C) += v4l2-i2c.o
[all …]
DKconfig15 Enables the V4L2 sub-device pad-level userspace API used to configure
21 bool "Enable advanced debug functionality on V4L2 drivers"
39 # Used by drivers that need v4l2-jpeg.ko
43 # Used by drivers that need v4l2-h264.ko
47 # Used by drivers that need v4l2-vp9.ko
51 # Used by drivers that need v4l2-mem2mem.ko
58 tristate "V4L2 flash API for LED flash class devices"
65 Say Y here to enable V4L2 flash API support for LED flash
/linux-6.15/drivers/media/usb/em28xx/
Dem28xx-video.c29 #include <media/v4l2-common.h>
30 #include <media/v4l2-ioctl.h>
31 #include <media/v4l2-event.h>
65 MODULE_DESCRIPTION(DRIVER_DESC " - v4l2 interface");
128 struct em28xx_v4l2 *v4l2 = dev->v4l2; in norm_maxw() local
131 return v4l2->sensor_xres; in norm_maxw()
141 struct em28xx_v4l2 *v4l2 = dev->v4l2; in norm_maxh() local
144 return v4l2->sensor_yres; in norm_maxh()
149 return (v4l2->norm & V4L2_STD_625_50) ? 576 : 480; in norm_maxh()
177 struct v4l2_device *v4l2_dev = &dev->v4l2->v4l2_dev; in em28xx_wake_i2c()
[all …]
Dem28xx-camera.c13 #include <media/v4l2-common.h>
304 struct em28xx_v4l2 *v4l2 = dev->v4l2; in em28xx_init_camera() local
316 v4l2->sensor_xres = 640; in em28xx_init_camera()
317 v4l2->sensor_yres = 480; in em28xx_init_camera()
330 v4l2->sensor_xtal = 4300000; in em28xx_init_camera()
331 pdata.xtal = v4l2->sensor_xtal; in em28xx_init_camera()
333 v4l2_i2c_new_subdev_board(&v4l2->v4l2_dev, adap, in em28xx_init_camera()
336 v4l2->vinmode = EM28XX_VINMODE_RGB8_GRBG; in em28xx_init_camera()
337 v4l2->vinctl = 0x00; in em28xx_init_camera()
342 v4l2->sensor_xres = 1280; in em28xx_init_camera()
[all …]
Dem28xx-vbi.c26 struct em28xx_v4l2 *v4l2 = dev->v4l2; in vbi_queue_setup() local
27 unsigned long size = v4l2->vbi_width * v4l2->vbi_height * 2; in vbi_queue_setup()
47 struct em28xx_v4l2 *v4l2 = dev->v4l2; in vbi_buffer_prepare() local
50 size = v4l2->vbi_width * v4l2->vbi_height * 2; in vbi_buffer_prepare()
/linux-6.15/Documentation/userspace-api/media/
Dvideodev2.h.rst.exceptions170 # V4L2 capability defines
203 # V4L2 pix flags
209 # V4L2 format flags
223 # V4L2 timecode types
230 # V4L2 timecode flags
237 # V4L2 JPEG markers
244 # V4L2 framebuffer caps and flags
270 replace define V4L2_STD_PAL_B v4l2-std-id
271 replace define V4L2_STD_PAL_B1 v4l2-std-id
272 replace define V4L2_STD_PAL_G v4l2-std-id
[all …]
Dglossary.rst124 - :term:`V4L2 API`.
137 :term:`V4L2 Hardware` device driver that requires :term:`MC API`.
188 V4L2 API
189 **V4L2 userspace API**
192 control a V4L2 hardware.
194 V4L2 Device Node
197 The V4L2 device node naming is specified at :ref:`v4l2_device_naming`.
199 V4L2 Hardware
200 Part of the media hardware which is supported by the :term:`V4L2 API`.
202 V4L2 Sub-device
[all …]
/linux-6.15/Documentation/userspace-api/media/v4l/
Dlibv4l-introduction.rst25 found in V4L2 drivers into a few common RGB and YUY formats.
27 It currently accepts the following V4L2 driver formats:
28 :ref:`V4L2_PIX_FMT_BGR24 <V4L2-PIX-FMT-BGR24>`,
29 :ref:`V4L2_PIX_FMT_NV12_16L16 <V4L2-PIX-FMT-NV12-16L16>`,
30 :ref:`V4L2_PIX_FMT_JPEG <V4L2-PIX-FMT-JPEG>`,
31 :ref:`V4L2_PIX_FMT_MJPEG <V4L2-PIX-FMT-MJPEG>`,
32 :ref:`V4L2_PIX_FMT_MR97310A <V4L2-PIX-FMT-MR97310A>`,
33 :ref:`V4L2_PIX_FMT_OV511 <V4L2-PIX-FMT-OV511>`,
34 :ref:`V4L2_PIX_FMT_OV518 <V4L2-PIX-FMT-OV518>`,
35 :ref:`V4L2_PIX_FMT_PAC207 <V4L2-PIX-FMT-PAC207>`,
[all …]
Ddiff-v4l.rst7 Differences between V4L and V4L2
13 the much improved V4L2 API replaces the V4L API. The support for the old
15 supports the conversion of a V4L API system call into a V4L2 one.
21 for V4L2 video capture, overlay, radio and raw vbi capture devices did
25 The teletext devices (minor range 192-223) have been removed in V4L2 and
31 recommend that V4L2 drivers by default register devices with the same
56 V4L2 drivers *may* support multiple opens, see :ref:`open` for details
59 V4L drivers respond to V4L2 ioctls with an ``EINVAL`` error code.
64 The V4L ``VIDIOCGCAP`` ioctl is equivalent to V4L2's
69 was replaced by ``capabilities``. Note V4L2 does not distinguish between
[all …]
Dhist-v4l2.rst4 .. _hist-v4l2:
7 Changes of the V4L2 API
13 With the help of other volunteers this eventually became the V4L2 API,
68 V4L2 Version 0.16 1999-01-31
75 V4L2 Version 0.18 1999-03-16
78 Added a v4l to V4L2 ioctl compatibility layer to videodev.c. Driver
82 V4L2 Version 0.19 1999-06-05
107 V4L2 Version 0.20 (1999-09-10)
123 convention in the V4L2 API. The affected ioctls are: VIDIOC_PREVIEW,
199 V4L2 Version 0.20 incremental changes
[all …]
Dopen.rst12 Controlling a hardware peripheral via V4L2
15 Hardware that is supported using the V4L2 uAPI often consists of multiple
18 The bridge driver exposes one or more V4L2 device nodes
22 the hardware, which may also expose device nodes, called V4L2 sub-devices.
24 When such V4L2 sub-devices are exposed, they allow controlling those
29 :ref:`V4L2 sub-devices <subdev>`.
33 devices. The devices that are fully controlled via V4L2 device nodes
36 Userspace can check if a V4L2 hardware peripheral is MC-centric by
43 It is required for MC-centric drivers to identify the V4L2
60 V4L2 Device Node Naming
[all …]
Dfunc-ioctl.rst7 V4L2 ioctl()
13 v4l2-ioctl - Program a V4L2 device
31 V4L2 ioctl request code as defined in the ``videodev2.h`` header
40 The :ref:`ioctl() <func-ioctl>` function is used to program V4L2 devices. The
44 defines specifying V4L2 ioctl requests are located in the
47 All V4L2 ioctl requests, their respective function and parameters are
Dpixfmt-intro.rst9 interpret the same way. V4L2 includes several such formats, and this
11 image data formats in V4L2.
13 V4L2 drivers are not limited to these formats, however. Driver-specific
22 Even so, ultimately, some standard formats are needed, so the V4L2
26 The V4L2 standard formats are mainly uncompressed formats. The pixels
37 In V4L2 each format has an identifier which looks like ``PIX_FMT_XXX``,
40 :ref:`four character (FourCC) codes <v4l2-fourcc>` which are also
47 :ref:`YUV422 <V4L2-PIX-FMT-YUV422M>` frame is normally stored in one
Dselections-common.rst8 While the :ref:`V4L2 selection API <selection-api>` and
9 :ref:`V4L2 subdev selection APIs <v4l2-subdev-selections>` are very
12 and is bound to a sub-device's pad. On the V4L2 interface the selection
22 v4l2-selection-targets
23 v4l2-selection-flags
/linux-6.15/include/media/
Dv4l2-flash-led-class.h3 * V4L2 flash LED sub-device registration helpers.
12 #include <media/v4l2-ctrls.h>
13 #include <media/v4l2-subdev.h>
25 * @cid: contains v4l2 flash control id if the config
34 * struct v4l2_flash_ops - V4L2 flash operations
53 * struct v4l2_flash_config - V4L2 Flash sub-device initialization data
75 * @ops: V4L2 specific flash ops
76 * @sd: V4L2 sub-device
116 * v4l2_flash_init - initialize V4L2 flash led sub-device
120 * @ops: V4L2 Flash device ops
[all …]
Dv4l2-fwnode.h3 * V4L2 fwnode binding parsing library
22 #include <media/v4l2-mediabus.h>
104 * @V4L2_CONN_UNKNOWN: unknown connector type, no V4L2 connector configuration
186 * @vep: pointer to the V4L2 fwnode data structure
188 * This function parses the V4L2 fwnode endpoint specific parameters from the
213 * The function does not change the V4L2 fwnode endpoint state if it fails.
228 * v4l2_fwnode_endpoint_free() - free the V4L2 fwnode acquired by
230 * @vep: the V4L2 fwnode the resources of which are to be released
232 * It is safe to call this function with NULL argument or on a V4L2 fwnode the
240 * @vep: pointer to the V4L2 fwnode data structure
[all …]
/linux-6.15/Documentation/translations/zh_CN/video4linux/
Dv4l2-framework.txt25 V4L2 驱动框架概览
28 本文档描述 V4L2 框架所提供的各种结构和它们之间的关系。
34 大部分现代 V4L2 设备由多个 IC 组成,在 /dev 下导出多个设备节点,
35 并同时创建非 V4L2 设备(如 DVB、ALSA、FB、I2C 和红外输入设备)。
36 由于这种硬件的复杂性,V4L2 驱动也变得非常复杂。
38 尤其是 V4L2 必须支持 IC 实现音视频的多路复用和编解码,这就更增加了其
57 所有 V4L2 驱动都有如下结构:
63 3) 创建 V4L2 设备节点 (/dev/videoX、/dev/vbiX 和 /dev/radioX)
76 \-V4L2 device nodes(V4L2 设备节点)
86 结构体保存 V4L2 设备节点的数据;将来 v4l2_fh 结构体将跟踪文件句柄
[all …]
/linux-6.15/drivers/gpu/drm/renesas/rcar-du/
Drcar_du_kms.c44 .v4l2 = V4L2_PIX_FMT_RGB565,
52 .v4l2 = V4L2_PIX_FMT_ARGB555,
60 .v4l2 = V4L2_PIX_FMT_XRGB555,
67 .v4l2 = V4L2_PIX_FMT_XBGR32,
75 .v4l2 = V4L2_PIX_FMT_ABGR32,
83 .v4l2 = V4L2_PIX_FMT_UYVY,
91 .v4l2 = V4L2_PIX_FMT_YUYV,
99 .v4l2 = V4L2_PIX_FMT_NV12M,
107 .v4l2 = V4L2_PIX_FMT_NV21M,
115 .v4l2 = V4L2_PIX_FMT_NV16M,
[all …]
/linux-6.15/Documentation/userspace-api/media/drivers/
Duvcvideo.rst23 - through mappings of XU controls to V4L2 controls
26 The first one allows generic V4L2 applications to use XU controls by mapping
27 certain XU controls onto V4L2 controls, which then show up during ordinary
42 ranges thereof to be mapped to new V4L2 controls. Such controls appear and
43 function exactly like normal V4L2 controls (i.e. the stock controls, such as
44 brightness, contrast, etc.). However, reading or writing of such a V4L2 controls
109 UVCIOC_CTRL_MAP - Map a UVC control to a V4L2 control
117 control and a V4L2 control. Once mappings are defined, userspace
118 applications can access vendor-defined UVC control through the V4L2
123 UVCIOC_CTRL_ADD and a new V4L2 control.
[all …]
/linux-6.15/Documentation/leds/
Dleds-class-flash.rst26 V4L2 flash wrapper for flash LEDs
34 V4L2 subsystem. The function takes six arguments:
46 V4L2 specific ops
55 enum led_brightness <-> V4L2 intensity conversion in a device
59 configuration for V4L2 Flash sub-device
82 v4l2 flash wrapper.
84 Once the V4L2 sub-device is registered by the driver which created the Media
85 controller device, the sub-device node acts just as a node of a native V4L2
88 Opening the V4L2 flash sub-device makes the LED subsystem sysfs interface
89 unavailable. The interface is re-enabled after the V4L2 flash sub-device
/linux-6.15/drivers/staging/media/atomisp/
DTODO8 * Remove/disable custom v4l2-ctrls
14 * Remove abuse of priv field in various v4l2 userspace API structs
17 picture, the exposure/gain needs to be tuned using v4l2-ctl on the sensor
36 * Ensure that the driver will pass v4l2-compliance tests
38 * Fix not all v4l2 apps working, e.g. cheese does not work
47 now is using v4l2-ctl to select the input and gstreamer for streaming.
51 v4l2-ctl -i <input>
71 v4l2-ctl on the sensor subdev to tweak the exposure ctrl; or by using a GUI
72 app for v4l2-controls which also supports subdev such as the Fedora patched
/linux-6.15/Documentation/process/debugging/
Dmedia_specific_debugging_guide.rst36 For the full documentation see :ref:`driver-api/media/v4l2-dev:video device
42 Two debug print statements, which are specific for devices and for the v4l2
69 $ ddcmd '-p; file v4l2-h264.c +p'
71 drivers/media/v4l2-core/v4l2-h264.c:372 [v4l2_h264]print_ref_list_b =p
73 drivers/media/v4l2-core/v4l2-h264.c:333 [v4l2_h264]print_ref_list_p =p
145 Driver verification with v4l2-compliance
148 To verify, that a driver adheres to the v4l2 API, the tool v4l2-compliance is
155 v4l2-compliance -M /dev/mediaX --verbose
160 v4l2-compliance -m /dev/mediaX
166 to the kernel log. It's called by v4l2-ctl --log-status. Very useful for
[all …]
/linux-6.15/drivers/media/platform/sunxi/sun6i-csi/
Dsun6i_csi.c18 #include <media/v4l2-device.h>
19 #include <media/v4l2-mc.h>
74 /* V4L2 */
78 struct sun6i_csi_v4l2 *v4l2 = &csi_dev->v4l2; in sun6i_csi_v4l2_setup() local
79 struct media_device *media_dev = &v4l2->media_dev; in sun6i_csi_v4l2_setup()
80 struct v4l2_device *v4l2_dev = &v4l2->v4l2_dev; in sun6i_csi_v4l2_setup()
100 /* V4L2 Device */ in sun6i_csi_v4l2_setup()
106 dev_err(dev, "failed to register v4l2 device: %d\n", ret); in sun6i_csi_v4l2_setup()
124 struct sun6i_csi_v4l2 *v4l2 = &csi_dev->v4l2; in sun6i_csi_v4l2_cleanup() local
126 media_device_unregister(&v4l2->media_dev); in sun6i_csi_v4l2_cleanup()
[all …]

12345678910>>...53