[PATCH v2 02/14] ASoC: codecs: Add HD-Audio codec driver

Cezary Rojewski cezary.rojewski at intel.com
Tue Jul 5 14:01:50 CEST 2022


On 2022-07-05 12:20 PM, Geert Uytterhoeven wrote:
>      Hi Cezary,
> 
> On Wed, 11 May 2022, Cezary Rojewski wrote:

...

>>
>> Relation with hdac_hda:
>>
>> Addition of parallel solution is motivated by behavioral differences
>> between hdac_hda.c and its legacy equivalent found in sound/pci/hda
>> e.g.: lack of dynamic, based on codec capabilities, resource allocation
>> and high cost of removing such differences on actively used targets.
>> Major goal of codec driver presented here is to follow HD-Audio legacy
>> behavior in 1:1 fashion by becoming a wrapper. Doing so increases code
>> coverage of the legacy code and reduces the maintenance cost for both
>> solutions.
>>
>> Signed-off-by: Cezary Rojewski <cezary.rojewski at intel.com>
> 
> Thanks for your patch, which is now commit b5df2a7dca1cc6c6 ("ASoC:
> codecs: Add HD-Audio codec driver") in sound-asoc/for-next.
> 
>> --- a/sound/soc/codecs/Kconfig
>> +++ b/sound/soc/codecs/Kconfig
>> @@ -937,6 +937,16 @@ config SND_SOC_HDAC_HDA
>>     tristate
>>     select SND_HDA
>>
>> +config SND_SOC_HDA
>> +    tristate "HD-Audio codec driver"
>> +    select SND_HDA_EXT_CORE
>> +    select SND_HDA
> 
> I am wondering if this needs a platform dependency?
> Or perhaps this symbol should be made invisible, as it is selected by
> SND_SOC_INTEL_AVS_MACH_HDAUDIO?  Are there any other users?


Your feedback is much appreciated!

So, this codec-driver - HDAudio codec driver to be strict - is _generic_ 
i.e. works with any HDAudio codec type, be it Cirrus, Maxim, Conexant or 
anything else.

It makes heavy use of HDAudio library found in sound/hda/ and re-uses a 
lot of non-DSP HDAudio related code found in sound/pci/hda. It's 
basically a wrapper for logic present in ALSA (sound/) so ASoC 
(sound/soc/) users can have first class HDAudio codec support without us 
duplicating the entire implementation.

Right now the only user is avs-driver found in sound/soc/intel/avs. By 
design, any HDAudio bus driver in ASoC framework can make use of it 
though. Because of that, we decided not to couple avs-driver and this 
HDAudio codec driver tightly.


> Gr{oetje,eeting}s,

This made my day :) it's wonderful!


More information about the Alsa-devel mailing list