From: Tzung-Bi Shih Date: Wed, 29 May 2019 06:22:14 +0000 (+0800) Subject: ASoC: core: use component driver name as component name X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=b19671d6caf1ac393681864d5d85dda9fa99a448;p=linux.git ASoC: core: use component driver name as component name fmt_single_name() uses device name to determine component name. If multiple components bind to the same device, the debugfs creation in soc_init_component_debugfs() would fail due to duplicated entity names. Name provided by component driver is unique enough to represent each component. Use component driver name as the component name to avoid name duplication. Signed-off-by: Tzung-Bi Shih Signed-off-by: Mark Brown --- diff --git a/sound/soc/soc-core.c b/sound/soc/soc-core.c index ce8c057bcd5b5..5f83e2f198011 100644 --- a/sound/soc/soc-core.c +++ b/sound/soc/soc-core.c @@ -3106,7 +3106,10 @@ static int snd_soc_component_initialize(struct snd_soc_component *component, { struct snd_soc_dapm_context *dapm; - component->name = fmt_single_name(dev, &component->id); + if (driver->name) + component->name = kstrdup(driver->name, GFP_KERNEL); + else + component->name = fmt_single_name(dev, &component->id); if (!component->name) { dev_err(dev, "ASoC: Failed to allocate name\n"); return -ENOMEM;