aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/serial/amba-pl010.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/serial/amba-pl010.c')
-rw-r--r--drivers/serial/amba-pl010.c15
1 files changed, 3 insertions, 12 deletions
diff --git a/drivers/serial/amba-pl010.c b/drivers/serial/amba-pl010.c
index 7311d8487c96..4213fabc62bf 100644
--- a/drivers/serial/amba-pl010.c
+++ b/drivers/serial/amba-pl010.c
@@ -111,12 +111,7 @@ static void pl010_enable_ms(struct uart_port *port)
111 writel(cr, port->membase + UART010_CR); 111 writel(cr, port->membase + UART010_CR);
112} 112}
113 113
114static void 114static void pl010_rx_chars(struct uart_port *port)
115#ifdef SUPPORT_SYSRQ
116pl010_rx_chars(struct uart_port *port, struct pt_regs *regs)
117#else
118pl010_rx_chars(struct uart_port *port)
119#endif
120{ 115{
121 struct tty_struct *tty = port->info->tty; 116 struct tty_struct *tty = port->info->tty;
122 unsigned int status, ch, flag, rsr, max_count = 256; 117 unsigned int status, ch, flag, rsr, max_count = 256;
@@ -156,7 +151,7 @@ pl010_rx_chars(struct uart_port *port)
156 flag = TTY_FRAME; 151 flag = TTY_FRAME;
157 } 152 }
158 153
159 if (uart_handle_sysrq_char(port, ch, regs)) 154 if (uart_handle_sysrq_char(port, ch))
160 goto ignore_char; 155 goto ignore_char;
161 156
162 uart_insert_char(port, rsr, UART01x_RSR_OE, ch, flag); 157 uart_insert_char(port, rsr, UART01x_RSR_OE, ch, flag);
@@ -227,7 +222,7 @@ static void pl010_modem_status(struct uart_port *port)
227 wake_up_interruptible(&uap->port.info->delta_msr_wait); 222 wake_up_interruptible(&uap->port.info->delta_msr_wait);
228} 223}
229 224
230static irqreturn_t pl010_int(int irq, void *dev_id, struct pt_regs *regs) 225static irqreturn_t pl010_int(int irq, void *dev_id)
231{ 226{
232 struct uart_port *port = dev_id; 227 struct uart_port *port = dev_id;
233 unsigned int status, pass_counter = AMBA_ISR_PASS_LIMIT; 228 unsigned int status, pass_counter = AMBA_ISR_PASS_LIMIT;
@@ -239,11 +234,7 @@ static irqreturn_t pl010_int(int irq, void *dev_id, struct pt_regs *regs)
239 if (status) { 234 if (status) {
240 do { 235 do {
241 if (status & (UART010_IIR_RTIS | UART010_IIR_RIS)) 236 if (status & (UART010_IIR_RTIS | UART010_IIR_RIS))
242#ifdef SUPPORT_SYSRQ
243 pl010_rx_chars(port, regs);
244#else
245 pl010_rx_chars(port); 237 pl010_rx_chars(port);
246#endif
247 if (status & UART010_IIR_MIS) 238 if (status & UART010_IIR_MIS)
248 pl010_modem_status(port); 239 pl010_modem_status(port);
249 if (status & UART010_IIR_TIS) 240 if (status & UART010_IIR_TIS)