netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Gur Stavi <gur.stavi@huawei.com>
To: Gur Stavi <gur.stavi@huawei.com>, gongfan <gongfan1@huawei.com>
Cc: <netdev@vger.kernel.org>, <linux-kernel@vger.kernel.org>,
	"David S. Miller" <davem@davemloft.net>,
	Eric Dumazet <edumazet@google.com>,
	Jakub Kicinski <kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com>,
	Simon Horman <horms@kernel.org>,
	Andrew Lunn <andrew+netdev@lunn.ch>, <linux-doc@vger.kernel.org>,
	Jonathan Corbet <corbet@lwn.net>,
	Cai Huoqing <cai.huoqing@linux.dev>,
	Xin Guo <guoxin09@huawei.com>,
	Shen Chenyang <shenchenyang1@hisilicon.com>,
	Zhou Shuai <zhoushuai28@huawei.com>, Wu Like <wulike1@huawei.com>,
	Shi Jing <shijing34@huawei.com>,
	Meny Yossefi <meny.yossefi@huawei.com>
Subject: [RFC net-next v02 0/3] net: hinic3: Add a driver for Huawei 3rd gen NIC
Date: Thu, 12 Dec 2024 14:04:14 +0200	[thread overview]
Message-ID: <cover.1733990727.git.gur.stavi@huawei.com> (raw)

The patch-set contains driver for Huawei's 3rd generation HiNIC
Ethernet device that will be available in the future.

This is an SRIOV device, designed for data centers.
Initially, the driver only supports VFs.

Following the discussion over RFC01, the code will be submitted in
separate smaller patches where until the last patch the driver is
non-functional.
This RFC02 is an overall view of the entire driver but every patch will be
posted as a standalone submission.

Changes:

V01: https://lore.kernel.org/netdev/cover.1730290527.git.gur.stavi@huawei.com
* Reduce overall line of code by removing optional functionality.
* Break down into smaller patches.

gongfan (3):
  net: hinic3: module initialization and tx/rx logic
  net: hinic3: management interfaces
  net: hinic3: sw and hw initialization code

 .../device_drivers/ethernet/huawei/hinic3.rst | 136 +++
 MAINTAINERS                                   |   7 +
 drivers/net/ethernet/huawei/Kconfig           |   1 +
 drivers/net/ethernet/huawei/Makefile          |   1 +
 drivers/net/ethernet/huawei/hinic3/Kconfig    |  16 +
 drivers/net/ethernet/huawei/hinic3/Makefile   |  25 +
 .../net/ethernet/huawei/hinic3/hinic3_cmdq.c  | 898 ++++++++++++++++++
 .../net/ethernet/huawei/hinic3/hinic3_cmdq.h  | 150 +++
 .../ethernet/huawei/hinic3/hinic3_common.c    |  98 ++
 .../ethernet/huawei/hinic3/hinic3_common.h    |  54 ++
 .../net/ethernet/huawei/hinic3/hinic3_csr.h   |  74 ++
 .../net/ethernet/huawei/hinic3/hinic3_eqs.c   | 786 +++++++++++++++
 .../net/ethernet/huawei/hinic3/hinic3_eqs.h   | 128 +++
 .../ethernet/huawei/hinic3/hinic3_hw_cfg.c    | 266 ++++++
 .../ethernet/huawei/hinic3/hinic3_hw_cfg.h    |  62 ++
 .../ethernet/huawei/hinic3/hinic3_hw_comm.c   | 412 ++++++++
 .../ethernet/huawei/hinic3/hinic3_hw_comm.h   |  42 +
 .../ethernet/huawei/hinic3/hinic3_hw_intf.h   | 248 +++++
 .../net/ethernet/huawei/hinic3/hinic3_hwdev.c | 569 +++++++++++
 .../net/ethernet/huawei/hinic3/hinic3_hwdev.h |  82 ++
 .../net/ethernet/huawei/hinic3/hinic3_hwif.c  | 430 +++++++++
 .../net/ethernet/huawei/hinic3/hinic3_hwif.h  |  91 ++
 .../net/ethernet/huawei/hinic3/hinic3_irq.c   | 172 ++++
 .../net/ethernet/huawei/hinic3/hinic3_lld.c   | 417 ++++++++
 .../net/ethernet/huawei/hinic3/hinic3_lld.h   |  20 +
 .../net/ethernet/huawei/hinic3/hinic3_main.c  | 417 ++++++++
 .../net/ethernet/huawei/hinic3/hinic3_mbox.c  | 844 ++++++++++++++++
 .../net/ethernet/huawei/hinic3/hinic3_mbox.h  | 147 +++
 .../net/ethernet/huawei/hinic3/hinic3_mgmt.c  |  21 +
 .../net/ethernet/huawei/hinic3/hinic3_mgmt.h  |  14 +
 .../huawei/hinic3/hinic3_mgmt_interface.h     | 212 +++++
 .../huawei/hinic3/hinic3_netdev_ops.c         | 518 ++++++++++
 .../ethernet/huawei/hinic3/hinic3_nic_cfg.c   | 395 ++++++++
 .../ethernet/huawei/hinic3/hinic3_nic_cfg.h   |  76 ++
 .../ethernet/huawei/hinic3/hinic3_nic_dev.h   | 107 +++
 .../ethernet/huawei/hinic3/hinic3_nic_io.c    | 885 +++++++++++++++++
 .../ethernet/huawei/hinic3/hinic3_nic_io.h    | 142 +++
 .../huawei/hinic3/hinic3_pci_id_tbl.h         |  10 +
 .../huawei/hinic3/hinic3_queue_common.c       |  65 ++
 .../huawei/hinic3/hinic3_queue_common.h       |  51 +
 .../net/ethernet/huawei/hinic3/hinic3_rss.c   | 378 ++++++++
 .../net/ethernet/huawei/hinic3/hinic3_rss.h   |  14 +
 .../net/ethernet/huawei/hinic3/hinic3_rx.c    | 620 ++++++++++++
 .../net/ethernet/huawei/hinic3/hinic3_rx.h    | 104 ++
 .../net/ethernet/huawei/hinic3/hinic3_tx.c    | 817 ++++++++++++++++
 .../net/ethernet/huawei/hinic3/hinic3_tx.h    | 141 +++
 .../net/ethernet/huawei/hinic3/hinic3_wq.c    | 132 +++
 .../net/ethernet/huawei/hinic3/hinic3_wq.h    |  87 ++
 48 files changed, 11382 insertions(+)
 create mode 100644 Documentation/networking/device_drivers/ethernet/huawei/hinic3.rst
 create mode 100644 drivers/net/ethernet/huawei/hinic3/Kconfig
 create mode 100644 drivers/net/ethernet/huawei/hinic3/Makefile
 create mode 100644 drivers/net/ethernet/huawei/hinic3/hinic3_cmdq.c
 create mode 100644 drivers/net/ethernet/huawei/hinic3/hinic3_cmdq.h
 create mode 100644 drivers/net/ethernet/huawei/hinic3/hinic3_common.c
 create mode 100644 drivers/net/ethernet/huawei/hinic3/hinic3_common.h
 create mode 100644 drivers/net/ethernet/huawei/hinic3/hinic3_csr.h
 create mode 100644 drivers/net/ethernet/huawei/hinic3/hinic3_eqs.c
 create mode 100644 drivers/net/ethernet/huawei/hinic3/hinic3_eqs.h
 create mode 100644 drivers/net/ethernet/huawei/hinic3/hinic3_hw_cfg.c
 create mode 100644 drivers/net/ethernet/huawei/hinic3/hinic3_hw_cfg.h
 create mode 100644 drivers/net/ethernet/huawei/hinic3/hinic3_hw_comm.c
 create mode 100644 drivers/net/ethernet/huawei/hinic3/hinic3_hw_comm.h
 create mode 100644 drivers/net/ethernet/huawei/hinic3/hinic3_hw_intf.h
 create mode 100644 drivers/net/ethernet/huawei/hinic3/hinic3_hwdev.c
 create mode 100644 drivers/net/ethernet/huawei/hinic3/hinic3_hwdev.h
 create mode 100644 drivers/net/ethernet/huawei/hinic3/hinic3_hwif.c
 create mode 100644 drivers/net/ethernet/huawei/hinic3/hinic3_hwif.h
 create mode 100644 drivers/net/ethernet/huawei/hinic3/hinic3_irq.c
 create mode 100644 drivers/net/ethernet/huawei/hinic3/hinic3_lld.c
 create mode 100644 drivers/net/ethernet/huawei/hinic3/hinic3_lld.h
 create mode 100644 drivers/net/ethernet/huawei/hinic3/hinic3_main.c
 create mode 100644 drivers/net/ethernet/huawei/hinic3/hinic3_mbox.c
 create mode 100644 drivers/net/ethernet/huawei/hinic3/hinic3_mbox.h
 create mode 100644 drivers/net/ethernet/huawei/hinic3/hinic3_mgmt.c
 create mode 100644 drivers/net/ethernet/huawei/hinic3/hinic3_mgmt.h
 create mode 100644 drivers/net/ethernet/huawei/hinic3/hinic3_mgmt_interface.h
 create mode 100644 drivers/net/ethernet/huawei/hinic3/hinic3_netdev_ops.c
 create mode 100644 drivers/net/ethernet/huawei/hinic3/hinic3_nic_cfg.c
 create mode 100644 drivers/net/ethernet/huawei/hinic3/hinic3_nic_cfg.h
 create mode 100644 drivers/net/ethernet/huawei/hinic3/hinic3_nic_dev.h
 create mode 100644 drivers/net/ethernet/huawei/hinic3/hinic3_nic_io.c
 create mode 100644 drivers/net/ethernet/huawei/hinic3/hinic3_nic_io.h
 create mode 100644 drivers/net/ethernet/huawei/hinic3/hinic3_pci_id_tbl.h
 create mode 100644 drivers/net/ethernet/huawei/hinic3/hinic3_queue_common.c
 create mode 100644 drivers/net/ethernet/huawei/hinic3/hinic3_queue_common.h
 create mode 100644 drivers/net/ethernet/huawei/hinic3/hinic3_rss.c
 create mode 100644 drivers/net/ethernet/huawei/hinic3/hinic3_rss.h
 create mode 100644 drivers/net/ethernet/huawei/hinic3/hinic3_rx.c
 create mode 100644 drivers/net/ethernet/huawei/hinic3/hinic3_rx.h
 create mode 100644 drivers/net/ethernet/huawei/hinic3/hinic3_tx.c
 create mode 100644 drivers/net/ethernet/huawei/hinic3/hinic3_tx.h
 create mode 100644 drivers/net/ethernet/huawei/hinic3/hinic3_wq.c
 create mode 100644 drivers/net/ethernet/huawei/hinic3/hinic3_wq.h


base-commit: 65fb414c93f486cef5408951350f20552113abd0
--
2.45.2


             reply	other threads:[~2024-12-12 11:51 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-12-12 12:04 Gur Stavi [this message]
2024-12-12 12:04 ` [RFC net-next v02 1/3] net: hinic3: module initialization and tx/rx logic Gur Stavi
2024-12-12 17:02   ` Bjorn Helgaas
2024-12-15  8:59     ` Gur Stavi
2024-12-12 17:41   ` Andrew Lunn
2024-12-19  8:55     ` Gur Stavi
2024-12-19  8:46       ` Andrew Lunn
2024-12-19  9:28         ` Gur Stavi
2024-12-12 12:04 ` [RFC net-next v02 2/3] net: hinic3: management interfaces Gur Stavi
2024-12-12 12:04 ` [RFC net-next v02 3/3] net: hinic3: sw and hw initialization code Gur Stavi

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=cover.1733990727.git.gur.stavi@huawei.com \
    --to=gur.stavi@huawei.com \
    --cc=andrew+netdev@lunn.ch \
    --cc=cai.huoqing@linux.dev \
    --cc=corbet@lwn.net \
    --cc=davem@davemloft.net \
    --cc=edumazet@google.com \
    --cc=gongfan1@huawei.com \
    --cc=guoxin09@huawei.com \
    --cc=horms@kernel.org \
    --cc=kuba@kernel.org \
    --cc=linux-doc@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=meny.yossefi@huawei.com \
    --cc=netdev@vger.kernel.org \
    --cc=pabeni@redhat.com \
    --cc=shenchenyang1@hisilicon.com \
    --cc=shijing34@huawei.com \
    --cc=wulike1@huawei.com \
    --cc=zhoushuai28@huawei.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).