ASoC: DMI long name - avoid to add board name if matches with product name
authorJaroslav Kysela <perex@perex.cz>
Wed, 20 Nov 2019 17:44:35 +0000 (18:44 +0100)
committerMark Brown <broonie@kernel.org>
Fri, 22 Nov 2019 19:54:50 +0000 (19:54 +0000)
Current code:

  LENOVO-20QE000VMC-ThinkPadX1Carbon7th-20QE000VMC

With the patch:

  LENOVO-20QE000VMC-ThinkPadX1Carbon7th

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Link: https://lore.kernel.org/r/20191120174435.30920-2-perex@perex.cz
Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/soc-core.c

index a1f4d64..062653a 100644 (file)
@@ -1798,7 +1798,8 @@ int snd_soc_set_dmi_name(struct snd_soc_card *card, const char *flavour)
 
        board = dmi_get_system_info(DMI_BOARD_NAME);
        if (board && is_dmi_valid(board)) {
-               append_dmi_string(card, board);
+               if (!product || strcasecmp(board, product))
+                       append_dmi_string(card, board);
        } else if (!product) {
                /* fall back to using legacy name */
                dev_warn(card->dev, "ASoC: no DMI board/product name!\n");