[PATCH net-next v03 0/9] net: hinic3: PF initialization

Fan Gong posted 9 patches 1 month ago
There is a newer version of this series
drivers/net/ethernet/huawei/hinic3/Makefile   |   1 +
.../net/ethernet/huawei/hinic3/hinic3_cmdq.c  | 195 +++++++-
.../net/ethernet/huawei/hinic3/hinic3_cmdq.h  |  15 +
.../ethernet/huawei/hinic3/hinic3_common.c    |   6 +-
.../ethernet/huawei/hinic3/hinic3_common.h    |   1 +
.../net/ethernet/huawei/hinic3/hinic3_csr.h   |   2 +
.../net/ethernet/huawei/hinic3/hinic3_eqs.c   |  65 +++
.../net/ethernet/huawei/hinic3/hinic3_eqs.h   |   5 +
.../ethernet/huawei/hinic3/hinic3_ethtool.c   | 425 ++++++++++++++++++
.../ethernet/huawei/hinic3/hinic3_hw_cfg.c    |  47 +-
.../ethernet/huawei/hinic3/hinic3_hw_cfg.h    |   8 +
.../ethernet/huawei/hinic3/hinic3_hw_comm.c   |  69 +++
.../ethernet/huawei/hinic3/hinic3_hw_comm.h   |   2 +
.../ethernet/huawei/hinic3/hinic3_hw_intf.h   |  12 +
.../net/ethernet/huawei/hinic3/hinic3_hwdev.c |   9 +
.../net/ethernet/huawei/hinic3/hinic3_hwdev.h |   1 +
.../net/ethernet/huawei/hinic3/hinic3_hwif.c  |  23 +-
.../net/ethernet/huawei/hinic3/hinic3_lld.c   |   1 +
.../net/ethernet/huawei/hinic3/hinic3_main.c  |   3 +
.../net/ethernet/huawei/hinic3/hinic3_mbox.c  |  39 +-
.../net/ethernet/huawei/hinic3/hinic3_mbox.h  |   4 +
.../huawei/hinic3/hinic3_mgmt_interface.h     |  16 +-
.../huawei/hinic3/hinic3_netdev_ops.c         |  16 +-
.../ethernet/huawei/hinic3/hinic3_nic_cfg.c   |  77 ++++
.../ethernet/huawei/hinic3/hinic3_nic_cfg.h   | 110 +++++
.../ethernet/huawei/hinic3/hinic3_nic_dev.h   |   3 +
.../huawei/hinic3/hinic3_pci_id_tbl.h         |   1 +
.../net/ethernet/huawei/hinic3/hinic3_rss.c   |   2 +-
.../net/ethernet/huawei/hinic3/hinic3_rx.c    |  15 +
.../net/ethernet/huawei/hinic3/hinic3_rx.h    |   3 +
30 files changed, 1146 insertions(+), 30 deletions(-)
create mode 100644 drivers/net/ethernet/huawei/hinic3/hinic3_ethtool.c
[PATCH net-next v03 0/9] net: hinic3: PF initialization
Posted by Fan Gong 1 month ago
This is [2/3] part of hinic3 Ethernet driver second submission.
With this patch hinic3 becomes a complete Ethernet driver with
pf and vf.

Add cmdq detailed-response interfaces.
Add dump interfaces for cmdq, aeq, ceq and mailbox.
Add msg_send_lock for message sending concurrency.
Add PF device support and chip_present_flag to check cards.
Add rx vlan offload support.
Add PF FLR wait and timeout handling.
Add 5 ethtool ops for information of driver and link.

Changes:

PATCH 02 V01: https://lore.kernel.org/netdev/cover.1771916043.git.zhuyikai1@h-partners.com/
* Add err handling after cmdq_sync_cmd_direct_resp (AI review)
* Merge "cmdq_sync_cmd_detail_resp" and "cmdq_sync_cmd_direct_resp" into
   "cmdq_sync_cmd_exec" (AI review)
* Add "status == HINIC3_PCIE_LINK_DOWN" in check_hwif_ready_handler to check
  card present (AI review)
* Remove unneed GRO feature judgement and move csum_level to hinic3_rx_csum
  (AI review)
* Add chip_present_flag judgement in hinic3_check_flr_finish_handler to avoid
  meaningless polling (AI review)
* Remove unneed judgement in hinic3_parse_l2nic_res_cap (AI review)
* Add hinic3 prefix to get_cap_from_fw and modify error log (AI review)
* Execute hinic3_set_wq_page_size for both PF and VF (AI review)
* Divide v01 patch into two parts (Jakub Kicinski)

PATCH 02 V02: https://lore.kernel.org/netdev/cover.1772697509.git.zhuyikai1@h-partners.com/
* Add le16_to_cpu for printing buf_in->size (AI review)
* Modify hinic3_cfg_hw_pause error handling (AI review)

PATCH 02 V03:

Fan Gong (9):
  hinic3: Add command queue detailed-response interfaces
  hinic3: Add Command Queue/Async Event Queue/Complete Event
    Queue/Mailbox dump interfaces
  hinic3: Add chip_present_flag checks to prevent errors when card is
    absent
  hinic3: Add RX VLAN offload support
  hinic3: Add msg_send_lock for message sending concurrecy
  hinic3: Add PF device support and function type validation
  hinic3: Add PF FLR wait and timeout handling
  hinic3: Add PF/VF capability parsing and parameter validation
  hinic3: Add ethtool basic ops

 drivers/net/ethernet/huawei/hinic3/Makefile   |   1 +
 .../net/ethernet/huawei/hinic3/hinic3_cmdq.c  | 195 +++++++-
 .../net/ethernet/huawei/hinic3/hinic3_cmdq.h  |  15 +
 .../ethernet/huawei/hinic3/hinic3_common.c    |   6 +-
 .../ethernet/huawei/hinic3/hinic3_common.h    |   1 +
 .../net/ethernet/huawei/hinic3/hinic3_csr.h   |   2 +
 .../net/ethernet/huawei/hinic3/hinic3_eqs.c   |  65 +++
 .../net/ethernet/huawei/hinic3/hinic3_eqs.h   |   5 +
 .../ethernet/huawei/hinic3/hinic3_ethtool.c   | 425 ++++++++++++++++++
 .../ethernet/huawei/hinic3/hinic3_hw_cfg.c    |  47 +-
 .../ethernet/huawei/hinic3/hinic3_hw_cfg.h    |   8 +
 .../ethernet/huawei/hinic3/hinic3_hw_comm.c   |  69 +++
 .../ethernet/huawei/hinic3/hinic3_hw_comm.h   |   2 +
 .../ethernet/huawei/hinic3/hinic3_hw_intf.h   |  12 +
 .../net/ethernet/huawei/hinic3/hinic3_hwdev.c |   9 +
 .../net/ethernet/huawei/hinic3/hinic3_hwdev.h |   1 +
 .../net/ethernet/huawei/hinic3/hinic3_hwif.c  |  23 +-
 .../net/ethernet/huawei/hinic3/hinic3_lld.c   |   1 +
 .../net/ethernet/huawei/hinic3/hinic3_main.c  |   3 +
 .../net/ethernet/huawei/hinic3/hinic3_mbox.c  |  39 +-
 .../net/ethernet/huawei/hinic3/hinic3_mbox.h  |   4 +
 .../huawei/hinic3/hinic3_mgmt_interface.h     |  16 +-
 .../huawei/hinic3/hinic3_netdev_ops.c         |  16 +-
 .../ethernet/huawei/hinic3/hinic3_nic_cfg.c   |  77 ++++
 .../ethernet/huawei/hinic3/hinic3_nic_cfg.h   | 110 +++++
 .../ethernet/huawei/hinic3/hinic3_nic_dev.h   |   3 +
 .../huawei/hinic3/hinic3_pci_id_tbl.h         |   1 +
 .../net/ethernet/huawei/hinic3/hinic3_rss.c   |   2 +-
 .../net/ethernet/huawei/hinic3/hinic3_rx.c    |  15 +
 .../net/ethernet/huawei/hinic3/hinic3_rx.h    |   3 +
 30 files changed, 1146 insertions(+), 30 deletions(-)
 create mode 100644 drivers/net/ethernet/huawei/hinic3/hinic3_ethtool.c


base-commit: ad3dfa80be765757f612da04318248f6d20e4f71
-- 
2.43.0