[PULL][SRU Disco] Hi1620 SoC driver updates

dann frazier dann.frazier at canonical.com
Wed May 29 21:03:10 UTC 2019

BugLink: https://bugs.launchpad.net/bugs/1830815

All changes are restricted to Hi1620-specific drivers, except for the
ethtool change. That change just adds defines that the hns3 driver update
consumes. All are clean cherry-picks except for commit 08c217b423714
("RDMA/hns: Dump detailed driver-specific CQ"), which required some
minor backporting described in the commit log footer.

The following changes since commit eee65e2c1f3d9fc0801044513a50f9de4394a37c:

  UBUNTU: [Packaging] Fixup bug reference for libbfd fix (2019-05-20 14:14:40 +0200)

are available in the Git repository at:

  git://git.launchpad.net/~dannf/ubuntu/+source/linux/+git/linux hi1620-disco

for you to fetch changes up to af73f55948024eeccb3ced778dcbc147357ce836:

  net: hns3: remove redundant assignment of l2_hdr to itself (2019-05-28 18:49:09 -0600)

Aya Levin (1):
      ethtool: Added support for 50Gbps per lane link modes

Colin Ian King (1):
      net: hns3: remove redundant assignment of l2_hdr to itself

Huazhong Tan (26):
      net: hns3: simplify hclgevf_cmd_csq_clean
      net: hns3: check resetting status in hns3_get_stats()
      net: hns3: prevent change MTU when resetting
      net: hns3: modify HNS3_NIC_STATE_INITED flag in hns3_reset_notify_uninit_enet
      net: hns3: set vport alive state to default while resetting
      net: hns3: set up the vport alive state while reinitializing
      net: hns3: not reset vport who not alive when PF reset
      net: hns3: adjust the timing of hns3_client_stop when unloading
      net: hns3: deactive the reset timer when reset successfully
      net: hns3: ignore lower-level new coming reset
      net: hns3: do not request reset when hardware resetting
      net: hns3: handle pending reset while reset fail
      net: hns3: stop mailbox handling when command queue need re-init
      net: hns3: add error handler for initializing command queue
      net: hns3: remove resetting check in hclgevf_reset_task_schedule
      net: hns3: fix keep_alive_timer not stop problem
      net: hns3: add reset statistics info for PF
      net: hns3: add reset statistics for VF
      net: hns3: add some debug information for hclge_check_event_cause
      net: hns3: add some debug info for hclgevf_get_mbx_resp()
      net: hns3: stop sending keep alive msg when VF command queue needs reinit
      net: hns3: use atomic_t replace u32 for arq's count
      net: hns3: use a reserved byte to identify need_resp flag
      net: hns3: not reset TQP in the DOWN while VF resetting
      net: hns3: fix pause configure fail problem
      net: hns3: prevent double free in hns3_put_ring_config()

Jian Shen (14):
      net: hns3: add protect when handling mac addr list
      net: hns3: split function hnae3_match_n_instantiate()
      net: hns3: modify VLAN initialization to be compatible with port based VLAN
      net: hns3: fix VLAN offload handle for VLAN inserted by port
      net: hns3: fix set port based VLAN for PF
      net: hns3: fix set port based VLAN issue for VF
      net: hns3: do not initialize MDIO bus when PHY is inexistent
      net: hns3: fix sparse: warning when calling hclge_set_vlan_filter_hw()
      net: hns3: refine tx timeout count handle
      net: hns3: fix loop condition of hns3_get_tx_timeo_queue_info()
      net: hns3: dump more information when tx timeout happens
      net: hns3: add support for multiple media type
      net: hns3: add autoneg and change speed support for fibre port
      net: hns3: add support for FEC encoding control

John Garry (1):
      scsi: hisi_sas: Fix for setting the PHY linkrate when disconnected

Leon Romanovsky (2):
      RDMA/hns: Limit scope of hns_roce_cmq_send()
      RDMA/hns: Fix bad endianess of port_pd variable

Lijun Ou (10):
      RDMA/hns: Only assign the relatived fields of psn if IB_QP_SQ_PSN is set
      RDMA/hns: Only assign the fields of the rq psn if IB_QP_RQ_PSN is set
      RDMA/hns: Update the range of raq_psn field of qp context
      RDMA/hns: Only assgin some fields if the relatived attr_mask is set
      RDMA/hns: Hide error print information with roce vf device
      RDMA/hns: Bugfix for sending with invalidate
      RDMA/hns: Delete unused variable in hns_roce_v2_modify_qp function
      RDMA/hns: Dump detailed driver-specific CQ
      RDMA/hns: Fix bug that caused srq creation to fail
      RDMA/hns: Bugfix for mapping user db

Luo Jiaxing (2):
      scsi: hisi_sas: Don't hard reset disk during controller reset
      scsi: hisi_sas: Don't fail IT nexus reset for Open Reject timeout

Matthew Wilcox (2):
      RDMA/hns: Convert cq_table to XArray
      RDMA/hns: Convert qp_table_tree to XArray

Peng Li (4):
      net: hns3: check 1000M half for hns3_ethtool_ops.set_link_ksettings
      net: hns3: return 0 and print warning when hit duplicate MAC
      net: hns3: free the pending skb when clean RX ring
      net: hns3: code optimization for command queue' spin lock

Weihang Li (4):
      net: hns3: set dividual reset level for all RAS and MSI-X errors
      net: hns3: add support for dump ncl config by debugfs
      net: hns3: Add handling of MAC tunnel interruption
      net: hns3: remove reset after command send failed

Xi Wang (1):
      net: hns3: fix compile error

Xiang Chen (5):
      scsi: hisi_sas: add host reset interface for test
      scsi: hisi_sas: Remedy inconsistent PHY down state in software
      scsi: hisi_sas: Adjust the printk format of functions hisi_sas_init_device()
      scsi: hisi_sas: allocate different SAS address for directly attached situation
      scsi: hisi_sas: Some misc tidy-up

Xiaofei Tan (1):
      scsi: hisi_sas: Support all RAS events with MSI interrupts

Yangyang Li (1):
      RDMA/hns: Bugfix for SCC hem free

Yonglong Liu (2):
      net: hns3: reduce resources use in kdump kernel
      net: hns3: Add support for netif message level settings

YueHaibing (2):
      net: hns3: Make hclgevf_update_link_mode static
      net: hns3: Make hclge_destroy_cmd_queue static

Yufeng Mo (1):
      net: hns3: add function type check for debugfs help information

Yunsheng Lin (22):
      net: hns3: minor optimization for ring_space
      net: hns3: minor optimization for datapath
      net: hns3: minor refactor for hns3_rx_checksum
      net: hns3: add hns3_gro_complete for HW GRO process
      net: hns3: always assume no drop TC for performance reason
      net: hns3: divide shared buffer between TC
      net: hns3: fix for vport->bw_limit overflow problem
      net: hns3: fix data race between ring->next_to_clean
      net: hns3: fix for TX clean num when cleaning TX BD
      net: hns3: handle the BD info on the last BD of the packet
      net: hns3: unify maybe_stop_tx for TSO and non-TSO case
      net: hns3: use napi_schedule_irqoff in hard interrupts handlers
      net: hns3: add counter for times RX pages gets allocated
      net: hns3: add linearizing checking for TSO case
      net: hns3: fix for tunnel type handling in hns3_rx_checksum
      net: hns3: refactor BD filling for l2l3l4 info
      net: hns3: combine len and checksum handling for inner and outer header.
      net: hns3: fix error handling for desc filling
      net: hns3: optimize the barrier using when cleaning TX BD
      net: hns3: unify the page reusing for page size 4K and 64K
      net: hns3: some cleanup for struct hns3_enet_ring
      net: hns3: use devm_kcalloc when allocating desc_cb

chenglang (1):
      RDMA/hns: Support to create 1M srq queue

liuzhongzhu (3):
      net: hns3: modify the VF network port media type acquisition method
      net: hns3: add queue's statistics update to service task
      net: hns3: extend the loopback state acquisition time

 drivers/infiniband/hw/hns/Makefile                 |    4 +-
 drivers/infiniband/hw/hns/hns_roce_ah.c            |    2 +-
 drivers/infiniband/hw/hns/hns_roce_cmd.h           |    1 +
 drivers/infiniband/hw/hns/hns_roce_cq.c            |   33 +-
 drivers/infiniband/hw/hns/hns_roce_device.h        |   17 +-
 drivers/infiniband/hw/hns/hns_roce_hem.c           |    6 +-
 drivers/infiniband/hw/hns/hns_roce_hw_v2.c         |  288 +++---
 drivers/infiniband/hw/hns/hns_roce_hw_v2.h         |    7 +-
 drivers/infiniband/hw/hns/hns_roce_hw_v2_dfx.c     |   35 +
 drivers/infiniband/hw/hns/hns_roce_main.c          |    1 +
 drivers/infiniband/hw/hns/hns_roce_mr.c            |    4 +-
 drivers/infiniband/hw/hns/hns_roce_qp.c            |   55 +-
 drivers/infiniband/hw/hns/hns_roce_restrack.c      |  126 +++
 drivers/net/ethernet/hisilicon/hns3/hclge_mbx.h    |   11 +-
 drivers/net/ethernet/hisilicon/hns3/hnae3.c        |   40 +-
 drivers/net/ethernet/hisilicon/hns3/hnae3.h        |   49 +-
 drivers/net/ethernet/hisilicon/hns3/hns3_debugfs.c |    9 +
 drivers/net/ethernet/hisilicon/hns3/hns3_enet.c    |  947 ++++++++++--------
 drivers/net/ethernet/hisilicon/hns3/hns3_enet.h    |   40 +-
 drivers/net/ethernet/hisilicon/hns3/hns3_ethtool.c |  207 +++-
 .../net/ethernet/hisilicon/hns3/hns3pf/Makefile    |    2 +-
 .../net/ethernet/hisilicon/hns3/hns3pf/hclge_cmd.c |   17 +-
 .../net/ethernet/hisilicon/hns3/hns3pf/hclge_cmd.h |   36 +-
 .../ethernet/hisilicon/hns3/hns3pf/hclge_debugfs.c |  110 +++
 .../net/ethernet/hisilicon/hns3/hns3pf/hclge_err.c | 1017 +++++++++++++-------
 .../net/ethernet/hisilicon/hns3/hns3pf/hclge_err.h |    5 +
 .../ethernet/hisilicon/hns3/hns3pf/hclge_main.c    |  910 +++++++++++++++---
 .../ethernet/hisilicon/hns3/hns3pf/hclge_main.h    |   71 +-
 .../net/ethernet/hisilicon/hns3/hns3pf/hclge_mbx.c |   73 +-
 .../ethernet/hisilicon/hns3/hns3pf/hclge_mdio.c    |    8 +-
 .../net/ethernet/hisilicon/hns3/hns3pf/hclge_tm.c  |    5 +-
 .../net/ethernet/hisilicon/hns3/hns3vf/Makefile    |    2 +-
 .../ethernet/hisilicon/hns3/hns3vf/hclgevf_cmd.c   |   52 +-
 .../ethernet/hisilicon/hns3/hns3vf/hclgevf_main.c  |  148 ++-
 .../ethernet/hisilicon/hns3/hns3vf/hclgevf_main.h  |   17 +-
 .../ethernet/hisilicon/hns3/hns3vf/hclgevf_mbx.c   |   30 +-
 drivers/scsi/hisi_sas/hisi_sas.h                   |    3 +
 drivers/scsi/hisi_sas/hisi_sas_main.c              |  104 +-
 drivers/scsi/hisi_sas/hisi_sas_v1_hw.c             |   21 +-
 drivers/scsi/hisi_sas/hisi_sas_v2_hw.c             |   49 +-
 drivers/scsi/hisi_sas/hisi_sas_v3_hw.c             |  473 +++++----
 include/uapi/linux/ethtool.h                       |   18 +-
 42 files changed, 3552 insertions(+), 1501 deletions(-)
 create mode 100644 drivers/infiniband/hw/hns/hns_roce_hw_v2_dfx.c
 create mode 100644 drivers/infiniband/hw/hns/hns_roce_restrack.c

More information about the kernel-team mailing list