Re: [PATCH v9 27/46] media: uapi: ccs: Add media bus code for MIPI CCS embedded data

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Sakari

On Sat, Apr 20, 2024 at 11:10:50AM +0300, Laurent Pinchart wrote:
> Hi Sakari,
>
> Thank you for the patch.
>
> On Tue, Apr 16, 2024 at 10:33:00PM +0300, Sakari Ailus wrote:
> > Add new MIPI CCS embedded data media bus code
> > (MEDIA_BUS_FMT_CCS_EMBEDDED).
> >
> > Signed-off-by: Sakari Ailus <sakari.ailus@xxxxxxxxxxxxxxx>
> > Reviewed-by: Julien Massot <julien.massot@xxxxxxxxxxxxx>
>
> There's still an open question on how to document embedded data formats
> for sensors compatible with level 2 only. The discussion is ongoing and
> may affect this patch, but the changes can be implemented later, so
>
> Reviewed-by: Laurent Pinchart <laurent.pinchart@xxxxxxxxxxxxxxxx>
>
> > ---
> >  .../media/v4l/subdev-formats.rst              | 32 +++++++++++++++++++
> >  include/uapi/linux/media-bus-format.h         |  3 ++
> >  2 files changed, 35 insertions(+)
> >
> > diff --git a/Documentation/userspace-api/media/v4l/subdev-formats.rst b/Documentation/userspace-api/media/v4l/subdev-formats.rst
> > index 0547f2733ee3..fa181ce8f48c 100644
> > --- a/Documentation/userspace-api/media/v4l/subdev-formats.rst
> > +++ b/Documentation/userspace-api/media/v4l/subdev-formats.rst
> > @@ -8316,6 +8316,10 @@ content is more or less device specific but the data is transmitted and received
> >  by multiple devices that do not process the data in any way, simply writing
> >  it to system memory for processing in software at the end of the pipeline.
> >
> > +The exact format of the data generated by the device is reported on the internal
> > +source pad of the originating sub-device, using one of the more specific

Do you mean "sink pad" ?

If I got this right:
SOURCE_PAD#0,stream#1 -> Generic metadata format
SINK_PAD#2,stream#0 -> Device specific metadata format

Thanks
  j

> > +metadata formats such as MEDIA_BUS_FMT_CCS_EMBEDDED.
> > +
> >  "b" in an array cell signifies a byte of data, followed by the number of the bit
> >  and finally the bit number in subscript. "x" indicates a padding bit.
> >
> > @@ -8562,3 +8566,31 @@ and finally the bit number in subscript. "x" indicates a padding bit.
> >        - x
> >        - x
> >        - x
> > +
> > +.. _MEDIA-BUS-FMT-CCS-EMBEDDED:
> > +
> > +MIPI CCS Embedded Data Formats
> > +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> > +
> > +`MIPI CCS <https://www.mipi.org/specifications/camera-command-set>`_ defines a
> > +metadata format for sensor embedded data, which is used to store the register
> > +configuration used for capturing a given frame. The format is defined in the CCS
> > +specification. The media bus code for this format is
> > +``MEDIA_BUS_FMT_CCS_EMBEDDED``.
> > +
> > +The CCS embedded data format definition includes three levels:
> > +
> > +1. Padding within CSI-2 bus :ref:`Data Unit <media-glossary-data-unit>` as
> > +   documented in the MIPI CCS specification.
> > +
> > +2. The tagged data format as documented in the MIPI CCS specification.
> > +
> > +3. Register addresses and register documentation as documented in the MIPI CCS
> > +   specification.
> > +
> > +The format definition shall be used only by devices that fulfill all three
> > +levels above.
> > +
> > +This mbus code are only used for "2-byte simplified tagged data format" (code
> > +0xa) but their use may be extended further in the future, to cover other CCS
> > +embedded data format codes.
> > diff --git a/include/uapi/linux/media-bus-format.h b/include/uapi/linux/media-bus-format.h
> > index d4c1d991014b..03f7e9ab517b 100644
> > --- a/include/uapi/linux/media-bus-format.h
> > +++ b/include/uapi/linux/media-bus-format.h
> > @@ -183,4 +183,7 @@
> >  #define MEDIA_BUS_FMT_META_20			0x8006
> >  #define MEDIA_BUS_FMT_META_24			0x8007
> >
> > +/* Specific metadata formats. Next is 0x9002. */
> > +#define MEDIA_BUS_FMT_CCS_EMBEDDED		0x9001
> > +
> >  #endif /* __LINUX_MEDIA_BUS_FORMAT_H */
>
> --
> Regards,
>
> Laurent Pinchart
>




[Index of Archives]     [Linux Input]     [Video for Linux]     [Gstreamer Embedded]     [Mplayer Users]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]

  Powered by Linux