On 8/13/19 3:55 PM, Sakari Ailus wrote:
> When the support for serial busses was introduced in V4L2, it was decided
> to use the existing parallel bus media bus pixel codes to describe them.
> While this was a practical choice at the time, it necessitates choosing
> which one of the many parallel mbus pixel codes to use, for on the serial
> busses these formats are effectively all equivalent.
> 
> The practice has always been to use the pixel code that describes a bus
> that transfers a single sample per clock. Document this.
> 
> Signed-off-by: Sakari Ailus <sakari.ai...@linux.intel.com>

Acked-by: Hans Verkuil <hverkuil-ci...@xs4all.nl>

Regards,

        Hans

> ---
> since v1:
> 
> - Add an example of mbus pixel codes on serial and parallel busses.
> 
>  Documentation/media/kapi/csi2.rst               | 7 +++++++
>  Documentation/media/uapi/v4l/subdev-formats.rst | 8 ++++++++
>  2 files changed, 15 insertions(+)
> 
> diff --git a/Documentation/media/kapi/csi2.rst 
> b/Documentation/media/kapi/csi2.rst
> index a7e75e2eba85a..c67736a15c45b 100644
> --- a/Documentation/media/kapi/csi2.rst
> +++ b/Documentation/media/kapi/csi2.rst
> @@ -72,3 +72,10 @@ the transmitter up by using the
>  :c:type:`v4l2_subdev_core_ops`->s_power() callback. This may take
>  place either indirectly by using :c:func:`v4l2_pipeline_pm_use` or
>  directly.
> +
> +Formats
> +-------
> +
> +The media bus pixel codes document parallel formats. Should the pixel data be
> +transported over a serial bus, the media bus pixel code that describes a
> +parallel format that transfers a sample on a single clock cycle is used.
> diff --git a/Documentation/media/uapi/v4l/subdev-formats.rst 
> b/Documentation/media/uapi/v4l/subdev-formats.rst
> index ab1a48a5ae80b..7b8e17c7b68b4 100644
> --- a/Documentation/media/uapi/v4l/subdev-formats.rst
> +++ b/Documentation/media/uapi/v4l/subdev-formats.rst
> @@ -85,6 +85,14 @@ formats in memory (a raw Bayer image won't be magically 
> converted to
>  JPEG just by storing it to memory), there is no one-to-one
>  correspondence between them.
>  
> +The media bus pixel codes document parallel formats. Should the pixel data be
> +transported over a serial bus, the media bus pixel code that describes a
> +parallel format that transfers a sample on a single clock cycle is used. For
> +instance, both MEDIA_BUS_FMT_BGR888_1X24 and MEDIA_BUS_FMT_BGR888_3X8 are 
> used
> +on parallel busses for transferring an 8 bits per sample BGR data, whereas on
> +serial busses the data in this format is only referred to using
> +MEDIA_BUS_FMT_BGR888_1X24. This is because there is effectively only a single
> +way to transport that format on the serial busses.
>  
>  Packed RGB Formats
>  ^^^^^^^^^^^^^^^^^^
> 

Reply via email to