Re: [PATCH v2 4/5] ASoC: codecs: wcd938x: add mux control support for hp audio mux

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 





On 21/03/2025 13:16, Dmitry Baryshkov wrote:
On Fri, 21 Mar 2025 at 14:35, Srinivas Kandagatla
<srinivas.kandagatla@xxxxxxxxxx> wrote:



On 20/03/2025 14:03, Dmitry Baryshkov wrote:
On Thu, Mar 20, 2025 at 11:56:32AM +0000, srinivas.kandagatla@xxxxxxxxxx wrote:
From: Srinivas Kandagatla <srinivas.kandagatla@xxxxxxxxxx>

On some platforms to minimise pop and click during switching between
CTIA and OMTP headset an additional HiFi mux is used. Most common
case is that this switch is switched on by default, but on some
platforms this needs a regulator enable.

move to using mux control to enable both regulator and handle gpios,
deprecate the usage of gpio.

Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@xxxxxxxxxx>
---
   sound/soc/codecs/Kconfig   |  2 ++
   sound/soc/codecs/wcd938x.c | 38 ++++++++++++++++++++++++++++++--------
   2 files changed, 32 insertions(+), 8 deletions(-)

diff --git a/sound/soc/codecs/Kconfig b/sound/soc/codecs/Kconfig
index ee35f3aa5521..b04076282c8b 100644
--- a/sound/soc/codecs/Kconfig
+++ b/sound/soc/codecs/Kconfig
@@ -2226,6 +2226,8 @@ config SND_SOC_WCD938X
      tristate
      depends on SOUNDWIRE || !SOUNDWIRE
      select SND_SOC_WCD_CLASSH
+    select MULTIPLEXER
+    imply MUX_GPIO

Why? This is true for a particular platform, isn't it?

We want to move the codec to use gpio mux instead of using gpios directly

So this become codec specific, rather than platform.

Not quite. "select MULTIPLEXER" is correct and is not questionable.
I'm asking about the MUX_GPIO. The codec itself has nothing to do with
the board using _GPIO_ to switch 4-pin modes. It is a board-level
decision. A board can use an I2C-controlled MUX instead. I'd say, that
at least you should describe rationale for this `imply` clause in the
commit message.

I agree to you point, but historically in this case us/euro selection is only driven by gpio. But I see no harm in moving the MUX_GPIO dependency to machine driver KConfigs.

Will fix this in v3.

thanks,
Srini





[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux