1
0
Fork 0

ASoC: Intel: bdw-rt5677: platform name fixup support

Add helper to override dailink platform name, if passed as parameter

Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
hifive-unleashed-5.1
Pierre-Louis Bossart 2019-01-25 14:34:58 -06:00 committed by Mark Brown
parent 2d067b2807
commit 7e40ddcf97
No known key found for this signature in database
GPG Key ID: 24D68B725D5487D0
1 changed files with 14 additions and 0 deletions

View File

@ -26,6 +26,7 @@
#include <sound/soc.h>
#include <sound/pcm_params.h>
#include <sound/jack.h>
#include <sound/soc-acpi.h>
#include "../common/sst-dsp.h"
#include "../haswell/sst-haswell-ipc.h"
@ -339,6 +340,9 @@ static struct snd_soc_card bdw_rt5677_card = {
static int bdw_rt5677_probe(struct platform_device *pdev)
{
struct bdw_rt5677_priv *bdw_rt5677;
struct snd_soc_acpi_mach *mach;
const char *platform_name = NULL;
int ret;
bdw_rt5677_card.dev = &pdev->dev;
@ -350,6 +354,16 @@ static int bdw_rt5677_probe(struct platform_device *pdev)
return -ENOMEM;
}
/* override plaform name, if required */
mach = (&pdev->dev)->platform_data;
if (mach) /* extra check since legacy does not pass parameters */
platform_name = mach->mach_params.platform;
ret = snd_soc_fixup_dai_links_platform_name(&bdw_rt5677_card,
platform_name);
if (ret)
return ret;
snd_soc_card_set_drvdata(&bdw_rt5677_card, bdw_rt5677);
return devm_snd_soc_register_card(&pdev->dev, &bdw_rt5677_card);