diff options
author | Yangyang Li <liyangyang20@huawei.com> | 2018-12-18 21:21:53 +0800 |
---|---|---|
committer | Jason Gunthorpe <jgg@mellanox.com> | 2019-01-24 09:22:30 -0700 |
commit | 6a157f7d1b14eb88d89fbd396cfea15ac4bded2d (patch) | |
tree | 6a9408d99b23445132f0b724892f87a64080012d /drivers/infiniband/hw/hns/hns_roce_main.c | |
parent | 61b2fe3c62e5269408e264b2348f96467246d537 (diff) | |
download | linux-6a157f7d1b14eb88d89fbd396cfea15ac4bded2d.tar.gz linux-6a157f7d1b14eb88d89fbd396cfea15ac4bded2d.tar.bz2 linux-6a157f7d1b14eb88d89fbd396cfea15ac4bded2d.zip |
RDMA/hns: Add SCC context allocation support for hip08
This patch adds SCC context allocation and initialization support for
DCQCN in kernel space driver.
Signed-off-by: Yangyang Li <liyangyang20@huawei.com>
Signed-off-by: Jason Gunthorpe <jgg@mellanox.com>
Diffstat (limited to 'drivers/infiniband/hw/hns/hns_roce_main.c')
-rw-r--r-- | drivers/infiniband/hw/hns/hns_roce_main.c | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/drivers/infiniband/hw/hns/hns_roce_main.c b/drivers/infiniband/hw/hns/hns_roce_main.c index 46ede58ef3b8..314586690f6e 100644 --- a/drivers/infiniband/hw/hns/hns_roce_main.c +++ b/drivers/infiniband/hw/hns/hns_roce_main.c @@ -702,8 +702,26 @@ static int hns_roce_init_hem(struct hns_roce_dev *hr_dev) } } + if (hr_dev->caps.sccc_entry_sz) { + ret = hns_roce_init_hem_table(hr_dev, + &hr_dev->qp_table.sccc_table, + HEM_TYPE_SCCC, + hr_dev->caps.sccc_entry_sz, + hr_dev->caps.num_qps, 1); + if (ret) { + dev_err(dev, + "Failed to init SCC context memory, aborting.\n"); + goto err_unmap_idx; + } + } + return 0; +err_unmap_idx: + if (hr_dev->caps.num_idx_segs) + hns_roce_cleanup_hem_table(hr_dev, + &hr_dev->mr_table.mtt_idx_table); + err_unmap_srqwqe: if (hr_dev->caps.num_srqwqe_segs) hns_roce_cleanup_hem_table(hr_dev, |