On Fri, Mar 21, 2025 at 01:26:44PM +0000, Srinivas Kandagatla wrote: > > > 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. Machine driver also doesn't depend on it. MUX_GPIO is selectedable item, so please handle it via the usual way - defconfig. -- With best wishes Dmitry