diff options
Diffstat (limited to 'drivers/tty/serial/m32r_sio.c')
-rw-r--r-- | drivers/tty/serial/m32r_sio.c | 14 |
1 files changed, 4 insertions, 10 deletions
diff --git a/drivers/tty/serial/m32r_sio.c b/drivers/tty/serial/m32r_sio.c index 5b3bd9511993..7b83a8aab495 100644 --- a/drivers/tty/serial/m32r_sio.c +++ b/drivers/tty/serial/m32r_sio.c | |||
@@ -1,3 +1,4 @@ | |||
1 | // SPDX-License-Identifier: GPL-2.0+ | ||
1 | /* | 2 | /* |
2 | * m32r_sio.c | 3 | * m32r_sio.c |
3 | * | 4 | * |
@@ -8,11 +9,6 @@ | |||
8 | * | 9 | * |
9 | * Copyright (C) 2001 Russell King. | 10 | * Copyright (C) 2001 Russell King. |
10 | * Copyright (C) 2004 Hirokazu Takata <takata at linux-m32r.org> | 11 | * Copyright (C) 2004 Hirokazu Takata <takata at linux-m32r.org> |
11 | * | ||
12 | * This program is free software; you can redistribute it and/or modify | ||
13 | * it under the terms of the GNU General Public License as published by | ||
14 | * the Free Software Foundation; either version 2 of the License, or | ||
15 | * (at your option) any later version. | ||
16 | */ | 12 | */ |
17 | 13 | ||
18 | /* | 14 | /* |
@@ -511,9 +507,9 @@ static void serial_unlink_irq_chain(struct uart_sio_port *up) | |||
511 | /* | 507 | /* |
512 | * This function is used to handle ports that do not have an interrupt. | 508 | * This function is used to handle ports that do not have an interrupt. |
513 | */ | 509 | */ |
514 | static void m32r_sio_timeout(unsigned long data) | 510 | static void m32r_sio_timeout(struct timer_list *t) |
515 | { | 511 | { |
516 | struct uart_sio_port *up = (struct uart_sio_port *)data; | 512 | struct uart_sio_port *up = from_timer(up, t, timer); |
517 | unsigned int timeout; | 513 | unsigned int timeout; |
518 | unsigned int sts; | 514 | unsigned int sts; |
519 | 515 | ||
@@ -576,7 +572,6 @@ static int m32r_sio_startup(struct uart_port *port) | |||
576 | 572 | ||
577 | timeout = timeout > 6 ? (timeout / 2 - 2) : 1; | 573 | timeout = timeout > 6 ? (timeout / 2 - 2) : 1; |
578 | 574 | ||
579 | up->timer.data = (unsigned long)up; | ||
580 | mod_timer(&up->timer, jiffies + timeout); | 575 | mod_timer(&up->timer, jiffies + timeout); |
581 | } else { | 576 | } else { |
582 | retval = serial_link_irq_chain(up); | 577 | retval = serial_link_irq_chain(up); |
@@ -907,8 +902,7 @@ static void __init m32r_sio_register_ports(struct uart_driver *drv) | |||
907 | 902 | ||
908 | up->port.line = i; | 903 | up->port.line = i; |
909 | up->port.ops = &m32r_sio_pops; | 904 | up->port.ops = &m32r_sio_pops; |
910 | init_timer(&up->timer); | 905 | timer_setup(&up->timer, m32r_sio_timeout, 0); |
911 | up->timer.function = m32r_sio_timeout; | ||
912 | 906 | ||
913 | uart_add_one_port(drv, &up->port); | 907 | uart_add_one_port(drv, &up->port); |
914 | } | 908 | } |