summaryrefslogtreecommitdiff
path: root/drivers/infiniband/hw/qib/qib_sd7220.c
diff options
context:
space:
mode:
authorDoug Ledford <dledford@redhat.com>2017-10-18 20:12:09 +0300
committerDoug Ledford <dledford@redhat.com>2017-10-18 20:12:09 +0300
commit894b82c427d069a773e1d1417fe30bd31aa18801 (patch)
tree8b361de9085f7891b4a673064b55f34b17bccb1e /drivers/infiniband/hw/qib/qib_sd7220.c
parent754137a769ac8f13cd6c0e1bc4fc2fa768d3da63 (diff)
parenta9346abed52f08e3e0ceb66d51f527ea11698d3c (diff)
downloadlinux-894b82c427d069a773e1d1417fe30bd31aa18801.tar.xz
Merge branch 'timer_setup' into for-next
Conflicts: drivers/infiniband/hw/cxgb4/cm.c drivers/infiniband/hw/qib/qib_driver.c drivers/infiniband/hw/qib/qib_mad.c There were minor fixups needed in these files. Just minor context diffs due to patches from independent sources touching the same basic area. Signed-off-by: Doug Ledford <dledford@redhat.com>
Diffstat (limited to 'drivers/infiniband/hw/qib/qib_sd7220.c')
-rw-r--r--drivers/infiniband/hw/qib/qib_sd7220.c10
1 files changed, 4 insertions, 6 deletions
diff --git a/drivers/infiniband/hw/qib/qib_sd7220.c b/drivers/infiniband/hw/qib/qib_sd7220.c
index ad52f7ac620c..12caf3db8c34 100644
--- a/drivers/infiniband/hw/qib/qib_sd7220.c
+++ b/drivers/infiniband/hw/qib/qib_sd7220.c
@@ -1388,11 +1388,11 @@ module_param_named(relock_by_timer, qib_relock_by_timer, uint,
S_IWUSR | S_IRUGO);
MODULE_PARM_DESC(relock_by_timer, "Allow relock attempt if link not up");
-static void qib_run_relock(unsigned long opaque)
+static void qib_run_relock(struct timer_list *t)
{
- struct qib_devdata *dd = (struct qib_devdata *)opaque;
+ struct qib_chip_specific *cs = from_timer(cs, t, relock_timer);
+ struct qib_devdata *dd = cs->dd;
struct qib_pportdata *ppd = dd->pport;
- struct qib_chip_specific *cs = dd->cspec;
int timeoff;
/*
@@ -1438,9 +1438,7 @@ void set_7220_relock_poll(struct qib_devdata *dd, int ibup)
/* If timer has not yet been started, do so. */
if (!cs->relock_timer_active) {
cs->relock_timer_active = 1;
- init_timer(&cs->relock_timer);
- cs->relock_timer.function = qib_run_relock;
- cs->relock_timer.data = (unsigned long) dd;
+ timer_setup(&cs->relock_timer, qib_run_relock, 0);
cs->relock_interval = timeout;
cs->relock_timer.expires = jiffies + timeout;
add_timer(&cs->relock_timer);