Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 36711408 authored by qctecmdr's avatar qctecmdr Committed by Gerrit - the friendly Code Review server
Browse files

Merge "asoc: audio reach kernel bringup on 8255 GVM"

parents 44851c86 b490a90b
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -186,7 +186,7 @@ ifdef CONFIG_SND_SOC_SA8155
	MACHINE_OBJS += sa8155.o
endif

# for gvmgh sound card driver
# for gvm sound card driver
ifdef CONFIG_SND_SOC_GVM_AUTO_SPF
    SPF_MACHINE_OBJS += gvm_auto_spf_dummy.o
endif
+72 −48
Original line number Diff line number Diff line
@@ -324,7 +324,7 @@ static struct snd_soc_dai_link msm_common_dai_links[] = {
	},
};

static struct snd_soc_dai_link msm_gvm8295_dai_links[] = {
static struct snd_soc_dai_link msm_gvm_auto_dai_links[] = {
	/* BackEnd DAI Links */
	{
	.name = "PRI_TDM_RX_0_DUMMY",
@@ -467,6 +467,26 @@ static struct snd_soc_dai_link msm_gvm8295_dai_links[] = {
	SND_SOC_DAILINK_REG(sep_tdm_tx_0_dummy),
	},
	{
	.name = "OCT_TDM_RX_0_DUMMY",
	.stream_name = "TDM-LPAIF_WSA2-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(oct_tdm_rx_0_dummy),
	},
	{
	.name = "OCT_TDM_TX_0_DUMMY",
	.stream_name = "TDM-LPAIF_WSA2-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(oct_tdm_tx_0_dummy),
	},
	{
	.name = "HS_IF0_TDM_RX_0_DUMMY",
	.stream_name = "TDM-LPAIF_SDR-RX-PRIMARY",
	.dpcm_playback = 1,
@@ -526,6 +546,46 @@ static struct snd_soc_dai_link msm_gvm8295_dai_links[] = {
	.ignore_pmdown_time = 1,
	SND_SOC_DAILINK_REG(hs_if2_tdm_tx_0_dummy),
	},
	{
	.name = "HS_IF3_TDM_RX_0",
	.stream_name = "TDM-LPAIF_SDR-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(hs_if3_tdm_rx_0_dummy),
	},
	{
	.name = "HS_IF3_TDM_TX_0",
	.stream_name = "TDM-LPAIF_SDR-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(hs_if3_tdm_tx_0_dummy),
	},
	{
	.name = "HS_IF4_TDM_RX_0",
	.stream_name = "TDM-LPAIF_SDR-RX-QUINARY",
	.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(hs_if4_tdm_rx_0_dummy),
	},
	{
	.name = "HS_IF4_TDM_TX_0",
	.stream_name = "TDM-LPAIF_SDR-TX-QUINARY",
	.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(hs_if4_tdm_tx_0_dummy),
	},
};

static struct snd_soc_dai_link msm_talos_dai_links[] = {
@@ -632,17 +692,7 @@ static struct snd_soc_dai_link msm_talos_dai_links[] = {
	},
};

struct snd_soc_card snd_soc_card_auto_hana_dummy_msm = {
	.name = "gvmauto-8155-snd-card",
};

struct snd_soc_card snd_soc_card_auto_talos_dummy_msm = {
	.name = "gvmauto-6155-snd-card",
};

struct snd_soc_card snd_soc_card_auto_makena_dummy_msm = {
	.name = "gvmauto-8295-snd-card",
};
struct snd_soc_card snd_soc_card_gvm_auto_dummy_msm;

static int msm_populate_dai_link_component_of_node(
					struct snd_soc_card *card)
@@ -751,21 +801,11 @@ static const struct of_device_id gvm_asoc_machine_of_match[] = {
		.data = "adp_star_codec"},
	{},
};
static struct snd_soc_dai_link msm_auto_dai_links[
			 ARRAY_SIZE(msm_common_dai_links)];

static struct snd_soc_dai_link msm_auto_talos_dai_links[
			 ARRAY_SIZE(msm_talos_dai_links)];

static struct snd_soc_dai_link msm_auto_gvm8295_dai_links[
			 ARRAY_SIZE(msm_gvm8295_dai_links)];

static struct snd_soc_card *populate_snd_card_dailinks(struct device *dev)
{
	struct snd_soc_card *card = NULL;
	struct snd_soc_dai_link *dailink;
	int total_links;
	const struct of_device_id *match;
	const struct of_device_id *match = NULL;

	match = of_match_node(gvm_asoc_machine_of_match, dev->of_node);
	if (!match) {
@@ -774,33 +814,17 @@ static struct snd_soc_card *populate_snd_card_dailinks(struct device *dev)
		return NULL;
	}

	if (!strcmp(match->compatible, "qcom,8155-spf-asoc-snd-adp-star")) {
		card = &snd_soc_card_auto_hana_dummy_msm;
		total_links = ARRAY_SIZE(msm_common_dai_links);
		memcpy(msm_auto_dai_links,
			msm_common_dai_links,
			sizeof(msm_common_dai_links));
	card = &snd_soc_card_gvm_auto_dummy_msm;

		dailink = msm_auto_dai_links;
	if (!strcmp(match->compatible, "qcom,8155-spf-asoc-snd-adp-star")) {
		card->dai_link = msm_common_dai_links;
		card->num_links = ARRAY_SIZE(msm_common_dai_links);
	} else if (!strcmp(match->compatible, "qcom,6155-spf-asoc-snd-adp-star")) {
		card = &snd_soc_card_auto_talos_dummy_msm;
		total_links = ARRAY_SIZE(msm_talos_dai_links);
		memcpy(msm_auto_talos_dai_links,
			msm_talos_dai_links,
			sizeof(msm_talos_dai_links));
		dailink = msm_auto_talos_dai_links;
		card->dai_link = msm_talos_dai_links;
		card->num_links = ARRAY_SIZE(msm_talos_dai_links);
	} else if (!strcmp(match->compatible, "qcom,gvm-auto-spf-asoc-snd-adp-star")) {
		card = &snd_soc_card_auto_makena_dummy_msm;
		total_links = ARRAY_SIZE(msm_gvm8295_dai_links);
		memcpy(msm_auto_gvm8295_dai_links,
			msm_gvm8295_dai_links,
			sizeof(msm_gvm8295_dai_links));
		dailink = msm_auto_gvm8295_dai_links;
	}

	if (card) {
		card->dai_link = dailink;
		card->num_links = total_links;
		card->dai_link = msm_gvm_auto_dai_links;
		card->num_links = ARRAY_SIZE(msm_gvm_auto_dai_links);
}

	return card;
+30 −0
Original line number Diff line number Diff line
@@ -1392,6 +1392,16 @@ SND_SOC_DAILINK_DEFS(sep_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(oct_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(oct_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(hs_if0_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")),
@@ -1422,6 +1432,26 @@ SND_SOC_DAILINK_DEFS(hs_if2_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(hs_if3_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(hs_if3_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(hs_if4_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(hs_if4_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(voicemmode1_hostless,
	DAILINK_COMP_ARRAY(COMP_CPU("VoiceMMode1")),
	DAILINK_COMP_ARRAY(COMP_CODEC("snd-soc-dummy", "snd-soc-dummy-dai")),