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

Commit 3d8cc2ed authored by Dhananjay Kumar's avatar Dhananjay Kumar
Browse files

asoc: fix routing error during switch from non-adm to adm path



Fix routing error from incorrect usage of passthrough mode
while switching LSM session from direct AFE connection to
path using ADM before AFE connection.
Issue is due to loss of passthrough mode for an FE not opened
with ADM during initial session setup or while moving the FE
from one BE port to another BE port, i.e. device switch usecases.
Since passthrough mode for an FE is supposed to be same for all
the BEs connecting to the FE and is directly decided from FE
driver having single value, decouple passthrough mode from BE
and store the required mode in an FE config independent of BE usage.
This allows storing passthrough mode for future usage irrespective
of initial setup path which can be with or without ADM.

Change-Id: I53106b49effd9b267363aedd77477eed103b317c
Signed-off-by: default avatarDhananjay Kumar <dhakumar@codeaurora.org>
parent 53f339b5
Loading
Loading
Loading
Loading
+314 −321

File changed.

Preview size limit exceeded, changes collapsed.

+1 −1
Original line number Diff line number Diff line
@@ -523,7 +523,6 @@ struct msm_pcm_routing_bdai_data {
	unsigned int  channel;
	unsigned int  format;
	unsigned int  adm_override_ch;
	u32 passthr_mode[MSM_FRONTEND_DAI_MAX];
	char *name;
};

@@ -532,6 +531,7 @@ struct msm_pcm_routing_fdai_data {
	int strm_id; /* ASM stream ID */
	int perf_mode;
	struct msm_pcm_routing_evt event_info;
	u32 passthr_mode;
};

#define MAX_APP_TYPES	16