diff mbox

[v1] media: ov13858: Fix 4224x3136 video flickering at some vblanks

Message ID 1505342325-9180-1-git-send-email-chiranjeevi.rapolu@intel.com (mailing list archive)
State New, archived
Headers show

Commit Message

Chiranjeevi Rapolu Sept. 13, 2017, 10:38 p.m. UTC
Previously, the sensor was outputting blank every other frame at 4224x3136
video when vblank was in the range [79, 86]. This resulted in video
flickering.

Omni Vision recommends us to use their settings for crop start/end for
4224x3136.

Signed-off-by: Chiranjeevi Rapolu <chiranjeevi.rapolu@intel.com>
---
 drivers/media/i2c/ov13858.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

Comments

Chiranjeevi Rapolu Sept. 18, 2017, 10 p.m. UTC | #1
Hi Tomasz,

>The change of register values itself doesn't give any information about what is changed. Could you explain the following:

>- What is the "crop" in this case?


The new crop is (0,8), (4255, 3159).

>- What value was it set to before and why was it wrong?


Old crop was (0, 0), (4255, 3167). With this crop, VTS < 0xC9E was resulting in
blank frames sometimes. But we need VTS < 0xC9E to get ~30fps.

>- What is the new value and why is it good?


With new crop as above,  VTS 0xC8E is supported and yields ~30fps.

Chiran.
diff mbox

Patch

diff --git a/drivers/media/i2c/ov13858.c b/drivers/media/i2c/ov13858.c
index af7af0d..f7c5771 100644
--- a/drivers/media/i2c/ov13858.c
+++ b/drivers/media/i2c/ov13858.c
@@ -238,11 +238,11 @@  struct ov13858_mode {
 	{0x3800, 0x00},
 	{0x3801, 0x00},
 	{0x3802, 0x00},
-	{0x3803, 0x00},
+	{0x3803, 0x08},
 	{0x3804, 0x10},
 	{0x3805, 0x9f},
 	{0x3806, 0x0c},
-	{0x3807, 0x5f},
+	{0x3807, 0x57},
 	{0x3808, 0x10},
 	{0x3809, 0x80},
 	{0x380a, 0x0c},