Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

ASoC: codecs: lpass-wsa-macro: fix path clock dependencies

"WSA_RX0_CLK",etc. are path clocks, but "WSA RX0",etc. are ports, and there
isn't a correspondence between the ports and paths.
For example "WSA RX0" port could be used by the "RX1 MIX" path.
The problem becomes obvious when RX4,etc. ports are added.

Enabling the path clocks should depend on the path being enabled.

With this fix, the main path clock will be enabled whenever the path is
active: previously using the mix ports only would only activate the mix
path clock and no audio would play.

Signed-off-by: Jonathan Marek <jonathan@marek.ca>
Tested-by: Srinivas Kandagatla <srinivas.kandagatla@oss.qualcomm.com>
Reviewed-by: Srinivas Kandagatla <srinivas.kandagatla@oss.qualcomm.com>
Link: https://patch.msgid.link/20251117051523.16462-4-jonathan@marek.ca
Signed-off-by: Mark Brown <broonie@kernel.org>

authored by

Jonathan Marek and committed by
Mark Brown
3ea1b0db c47f28ef

+6 -4
+6 -4
sound/soc/codecs/lpass-wsa-macro.c
··· 2494 2494 {"WSA RX_MIX0", NULL, "WSA RX_MIX0 MUX"}, 2495 2495 {"WSA RX_MIX1", NULL, "WSA RX_MIX1 MUX"}, 2496 2496 2497 - {"WSA RX0", NULL, "WSA_RX0_CLK"}, 2498 - {"WSA RX1", NULL, "WSA_RX1_CLK"}, 2499 - {"WSA RX_MIX0", NULL, "WSA_RX_MIX0_CLK"}, 2500 - {"WSA RX_MIX1", NULL, "WSA_RX_MIX1_CLK"}, 2497 + {"WSA_RX INT0 MIX", NULL, "WSA_RX0_CLK"}, 2498 + {"WSA_RX INT1 MIX", NULL, "WSA_RX1_CLK"}, 2501 2499 2502 2500 {"WSA_RX0 INP0", "RX0", "WSA RX0"}, 2503 2501 {"WSA_RX0 INP0", "RX1", "WSA RX1"}, ··· 2525 2527 {"WSA_RX0 MIX INP", "RX1", "WSA RX1"}, 2526 2528 {"WSA_RX0 MIX INP", "RX_MIX0", "WSA RX_MIX0"}, 2527 2529 {"WSA_RX0 MIX INP", "RX_MIX1", "WSA RX_MIX1"}, 2530 + {"WSA_RX0 MIX INP", NULL, "WSA_RX0_CLK"}, 2531 + {"WSA_RX0 MIX INP", NULL, "WSA_RX_MIX0_CLK"}, 2528 2532 {"WSA_RX INT0 SEC MIX", NULL, "WSA_RX0 MIX INP"}, 2529 2533 2530 2534 {"WSA_RX INT0 SEC MIX", NULL, "WSA_RX INT0 MIX"}, ··· 2566 2566 {"WSA_RX1 MIX INP", "RX1", "WSA RX1"}, 2567 2567 {"WSA_RX1 MIX INP", "RX_MIX0", "WSA RX_MIX0"}, 2568 2568 {"WSA_RX1 MIX INP", "RX_MIX1", "WSA RX_MIX1"}, 2569 + {"WSA_RX1 MIX INP", NULL, "WSA_RX1_CLK"}, 2570 + {"WSA_RX1 MIX INP", NULL, "WSA_RX_MIX1_CLK"}, 2569 2571 {"WSA_RX INT1 SEC MIX", NULL, "WSA_RX1 MIX INP"}, 2570 2572 2571 2573 {"WSA_RX INT1 SEC MIX", NULL, "WSA_RX INT1 MIX"},