diff mbox series

[1/6] media: vsp1: Remove artificial pixel limitation

Message ID 20180831144044.31713-2-kieran.bingham+renesas@ideasonboard.com (mailing list archive)
State New, archived
Headers show
Series VSP1 Updates | expand

Commit Message

Kieran Bingham Aug. 31, 2018, 2:40 p.m. UTC
The VSP1 has a minimum width and height of a single pixel, with the
exception of pixel formats with sub-sampling.

Remove the artificial minimum width and minimum height limitation, and
instead clamp the minimum dimensions based upon the sub-sampling
parameter of that dimension.

Signed-off-by: Kieran Bingham <kieran.bingham+renesas@ideasonboard.com>
---
 drivers/media/platform/vsp1/vsp1_video.c | 7 ++-----
 1 file changed, 2 insertions(+), 5 deletions(-)

Comments

Laurent Pinchart Sept. 14, 2018, 10:23 a.m. UTC | #1
Hi Kieran,

Thank you for the patch.

On Friday, 31 August 2018 17:40:39 EEST Kieran Bingham wrote:
> The VSP1 has a minimum width and height of a single pixel, with the
> exception of pixel formats with sub-sampling.
> 
> Remove the artificial minimum width and minimum height limitation, and
> instead clamp the minimum dimensions based upon the sub-sampling
> parameter of that dimension.
> 
> Signed-off-by: Kieran Bingham <kieran.bingham+renesas@ideasonboard.com>

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

and applied to my tree.

> ---
>  drivers/media/platform/vsp1/vsp1_video.c | 7 ++-----
>  1 file changed, 2 insertions(+), 5 deletions(-)
> 
> diff --git a/drivers/media/platform/vsp1/vsp1_video.c
> b/drivers/media/platform/vsp1/vsp1_video.c index 81d47a09d7bc..e78eadd0295b
> 100644
> --- a/drivers/media/platform/vsp1/vsp1_video.c
> +++ b/drivers/media/platform/vsp1/vsp1_video.c
> @@ -38,9 +38,7 @@
>  #define VSP1_VIDEO_DEF_WIDTH		1024
>  #define VSP1_VIDEO_DEF_HEIGHT		768
> 
> -#define VSP1_VIDEO_MIN_WIDTH		2U
>  #define VSP1_VIDEO_MAX_WIDTH		8190U
> -#define VSP1_VIDEO_MIN_HEIGHT		2U
>  #define VSP1_VIDEO_MAX_HEIGHT		8190U
> 
>  /*
> ---------------------------------------------------------------------------
> -- @@ -136,9 +134,8 @@ static int __vsp1_video_try_format(struct vsp1_video
> *video, height = round_down(height, info->vsub);
> 
>  	/* Clamp the width and height. */
> -	pix->width = clamp(width, VSP1_VIDEO_MIN_WIDTH, VSP1_VIDEO_MAX_WIDTH);
> -	pix->height = clamp(height, VSP1_VIDEO_MIN_HEIGHT,
> -			    VSP1_VIDEO_MAX_HEIGHT);
> +	pix->width = clamp(width, info->hsub, VSP1_VIDEO_MAX_WIDTH);
> +	pix->height = clamp(height, info->vsub, VSP1_VIDEO_MAX_HEIGHT);
> 
>  	/*
>  	 * Compute and clamp the stride and image size. While not documented in
Laurent Pinchart Sept. 14, 2018, 10:47 a.m. UTC | #2
Hi Kieran,

Would you mind changing the patch subject to "Remove artificial minimum width/
height limitation" ?

On Friday, 14 September 2018 13:23:04 EEST Laurent Pinchart wrote:
> On Friday, 31 August 2018 17:40:39 EEST Kieran Bingham wrote:
> > The VSP1 has a minimum width and height of a single pixel, with the
> > exception of pixel formats with sub-sampling.
> > 
> > Remove the artificial minimum width and minimum height limitation, and
> > instead clamp the minimum dimensions based upon the sub-sampling
> > parameter of that dimension.
> > 
> > Signed-off-by: Kieran Bingham <kieran.bingham+renesas@ideasonboard.com>
> 
> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
> 
> and applied to my tree.
> 
> > ---
> > 
> >  drivers/media/platform/vsp1/vsp1_video.c | 7 ++-----
> >  1 file changed, 2 insertions(+), 5 deletions(-)
> > 
> > diff --git a/drivers/media/platform/vsp1/vsp1_video.c
> > b/drivers/media/platform/vsp1/vsp1_video.c index
> > 81d47a09d7bc..e78eadd0295b
> > 100644
> > --- a/drivers/media/platform/vsp1/vsp1_video.c
> > +++ b/drivers/media/platform/vsp1/vsp1_video.c
> > @@ -38,9 +38,7 @@
> > 
> >  #define VSP1_VIDEO_DEF_WIDTH		1024
> >  #define VSP1_VIDEO_DEF_HEIGHT		768
> > 
> > -#define VSP1_VIDEO_MIN_WIDTH		2U
> > 
> >  #define VSP1_VIDEO_MAX_WIDTH		8190U
> > 
> > -#define VSP1_VIDEO_MIN_HEIGHT		2U
> > 
> >  #define VSP1_VIDEO_MAX_HEIGHT		8190U
> >  
> >  /*
> > 
> > --------------------------------------------------------------------------
> > -
> > -- @@ -136,9 +134,8 @@ static int __vsp1_video_try_format(struct
> > vsp1_video
> > *video, height = round_down(height, info->vsub);
> > 
> >  	/* Clamp the width and height. */
> > 
> > -	pix->width = clamp(width, VSP1_VIDEO_MIN_WIDTH, VSP1_VIDEO_MAX_WIDTH);
> > -	pix->height = clamp(height, VSP1_VIDEO_MIN_HEIGHT,
> > -			    VSP1_VIDEO_MAX_HEIGHT);
> > +	pix->width = clamp(width, info->hsub, VSP1_VIDEO_MAX_WIDTH);
> > +	pix->height = clamp(height, info->vsub, VSP1_VIDEO_MAX_HEIGHT);
> > 
> >  	/*
> >  	
> >  	 * Compute and clamp the stride and image size. While not documented in
Kieran Bingham Sept. 14, 2018, 10:51 a.m. UTC | #3
On 14/09/18 11:47, Laurent Pinchart wrote:
> Hi Kieran,
> 
> Would you mind changing the patch subject to "Remove artificial minimum width/
> height limitation" ?

Not at all.

> 
> On Friday, 14 September 2018 13:23:04 EEST Laurent Pinchart wrote:
>> On Friday, 31 August 2018 17:40:39 EEST Kieran Bingham wrote:
>>> The VSP1 has a minimum width and height of a single pixel, with the
>>> exception of pixel formats with sub-sampling.
>>>
>>> Remove the artificial minimum width and minimum height limitation, and
>>> instead clamp the minimum dimensions based upon the sub-sampling
>>> parameter of that dimension.
>>>
>>> Signed-off-by: Kieran Bingham <kieran.bingham+renesas@ideasonboard.com>
>>
>> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
>>
>> and applied to my tree.

Would you like me to resend the patch ?

--
Regards

Kieran


>>
>>> ---
>>>
>>>  drivers/media/platform/vsp1/vsp1_video.c | 7 ++-----
>>>  1 file changed, 2 insertions(+), 5 deletions(-)
>>>
>>> diff --git a/drivers/media/platform/vsp1/vsp1_video.c
>>> b/drivers/media/platform/vsp1/vsp1_video.c index
>>> 81d47a09d7bc..e78eadd0295b
>>> 100644
>>> --- a/drivers/media/platform/vsp1/vsp1_video.c
>>> +++ b/drivers/media/platform/vsp1/vsp1_video.c
>>> @@ -38,9 +38,7 @@
>>>
>>>  #define VSP1_VIDEO_DEF_WIDTH		1024
>>>  #define VSP1_VIDEO_DEF_HEIGHT		768
>>>
>>> -#define VSP1_VIDEO_MIN_WIDTH		2U
>>>
>>>  #define VSP1_VIDEO_MAX_WIDTH		8190U
>>>
>>> -#define VSP1_VIDEO_MIN_HEIGHT		2U
>>>
>>>  #define VSP1_VIDEO_MAX_HEIGHT		8190U
>>>  
>>>  /*
>>>
>>> --------------------------------------------------------------------------
>>> -
>>> -- @@ -136,9 +134,8 @@ static int __vsp1_video_try_format(struct
>>> vsp1_video
>>> *video, height = round_down(height, info->vsub);
>>>
>>>  	/* Clamp the width and height. */
>>>
>>> -	pix->width = clamp(width, VSP1_VIDEO_MIN_WIDTH, VSP1_VIDEO_MAX_WIDTH);
>>> -	pix->height = clamp(height, VSP1_VIDEO_MIN_HEIGHT,
>>> -			    VSP1_VIDEO_MAX_HEIGHT);
>>> +	pix->width = clamp(width, info->hsub, VSP1_VIDEO_MAX_WIDTH);
>>> +	pix->height = clamp(height, info->vsub, VSP1_VIDEO_MAX_HEIGHT);
>>>
>>>  	/*
>>>  	
>>>  	 * Compute and clamp the stride and image size. While not documented in
> 
>
diff mbox series

Patch

diff --git a/drivers/media/platform/vsp1/vsp1_video.c b/drivers/media/platform/vsp1/vsp1_video.c
index 81d47a09d7bc..e78eadd0295b 100644
--- a/drivers/media/platform/vsp1/vsp1_video.c
+++ b/drivers/media/platform/vsp1/vsp1_video.c
@@ -38,9 +38,7 @@ 
 #define VSP1_VIDEO_DEF_WIDTH		1024
 #define VSP1_VIDEO_DEF_HEIGHT		768
 
-#define VSP1_VIDEO_MIN_WIDTH		2U
 #define VSP1_VIDEO_MAX_WIDTH		8190U
-#define VSP1_VIDEO_MIN_HEIGHT		2U
 #define VSP1_VIDEO_MAX_HEIGHT		8190U
 
 /* -----------------------------------------------------------------------------
@@ -136,9 +134,8 @@  static int __vsp1_video_try_format(struct vsp1_video *video,
 	height = round_down(height, info->vsub);
 
 	/* Clamp the width and height. */
-	pix->width = clamp(width, VSP1_VIDEO_MIN_WIDTH, VSP1_VIDEO_MAX_WIDTH);
-	pix->height = clamp(height, VSP1_VIDEO_MIN_HEIGHT,
-			    VSP1_VIDEO_MAX_HEIGHT);
+	pix->width = clamp(width, info->hsub, VSP1_VIDEO_MAX_WIDTH);
+	pix->height = clamp(height, info->vsub, VSP1_VIDEO_MAX_HEIGHT);
 
 	/*
 	 * Compute and clamp the stride and image size. While not documented in