1
0

asoc: pineapple: add support for wsa881x codec

add support for wsa881x codec in pineapple machine driver.

Change-Id: Ie4b12facfd27ead1b57d10ea72029a32584dde94
Signed-off-by: Prasad Kumpatla <quic_pkumpatl@quicinc.com>
Este cometimento está contido em:
Prasad Kumpatla
2023-12-27 20:48:19 +05:30
ascendente d565fe8113
cometimento f53e7ae551
2 ficheiros modificados com 19 adições e 2 eliminações

Ver ficheiro

@@ -151,14 +151,16 @@ SND_SOC_DAILINK_DEFS(rx_dma_rx0,
DAILINK_COMP_ARRAY(COMP_CPU("snd-soc-dummy-dai")),
DAILINK_COMP_ARRAY(COMP_CODEC("lpass-cdc", "rx_macro_rx1"),
COMP_CODEC("wcd937x_codec", "wcd937x_cdc"),
COMP_CODEC("wcd939x_codec", "wcd939x_cdc")),
COMP_CODEC("wcd939x_codec", "wcd939x_cdc"),
COMP_CODEC("wsa-codec0", "wsa_rx0")),
DAILINK_COMP_ARRAY(COMP_PLATFORM("snd-soc-dummy")));
SND_SOC_DAILINK_DEFS(rx_dma_rx1,
DAILINK_COMP_ARRAY(COMP_CPU("snd-soc-dummy-dai")),
DAILINK_COMP_ARRAY(COMP_CODEC("lpass-cdc", "rx_macro_rx2"),
COMP_CODEC("wcd937x_codec", "wcd937x_cdc"),
COMP_CODEC("wcd939x_codec", "wcd939x_cdc")),
COMP_CODEC("wcd939x_codec", "wcd939x_cdc"),
COMP_CODEC("wsa-codec0", "wsa_rx0")),
DAILINK_COMP_ARRAY(COMP_PLATFORM("snd-soc-dummy")));
SND_SOC_DAILINK_DEFS(rx_dma_rx2,

Ver ficheiro

@@ -105,6 +105,7 @@ static void *def_wcd_mbhc_cal(void);
static int msm_rx_tx_codec_init(struct snd_soc_pcm_runtime*);
static int msm_int_wsa_init(struct snd_soc_pcm_runtime*);
static int msm_int_wsa881x_init(struct snd_soc_pcm_runtime *);
static int msm_int_wsa884x_init(struct snd_soc_pcm_runtime*);
static int msm_int_wsa883x_init(struct snd_soc_pcm_runtime*);
static int msm_int_wsa2_init(struct snd_soc_pcm_runtime *);
@@ -890,6 +891,7 @@ static struct snd_soc_dai_link msm_rx_tx_cdc_dma_be_dai_links[] = {
.ignore_suspend = 1,
.ops = &msm_common_be_ops,
SND_SOC_DAILINK_REG(rx_dma_rx1),
.init = &msm_int_wsa881x_init,
},
{
.name = LPASS_BE_RX_CDC_DMA_RX_2,
@@ -1851,6 +1853,19 @@ static int msm_int_wsa884x_init(struct snd_soc_pcm_runtime *rtd)
return 0;
}
static int msm_int_wsa881x_init(struct snd_soc_pcm_runtime *rtd)
{
struct msm_asoc_mach_data *pdata =
snd_soc_card_get_drvdata(rtd->card);
if (pdata->wsa_max_devs == 0)
pr_info("%s: WSA is not enabled\n", __func__);
msm_common_dai_link_init(rtd);
return 0;
}
static int msm_int_wsa_init(struct snd_soc_pcm_runtime *rtd)
{
if (strstr(rtd->card->name, "wsa883x"))