summaryrefslogtreecommitdiffstats
path: root/sound/soc/intel
diff options
context:
space:
mode:
authorBard Liao <yung-chuan.liao@linux.intel.com>2024-02-08 10:55:36 -0600
committerMark Brown <broonie@kernel.org>2024-02-08 21:23:14 +0000
commit5e052fba621c2c57172fc6a1a9d73692fcc6d06d (patch)
treee2fa0c91b0990eba31190120637368c995017c10 /sound/soc/intel
parent3e522c9852bc22ee4c257062fa6d57b4dd6b0f61 (diff)
downloadlinux-stable-5e052fba621c2c57172fc6a1a9d73692fcc6d06d.tar.gz
linux-stable-5e052fba621c2c57172fc6a1a9d73692fcc6d06d.tar.bz2
linux-stable-5e052fba621c2c57172fc6a1a9d73692fcc6d06d.zip
ASoC: Intel: sof_sdw_cs42l42: use helper to get codec dai by name
Use helper to get codec dai by name. Reviewed-by: Rander Wang <rander.wang@intel.com> Signed-off-by: Bard Liao <yung-chuan.liao@linux.intel.com> Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://lore.kernel.org/r/20240208165545.93811-16-pierre-louis.bossart@linux.intel.com Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'sound/soc/intel')
-rw-r--r--sound/soc/intel/boards/sof_sdw_cs42l42.c15
1 files changed, 13 insertions, 2 deletions
diff --git a/sound/soc/intel/boards/sof_sdw_cs42l42.c b/sound/soc/intel/boards/sof_sdw_cs42l42.c
index 436f41086da6..22f4f9a19088 100644
--- a/sound/soc/intel/boards/sof_sdw_cs42l42.c
+++ b/sound/soc/intel/boards/sof_sdw_cs42l42.c
@@ -15,6 +15,7 @@
#include <sound/soc-acpi.h>
#include <sound/soc-dapm.h>
#include <sound/jack.h>
+#include "sof_board_helpers.h"
#include "sof_sdw_common.h"
static const struct snd_soc_dapm_widget cs42l42_widgets[] = {
@@ -46,15 +47,24 @@ static struct snd_soc_jack_pin cs42l42_jack_pins[] = {
},
};
+static const char * const jack_codecs[] = {
+ "cs42l42"
+};
+
static int cs42l42_rtd_init(struct snd_soc_pcm_runtime *rtd)
{
struct snd_soc_card *card = rtd->card;
struct mc_private *ctx = snd_soc_card_get_drvdata(card);
- struct snd_soc_dai *codec_dai = snd_soc_rtd_to_codec(rtd, 0);
- struct snd_soc_component *component = codec_dai->component;
+ struct snd_soc_dai *codec_dai;
+ struct snd_soc_component *component;
struct snd_soc_jack *jack;
int ret;
+ codec_dai = get_codec_dai_by_name(rtd, jack_codecs, ARRAY_SIZE(jack_codecs));
+ if (!codec_dai)
+ return -EINVAL;
+
+ component = codec_dai->component;
card->components = devm_kasprintf(card->dev, GFP_KERNEL,
"%s hs:cs42l42",
card->components);
@@ -129,3 +139,4 @@ int sof_sdw_cs42l42_init(struct snd_soc_card *card,
return 0;
}
+MODULE_IMPORT_NS(SND_SOC_INTEL_SOF_BOARD_HELPERS);