diff options
author | Tomasz Gorochowik <tgorochowik@antmicro.com> | 2018-05-21 14:56:29 +0200 |
---|---|---|
committer | Marcel Ziswiler <marcel.ziswiler@toradex.com> | 2020-02-09 22:49:20 +0100 |
commit | 5370f09030c3ee9b957a60966a357868ce2b4f82 (patch) | |
tree | dbb17ab7cca9c15567bd1782601b7ea385a9da2f | |
parent | 1324079a1c4aefbfb705a41af3feaa78571f197c (diff) |
imx8: isi: Disable scaling when not needed
The issue is that once the scaling was enabled, then the stream was
disabled and enabled again with a resolution that does not need scaling,
the actual scaling was never disabled in the ISI block. This made ISI
stream the scaled down with a large black padding.
(cherry picked from commit 148241e839644f6af83a3e677e1350ce50ce27e9)
(cherry picked from commit 13bef5c8fde55bf12be73ed05391427d393bb71c)
(cherry picked from commit 3ab199d9b1b3d0c94d89c2c1c5b2c5749d4bc476)
(cherry picked from commit edfbe38e61e6889afbbdf7a2608e5498619ef4ab)
-rw-r--r-- | drivers/media/platform/imx8/mxc-isi-hw.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/media/platform/imx8/mxc-isi-hw.c b/drivers/media/platform/imx8/mxc-isi-hw.c index 9c571516b69f..db260920ac62 100644 --- a/drivers/media/platform/imx8/mxc-isi-hw.c +++ b/drivers/media/platform/imx8/mxc-isi-hw.c @@ -458,7 +458,9 @@ void mxc_isi_channel_set_scaling(struct mxc_isi_dev *mxc_isi) dst_f = &mxc_isi->m2m.dst_f; } - if (dst_f->height == src_f->height || + if (mxc_isi->scale == 1) { + mxc_isi->scale = 0; + } else if (dst_f->height == src_f->height || dst_f->width == src_f->width) { mxc_isi->scale = 0; mxc_isi_channel_clear_scaling(mxc_isi); |