summaryrefslogtreecommitdiff
path: root/drivers/staging/media/rkisp1/rkisp1-resizer.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/staging/media/rkisp1/rkisp1-resizer.c')
-rw-r--r--drivers/staging/media/rkisp1/rkisp1-resizer.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/drivers/staging/media/rkisp1/rkisp1-resizer.c b/drivers/staging/media/rkisp1/rkisp1-resizer.c
index c28919b9af44..d049374413dc 100644
--- a/drivers/staging/media/rkisp1/rkisp1-resizer.c
+++ b/drivers/staging/media/rkisp1/rkisp1-resizer.c
@@ -394,9 +394,14 @@ static void rkisp1_rsz_config(struct rkisp1_resizer *rsz,
* but also to change the scale for YUV formats,
* (4:2:2 -> 4:2:0 for example). So the width/height of the CbCr
* streams should be set according to the pixel format in the capture.
+ * The resizer always gets the input as YUV422. If the capture format
+ * is RGB then the memory input should be YUV422 so we don't change the
+ * default hdiv, vdiv in that case.
*/
- hdiv = cap->pix.info->hdiv;
- vdiv = cap->pix.info->vdiv;
+ if (v4l2_is_format_yuv(cap->pix.info)) {
+ hdiv = cap->pix.info->hdiv;
+ vdiv = cap->pix.info->vdiv;
+ }
src_c.width = src_y.width / hdiv;
src_c.height = src_y.height / vdiv;