diff --git a/target/linux/s3c24xx/patches-2.6.30/120-fix-wm8753-reg_cache.patch b/target/linux/s3c24xx/patches-2.6.30/120-fix-wm8753-reg_cache.patch new file mode 100644 index 00000000000..c1c4a93ed26 --- /dev/null +++ b/target/linux/s3c24xx/patches-2.6.30/120-fix-wm8753-reg_cache.patch @@ -0,0 +1,26 @@ +--- a/sound/soc/codecs/wm8753.c 2009-06-28 20:58:43.000000000 +0200 ++++ b/sound/soc/codecs/wm8753.c 2009-06-28 21:24:59.000000000 +0200 +@@ -79,7 +79,7 @@ + 0x0097, 0x0097, 0x0000, 0x0004, + 0x0000, 0x0083, 0x0024, 0x01ba, + 0x0000, 0x0083, 0x0024, 0x01ba, +- 0x0000, 0x0000 ++ 0x0000, 0x0000, 0x0000 + }; + + /* codec private data */ +@@ -1660,11 +1660,11 @@ + codec->set_bias_level = wm8753_set_bias_level; + codec->dai = wm8753_dai; + codec->num_dai = 2; +- codec->reg_cache_size = ARRAY_SIZE(wm8753->reg_cache); +- codec->reg_cache = &wm8753->reg_cache; ++ codec->reg_cache_size = ARRAY_SIZE(wm8753->reg_cache) + 1; ++ codec->reg_cache = wm8753->reg_cache; + codec->private_data = wm8753; + +- memcpy(codec->reg_cache, wm8753_reg, sizeof(codec->reg_cache)); ++ memcpy(codec->reg_cache, wm8753_reg, sizeof(wm8753_reg)); + INIT_DELAYED_WORK(&codec->delayed_work, wm8753_work); + + ret = wm8753_reset(codec);