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

Commit 4dad88ac authored by Abhinav Gaur's avatar Abhinav Gaur Committed by Gerrit - the friendly Code Review server
Browse files

ASOC: automotive routing drivers base version



Branch out from mainline and create separate routing driver
for automotive platform for boot KPI optimization.

Parent commit id for the base routing driver version for
tracking purpose : commit dd9977f0

Change-Id: I64b89bafb304d403efd08850a72830100939c3ba
Signed-off-by: default avatarAbhinav Gaur <quic_abhigaur@quicinc.com>
parent 940fa8c3
Loading
Loading
Loading
Loading
+12 −4
Original line number Original line Diff line number Diff line
@@ -210,12 +210,20 @@ ifdef CONFIG_SND_SOC_QDSP6V2
	PLATFORM_OBJS += msm-pcm-loopback-v2.o
	PLATFORM_OBJS += msm-pcm-loopback-v2.o
	PLATFORM_OBJS += msm-pcm-q6-noirq.o
	PLATFORM_OBJS += msm-pcm-q6-noirq.o
	PLATFORM_OBJS += msm-pcm-q6-v2.o
	PLATFORM_OBJS += msm-pcm-q6-v2.o
	ifeq (y,$(findstring y,$(CONFIG_QTI_QUIN_GVM) $(CONFIG_PLATFORM_AUTO)))
		PLATFORM_OBJS += msm-pcm-routing-auto.o
	else
		PLATFORM_OBJS += msm-pcm-routing-v2.o
		PLATFORM_OBJS += msm-pcm-routing-v2.o
		PLATFORM_OBJS += msm-pcm-voice-v2.o
		PLATFORM_OBJS += msm-pcm-voice-v2.o
		PLATFORM_OBJS += msm-pcm-voip-v2.o
		PLATFORM_OBJS += msm-pcm-voip-v2.o
	endif
	PLATFORM_OBJS += msm-transcode-loopback-q6-v2.o
	PLATFORM_OBJS += msm-transcode-loopback-q6-v2.o
	ifeq (y,$(findstring y,$(CONFIG_QTI_QUIN_GVM) $(CONFIG_PLATFORM_AUTO)))
		PLATFORM_OBJS += platform_init_auto.o
	else
		PLATFORM_OBJS += platform_init.o
		PLATFORM_OBJS += platform_init.o
	endif
	endif
endif
ifdef CONFIG_WCD9XXX_CODEC_CORE
ifdef CONFIG_WCD9XXX_CODEC_CORE
	PLATFORM_OBJS += msm-dai-slim.o
	PLATFORM_OBJS += msm-dai-slim.o
endif
endif
+43366 −0

File added.

File size exceeds preview limit.

asoc/msm_dailink.h

100755 → 100644
+16 −0
Original line number Original line Diff line number Diff line
/* SPDX-License-Identifier: GPL-2.0-only */
/* SPDX-License-Identifier: GPL-2.0-only */
/*
/*
 * Copyright (c) 2020-2021, The Linux Foundation. All rights reserved.
 * Copyright (c) 2020-2021, The Linux Foundation. All rights reserved.
 * Copyright (c) 2022 Qualcomm Innovation Center, Inc. All rights reserved.
 */
 */


#include <sound/soc.h>
#include <sound/soc.h>
@@ -1414,3 +1415,18 @@ SND_SOC_DAILINK_DEFS(hs_if2_tdm_tx_0_dummy,
	DAILINK_COMP_ARRAY(COMP_CPU("snd-soc-dummy-dai")),
	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_CODEC("msm-stub-codec.1", "msm-stub-tx")),
	DAILINK_COMP_ARRAY(COMP_PLATFORM("snd-soc-dummy")));
	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")),
	DAILINK_COMP_ARRAY(COMP_PLATFORM("msm-pcm-hostless")));

SND_SOC_DAILINK_DEFS(msmvoip_hostless,
	DAILINK_COMP_ARRAY(COMP_CPU("VoIP")),
	DAILINK_COMP_ARRAY(COMP_CODEC("snd-soc-dummy", "snd-soc-dummy-dai")),
	DAILINK_COMP_ARRAY(COMP_PLATFORM("msm-pcm-hostless")));

SND_SOC_DAILINK_DEFS(voicemmode2_hostless,
	DAILINK_COMP_ARRAY(COMP_CPU("VoiceMMode2")),
	DAILINK_COMP_ARRAY(COMP_CODEC("snd-soc-dummy", "snd-soc-dummy-dai")),
	DAILINK_COMP_ARRAY(COMP_PLATFORM("msm-pcm-hostless")));
+61 −0
Original line number Original line Diff line number Diff line
// SPDX-License-Identifier: GPL-2.0-only
/*
 * Copyright (c) 2017 The Linux Foundation. All rights reserved.
 * Copyright (c) 2022 Qualcomm Innovation Center, Inc. All rights reserved.
 */

#include <linux/kernel.h>
#include <linux/module.h>
#include "platform_init.h"

static int __init audio_platform_init(void)
{
	msm_compress_dsp_init();
	msm_fe_dai_init();
	msm_dai_q6_hdmi_init();
	msm_dai_q6_init();
	msm_dai_slim_init();
	msm_dai_stub_init();
	msm_lsm_client_init();
	msm_pcm_afe_init();
	msm_pcm_dtmf_init();
	msm_pcm_hostless_init();
	msm_voice_host_init();
	msm_pcm_loopback_init();
	msm_pcm_noirq_init();
	msm_pcm_dsp_init();
	msm_soc_routing_platform_init();
	msm_pcm_voice_init();
	msm_pcm_voip_init();
	msm_transcode_loopback_init();

	return 0;
}

static void audio_platform_exit(void)
{
	msm_transcode_loopback_exit();
	msm_pcm_voip_exit();
	msm_pcm_voice_exit();
	msm_soc_routing_platform_exit();
	msm_pcm_dsp_exit();
	msm_pcm_noirq_exit();
	msm_pcm_loopback_exit();
	msm_voice_host_exit();
	msm_pcm_hostless_exit();
	msm_pcm_dtmf_exit();
	msm_pcm_afe_exit();
	msm_lsm_client_exit();
	msm_dai_stub_exit();
	msm_dai_slim_exit();
	msm_dai_q6_exit();
	msm_dai_q6_hdmi_exit();
	msm_fe_dai_exit();
	msm_compress_dsp_exit();
}

module_init(audio_platform_init);
module_exit(audio_platform_exit);

MODULE_DESCRIPTION("Audio Platform driver");
MODULE_LICENSE("GPL v2");

asoc/sa6155.c

100755 → 100644
+3 −3
Original line number Original line Diff line number Diff line
@@ -5168,7 +5168,7 @@ static struct snd_soc_dai_link msm_common_dai_links[] = {
		.ignore_suspend = 1,
		.ignore_suspend = 1,
		.ignore_pmdown_time = 1,
		.ignore_pmdown_time = 1,
		.id = MSM_FRONTEND_DAI_VOICEMMODE1,
		.id = MSM_FRONTEND_DAI_VOICEMMODE1,
		SND_SOC_DAILINK_REG(voicemmode1),
		SND_SOC_DAILINK_REG(voicemmode1_hostless),
	},
	},
	{
	{
		.name = "MSM VoIP",
		.name = "MSM VoIP",
@@ -5182,7 +5182,7 @@ static struct snd_soc_dai_link msm_common_dai_links[] = {
		/* this dainlink has playback support */
		/* this dainlink has playback support */
		.ignore_pmdown_time = 1,
		.ignore_pmdown_time = 1,
		.id = MSM_FRONTEND_DAI_VOIP,
		.id = MSM_FRONTEND_DAI_VOIP,
		SND_SOC_DAILINK_REG(msmvoip),
		SND_SOC_DAILINK_REG(msmvoip_hostless),
	},
	},
	{
	{
		.name = MSM_DAILINK_NAME(ULL),
		.name = MSM_DAILINK_NAME(ULL),
@@ -5350,7 +5350,7 @@ static struct snd_soc_dai_link msm_common_dai_links[] = {
		.ignore_suspend = 1,
		.ignore_suspend = 1,
		.ignore_pmdown_time = 1,
		.ignore_pmdown_time = 1,
		.id = MSM_FRONTEND_DAI_VOICEMMODE2,
		.id = MSM_FRONTEND_DAI_VOICEMMODE2,
		SND_SOC_DAILINK_REG(voicemmode2),
		SND_SOC_DAILINK_REG(voicemmode2_hostless),
	},
	},
	/* LSM FE */
	/* LSM FE */
	{
	{
Loading