On 10/19/2013 07:09 PM, Andy Walls wrote:
> On Wed, 2013-10-16 at 01:10 +0100, Rajil Saraswat wrote:
>> I was finally able to carry out a git bisect. Had to do a git pull on
>> a fast internet hooked machine and ftp the files over to the remote
>> machine.
>>
>> I started with 'git bisect bad v2.6.36.4' and 'git bisect good v2.6.35.10'.
>>
>> And the result was:
>>
>> 5aa9ae5ed5d449a85fbf7aac3d1fdc241c542a79 is the first bad commit
>> commit 5aa9ae5ed5d449a85fbf7aac3d1fdc241c542a79
>> Author: Hans Verkuil <hverk...@xs4all.nl>
>> Date:   Sat Apr 24 08:23:53 2010 -0300
>>
>>     V4L/DVB: wm8775: convert to the new control framework
>>
>>     Signed-off-by: Hans Verkuil <hverk...@xs4all.nl>
>>     Signed-off-by: Mauro Carvalho Chehab <mche...@redhat.com>
>>
>> :040000 040000 37847ffe592f255c6a9d9daedaf7bbfd3cd7b055
>> 2f094df6f65d7fb296657619c1ad6f93fe085a75 M    drivers
>>
>> I then removed the patch from linux-2.6.36-gentoo-r8 which are gentoo
>> sources, and confirmed that video/audio now works fine on v4l2-ctl -d
>> /dev/video1 --set-input 4
>>
>> I wasnt able to remove the patch in 3.10.7 which is gentoo stable
>> kernel. Any idea how can i do that?
> 
> Try applying the following (untested) patch that is made against the
> bleeding edge Linux kernel.  The test on the mute control state in
> wm8775_s_routing() appears to have been inverted in the bad commit you
> isolated.

Aargh! I'm pretty sure that's the culprit. Man, that's been broken for ages.
I'll see if I can test this patch this week.

Regards,

        Hans

> Along with '--set-input', you may also want to use v4l2-ctl to exercise
> the mute control as well, to see if it works as expected, once this
> patch is applied.
> 
> Regards,
> Andy
> 
> file: wm8775_s_route_mute_test_inverted.patch
> 
> diff --git a/drivers/media/i2c/wm8775.c b/drivers/media/i2c/wm8775.c
> index 3f584a7..bee7946 100644
> --- a/drivers/media/i2c/wm8775.c
> +++ b/drivers/media/i2c/wm8775.c
> @@ -130,12 +130,10 @@ static int wm8775_s_routing(struct v4l2_subdev *sd,
>               return -EINVAL;
>       }
>       state->input = input;
> -     if (!v4l2_ctrl_g_ctrl(state->mute))
> +     if (v4l2_ctrl_g_ctrl(state->mute))
>               return 0;
>       if (!v4l2_ctrl_g_ctrl(state->vol))
>               return 0;
> -     if (!v4l2_ctrl_g_ctrl(state->bal))
> -             return 0;
>       wm8775_set_audio(sd, 1);
>       return 0;
>  }
> 
> 

--
To unsubscribe from this list: send the line "unsubscribe linux-media" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to