Message ID | 20250327100633.11530-3-srinivas.kandagatla@linaro.org |
---|---|
State | New |
Headers | show |
Series | ASoC: wcd938x: enable t14s audio headset | expand |
On Thu, Mar 27, 2025 at 10:06:29AM +0000, srinivas.kandagatla@linaro.org wrote: > From: Srinivas Kandagatla <srinivas.kandagatla@linaro.org> > > Some of the external muxes needs powering up using a regulator. > This is the case with Lenovo T14s laptop which has a external audio mux > to handle US/EURO headsets. The ASoC bits of this series look fine, what's the plan with the mux bits? It looks like the two parts can just get merged independently.
diff --git a/drivers/mux/gpio.c b/drivers/mux/gpio.c index cc5f2c1861d4..d1607f287755 100644 --- a/drivers/mux/gpio.c +++ b/drivers/mux/gpio.c @@ -15,6 +15,7 @@ #include <linux/mux/driver.h> #include <linux/platform_device.h> #include <linux/property.h> +#include <linux/regulator/consumer.h> struct mux_gpio { struct gpio_descs *gpios; @@ -82,6 +83,10 @@ static int mux_gpio_probe(struct platform_device *pdev) mux_chip->mux->idle_state = idle_state; } + ret = devm_regulator_get_enable_optional(dev, "mux"); + if (ret && ret != -ENODEV) + return dev_err_probe(dev, ret, "Couldn't retrieve/enable gpio mux supply\n"); + ret = devm_mux_chip_register(dev, mux_chip); if (ret < 0) return ret;