Lines Matching refs:qp_table
198 return qp->qpn >= dev->qp_table.sqp_start && in is_sqp()
199 qp->qpn <= dev->qp_table.sqp_start + 3; in is_sqp()
204 return qp->qpn >= dev->qp_table.sqp_start && in is_qp0()
205 qp->qpn <= dev->qp_table.sqp_start + 1; in is_qp0()
244 spin_lock(&dev->qp_table.lock); in mthca_qp_event()
245 qp = mthca_array_get(&dev->qp_table.qp, qpn & (dev->limits.num_qps - 1)); in mthca_qp_event()
248 spin_unlock(&dev->qp_table.lock); in mthca_qp_event()
265 spin_lock(&dev->qp_table.lock); in mthca_qp_event()
268 spin_unlock(&dev->qp_table.lock); in mthca_qp_event()
770 cpu_to_be32(dev->qp_table.rdb_base + in __mthca_modify_qp()
772 dev->qp_table.rdb_shift)); in __mthca_modify_qp()
909 attr->max_dest_rd_atomic > 1 << dev->qp_table.rdb_shift) { in mthca_modify_qp()
911 attr->max_dest_rd_atomic, 1 << dev->qp_table.rdb_shift); in mthca_modify_qp()
1095 ret = mthca_table_get(dev, dev->qp_table.qp_table, qp->qpn); in mthca_map_memfree()
1099 ret = mthca_table_get(dev, dev->qp_table.eqp_table, qp->qpn); in mthca_map_memfree()
1103 ret = mthca_table_get(dev, dev->qp_table.rdb_table, in mthca_map_memfree()
1104 qp->qpn << dev->qp_table.rdb_shift); in mthca_map_memfree()
1113 mthca_table_put(dev, dev->qp_table.eqp_table, qp->qpn); in mthca_map_memfree()
1116 mthca_table_put(dev, dev->qp_table.qp_table, qp->qpn); in mthca_map_memfree()
1124 mthca_table_put(dev, dev->qp_table.rdb_table, in mthca_unmap_memfree()
1125 qp->qpn << dev->qp_table.rdb_shift); in mthca_unmap_memfree()
1126 mthca_table_put(dev, dev->qp_table.eqp_table, qp->qpn); in mthca_unmap_memfree()
1127 mthca_table_put(dev, dev->qp_table.qp_table, qp->qpn); in mthca_unmap_memfree()
1311 qp->qpn = mthca_alloc(&dev->qp_table.alloc); in mthca_alloc_qp()
1321 mthca_free(&dev->qp_table.alloc, qp->qpn); in mthca_alloc_qp()
1325 spin_lock_irq(&dev->qp_table.lock); in mthca_alloc_qp()
1326 mthca_array_set(&dev->qp_table.qp, in mthca_alloc_qp()
1328 spin_unlock_irq(&dev->qp_table.lock); in mthca_alloc_qp()
1374 u32 mqpn = qpn * 2 + dev->qp_table.sqp_start + port - 1; in mthca_alloc_sqp()
1388 spin_lock_irq(&dev->qp_table.lock); in mthca_alloc_sqp()
1389 if (mthca_array_get(&dev->qp_table.qp, mqpn)) in mthca_alloc_sqp()
1392 mthca_array_set(&dev->qp_table.qp, mqpn, sqp); in mthca_alloc_sqp()
1393 spin_unlock_irq(&dev->qp_table.lock); in mthca_alloc_sqp()
1418 spin_lock(&dev->qp_table.lock); in mthca_alloc_sqp()
1419 mthca_array_clear(&dev->qp_table.qp, mqpn); in mthca_alloc_sqp()
1420 spin_unlock(&dev->qp_table.lock); in mthca_alloc_sqp()
1435 spin_lock_irq(&dev->qp_table.lock); in get_qp_refcount()
1437 spin_unlock_irq(&dev->qp_table.lock); in get_qp_refcount()
1457 spin_lock(&dev->qp_table.lock); in mthca_free_qp()
1458 mthca_array_clear(&dev->qp_table.qp, in mthca_free_qp()
1461 spin_unlock(&dev->qp_table.lock); in mthca_free_qp()
1495 mthca_free(&dev->qp_table.alloc, qp->qpn); in mthca_free_qp()
2263 spin_lock_init(&dev->qp_table.lock); in mthca_init_qp_table()
2269 dev->qp_table.sqp_start = (dev->limits.reserved_qps + 1) & ~1UL; in mthca_init_qp_table()
2270 err = mthca_alloc_init(&dev->qp_table.alloc, in mthca_init_qp_table()
2273 dev->qp_table.sqp_start + in mthca_init_qp_table()
2278 err = mthca_array_init(&dev->qp_table.qp, in mthca_init_qp_table()
2281 mthca_alloc_cleanup(&dev->qp_table.alloc); in mthca_init_qp_table()
2287 dev->qp_table.sqp_start + i * 2); in mthca_init_qp_table()
2300 mthca_array_cleanup(&dev->qp_table.qp, dev->limits.num_qps); in mthca_init_qp_table()
2301 mthca_alloc_cleanup(&dev->qp_table.alloc); in mthca_init_qp_table()
2313 mthca_array_cleanup(&dev->qp_table.qp, dev->limits.num_qps); in mthca_cleanup_qp_table()
2314 mthca_alloc_cleanup(&dev->qp_table.alloc); in mthca_cleanup_qp_table()