mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-14 16:46:15 -04:00
Merge fad96773ea on remote branch
Change-Id: I4a4d5c58fb643190bf6d5fb1596f30d9f15f824f
This commit is contained in:
commit
b320e26a26
21 changed files with 215 additions and 23 deletions
10
Makefile.am
10
Makefile.am
|
|
@ -18,6 +18,9 @@ endif
|
|||
ifeq ($(TARGET_SUPPORT), qrb5165)
|
||||
KBUILD_OPTIONS += CONFIG_ARCH_KONA=y
|
||||
endif
|
||||
ifeq ($(TARGET_SUPPORT), qcs6490)
|
||||
KBUILD_OPTIONS += CONFIG_ARCH_LAHAINA=y
|
||||
endif
|
||||
|
||||
subdir-ccflags-y += -I$(AUDIO_ROOT)/include/uapi/
|
||||
|
||||
|
|
@ -48,6 +51,13 @@ obj-m += asoc/codecs/wcd938x/
|
|||
bj-m += asoc/codecs/wsa883x/
|
||||
KBUILD_CFLAGS += -Wno-error
|
||||
endif
|
||||
ifeq ($(TARGET_SUPPORT), $(filter $(TARGET_SUPPORT), qcs6490))
|
||||
obj-m += asoc/codecs/bolero/
|
||||
obj-m += asoc/codecs/wcd937x/
|
||||
obj-m += asoc/codecs/wcd938x/
|
||||
obj-m += asoc/codecs/wsa883x/
|
||||
KBUILD_CFLAGS += -Wno-error
|
||||
endif
|
||||
ifeq ($(TARGET_SUPPORT), sdmsteppe)
|
||||
obj-m += asoc/codecs/bolero/
|
||||
obj-m += asoc/codecs/wcd937x/
|
||||
|
|
|
|||
|
|
@ -15,11 +15,13 @@ endif
|
|||
|
||||
ifeq ($(CONFIG_SND_SOC_AUTO), y)
|
||||
ifdef CONFIG_SND_SOC_SA8155
|
||||
CDEFINES += -DCONFIG_SEN_TDM_DISABLE
|
||||
include $(AUDIO_ROOT)/config/sa8155auto.conf
|
||||
export
|
||||
INCS += -include $(AUDIO_ROOT)/config/sa8155autoconf.h
|
||||
endif
|
||||
ifdef CONFIG_SND_SOC_SA6155
|
||||
CDEFINES += -DCONFIG_SEN_TDM_DISABLE
|
||||
include $(AUDIO_ROOT)/config/sa6155auto.conf
|
||||
export
|
||||
INCS += -include $(AUDIO_ROOT)/config/sa6155autoconf.h
|
||||
|
|
@ -72,6 +74,11 @@ else
|
|||
include $(AUDIO_ROOT)/config/konaauto.conf
|
||||
INCS += -include $(AUDIO_ROOT)/config/konaautoconf.h
|
||||
endif
|
||||
ifeq ($(CONFIG_ARCH_LAHAINA), y)
|
||||
include $(AUDIO_ROOT)/config/lahainaauto.conf
|
||||
export
|
||||
INCS += -include $(AUDIO_ROOT)/config/lahainaautoconf.h
|
||||
endif
|
||||
ifeq ($(CONFIG_ARCH_LITO), y)
|
||||
include $(AUDIO_ROOT)/config/litoauto.conf
|
||||
export
|
||||
|
|
|
|||
|
|
@ -72,6 +72,11 @@ else
|
|||
include $(AUDIO_ROOT)/config/konaauto.conf
|
||||
INCS += -include $(AUDIO_ROOT)/config/konaautoconf.h
|
||||
endif
|
||||
ifeq ($(CONFIG_ARCH_LAHAINA), y)
|
||||
include $(AUDIO_ROOT)/config/lahainaauto.conf
|
||||
export
|
||||
INCS += -include $(AUDIO_ROOT)/config/lahainaautoconf.h
|
||||
endif
|
||||
ifeq ($(CONFIG_ARCH_LITO), y)
|
||||
include $(AUDIO_ROOT)/config/litoauto.conf
|
||||
export
|
||||
|
|
|
|||
|
|
@ -30,6 +30,11 @@ ifeq ($(KERNEL_BUILD), 0)
|
|||
include $(AUDIO_ROOT)/config/konaauto.conf
|
||||
INCS += -include $(AUDIO_ROOT)/config/konaautoconf.h
|
||||
endif
|
||||
ifeq ($(CONFIG_ARCH_LAHAINA), y)
|
||||
include $(AUDIO_ROOT)/config/lahainaauto.conf
|
||||
export
|
||||
INCS += -include $(AUDIO_ROOT)/config/lahainaautoconf.h
|
||||
endif
|
||||
ifeq ($(CONFIG_ARCH_LITO), y)
|
||||
include $(AUDIO_ROOT)/config/litoauto.conf
|
||||
export
|
||||
|
|
|
|||
|
|
@ -36,6 +36,11 @@ ifeq ($(KERNEL_BUILD), 0)
|
|||
export
|
||||
INCS += -include $(AUDIO_ROOT)/config/litoautoconf.h
|
||||
endif
|
||||
ifeq ($(CONFIG_ARCH_LAHAINA), y)
|
||||
include $(AUDIO_ROOT)/config/lahainaauto.conf
|
||||
export
|
||||
INCS += -include $(AUDIO_ROOT)/config/lahainaautoconf.h
|
||||
endif
|
||||
endif
|
||||
|
||||
# As per target team, build is done as follows:
|
||||
|
|
|
|||
|
|
@ -1734,8 +1734,9 @@ static int wcd937x_event_notify(struct notifier_block *block,
|
|||
case BOLERO_SLV_EVT_SSR_DOWN:
|
||||
wcd937x->mbhc->wcd_mbhc.deinit_in_progress = true;
|
||||
mbhc = &wcd937x->mbhc->wcd_mbhc;
|
||||
wcd937x->usbc_hs_status = get_usbc_hs_status(component,
|
||||
mbhc->mbhc_cfg);
|
||||
if(mbhc->mbhc_cfg)
|
||||
wcd937x->usbc_hs_status = get_usbc_hs_status(component,
|
||||
mbhc->mbhc_cfg);
|
||||
wcd937x_mbhc_ssr_down(wcd937x->mbhc, component);
|
||||
wcd937x_reset_low(wcd937x->dev);
|
||||
break;
|
||||
|
|
@ -1755,7 +1756,8 @@ static int wcd937x_event_notify(struct notifier_block *block,
|
|||
dev_err(component->dev, "%s: mbhc initialization failed\n",
|
||||
__func__);
|
||||
} else {
|
||||
wcd937x_mbhc_hs_detect(component, mbhc->mbhc_cfg);
|
||||
if(mbhc->mbhc_cfg)
|
||||
wcd937x_mbhc_hs_detect(component, mbhc->mbhc_cfg);
|
||||
if (wcd937x->usbc_hs_status)
|
||||
mdelay(500);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -23,6 +23,11 @@ ifeq ($(KERNEL_BUILD), 0)
|
|||
export
|
||||
INCS += -include $(AUDIO_ROOT)/config/litoautoconf.h
|
||||
endif
|
||||
ifeq ($(CONFIG_ARCH_LAHAINA), y)
|
||||
include $(AUDIO_ROOT)/config/lahainaauto.conf
|
||||
export
|
||||
INCS += -include $(AUDIO_ROOT)/config/lahainaautoconf.h
|
||||
endif
|
||||
|
||||
endif
|
||||
|
||||
|
|
|
|||
|
|
@ -2161,8 +2161,9 @@ static int wcd938x_event_notify(struct notifier_block *block,
|
|||
NULL);
|
||||
wcd938x->mbhc->wcd_mbhc.deinit_in_progress = true;
|
||||
mbhc = &wcd938x->mbhc->wcd_mbhc;
|
||||
wcd938x->usbc_hs_status = get_usbc_hs_status(component,
|
||||
mbhc->mbhc_cfg);
|
||||
if(mbhc->mbhc_cfg)
|
||||
wcd938x->usbc_hs_status = get_usbc_hs_status(component,
|
||||
mbhc->mbhc_cfg);
|
||||
wcd938x_mbhc_ssr_down(wcd938x->mbhc, component);
|
||||
wcd938x_reset_low(wcd938x->dev);
|
||||
break;
|
||||
|
|
@ -2184,7 +2185,8 @@ static int wcd938x_event_notify(struct notifier_block *block,
|
|||
dev_err(component->dev, "%s: mbhc initialization failed\n",
|
||||
__func__);
|
||||
} else {
|
||||
wcd938x_mbhc_hs_detect(component, mbhc->mbhc_cfg);
|
||||
if(mbhc->mbhc_cfg)
|
||||
wcd938x_mbhc_hs_detect(component, mbhc->mbhc_cfg);
|
||||
}
|
||||
wcd938x->mbhc->wcd_mbhc.deinit_in_progress = false;
|
||||
wcd938x->dev_up = true;
|
||||
|
|
|
|||
|
|
@ -16,6 +16,7 @@ endif
|
|||
ifeq ($(KERNEL_BUILD), 0)
|
||||
ifeq ($(CONFIG_ARCH_LAHAINA), y)
|
||||
include $(AUDIO_ROOT)/config/lahainaauto.conf
|
||||
export
|
||||
INCS += -include $(AUDIO_ROOT)/config/lahainaautoconf.h
|
||||
endif
|
||||
ifeq ($(CONFIG_ARCH_LITO), y)
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
// SPDX-License-Identifier: GPL-2.0-only
|
||||
/*
|
||||
* Copyright (c) 2016-2021, The Linux Foundation. All rights reserved.
|
||||
* Copyright (c) 2022 Qualcomm Innovation Center, Inc. All rights reserved.
|
||||
* Copyright (c) 2022-2023, Qualcomm Innovation Center, Inc. All rights reserved.
|
||||
*/
|
||||
|
||||
#include <linux/clk.h>
|
||||
|
|
@ -328,6 +328,7 @@ static u32 mi2s_ebit_clk[MI2S_MAX] = {
|
|||
Q6AFE_LPASS_CLK_ID_PRI_MI2S_EBIT,
|
||||
Q6AFE_LPASS_CLK_ID_SEC_MI2S_EBIT,
|
||||
Q6AFE_LPASS_CLK_ID_TER_MI2S_EBIT,
|
||||
Q6AFE_LPASS_CLK_ID_QUAD_MI2S_EBIT,
|
||||
};
|
||||
|
||||
static struct mi2s_conf mi2s_intf_conf[MI2S_MAX];
|
||||
|
|
|
|||
|
|
@ -1,5 +1,39 @@
|
|||
// SPDX-License-Identifier: GPL-2.0-only
|
||||
/* Copyright (c) 2012-2021, The Linux Foundation. All rights reserved.
|
||||
*
|
||||
* Changes from Qualcomm Innovation Center are provided under the following license:
|
||||
* Copyright (c) 2022-2023 Qualcomm Innovation Center, Inc. All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted (subject to the limitations in the
|
||||
* disclaimer below) provided that the following conditions are met:
|
||||
*
|
||||
* * Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
*
|
||||
* * Redistributions in binary form must reproduce the above
|
||||
* copyright notice, this list of conditions and the following
|
||||
* disclaimer in the documentation and/or other materials provided
|
||||
* with the distribution.
|
||||
*
|
||||
* * Neither the name of Qualcomm Innovation Center, Inc. nor the
|
||||
* names of its contributors may be used to endorse or promote
|
||||
* products derived from this software without specific prior
|
||||
* written permission.
|
||||
*
|
||||
* NO EXPRESS OR IMPLIED LICENSES TO ANY PARTY'S PATENT RIGHTS ARE
|
||||
* GRANTED BY THIS LICENSE. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT
|
||||
* HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED
|
||||
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
||||
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
|
||||
* IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
|
||||
* ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||||
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
|
||||
* GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
||||
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
|
||||
* IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
|
||||
* OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
|
||||
* IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*/
|
||||
|
||||
|
||||
|
|
@ -2950,7 +2984,7 @@ static int msm_compr_trigger(struct snd_compr_stream *cstream, int cmd)
|
|||
}
|
||||
#else
|
||||
if ((prtd->bytes_received > prtd->copied_total) &&
|
||||
(prtd->bytes_received < runtime->fragment_size)) {
|
||||
((prtd->bytes_received - prtd->copied_total) < runtime->fragment_size)) {
|
||||
pr_debug("%s: send the only partial buffer to dsp\n",
|
||||
__func__);
|
||||
bytes_to_write = prtd->bytes_received
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
// SPDX-License-Identifier: GPL-2.0-only
|
||||
/* Copyright (c) 2011-2014, 2017-2019 The Linux Foundation. All rights reserved.
|
||||
* Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved.
|
||||
*/
|
||||
|
||||
#include <linux/init.h>
|
||||
|
|
@ -18,7 +19,8 @@ static int msm_pcm_hostless_prepare(struct snd_pcm_substream *substream)
|
|||
pr_err("%s: invalid params\n", __func__);
|
||||
return -EINVAL;
|
||||
}
|
||||
pm_qos_remove_request(&substream->latency_pm_qos_req);
|
||||
if (pm_qos_request_active(&substream->latency_pm_qos_req))
|
||||
pm_qos_remove_request(&substream->latency_pm_qos_req);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1818,6 +1818,7 @@ static int msm_routing_find_topology_on_index(int fedai_id, int session_type, in
|
|||
if (cal_block != NULL) {
|
||||
topology = ((struct audio_cal_info_adm_top *)
|
||||
cal_block->cal_info)->topology;
|
||||
cal_utils_mark_cal_used(cal_block);
|
||||
}
|
||||
mutex_unlock(&cal_data[idx]->lock);
|
||||
return topology;
|
||||
|
|
@ -27440,11 +27441,12 @@ static const struct snd_soc_dapm_route intercon[] = {
|
|||
{"MultiMedia6 Mixer", "QUIN_TDM_TX_1", "QUIN_TDM_TX_1"},
|
||||
{"MultiMedia6 Mixer", "QUIN_TDM_TX_2", "QUIN_TDM_TX_2"},
|
||||
{"MultiMedia6 Mixer", "QUIN_TDM_TX_3", "QUIN_TDM_TX_3"},
|
||||
#ifndef CONFIG_SEN_TDM_DISABLE
|
||||
{"MultiMedia6 Mixer", "SEN_TDM_TX_0", "SEN_TDM_TX_0"},
|
||||
{"MultiMedia6 Mixer", "SEN_TDM_TX_1", "SEN_TDM_TX_1"},
|
||||
{"MultiMedia6 Mixer", "SEN_TDM_TX_2", "SEN_TDM_TX_2"},
|
||||
{"MultiMedia6 Mixer", "SEN_TDM_TX_3", "SEN_TDM_TX_3"},
|
||||
|
||||
#endif
|
||||
{"MultiMedia8 Mixer", "AFE_LOOPBACK_TX", "AFE_LOOPBACK_TX"},
|
||||
{"MultiMedia9 Mixer", "AFE_LOOPBACK_TX", "AFE_LOOPBACK_TX"},
|
||||
|
||||
|
|
@ -27482,41 +27484,48 @@ static const struct snd_soc_dapm_route intercon[] = {
|
|||
{"MultiMedia18 Mixer", "QUAT_TDM_TX_1", "QUAT_TDM_TX_1"},
|
||||
{"MultiMedia18 Mixer", "QUAT_TDM_TX_2", "QUAT_TDM_TX_2"},
|
||||
{"MultiMedia18 Mixer", "QUAT_TDM_TX_3", "QUAT_TDM_TX_3"},
|
||||
#ifndef CONFIG_SEN_TDM_DISABLE
|
||||
{"MultiMedia18 Mixer", "SEN_TDM_TX_0", "SEN_TDM_TX_0"},
|
||||
{"MultiMedia18 Mixer", "SEN_TDM_TX_1", "SEN_TDM_TX_1"},
|
||||
{"MultiMedia18 Mixer", "SEN_TDM_TX_2", "SEN_TDM_TX_2"},
|
||||
{"MultiMedia18 Mixer", "SEN_TDM_TX_3", "SEN_TDM_TX_3"},
|
||||
|
||||
#endif
|
||||
|
||||
{"MultiMedia19 Mixer", "AFE_LOOPBACK_TX", "AFE_LOOPBACK_TX"},
|
||||
{"MultiMedia19 Mixer", "QUAT_TDM_TX_0", "QUAT_TDM_TX_0"},
|
||||
{"MultiMedia19 Mixer", "QUAT_TDM_TX_1", "QUAT_TDM_TX_1"},
|
||||
{"MultiMedia19 Mixer", "QUAT_TDM_TX_2", "QUAT_TDM_TX_2"},
|
||||
{"MultiMedia19 Mixer", "QUAT_TDM_TX_3", "QUAT_TDM_TX_3"},
|
||||
#ifndef CONFIG_SEN_TDM_DISABLE
|
||||
{"MultiMedia19 Mixer", "SEN_TDM_TX_0", "SEN_TDM_TX_0"},
|
||||
{"MultiMedia19 Mixer", "SEN_TDM_TX_1", "SEN_TDM_TX_1"},
|
||||
{"MultiMedia19 Mixer", "SEN_TDM_TX_2", "SEN_TDM_TX_2"},
|
||||
{"MultiMedia19 Mixer", "SEN_TDM_TX_3", "SEN_TDM_TX_3"},
|
||||
#endif
|
||||
|
||||
{"MultiMedia28 Mixer", "AFE_LOOPBACK_TX", "AFE_LOOPBACK_TX"},
|
||||
{"MultiMedia28 Mixer", "QUAT_TDM_TX_0", "QUAT_TDM_TX_0"},
|
||||
{"MultiMedia28 Mixer", "QUAT_TDM_TX_1", "QUAT_TDM_TX_1"},
|
||||
{"MultiMedia28 Mixer", "QUAT_TDM_TX_2", "QUAT_TDM_TX_2"},
|
||||
{"MultiMedia28 Mixer", "QUAT_TDM_TX_3", "QUAT_TDM_TX_3"},
|
||||
#ifndef CONFIG_SEN_TDM_DISABLE
|
||||
{"MultiMedia28 Mixer", "SEN_TDM_TX_0", "SEN_TDM_TX_0"},
|
||||
{"MultiMedia28 Mixer", "SEN_TDM_TX_1", "SEN_TDM_TX_1"},
|
||||
{"MultiMedia28 Mixer", "SEN_TDM_TX_2", "SEN_TDM_TX_2"},
|
||||
{"MultiMedia28 Mixer", "SEN_TDM_TX_3", "SEN_TDM_TX_3"},
|
||||
#endif
|
||||
|
||||
{"MultiMedia29 Mixer", "AFE_LOOPBACK_TX", "AFE_LOOPBACK_TX"},
|
||||
{"MultiMedia29 Mixer", "QUAT_TDM_TX_0", "QUAT_TDM_TX_0"},
|
||||
{"MultiMedia29 Mixer", "QUAT_TDM_TX_1", "QUAT_TDM_TX_1"},
|
||||
{"MultiMedia29 Mixer", "QUAT_TDM_TX_2", "QUAT_TDM_TX_2"},
|
||||
{"MultiMedia29 Mixer", "QUAT_TDM_TX_3", "QUAT_TDM_TX_3"},
|
||||
#ifndef CONFIG_SEN_TDM_DISABLE
|
||||
{"MultiMedia29 Mixer", "SEN_TDM_TX_0", "SEN_TDM_TX_0"},
|
||||
{"MultiMedia29 Mixer", "SEN_TDM_TX_1", "SEN_TDM_TX_1"},
|
||||
{"MultiMedia29 Mixer", "SEN_TDM_TX_2", "SEN_TDM_TX_2"},
|
||||
{"MultiMedia29 Mixer", "SEN_TDM_TX_3", "SEN_TDM_TX_3"},
|
||||
#endif
|
||||
|
||||
{"INTERNAL_BT_SCO_RX Audio Mixer", "MultiMedia1", "MM_DL1"},
|
||||
{"INTERNAL_BT_SCO_RX Audio Mixer", "MultiMedia2", "MM_DL2"},
|
||||
|
|
@ -28824,10 +28833,12 @@ static const struct snd_soc_dapm_route intercon_tdm[] = {
|
|||
{"PRI_TDM_RX_0 Port Mixer", "QUIN_TDM_TX_1", "QUIN_TDM_TX_1"},
|
||||
{"PRI_TDM_RX_0 Port Mixer", "QUIN_TDM_TX_2", "QUIN_TDM_TX_2"},
|
||||
{"PRI_TDM_RX_0 Port Mixer", "QUIN_TDM_TX_3", "QUIN_TDM_TX_3"},
|
||||
#ifndef CONFIG_SEN_TDM_DISABLE
|
||||
{"PRI_TDM_RX_0 Port Mixer", "SEN_TDM_TX_0", "SEN_TDM_TX_0"},
|
||||
{"PRI_TDM_RX_0 Port Mixer", "SEN_TDM_TX_1", "SEN_TDM_TX_1"},
|
||||
{"PRI_TDM_RX_0 Port Mixer", "SEN_TDM_TX_2", "SEN_TDM_TX_2"},
|
||||
{"PRI_TDM_RX_0 Port Mixer", "SEN_TDM_TX_3", "SEN_TDM_TX_3"},
|
||||
#endif
|
||||
{"PRI_TDM_RX_0", NULL, "PRI_TDM_RX_0 Port Mixer"},
|
||||
|
||||
#ifndef CONFIG_MI2S_DISABLE
|
||||
|
|
@ -28853,10 +28864,12 @@ static const struct snd_soc_dapm_route intercon_tdm[] = {
|
|||
{"PRI_TDM_RX_1 Port Mixer", "QUIN_TDM_TX_1", "QUIN_TDM_TX_1"},
|
||||
{"PRI_TDM_RX_1 Port Mixer", "QUIN_TDM_TX_2", "QUIN_TDM_TX_2"},
|
||||
{"PRI_TDM_RX_1 Port Mixer", "QUIN_TDM_TX_3", "QUIN_TDM_TX_3"},
|
||||
#ifndef CONFIG_SEN_TDM_DISABLE
|
||||
{"PRI_TDM_RX_1 Port Mixer", "SEN_TDM_TX_0", "SEN_TDM_TX_0"},
|
||||
{"PRI_TDM_RX_1 Port Mixer", "SEN_TDM_TX_1", "SEN_TDM_TX_1"},
|
||||
{"PRI_TDM_RX_1 Port Mixer", "SEN_TDM_TX_2", "SEN_TDM_TX_2"},
|
||||
{"PRI_TDM_RX_1 Port Mixer", "SEN_TDM_TX_3", "SEN_TDM_TX_3"},
|
||||
#endif
|
||||
{"PRI_TDM_RX_1", NULL, "PRI_TDM_RX_1 Port Mixer"},
|
||||
|
||||
#ifndef CONFIG_MI2S_DISABLE
|
||||
|
|
@ -28882,10 +28895,12 @@ static const struct snd_soc_dapm_route intercon_tdm[] = {
|
|||
{"PRI_TDM_RX_2 Port Mixer", "QUIN_TDM_TX_1", "QUIN_TDM_TX_1"},
|
||||
{"PRI_TDM_RX_2 Port Mixer", "QUIN_TDM_TX_2", "QUIN_TDM_TX_2"},
|
||||
{"PRI_TDM_RX_2 Port Mixer", "QUIN_TDM_TX_3", "QUIN_TDM_TX_3"},
|
||||
#ifndef CONFIG_SEN_TDM_DISABLE
|
||||
{"PRI_TDM_RX_2 Port Mixer", "SEN_TDM_TX_0", "SEN_TDM_TX_0"},
|
||||
{"PRI_TDM_RX_2 Port Mixer", "SEN_TDM_TX_1", "SEN_TDM_TX_1"},
|
||||
{"PRI_TDM_RX_2 Port Mixer", "SEN_TDM_TX_2", "SEN_TDM_TX_2"},
|
||||
{"PRI_TDM_RX_2 Port Mixer", "SEN_TDM_TX_3", "SEN_TDM_TX_3"},
|
||||
#endif
|
||||
{"PRI_TDM_RX_2", NULL, "PRI_TDM_RX_2 Port Mixer"},
|
||||
|
||||
#ifndef CONFIG_MI2S_DISABLE
|
||||
|
|
@ -28911,10 +28926,12 @@ static const struct snd_soc_dapm_route intercon_tdm[] = {
|
|||
{"PRI_TDM_RX_3 Port Mixer", "QUIN_TDM_TX_1", "QUIN_TDM_TX_1"},
|
||||
{"PRI_TDM_RX_3 Port Mixer", "QUIN_TDM_TX_2", "QUIN_TDM_TX_2"},
|
||||
{"PRI_TDM_RX_3 Port Mixer", "QUIN_TDM_TX_3", "QUIN_TDM_TX_3"},
|
||||
#ifndef CONFIG_SEN_TDM_DISABLE
|
||||
{"PRI_TDM_RX_3 Port Mixer", "SEN_TDM_TX_0", "SEN_TDM_TX_0"},
|
||||
{"PRI_TDM_RX_3 Port Mixer", "SEN_TDM_TX_1", "SEN_TDM_TX_1"},
|
||||
{"PRI_TDM_RX_3 Port Mixer", "SEN_TDM_TX_2", "SEN_TDM_TX_2"},
|
||||
{"PRI_TDM_RX_3 Port Mixer", "SEN_TDM_TX_3", "SEN_TDM_TX_3"},
|
||||
#endif
|
||||
{"PRI_TDM_RX_3", NULL, "PRI_TDM_RX_3 Port Mixer"},
|
||||
|
||||
#ifndef CONFIG_MI2S_DISABLE
|
||||
|
|
@ -28940,10 +28957,12 @@ static const struct snd_soc_dapm_route intercon_tdm[] = {
|
|||
{"SEC_TDM_RX_0 Port Mixer", "QUIN_TDM_TX_1", "QUIN_TDM_TX_1"},
|
||||
{"SEC_TDM_RX_0 Port Mixer", "QUIN_TDM_TX_2", "QUIN_TDM_TX_2"},
|
||||
{"SEC_TDM_RX_0 Port Mixer", "QUIN_TDM_TX_3", "QUIN_TDM_TX_3"},
|
||||
#ifndef CONFIG_SEN_TDM_DISABLE
|
||||
{"SEC_TDM_RX_0 Port Mixer", "SEN_TDM_TX_0", "SEN_TDM_TX_0"},
|
||||
{"SEC_TDM_RX_0 Port Mixer", "SEN_TDM_TX_1", "SEN_TDM_TX_1"},
|
||||
{"SEC_TDM_RX_0 Port Mixer", "SEN_TDM_TX_2", "SEN_TDM_TX_2"},
|
||||
{"SEC_TDM_RX_0 Port Mixer", "SEN_TDM_TX_3", "SEN_TDM_TX_3"},
|
||||
#endif
|
||||
{"SEC_TDM_RX_0", NULL, "SEC_TDM_RX_0 Port Mixer"},
|
||||
|
||||
#ifndef CONFIG_MI2S_DISABLE
|
||||
|
|
@ -28969,10 +28988,12 @@ static const struct snd_soc_dapm_route intercon_tdm[] = {
|
|||
{"SEC_TDM_RX_1 Port Mixer", "QUIN_TDM_TX_1", "QUIN_TDM_TX_1"},
|
||||
{"SEC_TDM_RX_1 Port Mixer", "QUIN_TDM_TX_2", "QUIN_TDM_TX_2"},
|
||||
{"SEC_TDM_RX_1 Port Mixer", "QUIN_TDM_TX_3", "QUIN_TDM_TX_3"},
|
||||
#ifndef CONFIG_SEN_TDM_DISABLE
|
||||
{"SEC_TDM_RX_1 Port Mixer", "SEN_TDM_TX_0", "SEN_TDM_TX_0"},
|
||||
{"SEC_TDM_RX_1 Port Mixer", "SEN_TDM_TX_1", "SEN_TDM_TX_1"},
|
||||
{"SEC_TDM_RX_1 Port Mixer", "SEN_TDM_TX_2", "SEN_TDM_TX_2"},
|
||||
{"SEC_TDM_RX_1 Port Mixer", "SEN_TDM_TX_3", "SEN_TDM_TX_3"},
|
||||
#endif
|
||||
{"SEC_TDM_RX_1", NULL, "SEC_TDM_RX_1 Port Mixer"},
|
||||
|
||||
#ifndef CONFIG_MI2S_DISABLE
|
||||
|
|
@ -28998,10 +29019,12 @@ static const struct snd_soc_dapm_route intercon_tdm[] = {
|
|||
{"SEC_TDM_RX_2 Port Mixer", "QUIN_TDM_TX_1", "QUIN_TDM_TX_1"},
|
||||
{"SEC_TDM_RX_2 Port Mixer", "QUIN_TDM_TX_2", "QUIN_TDM_TX_2"},
|
||||
{"SEC_TDM_RX_2 Port Mixer", "QUIN_TDM_TX_3", "QUIN_TDM_TX_3"},
|
||||
#ifndef CONFIG_SEN_TDM_DISABLE
|
||||
{"SEC_TDM_RX_2 Port Mixer", "SEN_TDM_TX_0", "SEN_TDM_TX_0"},
|
||||
{"SEC_TDM_RX_2 Port Mixer", "SEN_TDM_TX_1", "SEN_TDM_TX_1"},
|
||||
{"SEC_TDM_RX_2 Port Mixer", "SEN_TDM_TX_2", "SEN_TDM_TX_2"},
|
||||
{"SEC_TDM_RX_2 Port Mixer", "SEN_TDM_TX_3", "SEN_TDM_TX_3"},
|
||||
#endif
|
||||
{"SEC_TDM_RX_2", NULL, "SEC_TDM_RX_2 Port Mixer"},
|
||||
|
||||
#ifndef CONFIG_MI2S_DISABLE
|
||||
|
|
@ -29027,10 +29050,12 @@ static const struct snd_soc_dapm_route intercon_tdm[] = {
|
|||
{"SEC_TDM_RX_3 Port Mixer", "QUIN_TDM_TX_1", "QUIN_TDM_TX_1"},
|
||||
{"SEC_TDM_RX_3 Port Mixer", "QUIN_TDM_TX_2", "QUIN_TDM_TX_2"},
|
||||
{"SEC_TDM_RX_3 Port Mixer", "QUIN_TDM_TX_3", "QUIN_TDM_TX_3"},
|
||||
#ifndef CONFIG_SEN_TDM_DISABLE
|
||||
{"SEC_TDM_RX_3 Port Mixer", "SEN_TDM_TX_0", "SEN_TDM_TX_0"},
|
||||
{"SEC_TDM_RX_3 Port Mixer", "SEN_TDM_TX_1", "SEN_TDM_TX_1"},
|
||||
{"SEC_TDM_RX_3 Port Mixer", "SEN_TDM_TX_2", "SEN_TDM_TX_2"},
|
||||
{"SEC_TDM_RX_3 Port Mixer", "SEN_TDM_TX_3", "SEN_TDM_TX_3"},
|
||||
#endif
|
||||
{"SEC_TDM_RX_3", NULL, "SEC_TDM_RX_3 Port Mixer"},
|
||||
|
||||
{"SEC_TDM_RX_7 Port Mixer", "TERT_TDM_TX_7", "TERT_TDM_TX_7"},
|
||||
|
|
@ -29059,10 +29084,12 @@ static const struct snd_soc_dapm_route intercon_tdm[] = {
|
|||
{"TERT_TDM_RX_0 Port Mixer", "QUIN_TDM_TX_1", "QUIN_TDM_TX_1"},
|
||||
{"TERT_TDM_RX_0 Port Mixer", "QUIN_TDM_TX_2", "QUIN_TDM_TX_2"},
|
||||
{"TERT_TDM_RX_0 Port Mixer", "QUIN_TDM_TX_3", "QUIN_TDM_TX_3"},
|
||||
#ifndef CONFIG_SEN_TDM_DISABLE
|
||||
{"TERT_TDM_RX_0 Port Mixer", "SEN_TDM_TX_0", "SEN_TDM_TX_0"},
|
||||
{"TERT_TDM_RX_0 Port Mixer", "SEN_TDM_TX_1", "SEN_TDM_TX_1"},
|
||||
{"TERT_TDM_RX_0 Port Mixer", "SEN_TDM_TX_2", "SEN_TDM_TX_2"},
|
||||
{"TERT_TDM_RX_0 Port Mixer", "SEN_TDM_TX_3", "SEN_TDM_TX_3"},
|
||||
#endif
|
||||
{"TERT_TDM_RX_0", NULL, "TERT_TDM_RX_0 Port Mixer"},
|
||||
|
||||
#ifndef CONFIG_MI2S_DISABLE
|
||||
|
|
@ -29088,10 +29115,12 @@ static const struct snd_soc_dapm_route intercon_tdm[] = {
|
|||
{"TERT_TDM_RX_1 Port Mixer", "QUIN_TDM_TX_1", "QUIN_TDM_TX_1"},
|
||||
{"TERT_TDM_RX_1 Port Mixer", "QUIN_TDM_TX_2", "QUIN_TDM_TX_2"},
|
||||
{"TERT_TDM_RX_1 Port Mixer", "QUIN_TDM_TX_3", "QUIN_TDM_TX_3"},
|
||||
#ifndef CONFIG_SEN_TDM_DISABLE
|
||||
{"TERT_TDM_RX_1 Port Mixer", "SEN_TDM_TX_0", "SEN_TDM_TX_0"},
|
||||
{"TERT_TDM_RX_1 Port Mixer", "SEN_TDM_TX_1", "SEN_TDM_TX_1"},
|
||||
{"TERT_TDM_RX_1 Port Mixer", "SEN_TDM_TX_2", "SEN_TDM_TX_2"},
|
||||
{"TERT_TDM_RX_1 Port Mixer", "SEN_TDM_TX_3", "SEN_TDM_TX_3"},
|
||||
#endif
|
||||
{"TERT_TDM_RX_1", NULL, "TERT_TDM_RX_1 Port Mixer"},
|
||||
|
||||
#ifndef CONFIG_MI2S_DISABLE
|
||||
|
|
@ -29117,10 +29146,12 @@ static const struct snd_soc_dapm_route intercon_tdm[] = {
|
|||
{"TERT_TDM_RX_2 Port Mixer", "QUIN_TDM_TX_1", "QUIN_TDM_TX_1"},
|
||||
{"TERT_TDM_RX_2 Port Mixer", "QUIN_TDM_TX_2", "QUIN_TDM_TX_2"},
|
||||
{"TERT_TDM_RX_2 Port Mixer", "QUIN_TDM_TX_3", "QUIN_TDM_TX_3"},
|
||||
#ifndef CONFIG_SEN_TDM_DISABLE
|
||||
{"TERT_TDM_RX_2 Port Mixer", "SEN_TDM_TX_0", "SEN_TDM_TX_0"},
|
||||
{"TERT_TDM_RX_2 Port Mixer", "SEN_TDM_TX_1", "SEN_TDM_TX_1"},
|
||||
{"TERT_TDM_RX_2 Port Mixer", "SEN_TDM_TX_2", "SEN_TDM_TX_2"},
|
||||
{"TERT_TDM_RX_2 Port Mixer", "SEN_TDM_TX_3", "SEN_TDM_TX_3"},
|
||||
#endif
|
||||
{"TERT_TDM_RX_2", NULL, "TERT_TDM_RX_2 Port Mixer"},
|
||||
|
||||
#ifndef CONFIG_MI2S_DISABLE
|
||||
|
|
@ -29146,10 +29177,12 @@ static const struct snd_soc_dapm_route intercon_tdm[] = {
|
|||
{"TERT_TDM_RX_3 Port Mixer", "QUIN_TDM_TX_1", "QUIN_TDM_TX_1"},
|
||||
{"TERT_TDM_RX_3 Port Mixer", "QUIN_TDM_TX_2", "QUIN_TDM_TX_2"},
|
||||
{"TERT_TDM_RX_3 Port Mixer", "QUIN_TDM_TX_3", "QUIN_TDM_TX_3"},
|
||||
#ifndef CONFIG_SEN_TDM_DISABLE
|
||||
{"TERT_TDM_RX_3 Port Mixer", "SEN_TDM_TX_0", "SEN_TDM_TX_0"},
|
||||
{"TERT_TDM_RX_3 Port Mixer", "SEN_TDM_TX_1", "SEN_TDM_TX_1"},
|
||||
{"TERT_TDM_RX_3 Port Mixer", "SEN_TDM_TX_2", "SEN_TDM_TX_2"},
|
||||
{"TERT_TDM_RX_3 Port Mixer", "SEN_TDM_TX_3", "SEN_TDM_TX_3"},
|
||||
#endif
|
||||
{"TERT_TDM_RX_3", NULL, "TERT_TDM_RX_3 Port Mixer"},
|
||||
|
||||
#ifndef CONFIG_MI2S_DISABLE
|
||||
|
|
@ -29175,10 +29208,12 @@ static const struct snd_soc_dapm_route intercon_tdm[] = {
|
|||
{"QUAT_TDM_RX_0 Port Mixer", "QUIN_TDM_TX_1", "QUIN_TDM_TX_1"},
|
||||
{"QUAT_TDM_RX_0 Port Mixer", "QUIN_TDM_TX_2", "QUIN_TDM_TX_2"},
|
||||
{"QUAT_TDM_RX_0 Port Mixer", "QUIN_TDM_TX_3", "QUIN_TDM_TX_3"},
|
||||
#ifndef CONFIG_SEN_TDM_DISABLE
|
||||
{"QUAT_TDM_RX_0 Port Mixer", "SEN_TDM_TX_0", "SEN_TDM_TX_0"},
|
||||
{"QUAT_TDM_RX_0 Port Mixer", "SEN_TDM_TX_1", "SEN_TDM_TX_1"},
|
||||
{"QUAT_TDM_RX_0 Port Mixer", "SEN_TDM_TX_2", "SEN_TDM_TX_2"},
|
||||
{"QUAT_TDM_RX_0 Port Mixer", "SEN_TDM_TX_3", "SEN_TDM_TX_3"},
|
||||
#endif
|
||||
{"QUAT_TDM_RX_0", NULL, "QUAT_TDM_RX_0 Port Mixer"},
|
||||
|
||||
#ifndef CONFIG_MI2S_DISABLE
|
||||
|
|
@ -29204,10 +29239,12 @@ static const struct snd_soc_dapm_route intercon_tdm[] = {
|
|||
{"QUAT_TDM_RX_1 Port Mixer", "QUIN_TDM_TX_1", "QUIN_TDM_TX_1"},
|
||||
{"QUAT_TDM_RX_1 Port Mixer", "QUIN_TDM_TX_2", "QUIN_TDM_TX_2"},
|
||||
{"QUAT_TDM_RX_1 Port Mixer", "QUIN_TDM_TX_3", "QUIN_TDM_TX_3"},
|
||||
#ifndef CONFIG_SEN_TDM_DISABLE
|
||||
{"QUAT_TDM_RX_1 Port Mixer", "SEN_TDM_TX_0", "SEN_TDM_TX_0"},
|
||||
{"QUAT_TDM_RX_1 Port Mixer", "SEN_TDM_TX_1", "SEN_TDM_TX_1"},
|
||||
{"QUAT_TDM_RX_1 Port Mixer", "SEN_TDM_TX_2", "SEN_TDM_TX_2"},
|
||||
{"QUAT_TDM_RX_1 Port Mixer", "SEN_TDM_TX_3", "SEN_TDM_TX_3"},
|
||||
#endif
|
||||
{"QUAT_TDM_RX_1", NULL, "QUAT_TDM_RX_1 Port Mixer"},
|
||||
|
||||
#ifndef CONFIG_MI2S_DISABLE
|
||||
|
|
@ -29233,10 +29270,12 @@ static const struct snd_soc_dapm_route intercon_tdm[] = {
|
|||
{"QUAT_TDM_RX_2 Port Mixer", "QUIN_TDM_TX_1", "QUIN_TDM_TX_1"},
|
||||
{"QUAT_TDM_RX_2 Port Mixer", "QUIN_TDM_TX_2", "QUIN_TDM_TX_2"},
|
||||
{"QUAT_TDM_RX_2 Port Mixer", "QUIN_TDM_TX_3", "QUIN_TDM_TX_3"},
|
||||
#ifndef CONFIG_SEN_TDM_DISABLE
|
||||
{"QUAT_TDM_RX_2 Port Mixer", "SEN_TDM_TX_0", "SEN_TDM_TX_0"},
|
||||
{"QUAT_TDM_RX_2 Port Mixer", "SEN_TDM_TX_1", "SEN_TDM_TX_1"},
|
||||
{"QUAT_TDM_RX_2 Port Mixer", "SEN_TDM_TX_2", "SEN_TDM_TX_2"},
|
||||
{"QUAT_TDM_RX_2 Port Mixer", "SEN_TDM_TX_3", "SEN_TDM_TX_3"},
|
||||
#endif
|
||||
{"QUAT_TDM_RX_2", NULL, "QUAT_TDM_RX_2 Port Mixer"},
|
||||
|
||||
#ifndef CONFIG_MI2S_DISABLE
|
||||
|
|
@ -29262,10 +29301,12 @@ static const struct snd_soc_dapm_route intercon_tdm[] = {
|
|||
{"QUAT_TDM_RX_3 Port Mixer", "QUIN_TDM_TX_1", "QUIN_TDM_TX_1"},
|
||||
{"QUAT_TDM_RX_3 Port Mixer", "QUIN_TDM_TX_2", "QUIN_TDM_TX_2"},
|
||||
{"QUAT_TDM_RX_3 Port Mixer", "QUIN_TDM_TX_3", "QUIN_TDM_TX_3"},
|
||||
#ifndef CONFIG_SEN_TDM_DISABLE
|
||||
{"QUAT_TDM_RX_3 Port Mixer", "SEN_TDM_TX_0", "SEN_TDM_TX_0"},
|
||||
{"QUAT_TDM_RX_3 Port Mixer", "SEN_TDM_TX_1", "SEN_TDM_TX_1"},
|
||||
{"QUAT_TDM_RX_3 Port Mixer", "SEN_TDM_TX_2", "SEN_TDM_TX_2"},
|
||||
{"QUAT_TDM_RX_3 Port Mixer", "SEN_TDM_TX_3", "SEN_TDM_TX_3"},
|
||||
#endif
|
||||
{"QUAT_TDM_RX_3", NULL, "QUAT_TDM_RX_3 Port Mixer"},
|
||||
|
||||
{"QUAT_TDM_RX_7 Port Mixer", "TERT_TDM_TX_7", "TERT_TDM_TX_7"},
|
||||
|
|
@ -29296,10 +29337,12 @@ static const struct snd_soc_dapm_route intercon_tdm[] = {
|
|||
{"QUIN_TDM_RX_0 Port Mixer", "QUIN_TDM_TX_1", "QUIN_TDM_TX_1"},
|
||||
{"QUIN_TDM_RX_0 Port Mixer", "QUIN_TDM_TX_2", "QUIN_TDM_TX_2"},
|
||||
{"QUIN_TDM_RX_0 Port Mixer", "QUIN_TDM_TX_3", "QUIN_TDM_TX_3"},
|
||||
#ifndef CONFIG_SEN_TDM_DISABLE
|
||||
{"QUIN_TDM_RX_0 Port Mixer", "SEN_TDM_TX_0", "SEN_TDM_TX_0"},
|
||||
{"QUIN_TDM_RX_0 Port Mixer", "SEN_TDM_TX_1", "SEN_TDM_TX_1"},
|
||||
{"QUIN_TDM_RX_0 Port Mixer", "SEN_TDM_TX_2", "SEN_TDM_TX_2"},
|
||||
{"QUIN_TDM_RX_0 Port Mixer", "SEN_TDM_TX_3", "SEN_TDM_TX_3"},
|
||||
#endif
|
||||
{"QUIN_TDM_RX_0", NULL, "QUIN_TDM_RX_0 Port Mixer"},
|
||||
|
||||
#ifndef CONFIG_MI2S_DISABLE
|
||||
|
|
@ -29325,10 +29368,12 @@ static const struct snd_soc_dapm_route intercon_tdm[] = {
|
|||
{"QUIN_TDM_RX_1 Port Mixer", "QUIN_TDM_TX_1", "QUIN_TDM_TX_1"},
|
||||
{"QUIN_TDM_RX_1 Port Mixer", "QUIN_TDM_TX_2", "QUIN_TDM_TX_2"},
|
||||
{"QUIN_TDM_RX_1 Port Mixer", "QUIN_TDM_TX_3", "QUIN_TDM_TX_3"},
|
||||
#ifndef CONFIG_SEN_TDM_DISABLE
|
||||
{"QUIN_TDM_RX_1 Port Mixer", "SEN_TDM_TX_0", "SEN_TDM_TX_0"},
|
||||
{"QUIN_TDM_RX_1 Port Mixer", "SEN_TDM_TX_1", "SEN_TDM_TX_1"},
|
||||
{"QUIN_TDM_RX_1 Port Mixer", "SEN_TDM_TX_2", "SEN_TDM_TX_2"},
|
||||
{"QUIN_TDM_RX_1 Port Mixer", "SEN_TDM_TX_3", "SEN_TDM_TX_3"},
|
||||
#endif
|
||||
{"QUIN_TDM_RX_1", NULL, "QUIN_TDM_RX_1 Port Mixer"},
|
||||
|
||||
#ifndef CONFIG_MI2S_DISABLE
|
||||
|
|
@ -29354,10 +29399,12 @@ static const struct snd_soc_dapm_route intercon_tdm[] = {
|
|||
{"QUIN_TDM_RX_2 Port Mixer", "QUIN_TDM_TX_1", "QUIN_TDM_TX_1"},
|
||||
{"QUIN_TDM_RX_2 Port Mixer", "QUIN_TDM_TX_2", "QUIN_TDM_TX_2"},
|
||||
{"QUIN_TDM_RX_2 Port Mixer", "QUIN_TDM_TX_3", "QUIN_TDM_TX_3"},
|
||||
#ifndef CONFIG_SEN_TDM_DISABLE
|
||||
{"QUIN_TDM_RX_2 Port Mixer", "SEN_TDM_TX_0", "SEN_TDM_TX_0"},
|
||||
{"QUIN_TDM_RX_2 Port Mixer", "SEN_TDM_TX_1", "SEN_TDM_TX_1"},
|
||||
{"QUIN_TDM_RX_2 Port Mixer", "SEN_TDM_TX_2", "SEN_TDM_TX_2"},
|
||||
{"QUIN_TDM_RX_2 Port Mixer", "SEN_TDM_TX_3", "SEN_TDM_TX_3"},
|
||||
#endif
|
||||
{"QUIN_TDM_RX_2", NULL, "QUIN_TDM_RX_2 Port Mixer"},
|
||||
|
||||
#ifndef CONFIG_MI2S_DISABLE
|
||||
|
|
@ -29383,10 +29430,12 @@ static const struct snd_soc_dapm_route intercon_tdm[] = {
|
|||
{"QUIN_TDM_RX_3 Port Mixer", "QUIN_TDM_TX_1", "QUIN_TDM_TX_1"},
|
||||
{"QUIN_TDM_RX_3 Port Mixer", "QUIN_TDM_TX_2", "QUIN_TDM_TX_2"},
|
||||
{"QUIN_TDM_RX_3 Port Mixer", "QUIN_TDM_TX_3", "QUIN_TDM_TX_3"},
|
||||
#ifndef CONFIG_SEN_TDM_DISABLE
|
||||
{"QUIN_TDM_RX_3 Port Mixer", "SEN_TDM_TX_0", "SEN_TDM_TX_0"},
|
||||
{"QUIN_TDM_RX_3 Port Mixer", "SEN_TDM_TX_1", "SEN_TDM_TX_1"},
|
||||
{"QUIN_TDM_RX_3 Port Mixer", "SEN_TDM_TX_2", "SEN_TDM_TX_2"},
|
||||
{"QUIN_TDM_RX_3 Port Mixer", "SEN_TDM_TX_3", "SEN_TDM_TX_3"},
|
||||
#endif
|
||||
{"QUIN_TDM_RX_3", NULL, "QUIN_TDM_RX_3 Port Mixer"},
|
||||
|
||||
{"QUIN_TDM_RX_7 Port Mixer", "TERT_TDM_TX_7", "TERT_TDM_TX_7"},
|
||||
|
|
@ -32338,6 +32387,9 @@ static int msm_pcm_routing_prepare(struct snd_pcm_substream *substream)
|
|||
(fdai->passthr_mode == LEGACY_PCM))
|
||||
msm_pcm_routing_cfg_pp(port_id, copp_idx,
|
||||
topology, channels);
|
||||
if(msm_pcm_routing_channel_mixer(i, fdai->perf_mode,fdai->strm_id, session_type)){
|
||||
pr_err("%s: failed to send channel mixer \n", __func__);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1,6 +1,39 @@
|
|||
// SPDX-License-Identifier: GPL-2.0-only
|
||||
/* Copyright (c) 2012-2021, The Linux Foundation. All rights reserved.
|
||||
* Copyright (c) 2022 Qualcomm Innovation Center, Inc. All rights reserved.
|
||||
*
|
||||
* Changes from Qualcomm Innovation Center are provided under the following license:
|
||||
* Copyright (c) 2022-2023 Qualcomm Innovation Center, Inc. All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted (subject to the limitations in the
|
||||
* disclaimer below) provided that the following conditions are met:
|
||||
*
|
||||
* * Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
*
|
||||
* * Redistributions in binary form must reproduce the above
|
||||
* copyright notice, this list of conditions and the following
|
||||
* disclaimer in the documentation and/or other materials provided
|
||||
* with the distribution.
|
||||
*
|
||||
* * Neither the name of Qualcomm Innovation Center, Inc. nor the
|
||||
* names of its contributors may be used to endorse or promote
|
||||
* products derived from this software without specific prior
|
||||
* written permission.
|
||||
*
|
||||
* NO EXPRESS OR IMPLIED LICENSES TO ANY PARTY'S PATENT RIGHTS ARE
|
||||
* GRANTED BY THIS LICENSE. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT
|
||||
* HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED
|
||||
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
||||
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
|
||||
* IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
|
||||
* ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||||
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
|
||||
* GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
||||
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
|
||||
* IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
|
||||
* OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
|
||||
* IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*/
|
||||
/*
|
||||
* Add support for 24 and 32bit format for ASM loopback and playback session.
|
||||
|
|
@ -33189,7 +33222,7 @@ static const struct soc_enum wsa_rx_0_vi_fb_rch_mux_enum =
|
|||
wsa_rx_0_vi_fb_tx_rch_mux_text, wsa_rx_0_vi_fb_tx_rch_value);
|
||||
|
||||
static const struct soc_enum mi2s_rx_vi_fb_mux_enum =
|
||||
SOC_VALUE_ENUM_DOUBLE(0, MSM_BACKEND_DAI_PRI_MI2S_RX, 0, 0,
|
||||
SOC_VALUE_ENUM_DOUBLE(SND_SOC_NOPM, MSM_BACKEND_DAI_PRI_MI2S_RX, 0, 0,
|
||||
ARRAY_SIZE(mi2s_rx_vi_fb_tx_mux_text),
|
||||
mi2s_rx_vi_fb_tx_mux_text, mi2s_rx_vi_fb_tx_value);
|
||||
|
||||
|
|
|
|||
|
|
@ -61,6 +61,10 @@ else
|
|||
include $(AUDIO_ROOT)/config/konaauto.conf
|
||||
INCS += -include $(AUDIO_ROOT)/config/konaautoconf.h
|
||||
endif
|
||||
ifeq ($(CONFIG_ARCH_LAHAINA), y)
|
||||
include $(AUDIO_ROOT)/config/lahainaauto.conf
|
||||
INCS += -include $(AUDIO_ROOT)/config/lahainaautoconf.h
|
||||
endif
|
||||
ifeq ($(CONFIG_ARCH_LITO), y)
|
||||
include $(AUDIO_ROOT)/config/litoauto.conf
|
||||
export
|
||||
|
|
|
|||
|
|
@ -1,6 +1,7 @@
|
|||
// SPDX-License-Identifier: GPL-2.0-only
|
||||
/*
|
||||
* Copyright (c) 2014-2020, The Linux Foundation. All rights reserved.
|
||||
* Copyright (c) 2022-2023 Qualcomm Innovation Center, Inc. All rights reserved.
|
||||
*/
|
||||
#include <linux/slab.h>
|
||||
#include <linux/fs.h>
|
||||
|
|
@ -458,6 +459,7 @@ static void delete_cal_block(struct cal_block_data *cal_block)
|
|||
cal_block->map_data.dma_buf = NULL;
|
||||
}
|
||||
kfree(cal_block);
|
||||
cal_block = NULL;
|
||||
done:
|
||||
return;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,6 +1,7 @@
|
|||
// SPDX-License-Identifier: GPL-2.0-only
|
||||
/*
|
||||
* Copyright (c) 2014, 2016-2017, 2020-2021, The Linux Foundation. All rights reserved.
|
||||
* Copyright (c) 2023, Qualcomm Innovation Center, Inc. All rights reserved.
|
||||
*/
|
||||
#include <linux/slab.h>
|
||||
#include <linux/fs.h>
|
||||
|
|
@ -416,7 +417,7 @@ static long audio_cal_shared_ioctl(struct file *file, unsigned int cmd,
|
|||
pr_err("%s: Could not copy size value from user\n", __func__);
|
||||
ret = -EFAULT;
|
||||
goto done;
|
||||
} else if ((size < sizeof(struct audio_cal_basic))
|
||||
} else if ((size < 0) || (size < sizeof(struct audio_cal_basic))
|
||||
|| (size > MAX_IOCTL_CMD_SIZE)) {
|
||||
pr_err("%s: Invalid size sent to driver: %d, max size is %d, min size is %zd\n",
|
||||
__func__, size, MAX_IOCTL_CMD_SIZE,
|
||||
|
|
|
|||
|
|
@ -28,6 +28,11 @@ ifeq ($(KERNEL_BUILD), 0)
|
|||
include $(AUDIO_ROOT)/config/konaauto.conf
|
||||
INCS += -include $(AUDIO_ROOT)/config/konaautoconf.h
|
||||
endif
|
||||
ifeq ($(CONFIG_ARCH_LAHAINA), y)
|
||||
include $(AUDIO_ROOT)/config/lahainaauto.conf
|
||||
export
|
||||
INCS += -include $(AUDIO_ROOT)/config/lahainaautoconf.h
|
||||
endif
|
||||
ifeq ($(CONFIG_ARCH_LITO), y)
|
||||
include $(AUDIO_ROOT)/config/litoauto.conf
|
||||
export
|
||||
|
|
|
|||
|
|
@ -333,9 +333,11 @@ struct adm_cmd_device_open_v5 {
|
|||
*/
|
||||
|
||||
u16 endpoint_id_2;
|
||||
/* Logical and physical endpoint ID 2 for a voice processor
|
||||
* Tx block.
|
||||
* This is not applicable to audio COPP.
|
||||
/* Endpoint 2 is set with 0xFFFF by default.
|
||||
* In cases of ECREF, Endpoint 2 can be set with the ecref AFE port id,
|
||||
* which will be connected to the TX block.
|
||||
* ECREF data is given as input to the TX block.
|
||||
* Endpoint 2 is applicable to audio CoPreP.
|
||||
* Supported values:
|
||||
* - AFE Rx port
|
||||
* - 0xFFFF -- Endpoint 2 is unavailable and the voice
|
||||
|
|
@ -423,9 +425,11 @@ struct adm_cmd_device_open_v6 {
|
|||
*/
|
||||
|
||||
u16 endpoint_id_2;
|
||||
/* Logical and physical endpoint ID 2 for a voice processor
|
||||
* Tx block.
|
||||
* This is not applicable to audio COPP.
|
||||
/* Endpoint 2 is set with 0xFFFF by default.
|
||||
* In cases of ECREF, Endpoint 2 can be set with the ecref AFE port id,
|
||||
* which will be connected to the TX block.
|
||||
* ECREF data is given as input to the TX block.
|
||||
* Endpoint 2 is applicable to audio CoPreP.
|
||||
* Supported values:
|
||||
* - AFE Rx port
|
||||
* - 0xFFFF -- Endpoint 2 is unavailable and the voice
|
||||
|
|
@ -589,9 +593,11 @@ struct adm_cmd_device_open_v8 {
|
|||
*/
|
||||
|
||||
u16 endpoint_id_2;
|
||||
/* Logical and physical endpoint ID 2 for a voice processor
|
||||
* Tx block.
|
||||
* This is not applicable to audio COPP.
|
||||
/* Endpoint 2 is set with 0xFFFF by default.
|
||||
* In cases of ECREF, Endpoint 2 can be set with the ecref AFE port id,
|
||||
* which will be connected to the TX block.
|
||||
* ECREF data is given as input to the TX block.
|
||||
* Endpoint 2 is applicable to audio CoPreP.
|
||||
* Supported values:
|
||||
* - AFE Rx port
|
||||
* - 0xFFFF -- Endpoint 2 is unavailable and the voice
|
||||
|
|
|
|||
|
|
@ -62,6 +62,11 @@ else
|
|||
include $(AUDIO_ROOT)/config/konaauto.conf
|
||||
INCS += -include $(AUDIO_ROOT)/config/konaautoconf.h
|
||||
endif
|
||||
ifeq ($(CONFIG_ARCH_LAHAINA), y)
|
||||
include $(AUDIO_ROOT)/config/lahainaauto.conf
|
||||
export
|
||||
INCS += -include $(AUDIO_ROOT)/config/lahainaautoconf.h
|
||||
endif
|
||||
ifeq ($(CONFIG_ARCH_LITO), y)
|
||||
include $(AUDIO_ROOT)/config/litoauto.conf
|
||||
export
|
||||
|
|
|
|||
|
|
@ -56,6 +56,11 @@ else
|
|||
include $(AUDIO_ROOT)/config/konaauto.conf
|
||||
INCS += -include $(AUDIO_ROOT)/config/konaautoconf.h
|
||||
endif
|
||||
ifeq ($(CONFIG_ARCH_LAHAINA), y)
|
||||
include $(AUDIO_ROOT)/config/lahainaauto.conf
|
||||
export
|
||||
INCS += -include $(AUDIO_ROOT)/config/lahainaautoconf.h
|
||||
endif
|
||||
ifeq ($(CONFIG_ARCH_LITO), y)
|
||||
include $(AUDIO_ROOT)/config/litoauto.conf
|
||||
export
|
||||
|
|
|
|||
Loading…
Reference in a new issue