16 #include <linux/module.h>
18 #include "../codecs/wm8994.h"
29 if (dapm->
dev != aif1_dai->
dev)
43 pr_err(
"Failed to start FLL: %d\n", ret);
52 pr_err(
"Failed to set SYSCLK: %d\n", ret);
65 static int littlemill_set_bias_level_post(
struct snd_soc_card *card,
72 if (dapm->
dev != aif1_dai->
dev)
80 pr_err(
"Failed to switch away from FLL1: %d\n", ret);
87 pr_err(
"Failed to stop FLL1: %d\n", ret);
114 pr_err(
"Failed to start FLL: %d\n", ret);
123 pr_err(
"Failed to set SYSCLK: %d\n", ret);
131 .hw_params = littlemill_hw_params,
145 .stream_name =
"CPU",
146 .cpu_dai_name =
"samsung-i2s.0",
147 .codec_dai_name =
"wm8994-aif1",
148 .platform_name =
"samsung-audio",
149 .codec_name =
"wm8994-codec",
152 .ops = &littlemill_ops,
156 .stream_name =
"Baseband",
157 .cpu_dai_name =
"wm8994-aif2",
158 .codec_dai_name =
"wm1250-ev1",
159 .codec_name =
"wm1250-ev1.1-0027",
163 .params = &baseband_params,
180 pr_err(
"Failed to start FLL: %d\n", ret);
188 pr_err(
"Failed to set SYSCLK: %d\n", ret);
196 pr_err(
"Failed to switch away from FLL2: %d\n", ret);
203 pr_err(
"Failed to stop FLL2: %d\n", ret);
231 {
"Headphone",
NULL,
"HPOUT1L" },
232 {
"Headphone",
NULL,
"HPOUT1R" },
234 {
"AMIC",
NULL,
"MICBIAS1" },
235 {
"IN1LN",
NULL,
"AMIC" },
237 {
"DMIC",
NULL,
"MICBIAS2" },
238 {
"DMIC1DAT",
NULL,
"DMIC" },
239 {
"DMIC2DAT",
NULL,
"DMIC" },
241 {
"AIF2CLK",
NULL,
"Baseband Clock" },
246 static int littlemill_late_probe(
struct snd_soc_card *card)
268 &littlemill_headset);
282 .name =
"Littlemill",
284 .dai_link = littlemill_dai,
287 .set_bias_level = littlemill_set_bias_level,
288 .set_bias_level_post = littlemill_set_bias_level_post,
294 .dapm_routes = audio_paths,
297 .late_probe = littlemill_late_probe,
309 dev_err(&pdev->
dev,
"snd_soc_register_card() failed: %d\n",
328 .name =
"littlemill",
332 .probe = littlemill_probe,