| .. | .. |
|---|
| 222 | 222 | |
|---|
| 223 | 223 | static void mtk8250_disable_intrs(struct uart_8250_port *up, int mask) |
|---|
| 224 | 224 | { |
|---|
| 225 | | - struct uart_port *port = &up->port; |
|---|
| 226 | | - unsigned int flags; |
|---|
| 227 | | - unsigned int ier; |
|---|
| 228 | | - bool is_console; |
|---|
| 229 | | - |
|---|
| 230 | | - is_console = uart_console(port); |
|---|
| 231 | | - |
|---|
| 232 | | - if (is_console) |
|---|
| 233 | | - console_atomic_lock(&flags); |
|---|
| 234 | | - |
|---|
| 235 | | - ier = serial_in(up, UART_IER); |
|---|
| 236 | | - serial_out(up, UART_IER, ier & (~mask)); |
|---|
| 237 | | - |
|---|
| 238 | | - if (is_console) |
|---|
| 239 | | - console_atomic_unlock(flags); |
|---|
| 225 | + serial_out(up, UART_IER, serial_in(up, UART_IER) & (~mask)); |
|---|
| 240 | 226 | } |
|---|
| 241 | 227 | |
|---|
| 242 | 228 | static void mtk8250_enable_intrs(struct uart_8250_port *up, int mask) |
|---|
| 243 | 229 | { |
|---|
| 244 | | - struct uart_port *port = &up->port; |
|---|
| 245 | | - unsigned int flags; |
|---|
| 246 | | - unsigned int ier; |
|---|
| 247 | | - |
|---|
| 248 | | - if (uart_console(port)) |
|---|
| 249 | | - console_atomic_lock(&flags); |
|---|
| 250 | | - |
|---|
| 251 | | - ier = serial_in(up, UART_IER); |
|---|
| 252 | | - serial_out(up, UART_IER, ier | mask); |
|---|
| 253 | | - |
|---|
| 254 | | - if (uart_console(port)) |
|---|
| 255 | | - console_atomic_unlock(flags); |
|---|
| 230 | + serial_out(up, UART_IER, serial_in(up, UART_IER) | mask); |
|---|
| 256 | 231 | } |
|---|
| 257 | 232 | |
|---|
| 258 | 233 | static void mtk8250_set_flow_ctrl(struct uart_8250_port *up, int mode) |
|---|