···11+V4L2 common functions and data structures22+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^33+44+.. kernel-doc:: include/media/v4l2-common.h
+2-2
Documentation/media/kapi/v4l2-controls.rst
···808808There can be only one notify function per control handler. Any attempt809809to set another notify function will cause a WARN_ON.810810811811-V4L2 control kAPI812812------------------811811+v4l2_ctrl functions and data structures812812+---------------------------------------813813814814.. kernel-doc:: include/media/v4l2-ctrls.h
···11-Video device creation22-=====================11+Video device' s internal representation22+=======================================3344The actual device nodes in the ``/dev`` directory are created using the55:c:type:`video_device` struct (``v4l2-dev.h``). This struct can either be···309309This can be done from the release callback.310310311311312312-video_device helper functions313313------------------------------312312+helper functions313313+----------------314314315315There are a few useful helper functions:316316···357357should be used where possible instead of accessing the video_device::num and358358video_device::minor fields.359359360360-video_device kAPI361361------------------360360+video_device functions and data structures361361+------------------------------------------362362363363.. kernel-doc:: include/media/v4l2-dev.h
+4-4
Documentation/media/kapi/v4l2-device.rst
···11-V4L2 Device register logic22---------------------------11+V4L2 device instance22+--------------------3344Each device instance is represented by a struct :c:type:`v4l2_device`.55Very simple devices can just allocate this struct, but most of the time you···138138or in the ``remove()`` callback (for e.g. PCI devices), otherwise the refcount139139will never reach 0.140140141141-V4L2 device kAPI142142-^^^^^^^^^^^^^^^^141141+v4l2_device functions and data structures142142+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^143143144144.. kernel-doc:: include/media/v4l2-device.h
+2-2
Documentation/media/kapi/v4l2-dv-timings.rst
···11-V4L2 DV Timings kAPI22-^^^^^^^^^^^^^^^^^^^^11+V4L2 DV Timings functions22+^^^^^^^^^^^^^^^^^^^^^^^^^3344.. kernel-doc:: include/media/v4l2-dv-timings.h
+3-2
Documentation/media/kapi/v4l2-event.rst
···130130the subdev that sends the event to the video node(s) associated with the131131subdev that need to be informed about such an event.132132133133-V4L2 event kAPI134134-^^^^^^^^^^^^^^^133133+V4L2 event functions and data structures134134+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^135135136136.. kernel-doc:: include/media/v4l2-event.h137137+
+3-2
Documentation/media/kapi/v4l2-fh.rst
···133133- Same, but it calls v4l2_fh_is_singular with filp->private_data.134134135135136136-V4L2 File Handler kAPI137137-^^^^^^^^^^^^^^^^^^^^^^136136+V4L2 fh functions and data structures137137+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^138138+138139.. kernel-doc:: include/media/v4l2-fh.h
+2-2
Documentation/media/kapi/v4l2-flash-led-class.rst
···11-V4L2 Flash and LED class kAPI22-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^11+V4L2 flash functions and data structures22+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^3344.. kernel-doc:: include/media/v4l2-flash-led-class.h
+4-11
Documentation/media/kapi/v4l2-intro.rst
···11-Overview of the V4L2 driver framework22-=====================================33-44-This text documents the various structures provided by the V4L2 framework and55-their relationships.66-77-81Introduction92------------103···3239a PCI capture card, and demonstrates how to use the V4L2 driver3340framework. It can be used as a template for real PCI video capture driver.34413535-Structure of a driver3636----------------------4242+Structure of a V4L driver4343+-------------------------37443845All drivers have the following structure:3946···6168 \-filehandle instances626963706464-Structure of the framework6565---------------------------7171+Structure of the V4L2 framework7272+-------------------------------66736774The framework closely resembles the driver structure: it has a v4l2_device6875struct for the device instance data, a v4l2_subdev struct to refer to
+2-2
Documentation/media/kapi/v4l2-mc.rst
···11-V4L2 Media Controller kAPI22-^^^^^^^^^^^^^^^^^^^^^^^^^^11+V4L2 Media Controller functions and data structures22+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^3344.. kernel-doc:: include/media/v4l2-mc.h
+2-2
Documentation/media/kapi/v4l2-mediabus.rst
···11-V4L2 Media Bus kAPI22-^^^^^^^^^^^^^^^^^^^11+V4L2 Media Bus functions and data structures22+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^3344.. kernel-doc:: include/media/v4l2-mediabus.h
+3-2
Documentation/media/kapi/v4l2-mem2mem.rst
···11-V4L2 Memory to Memory kAPI22-^^^^^^^^^^^^^^^^^^^^^^^^^^11+V4L2 Memory to Memory functions and data structures22+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^33+34.. kernel-doc:: include/media/v4l2-mem2mem.h
+2-2
Documentation/media/kapi/v4l2-rect.rst
···11-V4L2 rect kAPI22-^^^^^^^^^^^^^^11+V4L2 rect helper functions22+^^^^^^^^^^^^^^^^^^^^^^^^^^3344.. kernel-doc:: include/media/v4l2-rect.h
-12
Documentation/media/kapi/v4l2-subdev.rst
···440440V4L2 sub-device functions and data structures441441---------------------------------------------442442443443-V4L2 sub-device kAPI444444-^^^^^^^^^^^^^^^^^^^^445445-446443.. kernel-doc:: include/media/v4l2-subdev.h447444448448-V4L2 sub-device asynchronous kAPI449449-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^450450-451445.. kernel-doc:: include/media/v4l2-async.h452452-453453-454454-V4L2 common kAPI455455-^^^^^^^^^^^^^^^^456456-457457-.. kernel-doc:: include/media/v4l2-common.h
+2-2
Documentation/media/kapi/v4l2-tuner.rst
···11-Tuner kAPI22-^^^^^^^^^^11+Tuner functions and data structures22+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^3344.. kernel-doc:: include/media/tuner.h55
+2-2
Documentation/media/kapi/v4l2-tveeprom.rst
···11-Hauppauge TV EEPROM kAPI22-^^^^^^^^^^^^^^^^^^^^^^^^11+Hauppauge TV EEPROM functions and data structures22+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^3344.. kernel-doc:: include/media/tveeprom.h
+2-2
Documentation/media/kapi/v4l2-videobuf2.rst
···11.. _vb2_framework:2233-V4L2 videobuf2 kAPI44-^^^^^^^^^^^^^^^^^^^33+V4L2 videobuf2 functions and data structures44+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^5566.. kernel-doc:: include/media/videobuf2-core.h77