From ffc848f7bf2df3827804687445c16d6729fe5f7b Mon Sep 17 00:00:00 2001 From: Hugh Guan Date: Tue, 7 Dec 2021 11:43:50 -0800 Subject: [PATCH] asoc: QUAT TDM support for dummy machine driver Adding QUAT TDM DAI links for dummy machine driver. Signed-off-by: Hugh Guan Change-Id: I0388374cb2f4b84bdacf8e40828d1e48e42bc442 --- asoc/gvm_auto_spf_dummy.c | 200 +++++++++++++++++++++++--------------- asoc/msm_dailink.h | 12 ++- 2 files changed, 131 insertions(+), 81 deletions(-) diff --git a/asoc/gvm_auto_spf_dummy.c b/asoc/gvm_auto_spf_dummy.c index dee97dcd5d62..aeb6184d47c6 100644 --- a/asoc/gvm_auto_spf_dummy.c +++ b/asoc/gvm_auto_spf_dummy.c @@ -218,90 +218,130 @@ static const struct snd_soc_dapm_widget msm_dapm_widgets[] = { /* Digital audio interface glue - connects codec <---> CPU */ static struct snd_soc_dai_link msm_common_dai_links[] = { /* BackEnd DAI Links */ - { - .name = "TERT_TDM_RX_0_DUMMY", - .stream_name = "TDM-LPAIF-RX-TERTIARY", - .dpcm_playback = 1, - .trigger = {SND_SOC_DPCM_TRIGGER_POST, - SND_SOC_DPCM_TRIGGER_POST}, - .ignore_suspend = 1, - .ignore_pmdown_time = 1, - SND_SOC_DAILINK_REG(tert_tdm_rx_0_dummy), - }, - { - .name = "TERT_TDM_TX_0_DUMMY", - .stream_name = "TDM-LPAIF-TX-TERTIARY", - .dpcm_capture = 1, - .trigger = {SND_SOC_DPCM_TRIGGER_POST, - SND_SOC_DPCM_TRIGGER_POST}, - .ignore_suspend = 1, - .ignore_pmdown_time = 1, - SND_SOC_DAILINK_REG(tert_tdm_tx_0_dummy), - }, - { - .name = "LPASS_BE_AUXPCM_RX_DUMMY", - .stream_name = "AUXPCM-LPAIF-RX-PRIMARY", - .dpcm_playback = 1, - .trigger = {SND_SOC_DPCM_TRIGGER_POST, - SND_SOC_DPCM_TRIGGER_POST}, - .ignore_suspend = 1, - .ignore_pmdown_time = 1, - SND_SOC_DAILINK_REG(lpass_be_auxpcm_rx_dummy), - }, - { - .name = "LPASS_BE_AUXPCM_TX_DUMMY", - .stream_name = "AUXPCM-LPAIF-TX-PRIMARY", - .dpcm_capture = 1, - .trigger = {SND_SOC_DPCM_TRIGGER_POST, - SND_SOC_DPCM_TRIGGER_POST}, - .ignore_suspend = 1, - .ignore_pmdown_time = 1, - SND_SOC_DAILINK_REG(lpass_be_auxpcm_tx_dummy), - }, + { + .name = "TERT_TDM_RX_0_DUMMY", + .stream_name = "TDM-LPAIF-RX-TERTIARY", + .dpcm_playback = 1, + .trigger = {SND_SOC_DPCM_TRIGGER_POST, + SND_SOC_DPCM_TRIGGER_POST}, + .ignore_suspend = 1, + .ignore_pmdown_time = 1, + SND_SOC_DAILINK_REG(tert_tdm_rx_0_dummy), + }, + { + .name = "TERT_TDM_TX_0_DUMMY", + .stream_name = "TDM-LPAIF-TX-TERTIARY", + .dpcm_capture = 1, + .trigger = {SND_SOC_DPCM_TRIGGER_POST, + SND_SOC_DPCM_TRIGGER_POST}, + .ignore_suspend = 1, + .ignore_pmdown_time = 1, + SND_SOC_DAILINK_REG(tert_tdm_tx_0_dummy), + }, + { + .name = "LPASS_BE_AUXPCM_RX_DUMMY", + .stream_name = "AUXPCM-LPAIF-RX-PRIMARY", + .dpcm_playback = 1, + .trigger = {SND_SOC_DPCM_TRIGGER_POST, + SND_SOC_DPCM_TRIGGER_POST}, + .ignore_suspend = 1, + .ignore_pmdown_time = 1, + SND_SOC_DAILINK_REG(lpass_be_auxpcm_rx_dummy), + }, + { + .name = "LPASS_BE_AUXPCM_TX_DUMMY", + .stream_name = "AUXPCM-LPAIF-TX-PRIMARY", + .dpcm_capture = 1, + .trigger = {SND_SOC_DPCM_TRIGGER_POST, + SND_SOC_DPCM_TRIGGER_POST}, + .ignore_suspend = 1, + .ignore_pmdown_time = 1, + SND_SOC_DAILINK_REG(lpass_be_auxpcm_tx_dummy), + }, + { + .name = "QUAT_TDM_RX_0_DUMMY", + .stream_name = "TDM-LPAIF-RX-QUATERNARY", + .dpcm_playback = 1, + .trigger = {SND_SOC_DPCM_TRIGGER_POST, + SND_SOC_DPCM_TRIGGER_POST}, + .ignore_suspend = 1, + .ignore_pmdown_time = 1, + SND_SOC_DAILINK_REG(quat_tdm_rx_0_dummy), + }, + { + .name = "QUAT_TDM_TX_0_DUMMY", + .stream_name = "TDM-LPAIF-TX-QUATERNARY", + .dpcm_capture = 1, + .trigger = {SND_SOC_DPCM_TRIGGER_POST, + SND_SOC_DPCM_TRIGGER_POST}, + .ignore_suspend = 1, + .ignore_pmdown_time = 1, + SND_SOC_DAILINK_REG(quat_tdm_tx_0_dummy), + }, }; static struct snd_soc_dai_link msm_talos_dai_links[] = { /* BackEnd DAI Links */ - { - .name = "PRIMARY_TDM_RX_0_DUMMY", - .stream_name = "TDM-LPAIF_WSA-RX-PRIMARY", - .dpcm_playback = 1, - .trigger = {SND_SOC_DPCM_TRIGGER_POST, - SND_SOC_DPCM_TRIGGER_POST}, - .ignore_suspend = 1, - .ignore_pmdown_time = 1, - SND_SOC_DAILINK_REG(primary_tdm_rx_0_dummy), - }, - { - .name = "PRIMARY_TDM_TX_0_DUMMY", - .stream_name = "TDM-LPAIF_WSA-TX-PRIMARY", - .dpcm_capture = 1, - .trigger = {SND_SOC_DPCM_TRIGGER_POST, - SND_SOC_DPCM_TRIGGER_POST}, - .ignore_suspend = 1, - .ignore_pmdown_time = 1, - SND_SOC_DAILINK_REG(primary_tdm_tx_0_dummy), - }, - { - .name = "LPASS_BE_AUXPCM_RX_DUMMY", - .stream_name = "AUXPCM-LPAIF-RX-PRIMARY", - .dpcm_playback = 1, - .trigger = {SND_SOC_DPCM_TRIGGER_POST, - SND_SOC_DPCM_TRIGGER_POST}, - .ignore_suspend = 1, - .ignore_pmdown_time = 1, - SND_SOC_DAILINK_REG(lpass_be_auxpcm_rx_dummy), - }, - { - .name = "LPASS_BE_AUXPCM_TX_DUMMY", - .stream_name = "AUXPCM-LPAIF-TX-PRIMARY", - .dpcm_capture = 1, - .trigger = {SND_SOC_DPCM_TRIGGER_POST, - SND_SOC_DPCM_TRIGGER_POST}, - .ignore_suspend = 1, - .ignore_pmdown_time = 1, - SND_SOC_DAILINK_REG(lpass_be_auxpcm_tx_dummy), - }, + { + .name = "PRIMARY_TDM_RX_0_DUMMY", + .stream_name = "TDM-LPAIF_WSA-RX-PRIMARY", + .dpcm_playback = 1, + .trigger = {SND_SOC_DPCM_TRIGGER_POST, + SND_SOC_DPCM_TRIGGER_POST}, + .ignore_suspend = 1, + .ignore_pmdown_time = 1, + SND_SOC_DAILINK_REG(primary_tdm_rx_0_dummy), + }, + { + .name = "PRIMARY_TDM_TX_0_DUMMY", + .stream_name = "TDM-LPAIF_WSA-TX-PRIMARY", + .dpcm_capture = 1, + .trigger = {SND_SOC_DPCM_TRIGGER_POST, + SND_SOC_DPCM_TRIGGER_POST}, + .ignore_suspend = 1, + .ignore_pmdown_time = 1, + SND_SOC_DAILINK_REG(primary_tdm_tx_0_dummy), + }, + { + .name = "LPASS_BE_AUXPCM_RX_DUMMY", + .stream_name = "AUXPCM-LPAIF-RX-PRIMARY", + .dpcm_playback = 1, + .trigger = {SND_SOC_DPCM_TRIGGER_POST, + SND_SOC_DPCM_TRIGGER_POST}, + .ignore_suspend = 1, + .ignore_pmdown_time = 1, + SND_SOC_DAILINK_REG(lpass_be_auxpcm_rx_dummy), + }, + { + .name = "LPASS_BE_AUXPCM_TX_DUMMY", + .stream_name = "AUXPCM-LPAIF-TX-PRIMARY", + .dpcm_capture = 1, + .trigger = {SND_SOC_DPCM_TRIGGER_POST, + SND_SOC_DPCM_TRIGGER_POST}, + .ignore_suspend = 1, + .ignore_pmdown_time = 1, + SND_SOC_DAILINK_REG(lpass_be_auxpcm_tx_dummy), + }, + { + .name = "QUAT_TDM_RX_0_DUMMY", + .stream_name = "TDM-LPAIF-RX-QUATERNARY", + .dpcm_playback = 1, + .trigger = {SND_SOC_DPCM_TRIGGER_POST, + SND_SOC_DPCM_TRIGGER_POST}, + .ignore_suspend = 1, + .ignore_pmdown_time = 1, + SND_SOC_DAILINK_REG(quat_tdm_rx_0_dummy), + }, + { + .name = "QUAT_TDM_TX_0_DUMMY", + .stream_name = "TDM-LPAIF-TX-QUATERNARY", + .dpcm_capture = 1, + .trigger = {SND_SOC_DPCM_TRIGGER_POST, + SND_SOC_DPCM_TRIGGER_POST}, + .ignore_suspend = 1, + .ignore_pmdown_time = 1, + SND_SOC_DAILINK_REG(quat_tdm_tx_0_dummy), + }, }; struct snd_soc_card snd_soc_card_auto_hana_dummy_msm = { diff --git a/asoc/msm_dailink.h b/asoc/msm_dailink.h index 1b0b365592c5..e68ef77e2d74 100644 --- a/asoc/msm_dailink.h +++ b/asoc/msm_dailink.h @@ -1315,6 +1315,16 @@ SND_SOC_DAILINK_DEFS(tert_tdm_tx_0_dummy, DAILINK_COMP_ARRAY(COMP_CODEC("msm-stub-codec.1", "msm-stub-tx")), DAILINK_COMP_ARRAY(COMP_PLATFORM("snd-soc-dummy"))); +SND_SOC_DAILINK_DEFS(quat_tdm_rx_0_dummy, + DAILINK_COMP_ARRAY(COMP_CPU("snd-soc-dummy-dai")), + DAILINK_COMP_ARRAY(COMP_CODEC("msm-stub-codec.1", "msm-stub-rx")), + DAILINK_COMP_ARRAY(COMP_PLATFORM("snd-soc-dummy"))); + +SND_SOC_DAILINK_DEFS(quat_tdm_tx_0_dummy, + DAILINK_COMP_ARRAY(COMP_CPU("snd-soc-dummy-dai")), + DAILINK_COMP_ARRAY(COMP_CODEC("msm-stub-codec.1", "msm-stub-tx")), + DAILINK_COMP_ARRAY(COMP_PLATFORM("snd-soc-dummy"))); + SND_SOC_DAILINK_DEFS(lpass_be_auxpcm_rx_dummy, DAILINK_COMP_ARRAY(COMP_CPU("snd-soc-dummy-dai")), DAILINK_COMP_ARRAY(COMP_CODEC("msm-stub-codec.1", "msm-stub-rx")), @@ -1333,4 +1343,4 @@ SND_SOC_DAILINK_DEFS(primary_tdm_rx_0_dummy, SND_SOC_DAILINK_DEFS(primary_tdm_tx_0_dummy, DAILINK_COMP_ARRAY(COMP_CPU("snd-soc-dummy-dai")), DAILINK_COMP_ARRAY(COMP_CODEC("msm-stub-codec.1", "msm-stub-tx")), - DAILINK_COMP_ARRAY(COMP_PLATFORM("snd-soc-dummy"))); \ No newline at end of file + DAILINK_COMP_ARRAY(COMP_PLATFORM("snd-soc-dummy")));