Lines Matching refs:cq_table

60 	struct hns_roce_cq_table *cq_table = &hr_dev->cq_table;  in alloc_cqn()  local
65 mutex_lock(&cq_table->bank_mutex); in alloc_cqn()
66 bankid = get_least_load_bankid_for_cq(cq_table->bank); in alloc_cqn()
67 bank = &cq_table->bank[bankid]; in alloc_cqn()
71 mutex_unlock(&cq_table->bank_mutex); in alloc_cqn()
78 mutex_unlock(&cq_table->bank_mutex); in alloc_cqn()
91 struct hns_roce_cq_table *cq_table = &hr_dev->cq_table; in free_cqn() local
94 bank = &cq_table->bank[get_cq_bankid(cqn)]; in free_cqn()
98 mutex_lock(&cq_table->bank_mutex); in free_cqn()
100 mutex_unlock(&cq_table->bank_mutex); in free_cqn()
133 struct hns_roce_cq_table *cq_table = &hr_dev->cq_table; in alloc_cqc() local
147 ret = hns_roce_table_get(hr_dev, &cq_table->table, hr_cq->cqn); in alloc_cqc()
154 ret = xa_err(xa_store(&cq_table->array, hr_cq->cqn, hr_cq, GFP_KERNEL)); in alloc_cqc()
167 xa_erase(&cq_table->array, hr_cq->cqn); in alloc_cqc()
169 hns_roce_table_put(hr_dev, &cq_table->table, hr_cq->cqn); in alloc_cqc()
176 struct hns_roce_cq_table *cq_table = &hr_dev->cq_table; in free_cqc() local
186 xa_erase(&cq_table->array, hr_cq->cqn); in free_cqc()
196 hns_roce_table_put(hr_dev, &cq_table->table, hr_cq->cqn); in free_cqc()
454 hr_cq = xa_load(&hr_dev->cq_table.array, in hns_roce_cq_completion()
475 hr_cq = xa_load(&hr_dev->cq_table.array, in hns_roce_cq_event()
506 struct hns_roce_cq_table *cq_table = &hr_dev->cq_table; in hns_roce_init_cq_table() local
510 mutex_init(&cq_table->bank_mutex); in hns_roce_init_cq_table()
511 xa_init(&cq_table->array); in hns_roce_init_cq_table()
516 cq_table->bank[get_cq_bankid(i)].inuse++; in hns_roce_init_cq_table()
517 cq_table->bank[get_cq_bankid(i)].min++; in hns_roce_init_cq_table()
521 ida_init(&cq_table->bank[i].ida); in hns_roce_init_cq_table()
522 cq_table->bank[i].max = hr_dev->caps.num_cqs / in hns_roce_init_cq_table()
532 ida_destroy(&hr_dev->cq_table.bank[i].ida); in hns_roce_cleanup_cq_table()