Lines Matching +full:audio +full:- +full:tx

1 // SPDX-License-Identifier: GPL-2.0-only
5 * Copyright (C) 2014-2015, Intel Corporation. All rights reserved.
8 * Intel Broadwell Wildcatpoint SST Audio
81 /* HP jack connectors - unknown if we have jack deteck */
92 { "AIF1 Playback", NULL, "ssp0 Tx"},
93 { "ssp0 Tx", NULL, "codec0_out"},
94 { "ssp0 Tx", NULL, "codec1_out"},
103 { "hifi3", NULL, "iDisp3 Tx"},
104 { "iDisp3 Tx", NULL, "iDisp3_out"},
105 { "hifi2", NULL, "iDisp2 Tx"},
106 { "iDisp2 Tx", NULL, "iDisp2_out"},
107 { "hifi1", NULL, "iDisp1 Tx"},
108 { "iDisp1 Tx", NULL, "iDisp1_out"},
115 struct snd_soc_component *component = asoc_rtd_to_cpu(rtd, 0)->component; in skylake_rt286_fe_init()
125 struct snd_soc_component *component = asoc_rtd_to_codec(rtd, 0)->component; in skylake_rt286_codec_init()
128 ret = snd_soc_card_jack_new_pins(rtd->card, "Headset", in skylake_rt286_codec_init()
138 snd_soc_dapm_ignore_suspend(&rtd->card->dapm, "SoC DMIC"); in skylake_rt286_codec_init()
145 struct skl_rt286_private *ctx = snd_soc_card_get_drvdata(rtd->card); in skylake_hdmi_init()
149 pcm = devm_kzalloc(rtd->card->dev, sizeof(*pcm), GFP_KERNEL); in skylake_hdmi_init()
151 return -ENOMEM; in skylake_hdmi_init()
153 pcm->device = SKL_DPCM_AUDIO_HDMI1_PB + dai->id; in skylake_hdmi_init()
154 pcm->codec_dai = dai; in skylake_hdmi_init()
156 list_add_tail(&pcm->head, &ctx->hdmi_pcm_list); in skylake_hdmi_init()
183 struct snd_pcm_runtime *runtime = substream->runtime; in skl_fe_startup()
189 * 16 bit audio in skl_fe_startup()
192 runtime->hw.channels_max = 2; in skl_fe_startup()
196 runtime->hw.formats = SNDRV_PCM_FMTBIT_S16_LE; in skl_fe_startup()
219 rate->min = rate->max = 48000; in skylake_ssp0_fixup()
220 chan->min = chan->max = 2; in skylake_ssp0_fixup()
238 dev_err(rtd->dev, "set codec sysclk failed: %d\n", ret); in skylake_rt286_hw_params()
253 chan->min = chan->max = 2; in skylake_dmic_fixup()
255 chan->min = chan->max = 4; in skylake_dmic_fixup()
272 struct snd_pcm_runtime *runtime = substream->runtime; in skylake_dmic_startup()
274 runtime->hw.channels_max = 4; in skylake_dmic_startup()
278 return snd_pcm_hw_constraint_list(substream->runtime, 0, in skylake_dmic_startup()
313 DAILINK_COMP_ARRAY(COMP_CODEC("i2c-INT343A:00", "rt286-aif1")));
318 DAILINK_COMP_ARRAY(COMP_CODEC("dmic-codec", "dmic-hifi")));
323 DAILINK_COMP_ARRAY(COMP_CODEC("ehdaudio0D2", "intel-hdmi-hifi1")));
328 DAILINK_COMP_ARRAY(COMP_CODEC("ehdaudio0D2", "intel-hdmi-hifi2")));
333 DAILINK_COMP_ARRAY(COMP_CODEC("ehdaudio0D2", "intel-hdmi-hifi3")));
338 /* skylake digital audio interface glue - connects codec <--> CPU */
342 .name = "Skl Audio Port",
343 .stream_name = "Audio",
357 .stream_name = "Deep Buffer Audio",
369 .name = "Skl Audio Capture Port",
370 .stream_name = "Audio Record",
382 .name = "Skl Audio Reference cap",
391 .name = "Skl Audio DMIC cap",
430 /* SSP0 - Codec */
431 .name = "SSP0-Codec",
489 list_for_each_entry(pcm, &ctx->hdmi_pcm_list, head) { in skylake_card_late_probe()
490 component = pcm->codec_dai->component; in skylake_card_late_probe()
492 "HDMI/DP, pcm=%d Jack", pcm->device); in skylake_card_late_probe()
499 err = hdac_hdmi_jack_init(pcm->codec_dai, pcm->device, in skylake_card_late_probe()
508 return -EINVAL; in skylake_card_late_probe()
510 return hdac_hdmi_jack_port_init(component, &card->dapm); in skylake_card_late_probe()
513 /* skylake audio machine driver for SPT + RT286S */
515 .name = "skylake-rt286",
534 ctx = devm_kzalloc(&pdev->dev, sizeof(*ctx), GFP_KERNEL); in skylake_audio_probe()
536 return -ENOMEM; in skylake_audio_probe()
538 INIT_LIST_HEAD(&ctx->hdmi_pcm_list); in skylake_audio_probe()
540 skylake_rt286.dev = &pdev->dev; in skylake_audio_probe()
543 return devm_snd_soc_register_card(&pdev->dev, &skylake_rt286); in skylake_audio_probe()
567 MODULE_DESCRIPTION("Intel SST Audio for Skylake");