From: Kees Cook Date: Tue, 24 Oct 2017 09:59:56 +0000 (-0700) Subject: tty/serial: altera_uart: Convert timers to use timer_setup() X-Git-Tag: v4.15-rc1~141^2~31 X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=ad0cda7a90f26970d65163095c5da39f541921bc;p=linux.git tty/serial: altera_uart: Convert timers to use timer_setup() In preparation for unconditionally passing the struct timer_list pointer to all timer callbacks, switch to using the new timer_setup() and from_timer() to pass the timer pointer explicitly. Cc: Tobias Klauser Cc: Jiri Slaby Cc: linux-serial@vger.kernel.org Cc: nios2-dev@lists.rocketboards.org Signed-off-by: Kees Cook Acked-by: Tobias Klauser Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/tty/serial/altera_uart.c b/drivers/tty/serial/altera_uart.c index 3e4b717670d7..a0360e640837 100644 --- a/drivers/tty/serial/altera_uart.c +++ b/drivers/tty/serial/altera_uart.c @@ -288,10 +288,10 @@ static irqreturn_t altera_uart_interrupt(int irq, void *data) return IRQ_RETVAL(isr); } -static void altera_uart_timer(unsigned long data) +static void altera_uart_timer(struct timer_list *t) { - struct uart_port *port = (void *)data; - struct altera_uart *pp = container_of(port, struct altera_uart, port); + struct altera_uart *pp = from_timer(pp, t, tmr); + struct uart_port *port = &pp->port; altera_uart_interrupt(0, port); mod_timer(&pp->tmr, jiffies + uart_poll_timeout(port)); @@ -314,7 +314,7 @@ static int altera_uart_startup(struct uart_port *port) int ret; if (!port->irq) { - setup_timer(&pp->tmr, altera_uart_timer, (unsigned long)port); + timer_setup(&pp->tmr, altera_uart_timer, 0); mod_timer(&pp->tmr, jiffies + uart_poll_timeout(port)); return 0; }