summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSooman Jeong <sm5.jeong@samsung.com>2016-05-10 14:01:36 +0900
committerwansu.yoo <wansu.yoo@samsung.com>2016-08-22 14:44:44 +0900
commit9b8d75e3e3287fc2e8b62dab026ee2e3b711fb37 (patch)
tree19a7d629398607cb16c427011648d2f394cfc3fa
parent0d3183539dfad6a2176e12ac80df623d1988626a (diff)
downloadlinux-3.10-artik-9b8d75e3e3287fc2e8b62dab026ee2e3b711fb37.tar.gz
linux-3.10-artik-9b8d75e3e3287fc2e8b62dab026ee2e3b711fb37.tar.bz2
linux-3.10-artik-9b8d75e3e3287fc2e8b62dab026ee2e3b711fb37.zip
exynos: fimc-is: correct error handling of flite
This patch corrects error handling of flite driver. With existing error handing, all remaining video frames will be corrupted if one frame v-blank error is occured because flite just return with error message without clearing DMA path. In order to prevent this case, we have to clear DMA path even if 1-frame v-blank error is occured. Change-Id: If9f0039049f129d97788e8a44e51113576fbc9da Signed-off-by: Sooman Jeong <sm5.jeong@samsung.com>
-rw-r--r--drivers/media/platform/exynos/fimc-is/fimc-is-device-flite.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/drivers/media/platform/exynos/fimc-is/fimc-is-device-flite.c b/drivers/media/platform/exynos/fimc-is/fimc-is-device-flite.c
index bea07342d0c..07c2c962dd8 100644
--- a/drivers/media/platform/exynos/fimc-is/fimc-is-device-flite.c
+++ b/drivers/media/platform/exynos/fimc-is/fimc-is-device-flite.c
@@ -913,9 +913,8 @@ static inline int flite_s_unuse_buffer(struct fimc_is_device_flite *flite,
}
if (flite_hw_get_status1(flite->base_reg) && (7 << 20)) {
- merr("over vblank (buf-mode : %d)", flite, flite->buf_done_mode);
- ret = -EINVAL;
- goto p_err;
+ mwarn("over vblank (buf-mode : %d)", flite,
+ flite->buf_done_mode);
}
flite_hw_set_output_dma(flite->base_reg, false, flite->image.format.pixelformat);
@@ -926,7 +925,6 @@ static inline int flite_s_unuse_buffer(struct fimc_is_device_flite *flite,
atomic_dec(&flite->bcount);
}
-p_err:
return ret;
}