summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFrieder Schrempf <frieder.schrempf@kontron.de>2019-08-02 10:04:09 +0000
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2019-09-04 12:43:50 +0200
commite8b2a6187544e79fbc4863fe5cc746de8bba07ff (patch)
treea764f498f81b05e62072fa9a0cbf152eb3cbc1df
parent72169e4234d4cd3cd177d3021efde82bbdfa43e8 (diff)
downloadlinux-stable-e8b2a6187544e79fbc4863fe5cc746de8bba07ff.tar.gz
linux-stable-e8b2a6187544e79fbc4863fe5cc746de8bba07ff.tar.bz2
linux-stable-e8b2a6187544e79fbc4863fe5cc746de8bba07ff.zip
serial: mctrl_gpio: Avoid probe failures in case of missing gpiolib
If CONFIG_GPIOLIB is not enabled, mctrl_gpio_init() and mctrl_gpio_init_noauto() will currently return an error pointer with -ENOSYS. As the mctrl GPIOs are usually optional, drivers need to check for this condition to allow continue probing. To avoid the need for this check in each driver, we return NULL instead, as all the mctrl_gpio_*() functions are skipped anyway. We also adapt mctrl_gpio_to_gpiod() to be in line with this change. Reviewed-by: Fabio Estevam <festevam@gmail.com> Signed-off-by: Frieder Schrempf <frieder.schrempf@kontron.de> Reviewed-by: Uwe Kleine-Knig <u.kleine-koenig@pengutronix.de> Link: https://lore.kernel.org/r/20190802100349.8659-1-frieder.schrempf@kontron.de Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--drivers/tty/serial/serial_mctrl_gpio.h6
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/tty/serial/serial_mctrl_gpio.h b/drivers/tty/serial/serial_mctrl_gpio.h
index b7d3cca48ede..1b2ff503b2c2 100644
--- a/drivers/tty/serial/serial_mctrl_gpio.h
+++ b/drivers/tty/serial/serial_mctrl_gpio.h
@@ -114,19 +114,19 @@ static inline
struct gpio_desc *mctrl_gpio_to_gpiod(struct mctrl_gpios *gpios,
enum mctrl_gpio_idx gidx)
{
- return ERR_PTR(-ENOSYS);
+ return NULL;
}
static inline
struct mctrl_gpios *mctrl_gpio_init(struct uart_port *port, unsigned int idx)
{
- return ERR_PTR(-ENOSYS);
+ return NULL;
}
static inline
struct mctrl_gpios *mctrl_gpio_init_noauto(struct device *dev, unsigned int idx)
{
- return ERR_PTR(-ENOSYS);
+ return NULL;
}
static inline