[alsa-devel] [PATCH 2.6.38] ASoC: CX20442: fix wrong reg_cache_default content
lrg at slimlogic.co.uk
Fri Feb 11 00:59:57 CET 2011
On Thu, 2011-02-10 at 13:24 +0100, Janusz Krzysztofik wrote:
> Content of the CX20442's snd_soc_codec_driver.reg_cache_default pointed
> area, introduced with my recent NULL pointer dereferece fix (commit
> f019ee5feb344ff0b22b58df4568676295aae14f), occured wrong after further
> testing, more thorough than just booting successfully. There are two
> problems with it:
> 1) It should read
> (1 << CX20442_TELOUT) | (1 << CX20442_MIC),
> CX20442_TELOUT | CX20442_MIC.
> 2) While correctly matching actual codec hardware state on boot when
> fixed per 1), a few more code modifications would still be required
> to reflect that state not only into register cache, but also force
> them into DAPM pins state, otherwise an inconsitency occures which
> may prevent further codec state changes from being applied correctly.
> As a result, the phone stops ringing after reboot, until someone
> picks up the handset for the first time.
> Revert that reg_cache_default content to a working, previous de facto
> default value of 0, in hope this change can still be accepted as an rc
> cycle fix.
> Created and tested against linux-2.6.38-rc4
> Signed-off-by: Janusz Krzysztofik <jkrzyszt at tis.icnet.pl>
Acked-by: Liam Girdwood <lrg at slimlogic.co.uk>
Freelance Developer, SlimLogic Ltd
ASoC and Voltage Regulator Maintainer.
More information about the Alsa-devel