On Wed, May 28, 2014 at 12:45:50PM -0700, Greg Kroah-Hartman wrote: > On Tue, May 13, 2014 at 08:20:43PM +0200, Richard Genoud wrote: > > This patch add some helpers to control modem lines (CTS/RTS/DSR...) via > > GPIO. > > This will be useful for many boards which have a serial controller that > > only handle CTS/RTS pins (or even just RX/TX). > > > > Signed-off-by: Richard Genoud <richard.genoud@xxxxxxxxx> > > Tested-by: Yegor Yefremov <yegorslists@xxxxxxxxxxxxxx> > > --- > > Documentation/serial/driver | 25 ++++++ > > drivers/tty/serial/Kconfig | 3 + > > drivers/tty/serial/Makefile | 3 + > > drivers/tty/serial/serial_mctrl_gpio.c | 143 ++++++++++++++++++++++++++++++++ > > drivers/tty/serial/serial_mctrl_gpio.h | 110 ++++++++++++++++++++++++ > > 5 files changed, 284 insertions(+) > > create mode 100644 drivers/tty/serial/serial_mctrl_gpio.c > > create mode 100644 drivers/tty/serial/serial_mctrl_gpio.h > > > > diff --git a/Documentation/serial/driver b/Documentation/serial/driver > > index c3a7689..3bba1ae 100644 > > --- a/Documentation/serial/driver > > +++ b/Documentation/serial/driver > > @@ -429,3 +429,28 @@ thus: > > struct uart_port port; > > int my_stuff; > > }; > > + > > +Modem control lines via GPIO > > +---------------------------- > > + > > +Some helpers are provided in order to set/get modem control lines via GPIO. > > + > > +mctrl_gpio_init(dev, idx): > > + This will get the {cts,rts,...}-gpios from device tree if they are > > + present and request them, set direction etc, and return an > > + allocated structure. devm_* functions are used, so there's no need > > + to call mctrl_gpio_free(). > > + > > +mctrl_gpio_free(dev, gpios): > > + This will free the requested gpios in mctrl_gpio_init(). > > + As devm_* function are used, there's generally no need to call > > + this function. > > + > > +mctrl_gpio_to_gpiod(gpios, gidx) > > + This returns the gpio structure associated to the modem line index. > > + > > +mctrl_gpio_set(gpios, mctrl): > > + This will sets the gpios according to the mctrl state. > > + > > +mctrl_gpio_get(gpios, mctrl): > > + This will update mctrl with the gpios values. > > diff --git a/drivers/tty/serial/Kconfig b/drivers/tty/serial/Kconfig > > index 5d9b01a..95afd31 100644 > > --- a/drivers/tty/serial/Kconfig > > +++ b/drivers/tty/serial/Kconfig > > @@ -1510,4 +1510,7 @@ config SERIAL_ST_ASC_CONSOLE > > > > endmenu > > > > +config SERIAL_MCTRL_GPIO > > + tristate > > Why is this added here? Who is going to use it? Ah, the next patch does, nevermind... -- To unsubscribe from this list: send the line "unsubscribe linux-serial" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html