[pull][bionic] enable ROCE and HNS3 driver support for hip08 SoC
Manoj Iyer
manoj.iyer at canonical.com
Thu Mar 15 14:33:29 UTC 2018
Please consider the following pull-request to enable ROCE and HNS3 driver
support for hip08 SoC. These patches were cleanly cherry-picked from
4.16-rc. and a test kernel is available in ppa:manjo/uose3
Tracking bug: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1756097
The kernel was tested on a Hisilicon D06 server reference board.
ubuntu at d06:~$ uname -a
Linux d06 4.15.0-12-generic #13~uose+build.5 SMP Wed Mar 14 17:25:28 UTC
2018 aarch64 aarch64 aarch64 GNU/Linux
ubuntu at d06:~$
ubuntu at d06:~$ lsmod | grep hns
hns3 57344 0
hnae3 16384 1 hns3
ubuntu at d06:~$
ubuntu at d06:~$ sudo modprobe hns-roce-hw-v2
ubuntu at d06:~$ lsmod | grep hns
hns_roce_hw_v2 53248 0
hns_roce 81920 1 hns_roce_hw_v2
ib_core 278528 2 hns_roce,hns_roce_hw_v2
hns3 57344 0
hnae3 16384 2 hns3,hns_roce_hw_v2
ubuntu at d06:~$
The following changes since commit feb5d80bbf6250033bcf0e9bd9eb550e9dcdcdff:
UBUNTU: [Config]: enable RAS_EXTN and ARM_SDE_INTERFACE (2018-03-09 13:37:55 -0600)
are available in the git repository at:
git+ssh://git.launchpad.net/~manjo/+git/linux-hisid06
for you to fetch changes up to f5aba01a5cffa015e60a059f752bf3d56ba54804:
UBUNTU: [Config]: enable CONFIG_HNS3_HCLGEVF as module. (2018-03-14 13:47:45 -0500)
----------------------------------------------------------------
Fuyun Liang (19):
net: hns3: cleanup mac auto-negotiation state query
net: hns3: fix for getting auto-negotiation state in hclge_get_autoneg
net: hns3: add Asym Pause support to phy default features
net: hns3: fix for updating fc_mode_last_time
net: hns3: fix for setting MTU
net: hns3: fix for changing MTU
net: hns3: add MTU initialization for hardware
net: hns3: fix for not setting pause parameters
net: hns3: add ethtool_ops.get_coalesce support to PF
net: hns3: add ethtool_ops.set_coalesce support to PF
net: hns3: refactor interrupt coalescing init function
net: hns3: refactor GL update function
net: hns3: remove unused GL setup function
net: hns3: change the unit of GL value macro
net: hns3: add int_gl_idx setup for TX and RX queues
net: hns3: add support for get_regs
net: hns3: add manager table initialization for hardware
net: hns3: add get/set_coalesce support to VF
net: hns3: add int_gl_idx setup for VF
Huazhong Tan (1):
net: hns: Fix for variable may be used uninitialized warnings
Jason Gunthorpe (1):
RDMA/hns: Fix endian problems around imm_data and rkey
Jian Shen (18):
net: hns3: Add ethtool interface for vlan filter
net: hns3: Disable VFs change rxvlan offload status
net: hns3: Unify the strings display of packet statistics
net: hns3: Fix spelling errors
net: hns3: Remove repeat statistic of rx_errors
net: hns3: Modify the update period of packet statistics
net: hns3: Mask the packet statistics query when NIC is down
net: hns3: Fix an error of total drop packet statistics
net: hns3: Fix a loop index error of tqp statistics query
net: hns3: Fix an error macro definition of HNS3_TQP_STAT
net: hns3: Remove a useless member of struct hns3_stats
net: hns3: Add packet statistics of netdev
net: hns3: Fix a response data read error of tqp statistics query
net: hns3: Add more packet size statisctics
net: hns3: add feature check when feature changed
net: hns3: check for NULL function pointer in hns3_nic_set_features
net: hns3: add ethtool -p support for fiber port
net: hns3: add net status led support for fiber port
Manoj Iyer (1):
UBUNTU: [Config]: enable CONFIG_HNS3_HCLGEVF as module.
Peng Li (19):
net: hns3: add support to query tqps number
net: hns3: add support to modify tqps number
net: hns3: change the returned tqp number by ethtool -x
net: hns3: free the ring_data structrue when change tqps
net: hns3: get rss_size_max from configuration but not hardcode
net: hns3: add a mask initialization for mac_vlan table
net: hns3: add vlan offload config command
net: hns3: add ethtool related offload command
net: hns3: add handling vlan tag offload in bd
net: hns3: add support for set_pauseparam
net: hns3: add support to update flow control settings after autoneg
net: hns3: add support for querying advertised pause frame by ethtool ethx
net: hns3: Increase the default depth of bucket for TM shaper
net: hns3: change TM sched mode to TC-based mode when SRIOV enabled
net: hns3: remove redundant semicolon
Revert "net: hns3: Add packet statistics of netdev"
net: hns3: report the function type the same line with hns3_nic_get_stats64
net: hns3: add ethtool_ops.get_channels support for VF
net: hns3: remove TSO config command from VF driver
Salil Mehta (12):
net: hns3: Refactor of the reset interrupt handling logic
net: hns3: Add reset service task for handling reset requests
net: hns3: Refactors the requested reset & pending reset handling code
net: hns3: Add HNS3 VF IMP(Integrated Management Proc) cmd interface
net: hns3: Add mailbox support to VF driver
net: hns3: Add HNS3 VF HCL(Hardware Compatibility Layer) Support
net: hns3: Add HNS3 VF driver to kernel build framework
net: hns3: Unified HNS3 {VF|PF} Ethernet Driver for hip08 SoC
net: hns3: Add mailbox support to PF driver
net: hns3: Change PF to add ring-vect binding & resetQ to mailbox
net: hns3: Add mailbox interrupt handling to PF driver
net: hns3: converting spaces into tabs to avoid checkpatch.pl warning
Yixian Liu (4):
RDMA/hns: Refactor eq code for hip06
RDMA/hns: Add eq support of hip08
RDMA/hns: Add detailed comments for mb() call
RDMA/hns: Fix QP state judgement before sending work requests
kbuild test robot (1):
net: hns3: hns3_get_channels() can be static
oulijun (12):
RDMA/hns: Add rq inline data support for hip08 RoCE
RDMA/hns: Update the usage of sr_max and rr_max field
RDMA/hns: Set access flags of hip08 RoCE
RDMA/hns: Filter for zero length of sge in hip08 kernel mode
RDMA/hns: Assign dest_qp when deregistering mr
RDMA/hns: Assign the correct value for tx_cqn
RDMA/hns: Create gsi qp in hip08
RDMA/hns: Add gsi qp support for modifying qp in hip08
RDMA/hns: Fill sq wqe context of ud type in hip08
RDMA/hns: Assign zero for pkey_index of wc in hip08
RDMA/hns: Update the verbs of polling for completion
RDMA/hns: Set the guid for hip08 RoCE device
debian.master/config/config.common.ubuntu | 1 +
drivers/infiniband/hw/hns/Makefile | 2 +-
drivers/infiniband/hw/hns/hns_roce_cmd.c | 1 +
drivers/infiniband/hw/hns/hns_roce_cmd.h | 10 +
drivers/infiniband/hw/hns/hns_roce_common.h | 11 +
drivers/infiniband/hw/hns/hns_roce_cq.c | 19 +-
drivers/infiniband/hw/hns/hns_roce_device.h | 103 +-
drivers/infiniband/hw/hns/hns_roce_eq.c | 759 --------
drivers/infiniband/hw/hns/hns_roce_eq.h | 134 --
drivers/infiniband/hw/hns/hns_roce_hw_v1.c | 754 +++++++-
drivers/infiniband/hw/hns/hns_roce_hw_v1.h | 44 +-
drivers/infiniband/hw/hns/hns_roce_hw_v2.c | 1837 ++++++++++++++++++--
drivers/infiniband/hw/hns/hns_roce_hw_v2.h | 283 ++-
drivers/infiniband/hw/hns/hns_roce_main.c | 16 +-
drivers/infiniband/hw/hns/hns_roce_qp.c | 72 +-
drivers/net/ethernet/hisilicon/Kconfig | 28 +-
drivers/net/ethernet/hisilicon/hns/hns_dsaf_misc.c | 52 +-
drivers/net/ethernet/hisilicon/hns/hns_dsaf_reg.h | 7 +-
drivers/net/ethernet/hisilicon/hns3/Makefile | 7 +
drivers/net/ethernet/hisilicon/hns3/hclge_mbx.h | 88 +
drivers/net/ethernet/hisilicon/hns3/hnae3.c | 14 +-
drivers/net/ethernet/hisilicon/hns3/hnae3.h | 32 +-
.../hisilicon/hns3/{hns3pf => }/hns3_dcbnl.c | 2 +-
.../hisilicon/hns3/{hns3pf => }/hns3_enet.c | 405 ++++-
.../hisilicon/hns3/{hns3pf => }/hns3_enet.h | 28 +-
.../hisilicon/hns3/{hns3pf => }/hns3_ethtool.c | 347 +++-
.../net/ethernet/hisilicon/hns3/hns3pf/Makefile | 8 +-
.../net/ethernet/hisilicon/hns3/hns3pf/hclge_cmd.h | 106 +-
.../ethernet/hisilicon/hns3/hns3pf/hclge_main.c | 1632 ++++++++++++++---
.../ethernet/hisilicon/hns3/hns3pf/hclge_main.h | 129 +-
.../net/ethernet/hisilicon/hns3/hns3pf/hclge_mbx.c | 418 +++++
.../ethernet/hisilicon/hns3/hns3pf/hclge_mdio.c | 5 +
.../net/ethernet/hisilicon/hns3/hns3pf/hclge_tm.c | 64 +-
.../net/ethernet/hisilicon/hns3/hns3pf/hclge_tm.h | 12 +
.../net/ethernet/hisilicon/hns3/hns3vf/Makefile | 9 +
.../ethernet/hisilicon/hns3/hns3vf/hclgevf_cmd.c | 342 ++++
.../ethernet/hisilicon/hns3/hns3vf/hclgevf_cmd.h | 248 +++
.../ethernet/hisilicon/hns3/hns3vf/hclgevf_main.c | 1505 ++++++++++++++++
.../ethernet/hisilicon/hns3/hns3vf/hclgevf_main.h | 164 ++
.../ethernet/hisilicon/hns3/hns3vf/hclgevf_mbx.c | 181 ++
40 files changed, 8315 insertions(+), 1564 deletions(-)
delete mode 100644 drivers/infiniband/hw/hns/hns_roce_eq.c
delete mode 100644 drivers/infiniband/hw/hns/hns_roce_eq.h
create mode 100644 drivers/net/ethernet/hisilicon/hns3/hclge_mbx.h
rename drivers/net/ethernet/hisilicon/hns3/{hns3pf => }/hns3_dcbnl.c (97%)
rename drivers/net/ethernet/hisilicon/hns3/{hns3pf => }/hns3_enet.c (89%)
rename drivers/net/ethernet/hisilicon/hns3/{hns3pf => }/hns3_enet.h (94%)
rename drivers/net/ethernet/hisilicon/hns3/{hns3pf => }/hns3_ethtool.c (70%)
create mode 100644 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_mbx.c
create mode 100644 drivers/net/ethernet/hisilicon/hns3/hns3vf/Makefile
create mode 100644 drivers/net/ethernet/hisilicon/hns3/hns3vf/hclgevf_cmd.c
create mode 100644 drivers/net/ethernet/hisilicon/hns3/hns3vf/hclgevf_cmd.h
create mode 100644 drivers/net/ethernet/hisilicon/hns3/hns3vf/hclgevf_main.c
create mode 100644 drivers/net/ethernet/hisilicon/hns3/hns3vf/hclgevf_main.h
create mode 100644 drivers/net/ethernet/hisilicon/hns3/hns3vf/hclgevf_mbx.c
--
============================
Manoj Iyer
Ubuntu/Canonical
ARM Servers - Cloud
============================
More information about the kernel-team
mailing list