Re: [PATCH] serial: st-asc: Use new GPIOD API to obtain RTS pin

From: Lee Jones
Date: Mon Feb 13 2017 - 04:59:37 EST


On Thu, 09 Feb 2017, Greg KH wrote:

> On Thu, Feb 09, 2017 at 08:21:50AM +0000, Lee Jones wrote:
> > On Wed, 08 Feb 2017, Greg KH wrote:
> >
> > > On Wed, Feb 08, 2017 at 09:24:25AM +0000, Lee Jones wrote:
> > > > The commits mentioned below adapt the GPIO API to allow more information
> > > > to be passed directly through devm_get_gpiod_from_child() in the first
> > > > instance. This facilitates the removal of subsequent calls, such as
> > > > gpiod_direction_output(). This patch firstly moves to utilise the new
> > > > API and secondly removes the now superfluous call do set the direction.
> > > >
> > > > Fixes: a264d10ff45c ("gpiolib: Convert fwnode_get_named_gpiod() to configure GPIO")
> > > > Fixes: b2987d7438e0 ("gpio: Pass GPIO label down to gpiod_request")
> > > > Fixes: 4b0947974e59 ("gpio: Rename devm_get_gpiod_from_child()")
> > > > Reported-by: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx>
> > > > Suggested-by: Boris Brezillon <boris.brezillon@xxxxxxxxxxxxxxxxxx>
> > > > Signed-off-by: Lee Jones <lee.jones@xxxxxxxxxx>
> > > > ---
> > > > drivers/tty/serial/st-asc.c | 11 ++++++-----
> > > > 1 file changed, 6 insertions(+), 5 deletions(-)
> > > >
> > > > diff --git a/drivers/tty/serial/st-asc.c b/drivers/tty/serial/st-asc.c
> > > > index bcf1d33..c334bcc 100644
> > > > --- a/drivers/tty/serial/st-asc.c
> > > > +++ b/drivers/tty/serial/st-asc.c
> > > > @@ -575,12 +575,13 @@ static void asc_set_termios(struct uart_port *port, struct ktermios *termios,
> > > > pinctrl_select_state(ascport->pinctrl,
> > > > ascport->states[NO_HW_FLOWCTRL]);
> > > >
> > > > - gpiod = devm_get_gpiod_from_child(port->dev, "rts",
> > > > - &np->fwnode);
> > > > - if (!IS_ERR(gpiod)) {
> > > > - gpiod_direction_output(gpiod, 0);
> > > > + gpiod = devm_fwnode_get_gpiod_from_child(port->dev,
> > > > + "rts",
> > > > + &np->fwnode,
> > > > + GPIOD_OUT_LOW,
> > > > + np->name);
> > >
> > > I can't apply this :(
> > >
> > > Usually, when you move apis around, you add it, then convert it, wait a
> > > kernel release, then remove the old one. That allows for issues like
> > > this when new code is added in one maintainer's branch but not yours.
> > >
> > > So how about reverting your "drop the function" patch and then wait for
> > > -rc2 to really remove it?
> >
> > I assume this is a question for LinusW?
>
> It's for whom ever is causing this breakage by removing an api in this
> manner.

+1

--
Lee Jones
Linaro STMicroelectronics Landing Team Lead
Linaro.org â Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog