Merge ../linux-2.6-watchdog-mm
[linux-drm-fsl-dcu.git] / drivers / infiniband / hw / mthca / mthca_provider.c
index 230ae21db8fd3c15a2c8664443987efec352912e..fc67f780581b284f4552c5d3ca72d05813cc48a0 100644 (file)
@@ -179,6 +179,8 @@ static int mthca_query_port(struct ib_device *ibdev,
        props->max_mtu           = out_mad->data[41] & 0xf;
        props->active_mtu        = out_mad->data[36] >> 4;
        props->subnet_timeout    = out_mad->data[51] & 0x1f;
+       props->max_vl_num        = out_mad->data[37] >> 4;
+       props->init_type_reply   = out_mad->data[41] >> 4;
 
  out:
        kfree(in_mad);
@@ -1287,12 +1289,8 @@ int mthca_register_device(struct mthca_dev *dev)
                (1ull << IB_USER_VERBS_CMD_MODIFY_QP)           |
                (1ull << IB_USER_VERBS_CMD_DESTROY_QP)          |
                (1ull << IB_USER_VERBS_CMD_ATTACH_MCAST)        |
-               (1ull << IB_USER_VERBS_CMD_DETACH_MCAST)        |
-               (1ull << IB_USER_VERBS_CMD_CREATE_SRQ)          |
-               (1ull << IB_USER_VERBS_CMD_MODIFY_SRQ)          |
-               (1ull << IB_USER_VERBS_CMD_QUERY_SRQ)           |
-               (1ull << IB_USER_VERBS_CMD_DESTROY_SRQ);
-       dev->ib_dev.node_type            = IB_NODE_CA;
+               (1ull << IB_USER_VERBS_CMD_DETACH_MCAST);
+       dev->ib_dev.node_type            = RDMA_NODE_IB_CA;
        dev->ib_dev.phys_port_cnt        = dev->limits.num_ports;
        dev->ib_dev.dma_device           = &dev->pdev->dev;
        dev->ib_dev.class_dev.dev        = &dev->pdev->dev;
@@ -1316,6 +1314,11 @@ int mthca_register_device(struct mthca_dev *dev)
                dev->ib_dev.modify_srq           = mthca_modify_srq;
                dev->ib_dev.query_srq            = mthca_query_srq;
                dev->ib_dev.destroy_srq          = mthca_destroy_srq;
+               dev->ib_dev.uverbs_cmd_mask     |=
+                       (1ull << IB_USER_VERBS_CMD_CREATE_SRQ)          |
+                       (1ull << IB_USER_VERBS_CMD_MODIFY_SRQ)          |
+                       (1ull << IB_USER_VERBS_CMD_QUERY_SRQ)           |
+                       (1ull << IB_USER_VERBS_CMD_DESTROY_SRQ);
 
                if (mthca_is_memfree(dev))
                        dev->ib_dev.post_srq_recv = mthca_arbel_post_srq_recv;