On Thu, Feb 06, 2025 at 05:31:52PM +0100, Francesco Dolcini wrote:
> From: Ernest Van Hoecke <ernest.vanhoecke@xxxxxxxxxxx>
> +static const struct snd_soc_dapm_route dmic_intercon[] = {
> + { "DMIC Mux", "DMIC1", "IN1L" },
> + { "DMIC Mux", "DMIC2", "IN1R" },
> +
> + { "ADCL", NULL, "DMIC Mux" },
> + { "ADCR", NULL, "DMIC Mux" },
> +};
> +
> +static const struct snd_soc_dapm_route cin_intercon[] = {
> + { "Left Capture Input", "ADC", "Left Capture PGA" },
> + { "Left Capture Input", "DMIC", "IN1L" },
> + { "Right Capture Input", "ADC", "Right Capture PGA" },
> + { "Right Capture Input", "DMIC", "IN1R" },
Am I misunderstanding things or does something not quite look
right with the routes here? Shouldn't you end up with the these
three situations:
Analogue:
{ "Left Capture Input", "ADC", "Left Capture PGA" },
{ "Right Capture Input", "ADC", "Right Capture PGA" },
Digital in1l_as_dmicdat1:
{ "Left Capture Input", "DMIC", "IN1L" },
{ "Right Capture Input", "DMIC", "IN1L" },
Digital in1r_as_dmicdat2:
{ "Left Capture Input", "DMIC", "IN1R" },
{ "Right Capture Input", "DMIC", "IN1R" },
So I think you need to add the DMIC routes conditionally here.
Also is there not some part of the existing analogue routing that
needs disconnected in the DMIC cases? This only addes routes,
which feels like the existing analogue path is never
disconnected?
Thanks,
Charles
> +
> + { "ADCL", NULL, "Left Capture Input" },
> + { "ADCR", NULL, "Right Capture Input" },
> +};
[Index of Archives]
[Pulseaudio]
[Linux Audio Users]
[ALSA Devel]
[Fedora Desktop]
[Fedora SELinux]
[Big List of Linux Books]
[Yosemite News]
[KDE Users]