summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--target/linux/s3c24xx/patches-2.6.30/120-fix-wm8753-reg_cache.patch26
1 files changed, 26 insertions, 0 deletions
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 000000000..c1c4a93ed
--- /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);