From dd24bdd17ef8d966c3d875d3c1332d935cf33a02 Mon Sep 17 00:00:00 2001 From: Jason Chen Date: Mon, 7 Nov 2011 16:46:36 +0800 Subject: ENGR00161526 mxc v4l2 output: 720p ic bypass output may failed in block Repeat play with below cmdline: /unit_tests/mxc_v4l2_output.out -iw 1280 -ih 720 -ow 1280 -oh 720 -fr 10 -l 1 /unit_tests/720p.yuv Found the ipu update offset function cause this issue, it can be work-around by setting it only when value changed. Signed-off-by: Jason Chen --- drivers/media/video/mxc/output/mxc_vout.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'drivers/media/video/mxc/output/mxc_vout.c') diff --git a/drivers/media/video/mxc/output/mxc_vout.c b/drivers/media/video/mxc/output/mxc_vout.c index 26ab55af4cb..14d0aba97ff 100644 --- a/drivers/media/video/mxc/output/mxc_vout.c +++ b/drivers/media/video/mxc/output/mxc_vout.c @@ -1217,8 +1217,11 @@ static void release_disp_output(struct mxc_vout_output *vout) console_unlock(); /* fix if ic bypass crack smem_start */ - if (is_pp_bypass(vout)) + if (is_pp_bypass(vout)) { + console_lock(); fbi->fix.smem_start = vout->disp_bufs[0]; + console_unlock(); + } if (get_ipu_channel(fbi) == MEM_BG_SYNC) { console_lock(); -- cgit v1.2.3