ASoC: snd_soc_register_component() uses properly snd_soc_register_dai[s]()

snd_soc_register_dai()  uses fmt_single_name(), and
snd_soc_register_dais() uses fmt_multiple_name()
for dai->name which is used for name based matching.
This patch uses properly snd_soc_register_dai() it it was single driver,
and uses snd_register_dais() if it were multiple drivers.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
This commit is contained in:
Kuninori Morimoto 2013-03-21 03:27:13 -07:00 committed by Mark Brown
parent 995f297298
commit a1422b8cb4

View File

@ -4169,7 +4169,15 @@ int snd_soc_register_component(struct device *dev,
cmpnt->driver = cmpnt_drv;
cmpnt->num_dai = num_dai;
ret = snd_soc_register_dais(dev, dai_drv, num_dai);
/*
* snd_soc_register_dai() uses fmt_single_name(), and
* snd_soc_register_dais() uses fmt_multiple_name()
* for dai->name which is used for name based matching
*/
if (1 == num_dai)
ret = snd_soc_register_dai(dev, dai_drv);
else
ret = snd_soc_register_dais(dev, dai_drv, num_dai);
if (ret < 0) {
dev_err(dev, "ASoC: Failed to regster DAIs: %d\n", ret);
goto error_component_name;