diff options
Diffstat (limited to 'sound/soc/intel/boards/skl_rt286.c')
-rw-r--r-- | sound/soc/intel/boards/skl_rt286.c | 30 |
1 files changed, 24 insertions, 6 deletions
diff --git a/sound/soc/intel/boards/skl_rt286.c b/sound/soc/intel/boards/skl_rt286.c index f5ab7b8d51d1..2bc4cfca594e 100644 --- a/sound/soc/intel/boards/skl_rt286.c +++ b/sound/soc/intel/boards/skl_rt286.c | |||
@@ -43,6 +43,7 @@ struct skl_rt286_private { | |||
43 | 43 | ||
44 | enum { | 44 | enum { |
45 | SKL_DPCM_AUDIO_PB = 0, | 45 | SKL_DPCM_AUDIO_PB = 0, |
46 | SKL_DPCM_AUDIO_DB_PB, | ||
46 | SKL_DPCM_AUDIO_CP, | 47 | SKL_DPCM_AUDIO_CP, |
47 | SKL_DPCM_AUDIO_REF_CP, | 48 | SKL_DPCM_AUDIO_REF_CP, |
48 | SKL_DPCM_AUDIO_DMIC_CP, | 49 | SKL_DPCM_AUDIO_DMIC_CP, |
@@ -165,21 +166,21 @@ static int skylake_hdmi_init(struct snd_soc_pcm_runtime *rtd) | |||
165 | return 0; | 166 | return 0; |
166 | } | 167 | } |
167 | 168 | ||
168 | static unsigned int rates[] = { | 169 | static const unsigned int rates[] = { |
169 | 48000, | 170 | 48000, |
170 | }; | 171 | }; |
171 | 172 | ||
172 | static struct snd_pcm_hw_constraint_list constraints_rates = { | 173 | static const struct snd_pcm_hw_constraint_list constraints_rates = { |
173 | .count = ARRAY_SIZE(rates), | 174 | .count = ARRAY_SIZE(rates), |
174 | .list = rates, | 175 | .list = rates, |
175 | .mask = 0, | 176 | .mask = 0, |
176 | }; | 177 | }; |
177 | 178 | ||
178 | static unsigned int channels[] = { | 179 | static const unsigned int channels[] = { |
179 | 2, | 180 | 2, |
180 | }; | 181 | }; |
181 | 182 | ||
182 | static struct snd_pcm_hw_constraint_list constraints_channels = { | 183 | static const struct snd_pcm_hw_constraint_list constraints_channels = { |
183 | .count = ARRAY_SIZE(channels), | 184 | .count = ARRAY_SIZE(channels), |
184 | .list = channels, | 185 | .list = channels, |
185 | .mask = 0, | 186 | .mask = 0, |
@@ -264,11 +265,11 @@ static int skylake_dmic_fixup(struct snd_soc_pcm_runtime *rtd, | |||
264 | return 0; | 265 | return 0; |
265 | } | 266 | } |
266 | 267 | ||
267 | static unsigned int channels_dmic[] = { | 268 | static const unsigned int channels_dmic[] = { |
268 | 2, 4, | 269 | 2, 4, |
269 | }; | 270 | }; |
270 | 271 | ||
271 | static struct snd_pcm_hw_constraint_list constraints_dmic_channels = { | 272 | static const struct snd_pcm_hw_constraint_list constraints_dmic_channels = { |
272 | .count = ARRAY_SIZE(channels_dmic), | 273 | .count = ARRAY_SIZE(channels_dmic), |
273 | .list = channels_dmic, | 274 | .list = channels_dmic, |
274 | .mask = 0, | 275 | .mask = 0, |
@@ -310,6 +311,23 @@ static struct snd_soc_dai_link skylake_rt286_dais[] = { | |||
310 | .dpcm_playback = 1, | 311 | .dpcm_playback = 1, |
311 | .ops = &skylake_rt286_fe_ops, | 312 | .ops = &skylake_rt286_fe_ops, |
312 | }, | 313 | }, |
314 | [SKL_DPCM_AUDIO_DB_PB] = { | ||
315 | .name = "Skl Deepbuffer Port", | ||
316 | .stream_name = "Deep Buffer Audio", | ||
317 | .cpu_dai_name = "Deepbuffer Pin", | ||
318 | .platform_name = "0000:00:1f.3", | ||
319 | .nonatomic = 1, | ||
320 | .dynamic = 1, | ||
321 | .codec_name = "snd-soc-dummy", | ||
322 | .codec_dai_name = "snd-soc-dummy-dai", | ||
323 | .trigger = { | ||
324 | SND_SOC_DPCM_TRIGGER_POST, | ||
325 | SND_SOC_DPCM_TRIGGER_POST | ||
326 | }, | ||
327 | .dpcm_playback = 1, | ||
328 | .ops = &skylake_rt286_fe_ops, | ||
329 | |||
330 | }, | ||
313 | [SKL_DPCM_AUDIO_CP] = { | 331 | [SKL_DPCM_AUDIO_CP] = { |
314 | .name = "Skl Audio Capture Port", | 332 | .name = "Skl Audio Capture Port", |
315 | .stream_name = "Audio Record", | 333 | .stream_name = "Audio Record", |