Linux Media Controller development
 help / color / mirror / Atom feed
From: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
To: Sakari Ailus <sakari.ailus@linux.intel.com>
Cc: Jacopo Mondi <jacopo.mondi@ideasonboard.com>,
	linux-media@vger.kernel.org, hverkuil@xs4all.nl
Subject: Re: [PATCH v7 3/5] media: Documentation: Update link frequency driver documentation
Date: Mon, 16 Dec 2024 13:20:26 +0200	[thread overview]
Message-ID: <20241216112026.GA24498@pendragon.ideasonboard.com> (raw)
In-Reply-To: <Z1_fvqg5uuRLDt_A@kekkonen.localdomain>

On Mon, Dec 16, 2024 at 08:07:26AM +0000, Sakari Ailus wrote:
> On Sun, Dec 15, 2024 at 07:02:40PM +0200, Laurent Pinchart wrote:
> > On Fri, Dec 13, 2024 at 07:15:55AM +0000, Sakari Ailus wrote:
> > > On Thu, Dec 12, 2024 at 05:53:53PM +0100, Jacopo Mondi wrote:
> > > > On Tue, Dec 10, 2024 at 09:59:04AM +0200, Sakari Ailus wrote:
> > > > > Add the get_mbus_config() as the means for conveying the link frequency
> > > > > towards the receiver drivers.
> > > > >
> > > > > Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
> > > > > ---
> > > > >  Documentation/driver-api/media/tx-rx.rst | 4 ++++
> > > > >  1 file changed, 4 insertions(+)
> > > > >
> > > > > diff --git a/Documentation/driver-api/media/tx-rx.rst b/Documentation/driver-api/media/tx-rx.rst
> > > > > index dd09484df1d3..1430c330fd52 100644
> > > > > --- a/Documentation/driver-api/media/tx-rx.rst
> > > > > +++ b/Documentation/driver-api/media/tx-rx.rst
> > > > > @@ -49,6 +49,10 @@ Link frequency
> > > > >  The :ref:`V4L2_CID_LINK_FREQ <v4l2-cid-link-freq>` control is used to tell the
> > > > >  receiver the frequency of the bus (i.e. it is not the same as the symbol rate).
> > > > >
> > > > > +On devices where the link frequency isn't configurable, the link_freq field of
> > > > > +struct v4l2_mbus_config is recommended over controls for conveying the link
> > > > > +frequency to the downstream driver in the pipeline.
> > > > 
> > > > When read in its entirety, the paragraphs
> > > > 
> > > >  Link frequency
> > > >  ^^^^^^^^^^^^^^
> > > > 
> > > >  The :ref:`V4L2_CID_LINK_FREQ <v4l2-cid-link-freq>` control is used to tell the
> > > >  receiver the frequency of the bus (i.e. it is not the same as the symbol rate).
> > > > 
> > > >  On devices where the link frequency isn't configurable, the link_freq field of
> > > >  struct v4l2_mbus_config is recommended over controls for conveying the link
> > > >  frequency.
> > > > 
> > > > Sounds simpler without the last 7 words.
> > > > 
> > > > A nit and just tastes maybe
> > > 
> > > I used:
> > > 
> > > On devices where the link frequency isn't configurable, using the ``link_freq``
> > > field of struct v4l2_mbus_config is recommended over controls.
> > 
> > Is it a recommendation for the transmitter driver or the receiver driver
> > ? If it's a recommendation for the transmitter driver, does that mean it
> > should not implement V4L2_CID_LINK_FREQ in that case ? How about the
> > need to expose the link frequency to userspace when it's fixed ?
> 
> For the transmitter. Receivers do not implement get_mbus_config op. I can
> add a note on this.

They don't implement it, but they call it. I wasn't sure if this
documentation was from the point of view of the caller or callee. As you
mentioned separately that it's located in the transmitter section, that
makes it clearer, but we can also improve the test:

Drivers that have a fixed link frequency should report it through the
``.get_mbus_config()`` subdev operation, in the``link_freq`` field of
struct v4l2_mbus_config, instead of through controls.

(I'll let you fix the markup for the mention of the .get_mbus_config()
operation.)

> The only reason this has been exposed to the user space is because it's
> been a control that has been modifiable. Also HDMI to CSI-2 bridges work
> this way.
> 
> The LINK_FREQ control is also an integer menu so the same control couldn't
> be used as-is. These were the reasons why the earlier review concluded with
> impelmenting this via get_mbus_config().
> 
> > I think the documentation needs further clarification to clearly explain
> > what transmitters should do and what receivers should do.
> 
> I can add this.
> 
> > > > 
> > > > I like where this is going!
> > > > 
> > > > Reviewed-by: Jacopo Mondi <jacopo.mondi@ideasonboard.com>

-- 
Regards,

Laurent Pinchart

  parent reply	other threads:[~2024-12-16 11:20 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-12-10  7:59 [PATCH v7 0/5] Use V4L2 mbus config for conveying MEI CSI link frequency Sakari Ailus
2024-12-10  7:59 ` [PATCH v7 1/5] media: v4l: Support passing media pad argument to v4l2_get_link_freq() Sakari Ailus
2024-12-12 17:04   ` Jacopo Mondi
2024-12-15 16:45   ` Laurent Pinchart
2024-12-16  8:38     ` Sakari Ailus
2024-12-10  7:59 ` [PATCH v7 2/5] media: v4l: Support obtaining link frequency via get_mbus_config Sakari Ailus
2024-12-12 17:05   ` Jacopo Mondi
2024-12-15 16:59   ` Laurent Pinchart
2024-12-16  8:46     ` Sakari Ailus
2024-12-16 11:16       ` Laurent Pinchart
2024-12-16 12:15         ` Sakari Ailus
2024-12-16 13:51           ` Laurent Pinchart
2024-12-10  7:59 ` [PATCH v7 3/5] media: Documentation: Update link frequency driver documentation Sakari Ailus
2024-12-12 16:53   ` Jacopo Mondi
2024-12-13  7:15     ` Sakari Ailus
2024-12-15 17:02       ` Laurent Pinchart
2024-12-16  8:07         ` Sakari Ailus
2024-12-16  8:08           ` Sakari Ailus
2024-12-16 11:20           ` Laurent Pinchart [this message]
2024-12-16 12:05             ` Sakari Ailus
2024-12-16 13:51               ` Laurent Pinchart
2024-12-10  7:59 ` [PATCH v7 4/5] media: ivsc: csi: Obtain link frequency from the media pad Sakari Ailus
2024-12-10  7:59 ` [PATCH v7 5/5] media: intel/ipu6: Obtain link frequency from a sub-device Sakari Ailus
2024-12-15 17:08   ` Laurent Pinchart
2024-12-16  7:47     ` Sakari Ailus
2024-12-16  9:07       ` Laurent Pinchart
2024-12-16  9:18         ` Sakari Ailus
2024-12-16  9:40           ` Laurent Pinchart
2024-12-16  8:03     ` Sakari Ailus
2024-12-16 11:13       ` Laurent Pinchart
2024-12-16 11:21         ` Sakari Ailus

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20241216112026.GA24498@pendragon.ideasonboard.com \
    --to=laurent.pinchart@ideasonboard.com \
    --cc=hverkuil@xs4all.nl \
    --cc=jacopo.mondi@ideasonboard.com \
    --cc=linux-media@vger.kernel.org \
    --cc=sakari.ailus@linux.intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox