summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLiam Girdwood <lrg@ti.com>2011-05-12 19:14:04 +0400
committerMark Brown <broonie@opensource.wolfsonmicro.com>2011-05-12 19:40:03 +0400
commit22de71ba03311cdc1063757c50a1488cb90a1fca (patch)
tree34535f85da7635e47382db923136766511ba4c3c
parent9e53d856af0db8acc8a1bc6a9e3298f6bbb8944b (diff)
downloadlinux-22de71ba03311cdc1063757c50a1488cb90a1fca.tar.xz
ASoC: core - allow ASoC more flexible machine name
Allow ASoC machine drivers to register a driver name and a longname. This allows user space to determine the flavour of machine driver. Signed-off-by: Liam Girdwood <lrg@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
-rw-r--r--include/sound/soc.h2
-rw-r--r--sound/soc/soc-core.c6
2 files changed, 6 insertions, 2 deletions
diff --git a/include/sound/soc.h b/include/sound/soc.h
index b27c7a2d3bb0..f1de3e0c75bc 100644
--- a/include/sound/soc.h
+++ b/include/sound/soc.h
@@ -702,6 +702,8 @@ struct snd_soc_aux_dev {
/* SoC card */
struct snd_soc_card {
const char *name;
+ const char *long_name;
+ const char *driver_name;
struct device *dev;
struct snd_card *snd_card;
struct module *owner;
diff --git a/sound/soc/soc-core.c b/sound/soc/soc-core.c
index a477e218aa28..c1a4cf480c72 100644
--- a/sound/soc/soc-core.c
+++ b/sound/soc/soc-core.c
@@ -1926,9 +1926,11 @@ static void snd_soc_instantiate_card(struct snd_soc_card *card)
card->num_dapm_routes);
snprintf(card->snd_card->shortname, sizeof(card->snd_card->shortname),
- "%s", card->name);
- snprintf(card->snd_card->longname, sizeof(card->snd_card->longname),
"%s", card->name);
+ snprintf(card->snd_card->longname, sizeof(card->snd_card->longname),
+ "%s", card->long_name ? card->long_name : card->name);
+ snprintf(card->snd_card->driver, sizeof(card->snd_card->driver),
+ "%s", card->driver_name);
if (card->late_probe) {
ret = card->late_probe(card);