aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/mmc/card/sdio_uart.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/drivers/mmc/card/sdio_uart.c b/drivers/mmc/card/sdio_uart.c
index eeea84c309e6..78ad48718ab0 100644
--- a/drivers/mmc/card/sdio_uart.c
+++ b/drivers/mmc/card/sdio_uart.c
@@ -885,12 +885,14 @@ static void sdio_uart_set_termios(struct tty_struct *tty, struct ktermios *old_t
885 sdio_uart_release_func(port); 885 sdio_uart_release_func(port);
886} 886}
887 887
888static void sdio_uart_break_ctl(struct tty_struct *tty, int break_state) 888static int sdio_uart_break_ctl(struct tty_struct *tty, int break_state)
889{ 889{
890 struct sdio_uart_port *port = tty->driver_data; 890 struct sdio_uart_port *port = tty->driver_data;
891 int result;
891 892
892 if (sdio_uart_claim_func(port) != 0) 893 result = sdio_uart_claim_func(port);
893 return; 894 if (result != 0)
895 return result;
894 896
895 if (break_state == -1) 897 if (break_state == -1)
896 port->lcr |= UART_LCR_SBC; 898 port->lcr |= UART_LCR_SBC;
@@ -899,6 +901,7 @@ static void sdio_uart_break_ctl(struct tty_struct *tty, int break_state)
899 sdio_out(port, UART_LCR, port->lcr); 901 sdio_out(port, UART_LCR, port->lcr);
900 902
901 sdio_uart_release_func(port); 903 sdio_uart_release_func(port);
904 return 0;
902} 905}
903 906
904static int sdio_uart_tiocmget(struct tty_struct *tty, struct file *file) 907static int sdio_uart_tiocmget(struct tty_struct *tty, struct file *file)