Skip to content

Commit

Permalink
serial/sirf: fixup for changes to pin control
Browse files Browse the repository at this point in the history
We changed the signature of the pin multiplexing functions to
handle any pin business, so fix up the Sirf driver to call this
new interface and rename some variables to make the semantics
understandable.

Cc: linux-serial@vger.kernel.org
Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Acked-by: Barry Song <Baohua.Song@csr.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
  • Loading branch information
Linus Walleij committed Feb 22, 2012
1 parent 77a5988 commit 5c9bdc3
Show file tree
Hide file tree
Showing 2 changed files with 11 additions and 11 deletions.
20 changes: 10 additions & 10 deletions drivers/tty/serial/sirfsoc_uart.c
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@
#include <linux/io.h>
#include <asm/irq.h>
#include <asm/mach/irq.h>
#include <linux/pinctrl/pinmux.h>
#include <linux/pinctrl/consumer.h>

#include "sirfsoc_uart.h"

Expand Down Expand Up @@ -673,12 +673,12 @@ int sirfsoc_uart_probe(struct platform_device *pdev)
port->irq = res->start;

if (sirfport->hw_flow_ctrl) {
sirfport->pmx = pinmux_get(&pdev->dev, NULL);
ret = IS_ERR(sirfport->pmx);
sirfport->p = pinctrl_get(&pdev->dev, NULL);
ret = IS_ERR(sirfport->p);
if (ret)
goto pmx_err;
goto pin_err;

pinmux_enable(sirfport->pmx);
pinctrl_enable(sirfport->p);
}

port->ops = &sirfsoc_uart_ops;
Expand All @@ -696,10 +696,10 @@ int sirfsoc_uart_probe(struct platform_device *pdev)
port_err:
platform_set_drvdata(pdev, NULL);
if (sirfport->hw_flow_ctrl) {
pinmux_disable(sirfport->pmx);
pinmux_put(sirfport->pmx);
pinctrl_disable(sirfport->p);
pinctrl_put(sirfport->p);
}
pmx_err:
pin_err:
irq_err:
devm_iounmap(&pdev->dev, port->membase);
err:
Expand All @@ -712,8 +712,8 @@ static int sirfsoc_uart_remove(struct platform_device *pdev)
struct uart_port *port = &sirfport->port;
platform_set_drvdata(pdev, NULL);
if (sirfport->hw_flow_ctrl) {
pinmux_disable(sirfport->pmx);
pinmux_put(sirfport->pmx);
pinctrl_disable(sirfport->p);
pinctrl_put(sirfport->p);
}
devm_iounmap(&pdev->dev, port->membase);
uart_remove_one_port(&sirfsoc_uart_drv, port);
Expand Down
2 changes: 1 addition & 1 deletion drivers/tty/serial/sirfsoc_uart.h
Original file line number Diff line number Diff line change
Expand Up @@ -162,7 +162,7 @@ struct sirfsoc_uart_port {
unsigned char ms_enabled;

struct uart_port port;
struct pinmux *pmx;
struct pinctrl *p;
};

/* Hardware Flow Control */
Expand Down

0 comments on commit 5c9bdc3

Please sign in to comment.