--- /dev/null
+V4L2 common functions and data structures
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+.. kernel-doc:: include/media/v4l2-common.h
 
 There can be only one notify function per control handler. Any attempt
 to set another notify function will cause a WARN_ON.
 
-V4L2 control kAPI
------------------
+v4l2_ctrl functions and data structures
+---------------------------------------
 
 .. kernel-doc:: include/media/v4l2-ctrls.h
 
 
     v4l2-intro
     v4l2-dev
-    v4l2-controls
     v4l2-device
     v4l2-fh
+    v4l2-subdev
+    v4l2-event
+    v4l2-controls
+    v4l2-videobuf
+    v4l2-videobuf2
     v4l2-clocks
     v4l2-dv-timings
-    v4l2-event
     v4l2-flash-led-class
     v4l2-mc
     v4l2-mediabus
     v4l2-mem2mem
     v4l2-of
     v4l2-rect
-    v4l2-subdev
     v4l2-tuner
+    v4l2-common
     v4l2-tveeprom
-    v4l2-videobuf2
-    v4l2-videobuf
 
-Video device creation
-=====================
+Video device' s internal representation
+=======================================
 
 The actual device nodes in the ``/dev`` directory are created using the
 :c:type:`video_device` struct (``v4l2-dev.h``). This struct can either be
 This can be done from the release callback.
 
 
-video_device helper functions
------------------------------
+helper functions
+----------------
 
 There are a few useful helper functions:
 
 should be used where possible instead of accessing the video_device::num and
 video_device::minor fields.
 
-video_device kAPI
------------------
+video_device functions and data structures
+------------------------------------------
 
 .. kernel-doc:: include/media/v4l2-dev.h
 
-V4L2 Device register logic
---------------------------
+V4L2 device instance
+--------------------
 
 Each device instance is represented by a struct :c:type:`v4l2_device`.
 Very simple devices can just allocate this struct, but most of the time you
 or in the ``remove()`` callback (for e.g. PCI devices), otherwise the refcount
 will never reach 0.
 
-V4L2 device kAPI
-^^^^^^^^^^^^^^^^
+v4l2_device functions and data structures
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 
 .. kernel-doc:: include/media/v4l2-device.h
 
-V4L2 DV Timings kAPI
-^^^^^^^^^^^^^^^^^^^^
+V4L2 DV Timings functions
+^^^^^^^^^^^^^^^^^^^^^^^^^
 
 .. kernel-doc:: include/media/v4l2-dv-timings.h
 
 the subdev that sends the event to the video node(s) associated with the
 subdev that need to be informed about such an event.
 
-V4L2 event kAPI
-^^^^^^^^^^^^^^^
+V4L2 event functions and data structures
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 
 .. kernel-doc:: include/media/v4l2-event.h
+
 
 - Same, but it calls v4l2_fh_is_singular with filp->private_data.
 
 
-V4L2 File Handler kAPI
-^^^^^^^^^^^^^^^^^^^^^^
+V4L2 fh functions and data structures
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
 .. kernel-doc:: include/media/v4l2-fh.h
 
-V4L2 Flash and LED class kAPI
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+V4L2 flash functions and data structures
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 
 .. kernel-doc:: include/media/v4l2-flash-led-class.h
 
-Overview of the V4L2 driver framework
-=====================================
-
-This text documents the various structures provided by the V4L2 framework and
-their relationships.
-
-
 Introduction
 ------------
 
 a PCI capture card, and demonstrates how to use the V4L2 driver
 framework. It can be used as a template for real PCI video capture driver.
 
-Structure of a driver
----------------------
+Structure of a V4L driver
+-------------------------
 
 All drivers have the following structure:
 
          \-filehandle instances
 
 
-Structure of the framework
---------------------------
+Structure of the V4L2 framework
+-------------------------------
 
 The framework closely resembles the driver structure: it has a v4l2_device
 struct for the device instance data, a v4l2_subdev struct to refer to
 
-V4L2 Media Controller kAPI
-^^^^^^^^^^^^^^^^^^^^^^^^^^
+V4L2 Media Controller functions and data structures
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 
 .. kernel-doc:: include/media/v4l2-mc.h
 
-V4L2 Media Bus kAPI
-^^^^^^^^^^^^^^^^^^^
+V4L2 Media Bus functions and data structures
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 
 .. kernel-doc:: include/media/v4l2-mediabus.h
 
-V4L2 Memory to Memory kAPI
-^^^^^^^^^^^^^^^^^^^^^^^^^^
+V4L2 Memory to Memory functions and data structures
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
 .. kernel-doc:: include/media/v4l2-mem2mem.h
 
-V4L2 rect kAPI
-^^^^^^^^^^^^^^
+V4L2 rect helper functions
+^^^^^^^^^^^^^^^^^^^^^^^^^^
 
 .. kernel-doc:: include/media/v4l2-rect.h
 
 V4L2 sub-device functions and data structures
 ---------------------------------------------
 
-V4L2 sub-device kAPI
-^^^^^^^^^^^^^^^^^^^^
-
 .. kernel-doc:: include/media/v4l2-subdev.h
 
-V4L2 sub-device asynchronous kAPI
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-
 .. kernel-doc:: include/media/v4l2-async.h
-
-
-V4L2 common kAPI
-^^^^^^^^^^^^^^^^
-
-.. kernel-doc:: include/media/v4l2-common.h
 
-Tuner kAPI
-^^^^^^^^^^
+Tuner functions and data structures
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 
 .. kernel-doc:: include/media/tuner.h
 
 
-Hauppauge TV EEPROM kAPI
-^^^^^^^^^^^^^^^^^^^^^^^^
+Hauppauge TV EEPROM functions and data structures
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 
 .. kernel-doc:: include/media/tveeprom.h
 
 .. _vb2_framework:
 
-V4L2 videobuf2 kAPI
-^^^^^^^^^^^^^^^^^^^
+V4L2 videobuf2 functions and data structures
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 
 .. kernel-doc:: include/media/videobuf2-core.h