[PATCH v4 09/12] ASoC: wm9712: add ac97 new bus support

Robert Jarzmik robert.jarzmik at free.fr
Fri Jul 28 15:14:09 PDT 2017


Charles Keepax <ckeepax at opensource.cirrus.com> writes:

> On Mon, Jul 24, 2017 at 10:49:25PM +0200, Robert Jarzmik wrote:
>> Add support for the new ac97 bus model, where devices are automatically
>> discovered on AC-Links.
>> 
>> Signed-off-by: Robert Jarzmik <robert.jarzmik at free.fr>
>> ---
>> +	} else {
>> +		wm9712->ac97 = snd_soc_new_ac97_codec(codec, WM9712_VENDOR_ID,
>> +						      WM9712_VENDOR_ID_MASK);
>> +		if (IS_ERR(wm9712->ac97)) {
>> +			ret = PTR_ERR(wm9712->ac97);
>> +			dev_err(codec->dev,
>> +				"Failed to register AC97 codec: %d\n", ret);
>> +			return ret;
>> +		}
>> +
>> +		regmap = regmap_init_ac97(wm9712->ac97, &wm9712_regmap_config);
>> +		if (IS_ERR(regmap)) {
>> +			ret = PTR_ERR(regmap);
>> +			goto err_free_ac97_codec;
>
> For the 9713 you had this wrapped in an ifdef? Why did it need an
> ifdef there but doesn't for this driver?
I have forgotten the ifdef, it's a very good catch, thanks.
The trick is that in :
  - include/sound/soc.h
  - snd_soc_new_ac97_codec() is only defined under this ifdef

And with the new ac97 bus support, these drivers can be compiled now with
CONFIG_SND_SOC_AC97_BUS not defined, so I need to add the ifdef.

Cheers.

-- 
Robert



More information about the linux-arm-kernel mailing list