[Focal][Pull] Hisilicon DMA engine driver and RDMA/hns updates
Ike Panhc
ike.pan at canonical.com
Thu Mar 12 08:50:30 UTC 2020
Hi,
Rebase to Ubuntu-5.4.0-18.22 and resend. Two patches are dropped because they
are applied to focal/master-next via v5.4.24 upstream stable (LP:#1866333).
BugLink: http://launchpad.net/bugs/1859269
BugLink: http://launchpad.net/bugs/1864442
Here is new driver for Hisilicon DMA engine which only works on specific PCIid.
And also patches for RDMA on Hisilicon ethernet devices. Most of patches are
Hisilicon hardware specific but also need to cherry-pick 4 RDMA core patches
and backport IB/umem patch. The backport patch is pretty easy for removing
dmasync argument from ib_umem_get, and no functional changes.
Have functional tests on Software RoCE and Hisilicon RoCE, and they are all
good.
The following changes since commit 93dfa5b8e12fed29933f3451db44d88c0e4b5aed:
UBUNTU: Ubuntu-5.4.0-18.22 (2020-03-07 10:23:40 -0600)
are available in the Git repository at:
git://kernel.ubuntu.com/ikepanhc/public.git lp1859269.3
for you to fetch changes up to 1e3c4d438764aa4b9ca676fbd6a27439fb4b4346:
RDMA/hns: Add support for extended atomic in userspace (2020-03-12 16:27:05 +0800)
----------------------------------------------------------------
Christoph Hellwig (2):
dma-mapping: remove the DMA_ATTR_WRITE_BARRIER flag
IB/umem: remove the dmasync argument to ib_umem_get
Ike Panhc (1):
UBUNTU: [Config] CONFIG_HISI_DMA=m
Jiaran Zhang (1):
RDMA/hns: Add support for extended atomic in userspace
Kamal Heib (1):
RDMA/hns: Remove unsupported modify_port callback
Lang Cheng (3):
RDMA/hns: Remove unnecessary structure hns_roce_sqp
RDMA/hns: Simplify doorbell initialization code
RDMA/hns: Modify hns_roce_hw_v2_get_cfg to simplify the code
Leon Romanovsky (1):
RDMA/hns: Delete BITS_PER_BYTE redefinition
Lijun Ou (6):
RDMA/hns: Remove unused function hns_roce_init_eq_table()
RDMA/hns: Update the value of qp type
RDMA/hns: Delete unnessary parameters in hns_roce_v2_qp_modify()
RDMA/hns: Fix coding style issues
RDMA/hns: Add interfaces to get pf capabilities from firmware
RDMA/hns: Get pf capabilities from firmware
Michal Kalderon (3):
RDMA/core: Move core content from ib_uverbs to ib_core
RDMA/core: Create mmap database and cookie helper functions
RDMA: Connect between the mmap entry and the umap_priv structure
Weihang Li (2):
RDMA/hns: Modify variable/field name from vlan to vlan_id
RDMA/hns: Remove some redundant variables related to capabilities
Wenpeng Liang (2):
RDMA/hns: Modify appropriate printings
RDMA/hns: Replace custom macros HNS_ROCE_ALIGN_UP
Xi Wang (1):
RDMA/hns: Add support for reporting wc as software mode
Yixian Liu (8):
RDMA/hns: Delete unnecessary variable max_post
RDMA/hns: Delete unnecessary uar from hns_roce_cq
RDMA/hns: Modify fields of struct hns_roce_srq
RDMA/hns: Fix non-standard error codes
RDMA/hns: Redefine interfaces used in creating cq
RDMA/hns: Redefine the member of hns_roce_cq struct
RDMA/hns: Rename the functions used inside creating cq
RDMA/hns: Delete unnecessary callback functions for cq
Yixing Liu (3):
RDMA/hns: Fix a spelling mistake in a macro
RDMA/hns: Replace not intuitive function/macro names
RDMA/hns: Remove redundant print information
Zhou Wang (1):
dmaengine: hisilicon: Add Kunpeng DMA engine support
Documentation/DMA-attributes.txt | 18 ----
debian.master/config/config.common.ubuntu | 1 +
drivers/dma/Kconfig | 8 ++
drivers/dma/Makefile | 1 +
drivers/dma/hisi_dma.c | 611 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
drivers/infiniband/core/Makefile | 2 +-
drivers/infiniband/core/core_priv.h | 11 ++
drivers/infiniband/core/device.c | 1 +
drivers/infiniband/core/ib_core_uverbs.c | 335 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
drivers/infiniband/core/rdma_core.c | 1 +
drivers/infiniband/core/umem.c | 12 +--
drivers/infiniband/core/uverbs_cmd.c | 2 +
drivers/infiniband/core/uverbs_main.c | 84 +++------------
drivers/infiniband/hw/bnxt_re/ib_verbs.c | 10 +-
drivers/infiniband/hw/cxgb3/iwch_provider.c | 2 +-
drivers/infiniband/hw/cxgb4/mem.c | 2 +-
drivers/infiniband/hw/efa/efa_verbs.c | 8 +-
drivers/infiniband/hw/hns/hns_roce_ah.c | 14 +--
drivers/infiniband/hw/hns/hns_roce_alloc.c | 4 +-
drivers/infiniband/hw/hns/hns_roce_cmd.h | 14 +--
drivers/infiniband/hw/hns/hns_roce_cq.c | 302 +++++++++++++++++++++++-------------------------------
drivers/infiniband/hw/hns/hns_roce_db.c | 2 +-
drivers/infiniband/hw/hns/hns_roce_device.h | 94 +++++++++--------
drivers/infiniband/hw/hns/hns_roce_hw_v1.c | 52 +++++-----
drivers/infiniband/hw/hns/hns_roce_hw_v2.c | 850 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++------------------------------------------------
drivers/infiniband/hw/hns/hns_roce_hw_v2.h | 159 ++++++++++++++++++++++++++++-
drivers/infiniband/hw/hns/hns_roce_main.c | 127 +++++++++++++++--------
drivers/infiniband/hw/hns/hns_roce_mr.c | 69 +++++++------
drivers/infiniband/hw/hns/hns_roce_pd.c | 2 +-
drivers/infiniband/hw/hns/hns_roce_qp.c | 112 +++++++++++++-------
drivers/infiniband/hw/hns/hns_roce_srq.c | 62 +++++------
drivers/infiniband/hw/i40iw/i40iw_verbs.c | 2 +-
drivers/infiniband/hw/mlx4/cq.c | 2 +-
drivers/infiniband/hw/mlx4/doorbell.c | 2 +-
drivers/infiniband/hw/mlx4/main.c | 9 +-
drivers/infiniband/hw/mlx4/mr.c | 2 +-
drivers/infiniband/hw/mlx4/qp.c | 5 +-
drivers/infiniband/hw/mlx4/srq.c | 2 +-
drivers/infiniband/hw/mlx5/cq.c | 4 +-
drivers/infiniband/hw/mlx5/devx.c | 2 +-
drivers/infiniband/hw/mlx5/doorbell.c | 2 +-
drivers/infiniband/hw/mlx5/main.c | 8 +-
drivers/infiniband/hw/mlx5/mr.c | 2 +-
drivers/infiniband/hw/mlx5/qp.c | 4 +-
drivers/infiniband/hw/mlx5/srq.c | 2 +-
drivers/infiniband/hw/mthca/mthca_provider.c | 4 +-
drivers/infiniband/hw/ocrdma/ocrdma_verbs.c | 2 +-
drivers/infiniband/hw/qedr/verbs.c | 25 +++--
drivers/infiniband/hw/vmw_pvrdma/pvrdma_cq.c | 2 +-
drivers/infiniband/hw/vmw_pvrdma/pvrdma_mr.c | 2 +-
drivers/infiniband/hw/vmw_pvrdma/pvrdma_qp.c | 4 +-
drivers/infiniband/hw/vmw_pvrdma/pvrdma_srq.c | 2 +-
drivers/infiniband/sw/rdmavt/mr.c | 2 +-
drivers/infiniband/sw/rxe/rxe_mr.c | 2 +-
include/linux/dma-mapping.h | 5 +-
include/rdma/ib_umem.h | 4 +-
include/rdma/ib_verbs.h | 48 +++++++--
57 files changed, 2267 insertions(+), 855 deletions(-)
create mode 100644 drivers/dma/hisi_dma.c
create mode 100644 drivers/infiniband/core/ib_core_uverbs.c
More information about the kernel-team
mailing list