On 07/04/2014 01:24 PM, Sylwester Nawrocki wrote:
On 04/07/14 13:10, Lars-Peter Clausen wrote:
On 07/04/2014 01:04 PM, Sylwester Nawrocki wrote:
On 22/05/14 20:53, Mark Brown wrote:
+       ret = snd_soc_dai_set_fmt(codec_dai, SND_SOC_DAIFMT_I2S
+                                       | SND_SOC_DAIFMT_NB_NF
+                                       | SND_SOC_DAIFMT_CBM_CFM);
+       if (ret < 0)
+               return ret;
+
+       ret = snd_soc_dai_set_fmt(cpu_dai, SND_SOC_DAIFMT_I2S
+                                       | SND_SOC_DAIFMT_NB_NF
+                                       | SND_SOC_DAIFMT_CBM_CFM);
+       if (ret < 0)
+               return ret;

These are constant, set these in the dai_link.

set_fmt also sets master/slave mode of the I2S DAI, after I moved
this into the cpu_dai link data structure after suspend/resume cycle
the I2S IP block is not being properly re-configured. Should the
format setting be added in resume_post callback, or is there any
other preferred way ? Similarly the syclk settings are being lost
over suspend/resume cycle and nothing restores them.

The I2S driver should save and restore it's register during suspend/resume.

OK, thanks. I checked the I2S driver does it, but only when dai->active
flags is set [1]. However, during system resume this flag is not set
(in situation where playback or capture wasn't active right before
system suspend). Is the dai->active test wrong in that driver then ?
I'm not sure if it could just be removed.

Yes, just remove the check.

- Lars

--
To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to