On Thu, Jan 27, 2011 at 10:20:22AM -0800, Stephen Warren wrote:
The Right Speaker Right Bypass control works the first and all subsequent times. Perhaps that's something to do with it being the last entry in wm8903.c's right_speaker_mixer[] array?
Possibly, though given the way DAPM processes those arrays I'd be a bit surprised if it made a difference. More likely to be that the bypass paths is one of the simpler and more direct paths in the CODEC.
I briefly started to debug this, and notice that the SND_SOC_DAPM_SPK event function isn't being called at all in the cases where muting doesn't toggle as expected.
I noticed something similar while developing a new driver the other day but didn't get a chance to chase it down yet. It's likely something got confused, possibly with the recent changes to propagate DAPM state between contexts, but that's just a guess as it's the most invasive thing that happened there recently.
Can you comment on this? I can certainly continue to debug it, but I figured it might be immediately obvious to you what the problem was e.g. if the same thing had happened on other platforms/codecs.
I'm on holiday tomorrow so can't have a proper look at live systems - if you've not got anywhere by Monday I should be able to sort it then.