forked from luck/tmp_suning_uos_patched
ASoC: dapm: use component prefix when checking widget names
commit ae4fc532244b3bb4d86c397418d980b0c6be1dfd upstream. On a TigerLake SoundWire platform, we see these warnings: [ 27.360086] rt5682 sdw:0:25d:5682:0: ASoC: DAPM unknown pin MICBIAS [ 27.360092] rt5682 sdw:0:25d:5682:0: ASoC: DAPM unknown pin Vref2 This is root-caused to the addition of a component prefix in the machine driver. The tests in soc-dapm should account for a prefix instead of reporting an invalid issue. Reported-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Reviewed-by: Rander Wang <rander.wang@linux.intel.com> Signed-off-by: Shuming Fan <shumingf@realtek.com> Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://lore.kernel.org/r/20210208234043.59750-2-pierre-louis.bossart@linux.intel.com Signed-off-by: Mark Brown <broonie@kernel.org> Signed-off-by: Robert Lee <lerobert@google.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
5c3a90b6ff
commit
4ad4852b9a
|
@ -2528,9 +2528,20 @@ static struct snd_soc_dapm_widget *dapm_find_widget(
|
|||
{
|
||||
struct snd_soc_dapm_widget *w;
|
||||
struct snd_soc_dapm_widget *fallback = NULL;
|
||||
char prefixed_pin[80];
|
||||
const char *pin_name;
|
||||
const char *prefix = soc_dapm_prefix(dapm);
|
||||
|
||||
if (prefix) {
|
||||
snprintf(prefixed_pin, sizeof(prefixed_pin), "%s %s",
|
||||
prefix, pin);
|
||||
pin_name = prefixed_pin;
|
||||
} else {
|
||||
pin_name = pin;
|
||||
}
|
||||
|
||||
for_each_card_widgets(dapm->card, w) {
|
||||
if (!strcmp(w->name, pin)) {
|
||||
if (!strcmp(w->name, pin_name)) {
|
||||
if (w->dapm == dapm)
|
||||
return w;
|
||||
else
|
||||
|
|
Loading…
Reference in New Issue
Block a user