[alsa-devel] [PATCH v3 1/2] ASoC: core: add multi-codec support in DT

Mark Brown broonie at kernel.org
Fri Nov 7 15:01:44 CET 2014


On Mon, Nov 03, 2014 at 06:42:22PM +0100, Jean-Francois Moine wrote:
> SoC audio cards may have many CODECs per audio link.
> This patch exports a core function to handle such links
> when they are described in the DT.

It would be a lot easier to review this change if the changelog said
what the description this was intended to parse looks like...

> +int snd_soc_of_get_dai_link_codecs(struct device_node *of_node,
> +				   const char *list_name,
> +				   struct snd_soc_dai_link *dai_link)

This is a newly exported function, please add kerneldoc for it.

> +{
> +	struct of_phandle_args args;
> +	struct snd_soc_dai_link_component *component;
> +	int index, ret;
> +
> +	for (index = 0, component = dai_link->codecs;
> +	     index < dai_link->num_codecs;
> +	     index++, component++) {
> +		ret = of_parse_phandle_with_args(of_node, list_name,
> +						 "#sound-dai-cells",
> +						  index, &args);
> +		if (ret)
> +			goto err;
> +		component->of_node = args.np;
> +		ret = snd_soc_get_dai_name(&args, &component->dai_name);
> +		if (ret < 0)
> +			goto err;
> +	}

We're relying on the caller to fill in the number of CODECs and not
checking that there aren't extra things in the list in the DT that we're
ignoring.  I'd expect us to either get the number of CODECs as part of
this function or check that there isn't anything extra in the list.

I'd also expect some sort of error message on parse failures to help
people writing DTs.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 473 bytes
Desc: Digital signature
URL: <http://mailman.alsa-project.org/pipermail/alsa-devel/attachments/20141107/c9d16ee2/attachment-0001.sig>


More information about the Alsa-devel mailing list