Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

ASoC: SOF: Intel: hda: Add a virtual CPU DAI

Add a virtual CPU DAI for loopback capture for echo reference
implementation. We can't use the snd-soc-dummy-dai because it is already
used for the bluetooth DAI link.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com>
Reviewed-by: Liam Girdwood <liam.r.girdwood@intel.com>
Reviewed-by: Mateusz Redzynia <mateuszx.redzynia@intel.com>
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Link: https://patch.msgid.link/20260204081833.16630-11-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>

authored by

Ranjani Sridharan and committed by
Mark Brown
6c52fda4 16c58956

+10 -2
+8
sound/soc/sof/intel/hda-dai.c
··· 866 866 .channels_max = 4, 867 867 }, 868 868 }, 869 + { 870 + /* Virtual CPU DAI for Echo reference */ 871 + .name = "Loopback Virtual Pin", 872 + .capture = { 873 + .channels_min = 1, 874 + .channels_max = 2, 875 + }, 876 + }, 869 877 #if IS_ENABLED(CONFIG_SND_SOC_SOF_HDA_AUDIO_CODEC) 870 878 { 871 879 .name = "iDisp1 Pin",
+2 -2
sound/soc/sof/intel/hda.h
··· 418 418 (HDA_DSP_BDL_SIZE / sizeof(struct sof_intel_dsp_bdl)) 419 419 420 420 /* Number of DAIs */ 421 - #define SOF_SKL_NUM_DAIS_NOCODEC 8 421 + #define SOF_SKL_NUM_DAIS_NOCODEC 9 422 422 423 423 #if IS_ENABLED(CONFIG_SND_SOC_SOF_HDA_AUDIO_CODEC) 424 - #define SOF_SKL_NUM_DAIS 15 424 + #define SOF_SKL_NUM_DAIS 16 425 425 #else 426 426 #define SOF_SKL_NUM_DAIS SOF_SKL_NUM_DAIS_NOCODEC 427 427 #endif