On 08/26/2014 08:11 AM, Scott Jiang wrote:
2014-08-22 17:47 GMT+08:00 Lars-Peter Clausen lars@metafoo.de:
On 08/22/2014 11:21 AM, Scott Jiang wrote:
Hi Mark and Lars,
commit 9d863b88ec371491e926e0828dbe3d36ead0f6f9 Author: Lars-Peter Clausen lars@metafoo.de Date: Sat Aug 31 18:15:23 2013 +0200
ASoC: ssm2602: Fix cache sync The ssm2602 uses regmap for caching not soc-cache, so we need to use regcache_sync() instead of snd_soc_cache_sync().
According my test, regcache_sync() can't recover register values when resume. While snd_soc_cache_sync() works fine. I used regmap_read() to read registers in regmap layer and found it's the same as suspend. But regcache_sync() didn't sync these registers correctly to hardware.
That does not make too much sense. snd_soc_cache_sync() is definitely a no-op when using regmap. Which kernel version are you on? Are there any additional changes to this driver in your tree?
My version is 3.16. I compared with the latest 3.17 rc2 kernel, there is only one patch.
And it is vanilla v3.16, no patches to the driver or the ASoC core? snd_soc_cache_sync() will definitely do nothing for this driver on v3.16 since reg_cache_size is 0 for this driver's snd_soc_codec_driver.
[...]
By the way, have you ever tested your patches on any blackfin board? Your patches for adau1761, ssm2602 and bf5xx-i2s all failed to run.
Yes, I've tested them before submitting them upstream on a ezkit board. What kind of errors are you seeing?
- Lars