summaryrefslogtreecommitdiff
path: root/drivers/media/platform/imx8/mxc-isi-cap.c
diff options
context:
space:
mode:
authorGuoniu.Zhou <guoniu.zhou@nxp.com>2018-10-22 15:48:00 +0800
committerJason Liu <jason.hui.liu@nxp.com>2019-02-12 10:34:58 +0800
commit21ff18826303a1fb2743a7bbe67778c97d64388d (patch)
tree9c05c295396160fb1d6d5f9cdec67eadc7bdb35c /drivers/media/platform/imx8/mxc-isi-cap.c
parentd1a96aa06168aaf54edd92947beb58b61fcfe282 (diff)
MMFMWK-8296: ISI: return error code when user try to do upscale
Return error code when user try to do upscale since isi don't support. Signed-off-by: Guoniu.Zhou <guoniu.zhou@nxp.com> (cherry picked from commit 59949e29dcd996c50cae43bc5ff3f89907761c1b)
Diffstat (limited to 'drivers/media/platform/imx8/mxc-isi-cap.c')
-rw-r--r--drivers/media/platform/imx8/mxc-isi-cap.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/media/platform/imx8/mxc-isi-cap.c b/drivers/media/platform/imx8/mxc-isi-cap.c
index 7d9ae3857c5a..564fdef8352a 100644
--- a/drivers/media/platform/imx8/mxc-isi-cap.c
+++ b/drivers/media/platform/imx8/mxc-isi-cap.c
@@ -873,6 +873,7 @@ static int mxc_isi_cap_s_fmt_mplane(struct file *file, void *priv,
struct mxc_isi_dev *mxc_isi = video_drvdata(file);
struct v4l2_pix_format_mplane *pix = &f->fmt.pix_mp;
struct mxc_isi_frame *dst_f = &mxc_isi->isi_cap.dst_f;
+ struct mxc_isi_frame *src_f = &mxc_isi->isi_cap.src_f;
struct mxc_isi_fmt *fmt;
int bpl;
int i;
@@ -947,6 +948,12 @@ static int mxc_isi_cap_s_fmt_mplane(struct file *file, void *priv,
mxc_isi_source_fmt_init(mxc_isi);
+ if ((dst_f->width > src_f->width) ||
+ (dst_f->height > src_f->height)) {
+ dev_err(&mxc_isi->pdev->dev, "%s: Not support upscale\n", __func__);
+ return -EINVAL;
+ }
+
mxc_isi_channel_init(mxc_isi);
/* configure mxc isi channel */
mxc_isi_channel_config(mxc_isi);