[PULL v3][SRU Disco] Hi1620 SoC driver updates
dann frazier
dann.frazier at canonical.com
Wed Jun 26 23:01:55 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 from upstream/linux-next except
for 2 commits that required minor backporting, described in the commit log.
v3:
- Add bug fix: "RDMa/hns: Don't stuck in endless timeout loop"
v2:
- Additional patches from linux-next.
The following changes since commit fdc10a3711d4cb8ae2c42efb2c89dcca919d1e4d:
UBUNTU: Ubuntu-5.0.0-18.19 (2019-06-12 19:29:09 +0200)
are available in the Git repository at:
git://git.launchpad.net/~dannf/ubuntu/+source/linux/+git/linux hi1620-disco-v3
for you to fetch changes up to cbfb779664095490f38b58ac20616fe260153e20:
RDMa/hns: Don't stuck in endless timeout loop (2019-06-26 16:03:05 -0600)
----------------------------------------------------------------
Aya Levin (1):
ethtool: Added support for 50Gbps per lane link modes
Colin Ian King (3):
net: hns3: remove redundant assignment of l2_hdr to itself
RDMA/hns: fix inverted logic of readl read and shift
net: hns3: fix dereference of ae_dev before it is null checked
Geert Uytterhoeven (1):
net: hns3: Add missing newline at end of file
Huazhong Tan (36):
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()
net: hns3: use HCLGE_STATE_NIC_REGISTERED to indicate PF NIC client has registered
net: hns3: use HCLGE_STATE_ROCE_REGISTERED to indicate PF ROCE client has registered
net: hns3: use HCLGEVF_STATE_NIC_REGISTERED to indicate VF NIC client has registered
net: hns3: modify hclge_init_client_instance()
net: hns3: modify hclgevf_init_client_instance()
net: hns3: add handshake with hardware while doing reset
net: hns3: stop schedule reset service while unloading driver
net: hns3: adjust hns3_uninit_phy()'s location in the hns3_client_uninit()
net: hns3: fix a memory leak issue for hclge_map_unmap_ring_to_vf_vector
net: hns3: remove redundant core reset
Jian Shen (22):
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
net: hns3: initialize CPU reverse mapping
net: hns3: refine the flow director handle
net: hns3: add aRFS support for PF
net: hns3: fix for FEC configuration
net: hns3: fix compile warning without CONFIG_RFS_ACCEL
net: hns3: don't configure new VLAN ID into VF VLAN table when it's full
net: hns3: fix VLAN filter restore issue after reset
net: hns3: small changes for magic numbers
John Garry (2):
scsi: hisi_sas: Fix for setting the PHY linkrate when disconnected
scsi: hisi_sas: Reduce HISI_SAS_SGE_PAGE_CNT in size
Krzysztof Kozlowski (1):
net: hns3: Fix inconsistent indenting
Lang Cheng (2):
RDMA/hns: Move spin_lock_irqsave to the correct place
RDMA/hns: Remove jiffies operation in disable interrupt context
Leon Romanovsky (3):
RDMA/hns: Limit scope of hns_roce_cmq_send()
RDMA/hns: Fix bad endianess of port_pd variable
RDMa/hns: Don't stuck in endless timeout loop
Lijun Ou (14):
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
RDMA/hns: Update CQE specifications
RDMA/hns: Replace magic numbers with #defines
RDMA/hns: Bugfix for posting multiple srq work request
RDMA/hns: Bugfix for filling the sge of srq
Luo Jiaxing (3):
scsi: hisi_sas: Don't hard reset disk during controller reset
scsi: hisi_sas: Don't fail IT nexus reset for Open Reject timeout
scsi: hisi_sas: Ignore the error code between phy down to phy up
Matthew Wilcox (2):
RDMA/hns: Convert cq_table to XArray
RDMA/hns: Convert qp_table_tree to XArray
Peng Li (5):
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
net: hns3: clear restting state when initializing HW device
Shiju Jose (4):
net: hns3: delay setting of reset level for hw errors until slot_reset is called
net: hns3: fix avoid unnecessary resetting for the H/W errors which do not require reset
net: hns3: process H/W errors occurred before HNS dev initialization
net: hns3: add recovery for the H/W errors occurred before the HNS dev initialization
Weihang Li (15):
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
net: hns3: add a check to pointer in error_detected and slot_reset
net: hns3: set ops to null when unregister ad_dev
net: hns3: add handling of two bits in MAC tunnel interrupts
net: hns3: remove setting bit of reset_requests when handling mac tunnel interrupts
net: hns3: add opcode about query and clear RAS & MSI-X to special opcode
net: hns3: delay and separate enabling of NIC and ROCE HW errors
net: hns3: trigger VF reset if a VF has an over_8bd_nfe_err
net: hns3: fix some coding style issues
net: hns3: some changes of MSI-X bits in PPU(RCB)
net: hns3: extract handling of mpf/pf msi-x errors into functions
net: hns3: some variable modification
Xi Wang (1):
net: hns3: fix compile error
Xiang Chen (8):
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
scsi: hisi_sas: Delete PHY timers when rmmod or probe failed
scsi: hisi_sas: Change the type of some numbers to unsigned
scsi: hisi_sas: Disable stash for v3 hw
Xiaofei Tan (3):
scsi: hisi_sas: Support all RAS events with MSI interrupts
net: hns3: log detail error info of ROCEE ECC and AXI errors
scsi: hisi_sas: Fix the issue of argument mismatch of printing ecc errors
Yangyang Li (1):
RDMA/hns: Bugfix for SCC hem free
Yixian Liu (1):
RDMA/hns: Remove unnecessary print message in aeq
Yonglong Liu (4):
net: hns3: reduce resources use in kdump kernel
net: hns3: Add support for netif message level settings
net: hns3: delete the redundant user NIC codes
net: hns3: free irq when exit from abnormal branch
YueHaibing (2):
net: hns3: Make hclgevf_update_link_mode static
net: hns3: Make hclge_destroy_cmd_queue static
Yufeng Mo (4):
net: hns3: add function type check for debugfs help information
net: hns3: use macros instead of magic numbers
net: hns3: refactor PF/VF RSS hash key configuration
net: hns3: some modifications to simplify and optimize code
Yunsheng Lin (30):
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
net: hns3: fix for HNS3_RXD_GRO_SIZE_M macro
net: hns3: set the port shaper according to MAC speed
net: hns3: make HW GRO handling compliant with SW GRO
net: hns3: replace numa_node_id with numa_mem_id for buffer reusing
net: hns3: refactor hns3_get_new_int_gl function
net: hns3: fix for dereferencing before null checking
net: hns3: fix for skb leak when doing selftest
net: hns3: delay ring buffer clearing during reset
Zhongzhu Liu (2):
net: hns3: add support for dump firmware statistics by debugfs
net: hns3: fix wrong size of mailbox responding data
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_db.c | 8 +-
drivers/infiniband/hw/hns/hns_roce_device.h | 56 +-
drivers/infiniband/hw/hns/hns_roce_hem.c | 45 +-
drivers/infiniband/hw/hns/hns_roce_hem.h | 2 +-
drivers/infiniband/hw/hns/hns_roce_hw_v1.c | 26 +-
drivers/infiniband/hw/hns/hns_roce_hw_v2.c | 390 ++--
drivers/infiniband/hw/hns/hns_roce_hw_v2.h | 13 +-
drivers/infiniband/hw/hns/hns_roce_hw_v2_dfx.c | 35 +
drivers/infiniband/hw/hns/hns_roce_main.c | 18 +-
drivers/infiniband/hw/hns/hns_roce_mr.c | 47 +-
drivers/infiniband/hw/hns/hns_roce_qp.c | 55 +-
drivers/infiniband/hw/hns/hns_roce_restrack.c | 126 ++
drivers/infiniband/hw/hns/hns_roce_srq.c | 15 +-
drivers/net/ethernet/hisilicon/hns3/hclge_mbx.h | 13 +-
drivers/net/ethernet/hisilicon/hns3/hnae3.c | 64 +-
drivers/net/ethernet/hisilicon/hns3/hnae3.h | 72 +-
drivers/net/ethernet/hisilicon/hns3/hns3_dcbnl.c | 12 +-
drivers/net/ethernet/hisilicon/hns3/hns3_debugfs.c | 15 +-
drivers/net/ethernet/hisilicon/hns3/hns3_enet.c | 1329 +++++++------
drivers/net/ethernet/hisilicon/hns3/hns3_enet.h | 45 +-
drivers/net/ethernet/hisilicon/hns3/hns3_ethtool.c | 256 ++-
.../net/ethernet/hisilicon/hns3/hns3pf/Makefile | 2 +-
.../net/ethernet/hisilicon/hns3/hns3pf/hclge_cmd.c | 29 +-
.../net/ethernet/hisilicon/hns3/hns3pf/hclge_cmd.h | 68 +-
.../ethernet/hisilicon/hns3/hns3pf/hclge_debugfs.c | 201 +-
.../net/ethernet/hisilicon/hns3/hns3pf/hclge_err.c | 1385 +++++++++-----
.../net/ethernet/hisilicon/hns3/hns3pf/hclge_err.h | 15 +-
.../ethernet/hisilicon/hns3/hns3pf/hclge_main.c | 1952 +++++++++++++++-----
.../ethernet/hisilicon/hns3/hns3pf/hclge_main.h | 131 +-
.../net/ethernet/hisilicon/hns3/hns3pf/hclge_mbx.c | 101 +-
.../ethernet/hisilicon/hns3/hns3pf/hclge_mdio.c | 16 +-
.../net/ethernet/hisilicon/hns3/hns3pf/hclge_tm.c | 150 +-
.../net/ethernet/hisilicon/hns3/hns3vf/Makefile | 4 +-
.../ethernet/hisilicon/hns3/hns3vf/hclgevf_cmd.c | 54 +-
.../ethernet/hisilicon/hns3/hns3vf/hclgevf_main.c | 325 +++-
.../ethernet/hisilicon/hns3/hns3vf/hclgevf_main.h | 22 +-
.../ethernet/hisilicon/hns3/hns3vf/hclgevf_mbx.c | 30 +-
drivers/scsi/hisi_sas/hisi_sas.h | 7 +-
drivers/scsi/hisi_sas/hisi_sas_main.c | 112 +-
drivers/scsi/hisi_sas/hisi_sas_v1_hw.c | 21 +-
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c | 95 +-
drivers/scsi/hisi_sas/hisi_sas_v3_hw.c | 495 +++--
include/uapi/linux/ethtool.h | 18 +-
47 files changed, 5423 insertions(+), 2492 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