diff options
author | Kumar Sanghvi <kumaras@chelsio.com> | 2011-09-25 10:47:45 -0400 |
---|---|---|
committer | Roland Dreier <roland@purestorage.com> | 2011-10-06 12:39:01 -0400 |
commit | 56da00fc92e6f227874bba36f127ffc8847ee1f8 (patch) | |
tree | fd52112c58b541ad820b48c5001022f7e62f265d /drivers/infiniband | |
parent | 3ebeebc38b4b13384aba97f2e4acd6b48d47a65c (diff) |
RDMA/{amso1100,cxgb3}: Minimal MPAv2 support
As part of MPAv2 Enhanced RDMA Negotiation, pass max supported ird/ord
values upwards for the time being in iw_cxgb3 and amso1100.
Signed-off-by: Kumar Sanghvi <kumaras@chelsio.com>
Reviewed-by: Steve Wise <swise@opengridcomputing.com>
Signed-off-by: Roland Dreier <roland@purestorage.com>
Diffstat (limited to 'drivers/infiniband')
-rw-r--r-- | drivers/infiniband/hw/amso1100/c2_ae.c | 5 | ||||
-rw-r--r-- | drivers/infiniband/hw/amso1100/c2_intr.c | 5 | ||||
-rw-r--r-- | drivers/infiniband/hw/cxgb3/iwch_cm.c | 10 |
3 files changed, 20 insertions, 0 deletions
diff --git a/drivers/infiniband/hw/amso1100/c2_ae.c b/drivers/infiniband/hw/amso1100/c2_ae.c index 24f9e3a90e8e..32d34e88d5cf 100644 --- a/drivers/infiniband/hw/amso1100/c2_ae.c +++ b/drivers/infiniband/hw/amso1100/c2_ae.c | |||
@@ -288,6 +288,11 @@ void c2_ae_event(struct c2_dev *c2dev, u32 mq_index) | |||
288 | cm_event.private_data_len = | 288 | cm_event.private_data_len = |
289 | be32_to_cpu(req->private_data_length); | 289 | be32_to_cpu(req->private_data_length); |
290 | cm_event.private_data = req->private_data; | 290 | cm_event.private_data = req->private_data; |
291 | /* | ||
292 | * Until ird/ord negotiation via MPAv2 support is added, send | ||
293 | * max supported values | ||
294 | */ | ||
295 | cm_event.ird = cm_event.ord = 128; | ||
291 | 296 | ||
292 | if (cm_id->event_handler) | 297 | if (cm_id->event_handler) |
293 | cm_id->event_handler(cm_id, &cm_event); | 298 | cm_id->event_handler(cm_id, &cm_event); |
diff --git a/drivers/infiniband/hw/amso1100/c2_intr.c b/drivers/infiniband/hw/amso1100/c2_intr.c index 0ebe4e806b86..8951db4ae29d 100644 --- a/drivers/infiniband/hw/amso1100/c2_intr.c +++ b/drivers/infiniband/hw/amso1100/c2_intr.c | |||
@@ -183,6 +183,11 @@ static void handle_vq(struct c2_dev *c2dev, u32 mq_index) | |||
183 | case IW_CM_EVENT_ESTABLISHED: | 183 | case IW_CM_EVENT_ESTABLISHED: |
184 | c2_set_qp_state(req->qp, | 184 | c2_set_qp_state(req->qp, |
185 | C2_QP_STATE_RTS); | 185 | C2_QP_STATE_RTS); |
186 | /* | ||
187 | * Until ird/ord negotiation via MPAv2 support is added, send | ||
188 | * max supported values | ||
189 | */ | ||
190 | cm_event.ird = cm_event.ord = 128; | ||
186 | case IW_CM_EVENT_CLOSE: | 191 | case IW_CM_EVENT_CLOSE: |
187 | 192 | ||
188 | /* | 193 | /* |
diff --git a/drivers/infiniband/hw/cxgb3/iwch_cm.c b/drivers/infiniband/hw/cxgb3/iwch_cm.c index 6cd642aaa4de..de6d0774e609 100644 --- a/drivers/infiniband/hw/cxgb3/iwch_cm.c +++ b/drivers/infiniband/hw/cxgb3/iwch_cm.c | |||
@@ -753,6 +753,11 @@ static void connect_request_upcall(struct iwch_ep *ep) | |||
753 | event.private_data_len = ep->plen; | 753 | event.private_data_len = ep->plen; |
754 | event.private_data = ep->mpa_pkt + sizeof(struct mpa_message); | 754 | event.private_data = ep->mpa_pkt + sizeof(struct mpa_message); |
755 | event.provider_data = ep; | 755 | event.provider_data = ep; |
756 | /* | ||
757 | * Until ird/ord negotiation via MPAv2 support is added, send max | ||
758 | * supported values | ||
759 | */ | ||
760 | event.ird = event.ord = 8; | ||
756 | if (state_read(&ep->parent_ep->com) != DEAD) { | 761 | if (state_read(&ep->parent_ep->com) != DEAD) { |
757 | get_ep(&ep->com); | 762 | get_ep(&ep->com); |
758 | ep->parent_ep->com.cm_id->event_handler( | 763 | ep->parent_ep->com.cm_id->event_handler( |
@@ -770,6 +775,11 @@ static void established_upcall(struct iwch_ep *ep) | |||
770 | PDBG("%s ep %p\n", __func__, ep); | 775 | PDBG("%s ep %p\n", __func__, ep); |
771 | memset(&event, 0, sizeof(event)); | 776 | memset(&event, 0, sizeof(event)); |
772 | event.event = IW_CM_EVENT_ESTABLISHED; | 777 | event.event = IW_CM_EVENT_ESTABLISHED; |
778 | /* | ||
779 | * Until ird/ord negotiation via MPAv2 support is added, send max | ||
780 | * supported values | ||
781 | */ | ||
782 | event.ird = event.ord = 8; | ||
773 | if (ep->com.cm_id) { | 783 | if (ep->com.cm_id) { |
774 | PDBG("%s ep %p tid %d\n", __func__, ep, ep->hwtid); | 784 | PDBG("%s ep %p tid %d\n", __func__, ep, ep->hwtid); |
775 | ep->com.cm_id->event_handler(ep->com.cm_id, &event); | 785 | ep->com.cm_id->event_handler(ep->com.cm_id, &event); |