diff options
author | Stephen Warren <swarren@nvidia.com> | 2012-06-06 19:15:48 -0400 |
---|---|---|
committer | Mark Brown <broonie@opensource.wolfsonmicro.com> | 2012-06-07 19:02:29 -0400 |
commit | 408dafc4235e393036708126057e4d643f579486 (patch) | |
tree | 792772116663f273892e1e825d4befd31d777106 /sound/soc/tegra/tegra_wm8903.c | |
parent | 9515c1010c98347ec92d923bd3e23793fa6dc6fe (diff) |
ASoC: tegra: statically define DAI link format
Define the DAI format statically in the dai_link, rather than executing
code to set it each time the hw params are set.
Signed-off-by: Stephen Warren <swarren@nvidia.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Diffstat (limited to 'sound/soc/tegra/tegra_wm8903.c')
-rw-r--r-- | sound/soc/tegra/tegra_wm8903.c | 22 |
1 files changed, 3 insertions, 19 deletions
diff --git a/sound/soc/tegra/tegra_wm8903.c b/sound/soc/tegra/tegra_wm8903.c index 1fd71e5a9eb9..087d3d8d6c06 100644 --- a/sound/soc/tegra/tegra_wm8903.c +++ b/sound/soc/tegra/tegra_wm8903.c | |||
@@ -58,7 +58,6 @@ static int tegra_wm8903_hw_params(struct snd_pcm_substream *substream, | |||
58 | { | 58 | { |
59 | struct snd_soc_pcm_runtime *rtd = substream->private_data; | 59 | struct snd_soc_pcm_runtime *rtd = substream->private_data; |
60 | struct snd_soc_dai *codec_dai = rtd->codec_dai; | 60 | struct snd_soc_dai *codec_dai = rtd->codec_dai; |
61 | struct snd_soc_dai *cpu_dai = rtd->cpu_dai; | ||
62 | struct snd_soc_codec *codec = rtd->codec; | 61 | struct snd_soc_codec *codec = rtd->codec; |
63 | struct snd_soc_card *card = codec->card; | 62 | struct snd_soc_card *card = codec->card; |
64 | struct tegra_wm8903 *machine = snd_soc_card_get_drvdata(card); | 63 | struct tegra_wm8903 *machine = snd_soc_card_get_drvdata(card); |
@@ -86,24 +85,6 @@ static int tegra_wm8903_hw_params(struct snd_pcm_substream *substream, | |||
86 | return err; | 85 | return err; |
87 | } | 86 | } |
88 | 87 | ||
89 | err = snd_soc_dai_set_fmt(codec_dai, | ||
90 | SND_SOC_DAIFMT_I2S | | ||
91 | SND_SOC_DAIFMT_NB_NF | | ||
92 | SND_SOC_DAIFMT_CBS_CFS); | ||
93 | if (err < 0) { | ||
94 | dev_err(card->dev, "codec_dai fmt not set\n"); | ||
95 | return err; | ||
96 | } | ||
97 | |||
98 | err = snd_soc_dai_set_fmt(cpu_dai, | ||
99 | SND_SOC_DAIFMT_I2S | | ||
100 | SND_SOC_DAIFMT_NB_NF | | ||
101 | SND_SOC_DAIFMT_CBS_CFS); | ||
102 | if (err < 0) { | ||
103 | dev_err(card->dev, "cpu_dai fmt not set\n"); | ||
104 | return err; | ||
105 | } | ||
106 | |||
107 | err = snd_soc_dai_set_sysclk(codec_dai, 0, mclk, | 88 | err = snd_soc_dai_set_sysclk(codec_dai, 0, mclk, |
108 | SND_SOC_CLOCK_IN); | 89 | SND_SOC_CLOCK_IN); |
109 | if (err < 0) { | 90 | if (err < 0) { |
@@ -240,6 +221,9 @@ static struct snd_soc_dai_link tegra_wm8903_dai = { | |||
240 | .codec_dai_name = "wm8903-hifi", | 221 | .codec_dai_name = "wm8903-hifi", |
241 | .init = tegra_wm8903_init, | 222 | .init = tegra_wm8903_init, |
242 | .ops = &tegra_wm8903_ops, | 223 | .ops = &tegra_wm8903_ops, |
224 | .dai_fmt = SND_SOC_DAIFMT_I2S | | ||
225 | SND_SOC_DAIFMT_NB_NF | | ||
226 | SND_SOC_DAIFMT_CBS_CFS, | ||
243 | }; | 227 | }; |
244 | 228 | ||
245 | static struct snd_soc_card snd_soc_tegra_wm8903 = { | 229 | static struct snd_soc_card snd_soc_tegra_wm8903 = { |