Unverified Commit da5b1831 authored by Vijendar Mukunda's avatar Vijendar Mukunda Committed by Mark Brown
Browse files

ASoC: intel/sdw_utils: move rtk jack common helper functions

Move RTK codec jack common helper functions to common place holder
(sdw_utils folder) to make it generic so that it will be used by
other platform machine driver code.

Link: https://github.com/thesofproject/linux/pull/5068


Signed-off-by: default avatarVijendar Mukunda <Vijendar.Mukunda@amd.com>
Reviewed-by: default avatarBard Liao <yung-chuan.liao@linux.intel.com>
Reviewed-by: default avatarPierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://patch.msgid.link/20240801091446.10457-17-Vijendar.Mukunda@amd.com


Signed-off-by: default avatarMark Brown <broonie@kernel.org>
parent 139e1774
Loading
Loading
Loading
Loading
+11 −0
Original line number Diff line number Diff line
@@ -13,6 +13,8 @@
#include <sound/soc-acpi.h>

#define SOC_SDW_MAX_DAI_NUM             8
#define SOC_SDW_MAX_NO_PROPS		2
#define SOC_SDW_JACK_JDSRC(quirk)	((quirk) & GENMASK(3, 0))

struct asoc_sdw_codec_info;

@@ -63,6 +65,7 @@ struct asoc_sdw_mc_private {
	bool append_dai_type;
	bool ignore_internal_dmic;
	void *private;
	unsigned long mc_quirk;
};

int asoc_sdw_startup(struct snd_pcm_substream *substream);
@@ -82,8 +85,16 @@ const char *asoc_sdw_get_codec_name(struct device *dev,
/* DMIC support */
int asoc_sdw_dmic_init(struct snd_soc_pcm_runtime *rtd);

/* RT711-SDCA support */
int asoc_sdw_rt_sdca_jack_init(struct snd_soc_card *card,
			       struct snd_soc_dai_link *dai_links,
			       struct asoc_sdw_codec_info *info,
			       bool playback);
int asoc_sdw_rt_sdca_jack_exit(struct snd_soc_card *card, struct snd_soc_dai_link *dai_link);

/* dai_link init callbacks */
int asoc_sdw_rt_dmic_rtd_init(struct snd_soc_pcm_runtime *rtd, struct snd_soc_dai *dai);
int asoc_sdw_rt_sdca_jack_rtd_init(struct snd_soc_pcm_runtime *rtd, struct snd_soc_dai *dai);
int asoc_sdw_rt712_spk_rtd_init(struct snd_soc_pcm_runtime *rtd, struct snd_soc_dai *dai);
int asoc_sdw_rt722_spk_rtd_init(struct snd_soc_pcm_runtime *rtd, struct snd_soc_dai *dai);
int asoc_sdw_rt5682_rtd_init(struct snd_soc_pcm_runtime *rtd, struct snd_soc_dai *dai);
+0 −1
Original line number Diff line number Diff line
@@ -38,7 +38,6 @@ snd-soc-sof-sdw-y += sof_sdw.o \
			sof_sdw_maxim.o sof_sdw_rt_amp.o	\
			bridge_cs35l56.o			\
			sof_sdw_rt700.o sof_sdw_rt711.o		\
			sof_sdw_rt_sdca_jack_common.o		\
			sof_sdw_cs42l42.o sof_sdw_cs42l43.o	\
			sof_sdw_cs_amp.o			\
			sof_sdw_hdmi.o
+1 −0
Original line number Diff line number Diff line
@@ -1973,6 +1973,7 @@ static int mc_probe(struct platform_device *pdev)

	log_quirks(card->dev);

	ctx->mc_quirk = sof_sdw_quirk;
	/* reset amp_num to ensure amp_num++ starts from 0 in each probe */
	for (i = 0; i < ARRAY_SIZE(codec_info_list); i++)
		codec_info_list[i].amp_num = 0;
+0 −10
Original line number Diff line number Diff line
@@ -15,7 +15,6 @@
#include <sound/soc_sdw_utils.h>
#include "sof_hdmi_common.h"

#define SOC_SDW_MAX_NO_PROPS 2
#define MAX_HDMI_NUM 4
#define SOC_SDW_UNUSED_DAI_ID -1
#define SOC_SDW_JACK_OUT_DAI_ID 0
@@ -45,7 +44,6 @@ enum {
	SOF_I2S_SSP5 = BIT(5),
};

#define SOC_SDW_JACK_JDSRC(quirk)		((quirk) & GENMASK(3, 0))
/* Deprecated and no longer supported by the code */
#define SOC_SDW_FOUR_SPK		BIT(4)
#define SOF_SDW_TGL_HDMI		BIT(5)
@@ -98,13 +96,6 @@ int asoc_sdw_rt711_init(struct snd_soc_card *card,
			bool playback);
int asoc_sdw_rt711_exit(struct snd_soc_card *card, struct snd_soc_dai_link *dai_link);

/* RT711-SDCA support */
int asoc_sdw_rt_sdca_jack_init(struct snd_soc_card *card,
			       struct snd_soc_dai_link *dai_links,
			       struct asoc_sdw_codec_info *info,
			       bool playback);
int asoc_sdw_rt_sdca_jack_exit(struct snd_soc_card *card, struct snd_soc_dai_link *dai_link);

/* RT1308 I2S support */
extern const struct snd_soc_ops soc_sdw_rt1308_i2s_ops;

@@ -154,6 +145,5 @@ int asoc_sdw_maxim_spk_rtd_init(struct snd_soc_pcm_runtime *rtd, struct snd_soc_
int asoc_sdw_rt700_rtd_init(struct snd_soc_pcm_runtime *rtd, struct snd_soc_dai *dai);
int asoc_sdw_rt711_rtd_init(struct snd_soc_pcm_runtime *rtd, struct snd_soc_dai *dai);
int asoc_sdw_rt_amp_spk_rtd_init(struct snd_soc_pcm_runtime *rtd, struct snd_soc_dai *dai);
int asoc_sdw_rt_sdca_jack_rtd_init(struct snd_soc_pcm_runtime *rtd, struct snd_soc_dai *dai);

#endif
+1 −1
Original line number Diff line number Diff line
# SPDX-License-Identifier: GPL-2.0-only
snd-soc-sdw-utils-y := soc_sdw_utils.o soc_sdw_dmic.o soc_sdw_rt_dmic.o \
		       soc_sdw_rt712_sdca.o soc_sdw_rt722_sdca.o	\
		       soc_sdw_rt5682.o
		       soc_sdw_rt5682.o soc_sdw_rt_sdca_jack_common.o
obj-$(CONFIG_SND_SOC_SDW_UTILS) += snd-soc-sdw-utils.o
Loading