f7e801ce96383b69567433fc2ec8a6f705845026
[openwrt/svn-archive/archive.git] / target / linux / s3c24xx / patches-2.6.30 / 120-fix-wm8753-reg_cache.patch
1 --- a/sound/soc/codecs/wm8753.c
2 +++ b/sound/soc/codecs/wm8753.c
3 @@ -79,7 +79,7 @@ static const u16 wm8753_reg[] = {
4 0x0097, 0x0097, 0x0000, 0x0004,
5 0x0000, 0x0083, 0x0024, 0x01ba,
6 0x0000, 0x0083, 0x0024, 0x01ba,
7 - 0x0000, 0x0000
8 + 0x0000, 0x0000, 0x0000
9 };
10
11 /* codec private data */
12 @@ -1660,11 +1660,11 @@ static int wm8753_register(struct wm8753
13 codec->set_bias_level = wm8753_set_bias_level;
14 codec->dai = wm8753_dai;
15 codec->num_dai = 2;
16 - codec->reg_cache_size = ARRAY_SIZE(wm8753->reg_cache);
17 - codec->reg_cache = &wm8753->reg_cache;
18 + codec->reg_cache_size = ARRAY_SIZE(wm8753->reg_cache) + 1;
19 + codec->reg_cache = wm8753->reg_cache;
20 codec->private_data = wm8753;
21
22 - memcpy(codec->reg_cache, wm8753_reg, sizeof(codec->reg_cache));
23 + memcpy(codec->reg_cache, wm8753_reg, sizeof(wm8753_reg));
24 INIT_DELAYED_WORK(&codec->delayed_work, wm8753_work);
25
26 ret = wm8753_reset(codec);