aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/tty/serial/m32r_sio.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/tty/serial/m32r_sio.c')
-rw-r--r--drivers/tty/serial/m32r_sio.c14
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 */
514static void m32r_sio_timeout(unsigned long data) 510static 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 }