From: Francesco Dolcini <francesco.dolcini@toradex.com>
The enable gpio is not required when the SBU mux is used only for
orientation, make it optional.
Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com>
---
v2:
- removed useless NULL check for optional enable gpio
---
drivers/usb/typec/mux/gpio-sbu-mux.c | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/drivers/usb/typec/mux/gpio-sbu-mux.c b/drivers/usb/typec/mux/gpio-sbu-mux.c
index 374168482d36..8902102c05a8 100644
--- a/drivers/usb/typec/mux/gpio-sbu-mux.c
+++ b/drivers/usb/typec/mux/gpio-sbu-mux.c
@@ -66,6 +66,9 @@ static int gpio_sbu_mux_set(struct typec_mux_dev *mux,
{
struct gpio_sbu_mux *sbu_mux = typec_mux_get_drvdata(mux);
+ if (!sbu_mux->enable_gpio)
+ return -EOPNOTSUPP;
+
mutex_lock(&sbu_mux->lock);
switch (state->mode) {
@@ -102,7 +105,8 @@ static int gpio_sbu_mux_probe(struct platform_device *pdev)
mutex_init(&sbu_mux->lock);
- sbu_mux->enable_gpio = devm_gpiod_get(dev, "enable", GPIOD_OUT_LOW);
+ sbu_mux->enable_gpio = devm_gpiod_get_optional(dev, "enable",
+ GPIOD_OUT_LOW);
if (IS_ERR(sbu_mux->enable_gpio))
return dev_err_probe(dev, PTR_ERR(sbu_mux->enable_gpio),
"unable to acquire enable gpio\n");
--
2.39.2
On Mon, Jun 03, 2024 at 10:35:58AM +0200, Francesco Dolcini wrote:
> From: Francesco Dolcini <francesco.dolcini@toradex.com>
>
> The enable gpio is not required when the SBU mux is used only for
> orientation, make it optional.
>
> Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com>
Reviewed-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>
> ---
> v2:
> - removed useless NULL check for optional enable gpio
> ---
> drivers/usb/typec/mux/gpio-sbu-mux.c | 6 +++++-
> 1 file changed, 5 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/usb/typec/mux/gpio-sbu-mux.c b/drivers/usb/typec/mux/gpio-sbu-mux.c
> index 374168482d36..8902102c05a8 100644
> --- a/drivers/usb/typec/mux/gpio-sbu-mux.c
> +++ b/drivers/usb/typec/mux/gpio-sbu-mux.c
> @@ -66,6 +66,9 @@ static int gpio_sbu_mux_set(struct typec_mux_dev *mux,
> {
> struct gpio_sbu_mux *sbu_mux = typec_mux_get_drvdata(mux);
>
> + if (!sbu_mux->enable_gpio)
> + return -EOPNOTSUPP;
> +
> mutex_lock(&sbu_mux->lock);
>
> switch (state->mode) {
> @@ -102,7 +105,8 @@ static int gpio_sbu_mux_probe(struct platform_device *pdev)
>
> mutex_init(&sbu_mux->lock);
>
> - sbu_mux->enable_gpio = devm_gpiod_get(dev, "enable", GPIOD_OUT_LOW);
> + sbu_mux->enable_gpio = devm_gpiod_get_optional(dev, "enable",
> + GPIOD_OUT_LOW);
> if (IS_ERR(sbu_mux->enable_gpio))
> return dev_err_probe(dev, PTR_ERR(sbu_mux->enable_gpio),
> "unable to acquire enable gpio\n");
> --
> 2.39.2
--
heikki
On Mon, Jun 03, 2024 at 10:35:58AM +0200, Francesco Dolcini wrote: > From: Francesco Dolcini <francesco.dolcini@toradex.com> > > The enable gpio is not required when the SBU mux is used only for > orientation, make it optional. > > Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com> > --- > v2: > - removed useless NULL check for optional enable gpio > --- > drivers/usb/typec/mux/gpio-sbu-mux.c | 6 +++++- > 1 file changed, 5 insertions(+), 1 deletion(-) > Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> -- With best wishes Dmitry
© 2016 - 2026 Red Hat, Inc.