|
@@ -189,9 +189,6 @@ struct lsi_umts_dual {
|
|
|
#define SIERRA_NET_LSI_UMTS_DS_STATUS_LEN \
|
|
|
(SIERRA_NET_LSI_UMTS_DS_LEN - SIERRA_NET_LSI_COMMON_LEN)
|
|
|
|
|
|
-/* Forward definitions */
|
|
|
-static void sierra_sync_timer(unsigned long syncdata);
|
|
|
-
|
|
|
/* Our own net device operations structure */
|
|
|
static const struct net_device_ops sierra_net_device_ops = {
|
|
|
.ndo_open = usbnet_open,
|
|
@@ -475,8 +472,6 @@ static void sierra_net_dosync(struct usbnet *dev)
|
|
|
"Send SYNC failed, status %d\n", status);
|
|
|
|
|
|
/* Now, start a timer and make sure we get the Restart Indication */
|
|
|
- priv->sync_timer.function = sierra_sync_timer;
|
|
|
- priv->sync_timer.data = (unsigned long) dev;
|
|
|
priv->sync_timer.expires = jiffies + SIERRA_NET_SYNCDELAY;
|
|
|
add_timer(&priv->sync_timer);
|
|
|
}
|
|
@@ -593,9 +588,10 @@ static void sierra_net_defer_kevent(struct usbnet *dev, int work)
|
|
|
/*
|
|
|
* Sync Retransmit Timer Handler. On expiry, kick the work queue
|
|
|
*/
|
|
|
-static void sierra_sync_timer(unsigned long syncdata)
|
|
|
+static void sierra_sync_timer(struct timer_list *t)
|
|
|
{
|
|
|
- struct usbnet *dev = (struct usbnet *)syncdata;
|
|
|
+ struct sierra_net_data *priv = from_timer(priv, t, sync_timer);
|
|
|
+ struct usbnet *dev = priv->usbnet;
|
|
|
|
|
|
dev_dbg(&dev->udev->dev, "%s", __func__);
|
|
|
/* Kick the tasklet */
|
|
@@ -752,7 +748,7 @@ static int sierra_net_bind(struct usbnet *dev, struct usb_interface *intf)
|
|
|
INIT_WORK(&priv->sierra_net_kevent, sierra_net_kevent);
|
|
|
|
|
|
/* Only need to do this once */
|
|
|
- init_timer(&priv->sync_timer);
|
|
|
+ timer_setup(&priv->sync_timer, sierra_sync_timer, 0);
|
|
|
|
|
|
/* verify fw attributes */
|
|
|
status = sierra_net_get_fw_attr(dev, &fwattr);
|