[alsa-devel] [PATCH 03/11] ASoC: simple-card-utils: add asoc_simple_card_parse_dailink_name()

Sylwester Nawrocki sylwester.nawrocki at gmail.com
Sat Jun 25 22:45:53 CEST 2016


On 06/24/2016 03:16 AM, Kuninori Morimoto wrote:

> +int asoc_simple_card_parse_dailink_name(struct device *dev,
> +					struct snd_soc_dai_link *dai_link)
> +{
> +	char *name = NULL;
> +	int ret = -ENOMEM;
> +
> +	if (dai_link->dynamic && dai_link->cpu_dai_name) {
> +		name = devm_kzalloc(dev,
> +				    strlen(dai_link->cpu_dai_name) + 4,
> +				    GFP_KERNEL);
> +		if (name)
> +			sprintf(name, "fe.%s", dai_link->cpu_dai_name);
> +
> +	} else if (dai_link->no_pcm && dai_link->codec_dai_name) {
> +		name = devm_kzalloc(dev,
> +				    strlen(dai_link->codec_dai_name) + 4,
> +				    GFP_KERNEL);
> +		if (name)
> +			sprintf(name, "be.%s", dai_link->codec_dai_name);
> +	} else if (dai_link->cpu_dai_name && dai_link->codec_dai_name) {
> +		name = devm_kzalloc(dev,
> +				    strlen(dai_link->cpu_dai_name)   +
> +				    strlen(dai_link->codec_dai_name) + 2,
> +				    GFP_KERNEL);
> +		if (name) {
> +			sprintf(name, "%s-%s",
> +				dai_link->cpu_dai_name,
> +				dai_link->codec_dai_name);
> +		}
> +	}

This could be simplified by using devm_kasprintf().




More information about the Alsa-devel mailing list