Lines Matching full:link
11 * Intel HDMI DAI Link
41 * DMIC DAI Link
74 * HDA External Codec DAI Link
132 * DAI Link Helpers
178 static int set_ssp_codec_link(struct device *dev, struct snd_soc_dai_link *link, in set_ssp_codec_link() argument
184 dev_dbg(dev, "link %d: ssp codec %s, ssp %d\n", be_id, in set_ssp_codec_link()
187 /* link name */ in set_ssp_codec_link()
188 link->name = devm_kasprintf(dev, GFP_KERNEL, "SSP%d-Codec", ssp_codec); in set_ssp_codec_link()
189 if (!link->name) in set_ssp_codec_link()
209 link->cpus = cpus; in set_ssp_codec_link()
210 link->num_cpus = 1; in set_ssp_codec_link()
215 link->platforms = platform_component; in set_ssp_codec_link()
216 link->num_platforms = ARRAY_SIZE(platform_component); in set_ssp_codec_link()
218 link->id = be_id; in set_ssp_codec_link()
219 link->no_pcm = 1; in set_ssp_codec_link()
224 static int set_dmic_link(struct device *dev, struct snd_soc_dai_link *link, in set_dmic_link() argument
237 dev_dbg(dev, "link %d: dmic01\n", be_id); in set_dmic_link()
239 link->name = "dmic01"; in set_dmic_link()
243 dev_dbg(dev, "link %d: dmic16k\n", be_id); in set_dmic_link()
245 link->name = "dmic16k"; in set_dmic_link()
253 link->cpus = cpus; in set_dmic_link()
254 link->num_cpus = 1; in set_dmic_link()
257 link->codecs = dmic_component; in set_dmic_link()
258 link->num_codecs = ARRAY_SIZE(dmic_component); in set_dmic_link()
261 link->platforms = platform_component; in set_dmic_link()
262 link->num_platforms = ARRAY_SIZE(platform_component); in set_dmic_link()
264 link->id = be_id; in set_dmic_link()
266 link->init = dmic_init; in set_dmic_link()
267 link->ignore_suspend = 1; in set_dmic_link()
268 link->no_pcm = 1; in set_dmic_link()
269 link->capture_only = 1; in set_dmic_link()
274 static int set_idisp_hdmi_link(struct device *dev, struct snd_soc_dai_link *link, in set_idisp_hdmi_link() argument
279 dev_dbg(dev, "link %d: idisp hdmi %d, idisp codec %d\n", be_id, hdmi_id, in set_idisp_hdmi_link()
282 /* link name */ in set_idisp_hdmi_link()
283 link->name = devm_kasprintf(dev, GFP_KERNEL, "iDisp%d", hdmi_id); in set_idisp_hdmi_link()
284 if (!link->name) in set_idisp_hdmi_link()
297 link->cpus = cpus; in set_idisp_hdmi_link()
298 link->num_cpus = 1; in set_idisp_hdmi_link()
314 link->codecs = codecs; in set_idisp_hdmi_link()
316 link->codecs = &snd_soc_dummy_dlc; in set_idisp_hdmi_link()
318 link->num_codecs = 1; in set_idisp_hdmi_link()
321 link->platforms = platform_component; in set_idisp_hdmi_link()
322 link->num_platforms = ARRAY_SIZE(platform_component); in set_idisp_hdmi_link()
324 link->id = be_id; in set_idisp_hdmi_link()
325 link->init = (hdmi_id == 1) ? hdmi_init : NULL; in set_idisp_hdmi_link()
326 link->no_pcm = 1; in set_idisp_hdmi_link()
327 link->playback_only = 1; in set_idisp_hdmi_link()
332 static int set_ssp_amp_link(struct device *dev, struct snd_soc_dai_link *link, in set_ssp_amp_link() argument
338 dev_dbg(dev, "link %d: ssp amp %s, ssp %d\n", be_id, in set_ssp_amp_link()
341 /* link name */ in set_ssp_amp_link()
342 link->name = devm_kasprintf(dev, GFP_KERNEL, "SSP%d-Codec", ssp_amp); in set_ssp_amp_link()
343 if (!link->name) in set_ssp_amp_link()
356 link->cpus = cpus; in set_ssp_amp_link()
357 link->num_cpus = 1; in set_ssp_amp_link()
363 link->platforms = platform_component; in set_ssp_amp_link()
364 link->num_platforms = ARRAY_SIZE(platform_component); in set_ssp_amp_link()
366 link->id = be_id; in set_ssp_amp_link()
367 link->no_pcm = 1; in set_ssp_amp_link()
372 static int set_bt_offload_link(struct device *dev, struct snd_soc_dai_link *link, in set_bt_offload_link() argument
377 dev_dbg(dev, "link %d: bt offload, ssp %d\n", be_id, ssp_bt); in set_bt_offload_link()
379 /* link name */ in set_bt_offload_link()
380 link->name = devm_kasprintf(dev, GFP_KERNEL, "SSP%d-BT", ssp_bt); in set_bt_offload_link()
381 if (!link->name) in set_bt_offload_link()
394 link->cpus = cpus; in set_bt_offload_link()
395 link->num_cpus = 1; in set_bt_offload_link()
398 link->codecs = &snd_soc_dummy_dlc; in set_bt_offload_link()
399 link->num_codecs = 1; in set_bt_offload_link()
402 link->platforms = platform_component; in set_bt_offload_link()
403 link->num_platforms = ARRAY_SIZE(platform_component); in set_bt_offload_link()
405 link->id = be_id; in set_bt_offload_link()
406 link->no_pcm = 1; in set_bt_offload_link()
411 static int set_hdmi_in_link(struct device *dev, struct snd_soc_dai_link *link, in set_hdmi_in_link() argument
416 dev_dbg(dev, "link %d: hdmi-in, ssp %d\n", be_id, ssp_hdmi); in set_hdmi_in_link()
418 /* link name */ in set_hdmi_in_link()
419 link->name = devm_kasprintf(dev, GFP_KERNEL, "SSP%d-HDMI", ssp_hdmi); in set_hdmi_in_link()
420 if (!link->name) in set_hdmi_in_link()
433 link->cpus = cpus; in set_hdmi_in_link()
434 link->num_cpus = 1; in set_hdmi_in_link()
437 link->codecs = &snd_soc_dummy_dlc; in set_hdmi_in_link()
438 link->num_codecs = 1; in set_hdmi_in_link()
441 link->platforms = platform_component; in set_hdmi_in_link()
442 link->num_platforms = ARRAY_SIZE(platform_component); in set_hdmi_in_link()
444 link->id = be_id; in set_hdmi_in_link()
445 link->no_pcm = 1; in set_hdmi_in_link()
446 link->capture_only = 1; in set_hdmi_in_link()
451 static int set_hda_codec_link(struct device *dev, struct snd_soc_dai_link *link, in set_hda_codec_link() argument
456 dev_dbg(dev, "link %d: hda analog\n", be_id); in set_hda_codec_link()
458 link->name = "Analog Playback and Capture"; in set_hda_codec_link()
461 link->cpus = hda_analog_cpus; in set_hda_codec_link()
462 link->num_cpus = ARRAY_SIZE(hda_analog_cpus); in set_hda_codec_link()
465 link->codecs = hda_analog_codecs; in set_hda_codec_link()
466 link->num_codecs = ARRAY_SIZE(hda_analog_codecs); in set_hda_codec_link()
469 dev_dbg(dev, "link %d: hda digital\n", be_id); in set_hda_codec_link()
471 link->name = "Digital Playback and Capture"; in set_hda_codec_link()
474 link->cpus = hda_digital_cpus; in set_hda_codec_link()
475 link->num_cpus = ARRAY_SIZE(hda_digital_cpus); in set_hda_codec_link()
478 link->codecs = hda_digital_codecs; in set_hda_codec_link()
479 link->num_codecs = ARRAY_SIZE(hda_digital_codecs); in set_hda_codec_link()
487 link->platforms = platform_component; in set_hda_codec_link()
488 link->num_platforms = ARRAY_SIZE(platform_component); in set_hda_codec_link()
490 link->id = be_id; in set_hda_codec_link()
492 link->init = hda_init; in set_hda_codec_link()
493 link->no_pcm = 1; in set_hda_codec_link()
543 unsigned long link_order, link; in sof_intel_board_set_dai_link() local
567 link = link_order & SOF_LINK_ORDER_MASK; in sof_intel_board_set_dai_link()
574 /* use array index as link id */ in sof_intel_board_set_dai_link()
578 switch (link) { in sof_intel_board_set_dai_link()
587 dev_err(dev, "fail to set codec link, ret %d\n", in sof_intel_board_set_dai_link()
603 dev_err(dev, "fail to set dmic01 link, ret %d\n", in sof_intel_board_set_dai_link()
619 dev_err(dev, "fail to set dmic16k link, ret %d\n", in sof_intel_board_set_dai_link()
633 dev_err(dev, "fail to set hdmi link, ret %d\n", in sof_intel_board_set_dai_link()
650 dev_err(dev, "fail to set amp link, ret %d\n", in sof_intel_board_set_dai_link()
666 dev_err(dev, "fail to set bt link, ret %d\n", in sof_intel_board_set_dai_link()
679 dev_err(dev, "fail to set hdmi-in link, ret %d\n", in sof_intel_board_set_dai_link()
696 dev_err(dev, "fail to set hda analog link, ret %d\n", in sof_intel_board_set_dai_link()
707 dev_err(dev, "fail to set hda digital link, ret %d\n", in sof_intel_board_set_dai_link()
718 dev_err(dev, "invalid link type %ld\n", link); in sof_intel_board_set_dai_link()
724 dev_err(dev, "link number mismatch, idx %d, num_links %d\n", idx, in sof_intel_board_set_dai_link()