lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20250702150711.GE3830050@ragnatech.se>
Date: Wed, 2 Jul 2025 17:07:11 +0200
From: Niklas Söderlund <niklas.soderlund@...natech.se>
To: Laurent Pinchart <laurent.pinchart@...asonboard.com>
Cc: Tomi Valkeinen <tomi.valkeinen+renesas@...asonboard.com>,
	Mauro Carvalho Chehab <mchehab@...nel.org>,
	Sakari Ailus <sakari.ailus@...ux.intel.com>,
	linux-media@...r.kernel.org, linux-renesas-soc@...r.kernel.org,
	linux-kernel@...r.kernel.org,
	Mauro Carvalho Chehab <mchehab+huawei@...nel.org>,
	Jacopo Mondi <jacopo.mondi@...asonboard.com>
Subject: Re: [PATCH v3 01/15] media: rcar-csi2: Use the pad version of
 v4l2_get_link_freq()

On 2025-06-02 12:43:21 +0300, Laurent Pinchart wrote:
> Hi Tomi,
> 
> Thank you for the patch.
> 
> On Fri, May 30, 2025 at 04:50:30PM +0300, Tomi Valkeinen wrote:
> > Use the new version of v4l2_get_link_freq() which supports media_pad as
> > a parameter.
> 
> The commit message should explain why. With that fixed,

How about this,

The pad aware version of v4l2_get_link_freq() tries to retrieve the link 
frequency from the media bus configuration using the get_mbus_config 
operation, and only if the subdevice do not implement this operation 
fall-back to the old method of getting it using the V4L2_CID_LINK_FREQ 
or V4L2_CID_PIXEL_RATE control.

Update the VIN driver to use the pad aware version to be able to support 
subdevices that only provides the link frequency in the media bus 
configuration. As the implementation falls-back to the old method if the 
subdevice don't support get_mbus_config, or don't provide a link 
frequency in the v4l2_mbus_config struct, this is fully backward 
compatible.

> 
> Reviewed-by: Laurent Pinchart <laurent.pinchart+renesas@...asonboard.com>
> 
> > Signed-off-by: Tomi Valkeinen <tomi.valkeinen+renesas@...asonboard.com>
> > ---
> >  drivers/media/platform/renesas/rcar-csi2.c | 4 +++-
> >  1 file changed, 3 insertions(+), 1 deletion(-)
> > 
> > diff --git a/drivers/media/platform/renesas/rcar-csi2.c b/drivers/media/platform/renesas/rcar-csi2.c
> > index 9979de4f6ef1..ddbdde23c122 100644
> > --- a/drivers/media/platform/renesas/rcar-csi2.c
> > +++ b/drivers/media/platform/renesas/rcar-csi2.c
> > @@ -954,6 +954,7 @@ static int rcsi2_set_phypll(struct rcar_csi2 *priv, unsigned int mbps)
> >  static int rcsi2_calc_mbps(struct rcar_csi2 *priv, unsigned int bpp,
> >  			   unsigned int lanes)
> >  {
> > +	struct media_pad *remote_pad;
> >  	struct v4l2_subdev *source;
> >  	s64 freq;
> >  	u64 mbps;
> > @@ -962,8 +963,9 @@ static int rcsi2_calc_mbps(struct rcar_csi2 *priv, unsigned int bpp,
> >  		return -ENODEV;
> >  
> >  	source = priv->remote;
> > +	remote_pad = &source->entity.pads[priv->remote_pad];
> >  
> > -	freq = v4l2_get_link_freq(source->ctrl_handler, bpp, 2 * lanes);
> > +	freq = v4l2_get_link_freq(remote_pad, bpp, 2 * lanes);
> >  	if (freq < 0) {
> >  		int ret = (int)freq;
> >  
> 
> -- 
> Regards,
> 
> Laurent Pinchart

-- 
Kind Regards,
Niklas Söderlund

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ