diff options
author | Martin Bugge <marbugge@cisco.com> | 2013-12-05 19:18:14 +0400 |
---|---|---|
committer | Mauro Carvalho Chehab <m.chehab@samsung.com> | 2014-01-07 12:42:50 +0400 |
commit | 1961b7203ffaebe13fb463ffc5bc5da30bb7f8e3 (patch) | |
tree | 48009980b02ed66fa5e327dc61408a72f58d982f /drivers/media/i2c/adv7842.c | |
parent | 019aa8be84bf543677146e2586412a2905ba99c0 (diff) | |
download | linux-1961b7203ffaebe13fb463ffc5bc5da30bb7f8e3.tar.xz |
[media] adv7842: composite sd-ram test, clear timings before setting
Must clear timings before setting after test to recover.
Signed-off-by: Martin Bugge <marbugge@cisco.com>
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Diffstat (limited to 'drivers/media/i2c/adv7842.c')
-rw-r--r-- | drivers/media/i2c/adv7842.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/drivers/media/i2c/adv7842.c b/drivers/media/i2c/adv7842.c index e6932f46bf98..ecbe3f29c1ab 100644 --- a/drivers/media/i2c/adv7842.c +++ b/drivers/media/i2c/adv7842.c @@ -2696,6 +2696,7 @@ static int adv7842_command_ram_test(struct v4l2_subdev *sd) struct i2c_client *client = v4l2_get_subdevdata(sd); struct adv7842_state *state = to_state(sd); struct adv7842_platform_data *pdata = client->dev.platform_data; + struct v4l2_dv_timings timings; int ret = 0; if (!pdata) @@ -2726,12 +2727,16 @@ static int adv7842_command_ram_test(struct v4l2_subdev *sd) enable_input(sd); - adv7842_s_dv_timings(sd, &state->timings); - edid_write_vga_segment(sd); edid_write_hdmi_segment(sd, ADV7842_EDID_PORT_A); edid_write_hdmi_segment(sd, ADV7842_EDID_PORT_B); + timings = state->timings; + + memset(&state->timings, 0, sizeof(struct v4l2_dv_timings)); + + adv7842_s_dv_timings(sd, &timings); + return ret; } |