All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Niklas Söderlund" <niklas.soderlund+renesas@ragnatech.se>
To: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Cc: Kieran Bingham <kieran.bingham+renesas@ideasonboard.com>,
	linux-media@vger.kernel.org, linux-renesas-soc@vger.kernel.org
Subject: Re: [PATCH v2 3/6] rcar-vin: Rename rectangle holding the video source information
Date: Wed, 4 Sep 2019 14:52:01 +0200	[thread overview]
Message-ID: <20190904125201.GM8086@bigcity.dyn.berto.se> (raw)
In-Reply-To: <20190808083045.GE6055@pendragon.ideasonboard.com>

Hi Laurent,

Thanks for your feedback.

On 2019-08-08 11:30:45 +0300, Laurent Pinchart wrote:
> Hi Niklas,
> 
> Thank you for the patch.
> 
> On Thu, Aug 08, 2019 at 03:18:47AM +0200, Niklas Söderlund wrote:
> > The variable to hold the video source information dimensions was poorly
> > named 'source'. This is confusing as a lot of other members of structs
> > share the same name with different purposes, rename it src_rect in
> > preparation of refactoring code.
> > 
> > Signed-off-by: Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se>
> > Reviewed-by: Kieran Bingham <kieran.bingham+renesas@ideasonboard.com>
> > ---
> >  drivers/media/platform/rcar-vin/rcar-v4l2.c | 33 +++++++++++----------
> >  drivers/media/platform/rcar-vin/rcar-vin.h  |  4 +--
> >  2 files changed, 19 insertions(+), 18 deletions(-)
> > 
> > diff --git a/drivers/media/platform/rcar-vin/rcar-v4l2.c b/drivers/media/platform/rcar-vin/rcar-v4l2.c
> > index 402b40fcf7184fde..8b30267f1636aaf1 100644
> > --- a/drivers/media/platform/rcar-vin/rcar-v4l2.c
> > +++ b/drivers/media/platform/rcar-vin/rcar-v4l2.c
> > @@ -163,13 +163,13 @@ static int rvin_reset_format(struct rvin_dev *vin)
> >  
> >  	rvin_format_align(vin, &vin->format);
> >  
> > -	vin->source.top = 0;
> > -	vin->source.left = 0;
> > -	vin->source.width = vin->format.width;
> > -	vin->source.height = vin->format.height;
> > +	vin->src_rect.top = 0;
> > +	vin->src_rect.left = 0;
> > +	vin->src_rect.width = vin->format.width;
> > +	vin->src_rect.height = vin->format.height;
> >  
> > -	vin->crop = vin->source;
> > -	vin->compose = vin->source;
> > +	vin->crop = vin->src_rect;
> > +	vin->compose = vin->src_rect;
> >  
> >  	return 0;
> >  }
> > @@ -281,7 +281,7 @@ static int rvin_s_fmt_vid_cap(struct file *file, void *priv,
> >  	vin->format = f->fmt.pix;
> >  	vin->crop = crop;
> >  	vin->compose = compose;
> > -	vin->source = crop;
> > +	vin->src_rect = crop;
> >  
> >  	return 0;
> >  }
> > @@ -319,8 +319,8 @@ static int rvin_g_selection(struct file *file, void *fh,
> >  	case V4L2_SEL_TGT_CROP_BOUNDS:
> >  	case V4L2_SEL_TGT_CROP_DEFAULT:
> >  		s->r.left = s->r.top = 0;
> > -		s->r.width = vin->source.width;
> > -		s->r.height = vin->source.height;
> > +		s->r.width = vin->src_rect.width;
> > +		s->r.height = vin->src_rect.height;
> >  		break;
> >  	case V4L2_SEL_TGT_CROP:
> >  		s->r = vin->crop;
> > @@ -362,21 +362,22 @@ static int rvin_s_selection(struct file *file, void *fh,
> >  	case V4L2_SEL_TGT_CROP:
> >  		/* Can't crop outside of source input */
> >  		max_rect.top = max_rect.left = 0;
> > -		max_rect.width = vin->source.width;
> > -		max_rect.height = vin->source.height;
> > +		max_rect.width = vin->src_rect.width;
> > +		max_rect.height = vin->src_rect.height;
> >  		v4l2_rect_map_inside(&r, &max_rect);
> >  
> > -		v4l_bound_align_image(&r.width, 6, vin->source.width, 0,
> > -				      &r.height, 2, vin->source.height, 0, 0);
> > +		v4l_bound_align_image(&r.width, 6, vin->src_rect.width, 0,
> > +				      &r.height, 2, vin->src_rect.height, 0, 0);
> >  
> > -		r.top  = clamp_t(s32, r.top, 0, vin->source.height - r.height);
> > -		r.left = clamp_t(s32, r.left, 0, vin->source.width - r.width);
> > +		r.top  = clamp_t(s32, r.top, 0,
> > +				 vin->src_rect.height - r.height);
> > +		r.left = clamp_t(s32, r.left, 0, vin->src_rect.width - r.width);
> >  
> >  		vin->crop = s->r = r;
> >  
> >  		vin_dbg(vin, "Cropped %dx%d@%d:%d of %dx%d\n",
> >  			r.width, r.height, r.left, r.top,
> > -			vin->source.width, vin->source.height);
> > +			vin->src_rect.width, vin->src_rect.height);
> >  		break;
> >  	case V4L2_SEL_TGT_COMPOSE:
> >  		/* Make sure compose rect fits inside output format */
> > diff --git a/drivers/media/platform/rcar-vin/rcar-vin.h b/drivers/media/platform/rcar-vin/rcar-vin.h
> > index e562c2ff21ec7e7b..86e9bad44484092c 100644
> > --- a/drivers/media/platform/rcar-vin/rcar-vin.h
> > +++ b/drivers/media/platform/rcar-vin/rcar-vin.h
> > @@ -176,7 +176,7 @@ struct rvin_info {
> >   *
> >   * @crop:		active cropping
> >   * @compose:		active composing
> > - * @source:		active size of the video source
> > + * @src_rect:		active size of the video source
> 
> As this only holds a size you don't need a full rectangle, src_width and
> src_height would save a bit of space. Up to you, in any case

I hope to get around to adding a struct v4l2_size to address this in the 
future. For now I prefer to keep it as a v4l2_rect as there are other 
members of struct rvin_dev which would benefit from a size structure as 
well and having them all the same makes it easier to spot IMHO.

> 
> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>

Thanks.

> 
> >   * @std:		active video standard of the video source
> >   *
> >   * @alpha:		Alpha component to fill in for supported pixel formats
> > @@ -215,7 +215,7 @@ struct rvin_dev {
> >  
> >  	struct v4l2_rect crop;
> >  	struct v4l2_rect compose;
> > -	struct v4l2_rect source;
> > +	struct v4l2_rect src_rect;
> >  	v4l2_std_id std;
> >  
> >  	unsigned int alpha;
> 
> -- 
> Regards,
> 
> Laurent Pinchart

  reply	other threads:[~2019-09-04 12:52 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-08-08  1:18 [PATCH v2 0/6] rcar-vin: Add support for V4L2_FIELD_ALTERNATE Niklas Söderlund
2019-08-08  1:18 ` [PATCH v2 1/6] rcar-vin: Fix incorrect return statement in rvin_try_format() Niklas Söderlund
2019-08-08  8:25   ` Laurent Pinchart
2019-08-08  1:18 ` [PATCH v2 2/6] rcar-vin: Make use of V4L2_FIELD_IS_INTERLACED() macro Niklas Söderlund
2019-08-08  8:27   ` Laurent Pinchart
2019-08-08  1:18 ` [PATCH v2 3/6] rcar-vin: Rename rectangle holding the video source information Niklas Söderlund
2019-08-08  8:30   ` Laurent Pinchart
2019-09-04 12:52     ` Niklas Söderlund [this message]
2019-08-08  1:18 ` [PATCH v2 4/6] rcar-vin: Do not reset the crop and compose rectangles in s_fmt Niklas Söderlund
2019-08-08  8:37   ` Laurent Pinchart
2019-08-08 13:35     ` Niklas Söderlund
2019-08-28 10:25       ` Hans Verkuil
2019-08-08  1:18 ` [PATCH v2 5/6] rcar-vin: Add support for V4L2_FIELD_ALTERNATE Niklas Söderlund
2019-08-08  1:18 ` [PATCH v2 6/6] rcar-vin: Clean up how format is set on subdevice Niklas Söderlund

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=20190904125201.GM8086@bigcity.dyn.berto.se \
    --to=niklas.soderlund+renesas@ragnatech.se \
    --cc=kieran.bingham+renesas@ideasonboard.com \
    --cc=laurent.pinchart@ideasonboard.com \
    --cc=linux-media@vger.kernel.org \
    --cc=linux-renesas-soc@vger.kernel.org \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.