Re: [PATCH v2 03/22] media: docs: split cpia2.rst on two files
From: Hans Verkuil
Date: Thu Mar 12 2020 - 03:19:00 EST
On 3/10/20 2:42 PM, Mauro Carvalho Chehab wrote:
> In order to be able to better organize the subsystem, split the
> cpia2 information on two files: one user-facing and another one
> from Kernel development PoV.
>
> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@xxxxxxxxxx>
> ---
> Documentation/media/v4l-drivers/cpia2.rst | 46 ---------------
> .../media/v4l-drivers/cpia2_devel.rst | 56 +++++++++++++++++++
In other patches the devel file is called foo-devel.rst, here it is cpia2_devel.rst
Can you change this to cpia2-devel.rst as well?
Also, IMHO using -dev instead of -devel feels nicer, although that might be
because I use debian where all developer packages use -dev as suffix :-)
Regards,
Hans
> Documentation/media/v4l-drivers/index.rst | 2 +
> 3 files changed, 58 insertions(+), 46 deletions(-)
> create mode 100644 Documentation/media/v4l-drivers/cpia2_devel.rst
>
> diff --git a/Documentation/media/v4l-drivers/cpia2.rst b/Documentation/media/v4l-drivers/cpia2.rst
> index a86baa1c83f1..6f4258aebbfe 100644
> --- a/Documentation/media/v4l-drivers/cpia2.rst
> +++ b/Documentation/media/v4l-drivers/cpia2.rst
> @@ -147,49 +147,3 @@ We are providing a modified gqcam application to view the output. In
> order to avoid confusion, here it is called mview. There is also the qx5view
> program which can also control the lights on the qx5 microscope. MJPEG Tools
> (http://mjpeg.sourceforge.net) can also be used to record from the camera.
> -
> -Notes to developers
> -~~~~~~~~~~~~~~~~~~~
> -
> - - This is a driver version stripped of the 2.4 back compatibility
> - and old MJPEG ioctl API. See cpia2.sf.net for 2.4 support.
> -
> -Programmer's overview of cpia2 driver
> -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> -
> -Cpia2 is the second generation video coprocessor from VLSI Vision Ltd (now a
> -division of ST Microelectronics). There are two versions. The first is the
> -STV0672, which is capable of up to 30 frames per second (fps) in frame sizes
> -up to CIF, and 15 fps for VGA frames. The STV0676 is an improved version,
> -which can handle up to 30 fps VGA. Both coprocessors can be attached to two
> -CMOS sensors - the vvl6410 CIF sensor and the vvl6500 VGA sensor. These will
> -be referred to as the 410 and the 500 sensors, or the CIF and VGA sensors.
> -
> -The two chipsets operate almost identically. The core is an 8051 processor,
> -running two different versions of firmware. The 672 runs the VP4 video
> -processor code, the 676 runs VP5. There are a few differences in register
> -mappings for the two chips. In these cases, the symbols defined in the
> -header files are marked with VP4 or VP5 as part of the symbol name.
> -
> -The cameras appear externally as three sets of registers. Setting register
> -values is the only way to control the camera. Some settings are
> -interdependant, such as the sequence required to power up the camera. I will
> -try to make note of all of these cases.
> -
> -The register sets are called blocks. Block 0 is the system block. This
> -section is always powered on when the camera is plugged in. It contains
> -registers that control housekeeping functions such as powering up the video
> -processor. The video processor is the VP block. These registers control
> -how the video from the sensor is processed. Examples are timing registers,
> -user mode (vga, qvga), scaling, cropping, framerates, and so on. The last
> -block is the video compressor (VC). The video stream sent from the camera is
> -compressed as Motion JPEG (JPEGA). The VC controls all of the compression
> -parameters. Looking at the file cpia2_registers.h, you can get a full view
> -of these registers and the possible values for most of them.
> -
> -One or more registers can be set or read by sending a usb control message to
> -the camera. There are three modes for this. Block mode requests a number
> -of contiguous registers. Random mode reads or writes random registers with
> -a tuple structure containing address/value pairs. The repeat mode is only
> -used by VP4 to load a firmware patch. It contains a starting address and
> -a sequence of bytes to be written into a gpio port.
> diff --git a/Documentation/media/v4l-drivers/cpia2_devel.rst b/Documentation/media/v4l-drivers/cpia2_devel.rst
> new file mode 100644
> index 000000000000..decaa4768c78
> --- /dev/null
> +++ b/Documentation/media/v4l-drivers/cpia2_devel.rst
> @@ -0,0 +1,56 @@
> +.. SPDX-License-Identifier: GPL-2.0
> +
> +The cpia2 driver
> +================
> +
> +Authors: Peter Pregler <Peter_Pregler@xxxxxxxxx>,
> +Scott J. Bertin <scottbertin@xxxxxxxxx>, and
> +Jarl Totland <Jarl.Totland@xxxxxx> for the original cpia driver, which
> +this one was modelled from.
> +
> +
> +Notes to developers
> +~~~~~~~~~~~~~~~~~~~
> +
> + - This is a driver version stripped of the 2.4 back compatibility
> + and old MJPEG ioctl API. See cpia2.sf.net for 2.4 support.
> +
> +Programmer's overview of cpia2 driver
> +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> +
> +Cpia2 is the second generation video coprocessor from VLSI Vision Ltd (now a
> +division of ST Microelectronics). There are two versions. The first is the
> +STV0672, which is capable of up to 30 frames per second (fps) in frame sizes
> +up to CIF, and 15 fps for VGA frames. The STV0676 is an improved version,
> +which can handle up to 30 fps VGA. Both coprocessors can be attached to two
> +CMOS sensors - the vvl6410 CIF sensor and the vvl6500 VGA sensor. These will
> +be referred to as the 410 and the 500 sensors, or the CIF and VGA sensors.
> +
> +The two chipsets operate almost identically. The core is an 8051 processor,
> +running two different versions of firmware. The 672 runs the VP4 video
> +processor code, the 676 runs VP5. There are a few differences in register
> +mappings for the two chips. In these cases, the symbols defined in the
> +header files are marked with VP4 or VP5 as part of the symbol name.
> +
> +The cameras appear externally as three sets of registers. Setting register
> +values is the only way to control the camera. Some settings are
> +interdependant, such as the sequence required to power up the camera. I will
> +try to make note of all of these cases.
> +
> +The register sets are called blocks. Block 0 is the system block. This
> +section is always powered on when the camera is plugged in. It contains
> +registers that control housekeeping functions such as powering up the video
> +processor. The video processor is the VP block. These registers control
> +how the video from the sensor is processed. Examples are timing registers,
> +user mode (vga, qvga), scaling, cropping, framerates, and so on. The last
> +block is the video compressor (VC). The video stream sent from the camera is
> +compressed as Motion JPEG (JPEGA). The VC controls all of the compression
> +parameters. Looking at the file cpia2_registers.h, you can get a full view
> +of these registers and the possible values for most of them.
> +
> +One or more registers can be set or read by sending a usb control message to
> +the camera. There are three modes for this. Block mode requests a number
> +of contiguous registers. Random mode reads or writes random registers with
> +a tuple structure containing address/value pairs. The repeat mode is only
> +used by VP4 to load a firmware patch. It contains a starting address and
> +a sequence of bytes to be written into a gpio port.
> diff --git a/Documentation/media/v4l-drivers/index.rst b/Documentation/media/v4l-drivers/index.rst
> index eca22b82de94..72fbb394f6a2 100644
> --- a/Documentation/media/v4l-drivers/index.rst
> +++ b/Documentation/media/v4l-drivers/index.rst
> @@ -65,3 +65,5 @@ For more details see the file COPYING in the source distribution of Linux.
> vimc
> vivid
> zr364xx
> +
> + cpia2_devel
>