INIT_WORK(&hw->link_bh, prism2sta_processing_defer);
        INIT_WORK(&hw->usb_work, hfa384x_usb_defer);
 
-       init_timer(&hw->throttle);
-       hw->throttle.function = hfa384x_usb_throttlefn;
-       hw->throttle.data = (unsigned long)hw;
+       setup_timer(&hw->throttle, hfa384x_usb_throttlefn, (unsigned long)hw);
 
-       init_timer(&hw->resptimer);
-       hw->resptimer.function = hfa384x_usbctlx_resptimerfn;
-       hw->resptimer.data = (unsigned long)hw;
+       setup_timer(&hw->resptimer, hfa384x_usbctlx_resptimerfn,
+                   (unsigned long)hw);
 
-       init_timer(&hw->reqtimer);
-       hw->reqtimer.function = hfa384x_usbctlx_reqtimerfn;
-       hw->reqtimer.data = (unsigned long)hw;
+       setup_timer(&hw->reqtimer, hfa384x_usbctlx_reqtimerfn,
+                   (unsigned long)hw);
 
        usb_init_urb(&hw->rx_urb);
        usb_init_urb(&hw->tx_urb);
        hw->state = HFA384x_STATE_INIT;
 
        INIT_WORK(&hw->commsqual_bh, prism2sta_commsqual_defer);
-       init_timer(&hw->commsqual_timer);
-       hw->commsqual_timer.data = (unsigned long)hw;
-       hw->commsqual_timer.function = prism2sta_commsqual_timer;
+       setup_timer(&hw->commsqual_timer, prism2sta_commsqual_timer,
+                   (unsigned long)hw);
 }
 
 /*----------------------------------------------------------------