|
@@ -93,7 +93,7 @@ unsigned qib_cc_table_size;
|
|
|
module_param_named(cc_table_size, qib_cc_table_size, uint, S_IRUGO);
|
|
|
MODULE_PARM_DESC(cc_table_size, "Congestion control table entries 0 (CCA disabled - default), min = 128, max = 1984");
|
|
|
|
|
|
-static void verify_interrupt(unsigned long);
|
|
|
+static void verify_interrupt(struct timer_list *);
|
|
|
|
|
|
static struct idr qib_unit_table;
|
|
|
u32 qib_cpulist_count;
|
|
@@ -233,8 +233,7 @@ int qib_init_pportdata(struct qib_pportdata *ppd, struct qib_devdata *dd,
|
|
|
spin_lock_init(&ppd->cc_shadow_lock);
|
|
|
init_waitqueue_head(&ppd->state_wait);
|
|
|
|
|
|
- setup_timer(&ppd->symerr_clear_timer, qib_clear_symerror_on_linkup,
|
|
|
- (unsigned long)ppd);
|
|
|
+ timer_setup(&ppd->symerr_clear_timer, qib_clear_symerror_on_linkup, 0);
|
|
|
|
|
|
ppd->qib_wq = NULL;
|
|
|
ppd->ibport_data.pmastats =
|
|
@@ -428,8 +427,7 @@ static int loadtime_init(struct qib_devdata *dd)
|
|
|
qib_get_eeprom_info(dd);
|
|
|
|
|
|
/* setup time (don't start yet) to verify we got interrupt */
|
|
|
- setup_timer(&dd->intrchk_timer, verify_interrupt,
|
|
|
- (unsigned long)dd);
|
|
|
+ timer_setup(&dd->intrchk_timer, verify_interrupt, 0);
|
|
|
done:
|
|
|
return ret;
|
|
|
}
|
|
@@ -493,9 +491,9 @@ static void enable_chip(struct qib_devdata *dd)
|
|
|
}
|
|
|
}
|
|
|
|
|
|
-static void verify_interrupt(unsigned long opaque)
|
|
|
+static void verify_interrupt(struct timer_list *t)
|
|
|
{
|
|
|
- struct qib_devdata *dd = (struct qib_devdata *) opaque;
|
|
|
+ struct qib_devdata *dd = from_timer(dd, t, intrchk_timer);
|
|
|
u64 int_counter;
|
|
|
|
|
|
if (!dd)
|
|
@@ -753,8 +751,7 @@ done:
|
|
|
continue;
|
|
|
if (dd->flags & QIB_HAS_SEND_DMA)
|
|
|
ret = qib_setup_sdma(ppd);
|
|
|
- setup_timer(&ppd->hol_timer, qib_hol_event,
|
|
|
- (unsigned long)ppd);
|
|
|
+ timer_setup(&ppd->hol_timer, qib_hol_event, 0);
|
|
|
ppd->hol_state = QIB_HOL_UP;
|
|
|
}
|
|
|
|
|
@@ -815,23 +812,19 @@ static void qib_stop_timers(struct qib_devdata *dd)
|
|
|
struct qib_pportdata *ppd;
|
|
|
int pidx;
|
|
|
|
|
|
- if (dd->stats_timer.data) {
|
|
|
+ if (dd->stats_timer.function)
|
|
|
del_timer_sync(&dd->stats_timer);
|
|
|
- dd->stats_timer.data = 0;
|
|
|
- }
|
|
|
- if (dd->intrchk_timer.data) {
|
|
|
+ if (dd->intrchk_timer.function)
|
|
|
del_timer_sync(&dd->intrchk_timer);
|
|
|
- dd->intrchk_timer.data = 0;
|
|
|
- }
|
|
|
for (pidx = 0; pidx < dd->num_pports; ++pidx) {
|
|
|
ppd = dd->pport + pidx;
|
|
|
- if (ppd->hol_timer.data)
|
|
|
+ if (ppd->hol_timer.function)
|
|
|
del_timer_sync(&ppd->hol_timer);
|
|
|
- if (ppd->led_override_timer.data) {
|
|
|
+ if (ppd->led_override_timer.function) {
|
|
|
del_timer_sync(&ppd->led_override_timer);
|
|
|
atomic_set(&ppd->led_override_timer_active, 0);
|
|
|
}
|
|
|
- if (ppd->symerr_clear_timer.data)
|
|
|
+ if (ppd->symerr_clear_timer.function)
|
|
|
del_timer_sync(&ppd->symerr_clear_timer);
|
|
|
}
|
|
|
}
|