On 01 February 2011 13:01:17 Janusz Krzysztofik wrote:
The CX20442 codec driver never provided the snd_soc_codec_driver's .reg_cache_default member. With the latest ASoC framework changes, it seems to be referred unconditionally, resulting in a NULL pointer dereference if missing. Provide it.
Created and tested on Amstrad Delta against linux-2.6.38-rc2
Signed-off-by: Janusz Krzysztofik jkrzyszt@tis.icnet.pl
NOTE: I'm not sure if the value choosen is Amstrad Delta specific or not.
I forgot to mention: please consider queuing this patch for the current rc cycle.
Thanks, Janusz
sound/soc/codecs/cx20442.c | 3 +++ 1 file changed, 3 insertions(+)
--- git/sound/soc/codecs/cx20442.c.orig 2011-01-31 20:09:18.000000000 +0100 +++ git/sound/soc/codecs/cx20442.c 2011-01-31 20:16:20.000000000 +0100 @@ -367,9 +367,12 @@ static int cx20442_codec_remove(struct s return 0; }
+static const u8 cx20442_reg = CX20442_TELOUT | CX20442_MIC;
static struct snd_soc_codec_driver cx20442_codec_dev = { .probe = cx20442_codec_probe, .remove = cx20442_codec_remove,
- .reg_cache_default = &cx20442_reg, .reg_cache_size = 1, .reg_word_size = sizeof(u8), .read = cx20442_read_reg_cache,