CHROMIUM: [media] rk3288-vpu: Use macros for frame size limits
authorTomasz Figa <tfiga@chromium.org>
Mon, 27 Apr 2015 06:34:32 +0000 (15:34 +0900)
committerHuang, Tao <huangtao@rock-chips.com>
Thu, 30 Jun 2016 11:54:40 +0000 (19:54 +0800)
As a prerequisite for reusing those values in new code, this patch
creates appropriate macros for them and updates current code to use
them.

BUG=chromium:485409
TEST=vda/veatests, Chrome with crrev.com/1097913002.

Signed-off-by: Tomasz Figa <tfiga@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/269865
Reviewed-by: Pawel Osciak <posciak@chromium.org>
Trybot-Ready: Pawel Osciak <posciak@chromium.org>

Change-Id: I95b1afbeff91aeb71d1748bf05895e769385f76e
Signed-off-by: Jeffy Chen <jeffy.chen@rock-chips.com>
Signed-off-by: Yakir Yang <ykk@rock-chips.com>
drivers/media/platform/rk3288-vpu/rk3288_vpu_dec.c
drivers/media/platform/rk3288-vpu/rk3288_vpu_enc.c

index e3c54146c53eb2110191994ad9e8814f6f060257..bb28e55c56c13b5bfb95468ac7e1517865249e16 100644 (file)
 #define DEF_SRC_FMT_DEC                                V4L2_PIX_FMT_H264_SLICE
 #define DEF_DST_FMT_DEC                                V4L2_PIX_FMT_NV12
 
+#define RK3288_DEC_MIN_WIDTH                   48U
+#define RK3288_DEC_MAX_WIDTH                   3840U
+#define RK3288_DEC_MIN_HEIGHT                  48U
+#define RK3288_DEC_MAX_HEIGHT                  2160U
+
 #define RK3288_H264_MAX_SLICES_PER_FRAME       16
 
 static struct rk3288_vpu_fmt formats[] = {
@@ -289,8 +294,10 @@ static int vidioc_try_fmt(struct file *file, void *priv, struct v4l2_format *f)
                }
 
                /* Limit to hardware min/max. */
-               pix_fmt_mp->width = clamp(pix_fmt_mp->width, 48U, 3840U);
-               pix_fmt_mp->height = clamp(pix_fmt_mp->height, 48U, 2160U);
+               pix_fmt_mp->width = clamp(pix_fmt_mp->width,
+                               RK3288_DEC_MIN_WIDTH, RK3288_DEC_MAX_WIDTH);
+               pix_fmt_mp->height = clamp(pix_fmt_mp->height,
+                               RK3288_DEC_MIN_HEIGHT, RK3288_DEC_MAX_HEIGHT);
 
                /* Round up to macroblocks. */
                pix_fmt_mp->width = round_up(pix_fmt_mp->width, MB_DIM);
index cee6a5ebbb49de50af3bf7933c8050ed6e2d4249..d288e04511cba5c92c5fe199f190431c8e609ccb 100644 (file)
 #define DEF_SRC_FMT_ENC                                V4L2_PIX_FMT_NV12
 #define DEF_DST_FMT_ENC                                V4L2_PIX_FMT_VP8
 
+#define RK3288_ENC_MIN_WIDTH                   96U
+#define RK3288_ENC_MAX_WIDTH                   1920U
+#define RK3288_ENC_MIN_HEIGHT                  96U
+#define RK3288_ENC_MAX_HEIGHT                  1088U
+
 #define V4L2_CID_PRIVATE_RK3288_HEADER         (V4L2_CID_CUSTOM_BASE + 0)
 #define V4L2_CID_PRIVATE_RK3288_REG_PARAMS     (V4L2_CID_CUSTOM_BASE + 1)
 #define V4L2_CID_PRIVATE_RK3288_HW_PARAMS      (V4L2_CID_CUSTOM_BASE + 2)
@@ -481,9 +486,10 @@ static int vidioc_try_fmt(struct file *file, void *priv, struct v4l2_format *f)
                }
 
                /* Limit to hardware min/max. */
-               pix_fmt_mp->width = clamp(pix_fmt_mp->width, 96U, 1920U);
-               pix_fmt_mp->height = clamp(pix_fmt_mp->height, 96U, 1088U);
-
+               pix_fmt_mp->width = clamp(pix_fmt_mp->width,
+                               RK3288_ENC_MIN_WIDTH, RK3288_ENC_MAX_WIDTH);
+               pix_fmt_mp->height = clamp(pix_fmt_mp->height,
+                               RK3288_ENC_MIN_HEIGHT, RK3288_ENC_MAX_HEIGHT);
                /* Round up to macroblocks. */
                pix_fmt_mp->width = round_up(pix_fmt_mp->width, MB_DIM);
                pix_fmt_mp->height = round_up(pix_fmt_mp->height, MB_DIM);