aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/mmc
diff options
context:
space:
mode:
authorAlan Cox <alan@linux.intel.com>2009-11-30 08:16:30 -0500
committerGreg Kroah-Hartman <gregkh@suse.de>2009-12-11 18:18:06 -0500
commit1f100b323d19469b06a63ccd6130ed71760145cc (patch)
treede475d8906cefed5e8146ad82403e52ed9399a76 /drivers/mmc
parent4b3b49bb77eddb540e7c69e2129f5334cf713bf8 (diff)
tty: sdio_uart: Fix the locking on "func" for new code
The new dtr_rts function didn't take the port->func lock as it should so add use of the lock there. Signed-off-by: Alan Cox <alan@linux.intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/mmc')
-rw-r--r--drivers/mmc/card/sdio_uart.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/mmc/card/sdio_uart.c b/drivers/mmc/card/sdio_uart.c
index 2a13db54ffc4..f53755533e7e 100644
--- a/drivers/mmc/card/sdio_uart.c
+++ b/drivers/mmc/card/sdio_uart.c
@@ -603,10 +603,14 @@ static void uart_dtr_rts(struct tty_port *tport, int onoff)
603{ 603{
604 struct sdio_uart_port *port = 604 struct sdio_uart_port *port =
605 container_of(tport, struct sdio_uart_port, port); 605 container_of(tport, struct sdio_uart_port, port);
606 int ret = sdio_uart_claim_func(port);
607 if (ret)
608 return;
606 if (onoff == 0) 609 if (onoff == 0)
607 sdio_uart_clear_mctrl(port, TIOCM_DTR | TIOCM_RTS); 610 sdio_uart_clear_mctrl(port, TIOCM_DTR | TIOCM_RTS);
608 else 611 else
609 sdio_uart_set_mctrl(port, TIOCM_DTR | TIOCM_RTS); 612 sdio_uart_set_mctrl(port, TIOCM_DTR | TIOCM_RTS);
613 sdio_uart_release_func(port);
610} 614}
611 615
612/** 616/**