diff options
| -rw-r--r-- | drivers/mmc/card/sdio_uart.c | 9 |
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 | ||
| 888 | static void sdio_uart_break_ctl(struct tty_struct *tty, int break_state) | 888 | static 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 | ||
| 904 | static int sdio_uart_tiocmget(struct tty_struct *tty, struct file *file) | 907 | static int sdio_uart_tiocmget(struct tty_struct *tty, struct file *file) |
