[alsa-devel] [RFC 03/10] ASoC: Intel: Skylake: add HDA BE DAIs

Pierre-Louis Bossart pierre-louis.bossart at linux.intel.com
Mon Dec 4 17:40:31 CET 2017


On 12/4/17 10:14 AM, Ughreja, Rakesh A wrote:
> 
> 
>> -----Original Message-----
>> From: Pierre-Louis Bossart [mailto:pierre-louis.bossart at linux.intel.com]
>> Sent: Friday, December 1, 2017 11:50 PM
>> To: Ughreja, Rakesh A <rakesh.a.ughreja at intel.com>; alsa-devel at alsa-
>> project.org; broonie at kernel.org; tiwai at suse.de; liam.r.girdwood at linux.intel.com
>> Cc: Koul, Vinod <vinod.koul at intel.com>; Patches Audio
>> <patches.audio at intel.com>
>> Subject: Re: [alsa-devel] [RFC 03/10] ASoC: Intel: Skylake: add HDA BE DAIs
>>
>> On 12/1/17 3:14 AM, Rakesh Ughreja wrote:
>>> Add support for HDA BE DAIs in SKL platform driver.
>>>
>>> Signed-off-by: Rakesh Ughreja <rakesh.a.ughreja at intel.com>
>>> ---
>>>    sound/soc/intel/skylake/skl-pcm.c | 32 +++++++++++++++++++++++++------
>> -
>>>    1 file changed, 25 insertions(+), 7 deletions(-)
>>>
>>> diff --git a/sound/soc/intel/skylake/skl-pcm.c b/sound/soc/intel/skylake/skl-
>> pcm.c
>>> index e6fee7a..3dcb241 100644
>>> --- a/sound/soc/intel/skylake/skl-pcm.c
>>> +++ b/sound/soc/intel/skylake/skl-pcm.c
>>> @@ -956,21 +956,39 @@ static struct snd_soc_dai_driver skl_platform_dai[] = {
>>>    	},
>>>    },
>>>    {
>>> -	.name = "HD-Codec Pin",
>>> +	.name = "Analog CPU DAI",
>>>    	.ops = &skl_link_dai_ops,
>>>    	.playback = {
>>> -		.stream_name = "HD-Codec Tx",
>>> -		.channels_min = HDA_STEREO,
>>> +		.stream_name = "Analog CPU Playback",
>>> +		.channels_min = HDA_MONO,
>>>    		.channels_max = HDA_STEREO,
>>>    		.rates = SNDRV_PCM_RATE_48000,
>>> -		.formats = SNDRV_PCM_FMTBIT_S16_LE,
>>> +		.formats = SNDRV_PCM_FMTBIT_S16_LE |
>> SNDRV_PCM_FMTBIT_S24_LE,
>>>    	},
>>>    	.capture = {
>>> -		.stream_name = "HD-Codec Rx",
>>> -		.channels_min = HDA_STEREO,
>>> +		.stream_name = "Analog CPU Capture",
>>> +		.channels_min = HDA_MONO,
>>>    		.channels_max = HDA_STEREO,
>>>    		.rates = SNDRV_PCM_RATE_48000,
>>> -		.formats = SNDRV_PCM_FMTBIT_S16_LE,
>>> +		.formats = SNDRV_PCM_FMTBIT_S16_LE |
>> SNDRV_PCM_FMTBIT_S24_LE,
>>> +	},
>>> +},
>>> +{
>>> +	.name = "Digital CPU DAI",
>>
>> I am not sure I get the meaning of analog/digital.
>>
>> Did you mean external codec vs. iDisp codec?
>>
>> Or did you really mean analog? I don't think you can control this front
>> the CPU side, e.g. if the codec has an S/PDIF output it remains digital.
> 
> I was trying to map the BE CPU DAIs to hda_pcm_stream.
> The way it is defined here.
> https://elixir.free-electrons.com/linux/v4.15-rc2/source/sound/pci/hda/hda_generic.c#L5374

ok, but I still don't know what those BEs are supposed to refer to or mean.

> 
>>
>>> +	.ops = &skl_link_dai_ops,
>>> +	.playback = {
>>> +		.stream_name = "Digital CPU Playback",
>>> +		.channels_min = HDA_MONO,
>>> +		.channels_max = HDA_STEREO,
>>> +		.rates = SNDRV_PCM_RATE_48000,
>>> +		.formats = SNDRV_PCM_FMTBIT_S16_LE |
>> SNDRV_PCM_FMTBIT_S24_LE,
>>> +	},
>>> +	.capture = {
>>> +		.stream_name = "Digital CPU Capture",
>>> +		.channels_min = HDA_MONO,
>>> +		.channels_max = HDA_STEREO,
>>> +		.rates = SNDRV_PCM_RATE_48000,
>>> +		.formats = SNDRV_PCM_FMTBIT_S16_LE |
>> SNDRV_PCM_FMTBIT_S24_LE,
>>>    	},
>>>    },
>>>    };
>>>
> 



More information about the Alsa-devel mailing list