diff options
Diffstat (limited to 'drivers/char/pcmcia/synclink_cs.c')
-rw-r--r-- | drivers/char/pcmcia/synclink_cs.c | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/drivers/char/pcmcia/synclink_cs.c b/drivers/char/pcmcia/synclink_cs.c index 4ab2c98f978c..8d025e9b5bce 100644 --- a/drivers/char/pcmcia/synclink_cs.c +++ b/drivers/char/pcmcia/synclink_cs.c | |||
@@ -1361,9 +1361,7 @@ static int startup(MGSLPC_INFO * info) | |||
1361 | 1361 | ||
1362 | memset(&info->icount, 0, sizeof(info->icount)); | 1362 | memset(&info->icount, 0, sizeof(info->icount)); |
1363 | 1363 | ||
1364 | init_timer(&info->tx_timer); | 1364 | setup_timer(&info->tx_timer, tx_timeout, (unsigned long)info); |
1365 | info->tx_timer.data = (unsigned long)info; | ||
1366 | info->tx_timer.function = tx_timeout; | ||
1367 | 1365 | ||
1368 | /* Allocate and claim adapter resources */ | 1366 | /* Allocate and claim adapter resources */ |
1369 | retval = claim_resources(info); | 1367 | retval = claim_resources(info); |
@@ -1408,7 +1406,7 @@ static void shutdown(MGSLPC_INFO * info) | |||
1408 | wake_up_interruptible(&info->status_event_wait_q); | 1406 | wake_up_interruptible(&info->status_event_wait_q); |
1409 | wake_up_interruptible(&info->event_wait_q); | 1407 | wake_up_interruptible(&info->event_wait_q); |
1410 | 1408 | ||
1411 | del_timer(&info->tx_timer); | 1409 | del_timer_sync(&info->tx_timer); |
1412 | 1410 | ||
1413 | if (info->tx_buf) { | 1411 | if (info->tx_buf) { |
1414 | free_page((unsigned long) info->tx_buf); | 1412 | free_page((unsigned long) info->tx_buf); |
@@ -3549,8 +3547,8 @@ static void tx_start(MGSLPC_INFO *info) | |||
3549 | } else { | 3547 | } else { |
3550 | info->tx_active = 1; | 3548 | info->tx_active = 1; |
3551 | tx_ready(info); | 3549 | tx_ready(info); |
3552 | info->tx_timer.expires = jiffies + msecs_to_jiffies(5000); | 3550 | mod_timer(&info->tx_timer, jiffies + |
3553 | add_timer(&info->tx_timer); | 3551 | msecs_to_jiffies(5000)); |
3554 | } | 3552 | } |
3555 | } | 3553 | } |
3556 | 3554 | ||