serial/sirf: fixup for changes to pin control
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>
This commit is contained in:
parent
77a5988355
commit
5c9bdc3f52
|
@ -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"
|
||||
|
||||
|
@ -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;
|
||||
|
@ -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:
|
||||
|
@ -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);
|
||||
|
|
|
@ -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 */
|
||||
|
|
Loading…
Reference in New Issue