IB/core: Change ib_create_cq to use struct ib_cq_init_attr
[deliverable/linux.git] / drivers / infiniband / hw / ehca / ehca_main.c
index cd8d290a09fc2029f5542660c42e652b9216fe3e..c0e45a46504bcb545cda89266851fdfdb2f23498 100644 (file)
@@ -431,6 +431,23 @@ init_node_guid1:
        return ret;
 }
 
+static int ehca_port_immutable(struct ib_device *ibdev, u8 port_num,
+                              struct ib_port_immutable *immutable)
+{
+       struct ib_port_attr attr;
+       int err;
+
+       err = ehca_query_port(ibdev, port_num, &attr);
+       if (err)
+               return err;
+
+       immutable->pkey_tbl_len = attr.pkey_tbl_len;
+       immutable->gid_tbl_len = attr.gid_tbl_len;
+       immutable->core_cap_flags = RDMA_CORE_PORT_IBA_IB;
+
+       return 0;
+}
+
 static int ehca_init_device(struct ehca_shca *shca)
 {
        int ret;
@@ -510,6 +527,7 @@ static int ehca_init_device(struct ehca_shca *shca)
        shca->ib_device.process_mad         = ehca_process_mad;
        shca->ib_device.mmap                = ehca_mmap;
        shca->ib_device.dma_ops             = &ehca_dma_mapping_ops;
+       shca->ib_device.get_port_immutable  = ehca_port_immutable;
 
        if (EHCA_BMASK_GET(HCA_CAP_SRQ, shca->hca_cap)) {
                shca->ib_device.uverbs_cmd_mask |=
@@ -534,6 +552,7 @@ static int ehca_create_aqp1(struct ehca_shca *shca, u32 port)
        struct ib_cq *ibcq;
        struct ib_qp *ibqp;
        struct ib_qp_init_attr qp_init_attr;
+       struct ib_cq_init_attr cq_attr = {};
        int ret;
 
        if (sport->ibcq_aqp1) {
@@ -541,7 +560,9 @@ static int ehca_create_aqp1(struct ehca_shca *shca, u32 port)
                return -EPERM;
        }
 
-       ibcq = ib_create_cq(&shca->ib_device, NULL, NULL, (void *)(-1), 10, 0);
+       cq_attr.cqe = 10;
+       ibcq = ib_create_cq(&shca->ib_device, NULL, NULL, (void *)(-1),
+                           &cq_attr);
        if (IS_ERR(ibcq)) {
                ehca_err(&shca->ib_device, "Cannot create AQP1 CQ.");
                return PTR_ERR(ibcq);
This page took 0.025694 seconds and 5 git commands to generate.