diff options
Diffstat (limited to 'drivers/serial/pmac_zilog.c')
-rw-r--r-- | drivers/serial/pmac_zilog.c | 17 |
1 files changed, 8 insertions, 9 deletions
diff --git a/drivers/serial/pmac_zilog.c b/drivers/serial/pmac_zilog.c index a3b99caf80e6..bf9809ed9c0b 100644 --- a/drivers/serial/pmac_zilog.c +++ b/drivers/serial/pmac_zilog.c | |||
@@ -204,8 +204,7 @@ static void pmz_maybe_update_regs(struct uart_pmac_port *uap) | |||
204 | } | 204 | } |
205 | } | 205 | } |
206 | 206 | ||
207 | static struct tty_struct *pmz_receive_chars(struct uart_pmac_port *uap, | 207 | static struct tty_struct *pmz_receive_chars(struct uart_pmac_port *uap) |
208 | struct pt_regs *regs) | ||
209 | { | 208 | { |
210 | struct tty_struct *tty = NULL; | 209 | struct tty_struct *tty = NULL; |
211 | unsigned char ch, r1, drop, error, flag; | 210 | unsigned char ch, r1, drop, error, flag; |
@@ -267,7 +266,7 @@ static struct tty_struct *pmz_receive_chars(struct uart_pmac_port *uap, | |||
267 | if (uap->port.sysrq) { | 266 | if (uap->port.sysrq) { |
268 | int swallow; | 267 | int swallow; |
269 | spin_unlock(&uap->port.lock); | 268 | spin_unlock(&uap->port.lock); |
270 | swallow = uart_handle_sysrq_char(&uap->port, ch, regs); | 269 | swallow = uart_handle_sysrq_char(&uap->port, ch); |
271 | spin_lock(&uap->port.lock); | 270 | spin_lock(&uap->port.lock); |
272 | if (swallow) | 271 | if (swallow) |
273 | goto next_char; | 272 | goto next_char; |
@@ -335,7 +334,7 @@ static struct tty_struct *pmz_receive_chars(struct uart_pmac_port *uap, | |||
335 | return tty; | 334 | return tty; |
336 | } | 335 | } |
337 | 336 | ||
338 | static void pmz_status_handle(struct uart_pmac_port *uap, struct pt_regs *regs) | 337 | static void pmz_status_handle(struct uart_pmac_port *uap) |
339 | { | 338 | { |
340 | unsigned char status; | 339 | unsigned char status; |
341 | 340 | ||
@@ -438,7 +437,7 @@ ack_tx_int: | |||
438 | } | 437 | } |
439 | 438 | ||
440 | /* Hrm... we register that twice, fixme later.... */ | 439 | /* Hrm... we register that twice, fixme later.... */ |
441 | static irqreturn_t pmz_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 440 | static irqreturn_t pmz_interrupt(int irq, void *dev_id) |
442 | { | 441 | { |
443 | struct uart_pmac_port *uap = dev_id; | 442 | struct uart_pmac_port *uap = dev_id; |
444 | struct uart_pmac_port *uap_a; | 443 | struct uart_pmac_port *uap_a; |
@@ -462,9 +461,9 @@ static irqreturn_t pmz_interrupt(int irq, void *dev_id, struct pt_regs *regs) | |||
462 | write_zsreg(uap_a, R0, RES_H_IUS); | 461 | write_zsreg(uap_a, R0, RES_H_IUS); |
463 | zssync(uap_a); | 462 | zssync(uap_a); |
464 | if (r3 & CHAEXT) | 463 | if (r3 & CHAEXT) |
465 | pmz_status_handle(uap_a, regs); | 464 | pmz_status_handle(uap_a); |
466 | if (r3 & CHARxIP) | 465 | if (r3 & CHARxIP) |
467 | tty = pmz_receive_chars(uap_a, regs); | 466 | tty = pmz_receive_chars(uap_a); |
468 | if (r3 & CHATxIP) | 467 | if (r3 & CHATxIP) |
469 | pmz_transmit_chars(uap_a); | 468 | pmz_transmit_chars(uap_a); |
470 | rc = IRQ_HANDLED; | 469 | rc = IRQ_HANDLED; |
@@ -482,9 +481,9 @@ static irqreturn_t pmz_interrupt(int irq, void *dev_id, struct pt_regs *regs) | |||
482 | write_zsreg(uap_b, R0, RES_H_IUS); | 481 | write_zsreg(uap_b, R0, RES_H_IUS); |
483 | zssync(uap_b); | 482 | zssync(uap_b); |
484 | if (r3 & CHBEXT) | 483 | if (r3 & CHBEXT) |
485 | pmz_status_handle(uap_b, regs); | 484 | pmz_status_handle(uap_b); |
486 | if (r3 & CHBRxIP) | 485 | if (r3 & CHBRxIP) |
487 | tty = pmz_receive_chars(uap_b, regs); | 486 | tty = pmz_receive_chars(uap_b); |
488 | if (r3 & CHBTxIP) | 487 | if (r3 & CHBTxIP) |
489 | pmz_transmit_chars(uap_b); | 488 | pmz_transmit_chars(uap_b); |
490 | rc = IRQ_HANDLED; | 489 | rc = IRQ_HANDLED; |