[alsa-devel] [PATCH 4/5 v7][RFC] ASoC: ak4642: add .of_xlate_dai_name support
Stephen Warren
swarren at wwwdotorg.org
Thu Feb 28 00:27:25 CET 2013
On 02/25/2013 01:57 AM, Kuninori Morimoto wrote:
> ak4642 driver can be used from simple-card driver
> which requires .of_xlate_dai_name.
> This patch supports it.
> diff --git a/sound/soc/codecs/ak4642.c b/sound/soc/codecs/ak4642.c
> +static int ak4642_of_xlate_dai_name(struct snd_soc_codec *codec,
> + struct of_phandle_args *spec,
> + const char **dai_name)
> +{
> + *dai_name = ak4642_dai.name;
> +
> + return 0;
> +}
This seems fine, but I would be tempted to make that a common function;
with body something like:
if codec->num_dai == 1:
if spec->args_count:
return error
else:
return codec->dais[0].name
else:
loop over all codec->dais
if args->args[0] == dai->of_id:
return dai
return error
(similar to how drivers/gpio/gpiolib-of.c:of_gpio_simple_xlate() works).
That would allow the same function to be used by most CODECs/CPUs.
More information about the Alsa-devel
mailing list