On Thu, Jul 27, 2017 at 4:01 PM, Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx> wrote: > On Thu, 2017-07-27 at 15:17 +0200, yegorslists@xxxxxxxxxxxxxx wrote: >> From: Yegor Yefremov <yegorslists@xxxxxxxxxxxxxx> >> >> GPIOs specified for serial port can be used either as GPIO driven >> MCTRL >> or as a wakeup-source. Use the latter property to abort the MCTRL >> initialization. > > Please, elaborate on a choice of error code for this (-ENOSYS). Something like this: Return -ENOSYS as this would just skip mctrl initialization in the case of wakeup source usage and not disable the port completely due to failed serial8250_register_8250_port(). Yegor >> >> Cc: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx> > > Suggested-by: I suppose. > > I dunno about documentation part for this property, I leave it for DT > people to decide. Below part looks good to me. > >> Signed-off-by: Yegor Yefremov <yegorslists@xxxxxxxxxxxxxx> >> --- >> drivers/tty/serial/serial_mctrl_gpio.c | 4 ++++ >> 1 file changed, 4 insertions(+) >> >> diff --git a/drivers/tty/serial/serial_mctrl_gpio.c >> b/drivers/tty/serial/serial_mctrl_gpio.c >> index d2da6aa..dce661c 100644 >> --- a/drivers/tty/serial/serial_mctrl_gpio.c >> +++ b/drivers/tty/serial/serial_mctrl_gpio.c >> @@ -19,6 +19,7 @@ >> #include <linux/irq.h> >> #include <linux/gpio/consumer.h> >> #include <linux/termios.h> >> +#include <linux/property.h> >> #include <linux/serial_core.h> >> #include <linux/module.h> >> >> @@ -118,6 +119,9 @@ struct mctrl_gpios *mctrl_gpio_init_noauto(struct >> device *dev, unsigned int idx) >> struct mctrl_gpios *gpios; >> enum mctrl_gpio_idx i; >> >> + if (device_property_present(dev, "wakeup-source")) >> + return ERR_PTR(-ENOSYS); >> + >> gpios = devm_kzalloc(dev, sizeof(*gpios), GFP_KERNEL); >> if (!gpios) >> return ERR_PTR(-ENOMEM); > > -- > Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx> > Intel Finland Oy -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html