Use the timer API function setup_timer instead of structure field
assignments to initialize a timer.

A simplified version of the Coccinelle semantic patch that performs
this transformation is as follows:

@change@
expression e1, e2, e3, e4, a, b;
@@

-init_timer(&e1);
+setup_timer(&e1, a, b);

... when != a = e2
    when != b = e3

-e1.function = a;
... when != b = e4
-e1.data = b;

Signed-off-by: Vaishali Thakkar <vthakkar1...@gmail.com>
---
 drivers/usb/serial/mos7840.c | 11 ++++-------
 1 file changed, 4 insertions(+), 7 deletions(-)

diff --git a/drivers/usb/serial/mos7840.c b/drivers/usb/serial/mos7840.c
index e4473a9..8ac9b55 100644
--- a/drivers/usb/serial/mos7840.c
+++ b/drivers/usb/serial/mos7840.c
@@ -2301,17 +2301,14 @@ static int mos7840_port_probe(struct usb_serial_port 
*port)
                        goto error;
                }
 
-               init_timer(&mos7840_port->led_timer1);
-               mos7840_port->led_timer1.function = mos7840_led_off;
+               setup_timer(&mos7840_port->led_timer1, mos7840_led_off,
+                           (unsigned long)mos7840_port);
                mos7840_port->led_timer1.expires =
                        jiffies + msecs_to_jiffies(LED_ON_MS);
-               mos7840_port->led_timer1.data = (unsigned long)mos7840_port;
-
-               init_timer(&mos7840_port->led_timer2);
-               mos7840_port->led_timer2.function = mos7840_led_flag_off;
+               setup_timer(&mos7840_port->led_timer2, mos7840_led_flag_off,
+                           (unsigned long)mos7840_port);
                mos7840_port->led_timer2.expires =
                        jiffies + msecs_to_jiffies(LED_OFF_MS);
-               mos7840_port->led_timer2.data = (unsigned long)mos7840_port;
 
                /* Turn off LED */
                mos7840_set_led_sync(port, MODEM_CONTROL_REGISTER, 0x0300);
-- 
1.9.1

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to