diff options
Diffstat (limited to 'drivers/infiniband/hw/cxgb4/mem.c')
-rw-r--r-- | drivers/infiniband/hw/cxgb4/mem.c | 13 |
1 files changed, 3 insertions, 10 deletions
diff --git a/drivers/infiniband/hw/cxgb4/mem.c b/drivers/infiniband/hw/cxgb4/mem.c index 269373a62f22..0347eed4a167 100644 --- a/drivers/infiniband/hw/cxgb4/mem.c +++ b/drivers/infiniband/hw/cxgb4/mem.c | |||
@@ -71,7 +71,7 @@ static int write_adapter_mem(struct c4iw_rdev *rdev, u32 addr, u32 len, | |||
71 | if (i == (num_wqe-1)) { | 71 | if (i == (num_wqe-1)) { |
72 | req->wr.wr_hi = cpu_to_be32(FW_WR_OP(FW_ULPTX_WR) | | 72 | req->wr.wr_hi = cpu_to_be32(FW_WR_OP(FW_ULPTX_WR) | |
73 | FW_WR_COMPL(1)); | 73 | FW_WR_COMPL(1)); |
74 | req->wr.wr_lo = (__force __be64)&wr_wait; | 74 | req->wr.wr_lo = (__force __be64)(unsigned long) &wr_wait; |
75 | } else | 75 | } else |
76 | req->wr.wr_hi = cpu_to_be32(FW_WR_OP(FW_ULPTX_WR)); | 76 | req->wr.wr_hi = cpu_to_be32(FW_WR_OP(FW_ULPTX_WR)); |
77 | req->wr.wr_mid = cpu_to_be32( | 77 | req->wr.wr_mid = cpu_to_be32( |
@@ -103,14 +103,7 @@ static int write_adapter_mem(struct c4iw_rdev *rdev, u32 addr, u32 len, | |||
103 | len -= C4IW_MAX_INLINE_SIZE; | 103 | len -= C4IW_MAX_INLINE_SIZE; |
104 | } | 104 | } |
105 | 105 | ||
106 | wait_event_timeout(wr_wait.wait, wr_wait.done, C4IW_WR_TO); | 106 | ret = c4iw_wait_for_reply(rdev, &wr_wait, 0, 0, __func__); |
107 | if (!wr_wait.done) { | ||
108 | printk(KERN_ERR MOD "Device %s not responding!\n", | ||
109 | pci_name(rdev->lldi.pdev)); | ||
110 | rdev->flags = T4_FATAL_ERROR; | ||
111 | ret = -EIO; | ||
112 | } else | ||
113 | ret = wr_wait.ret; | ||
114 | return ret; | 107 | return ret; |
115 | } | 108 | } |
116 | 109 | ||
@@ -632,7 +625,7 @@ pbl_done: | |||
632 | mhp->attr.perms = c4iw_ib_to_tpt_access(acc); | 625 | mhp->attr.perms = c4iw_ib_to_tpt_access(acc); |
633 | mhp->attr.va_fbo = virt; | 626 | mhp->attr.va_fbo = virt; |
634 | mhp->attr.page_size = shift - 12; | 627 | mhp->attr.page_size = shift - 12; |
635 | mhp->attr.len = (u32) length; | 628 | mhp->attr.len = length; |
636 | 629 | ||
637 | err = register_mem(rhp, php, mhp, shift); | 630 | err = register_mem(rhp, php, mhp, shift); |
638 | if (err) | 631 | if (err) |