Message ID | 1542956179-80951-1-git-send-email-wenzhuo.lu@intel.com (mailing list archive) |
---|---|
Headers |
Return-Path: <dev-bounces@dpdk.org> X-Original-To: patchwork@dpdk.org Delivered-To: patchwork@dpdk.org Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 29ADA1B4AE; Fri, 23 Nov 2018 07:51:47 +0100 (CET) Received: from mga12.intel.com (mga12.intel.com [192.55.52.136]) by dpdk.org (Postfix) with ESMTP id F1AF21D7 for <dev@dpdk.org>; Fri, 23 Nov 2018 07:51:44 +0100 (CET) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga006.fm.intel.com ([10.253.24.20]) by fmsmga106.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 22 Nov 2018 22:51:43 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.56,268,1539673200"; d="scan'208";a="283483425" Received: from dpdk26.sh.intel.com ([10.67.110.161]) by fmsmga006.fm.intel.com with ESMTP; 22 Nov 2018 22:51:43 -0800 From: Wenzhuo Lu <wenzhuo.lu@intel.com> To: dev@dpdk.org Cc: Wenzhuo Lu <wenzhuo.lu@intel.com> Date: Fri, 23 Nov 2018 14:56:00 +0800 Message-Id: <1542956179-80951-1-git-send-email-wenzhuo.lu@intel.com> X-Mailer: git-send-email 1.9.3 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Subject: [dpdk-dev] [PATCH 00/19] A new net PMD - ice X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions <dev.dpdk.org> List-Unsubscribe: <https://mails.dpdk.org/options/dev>, <mailto:dev-request@dpdk.org?subject=unsubscribe> List-Archive: <http://mails.dpdk.org/archives/dev/> List-Post: <mailto:dev@dpdk.org> List-Help: <mailto:dev-request@dpdk.org?subject=help> List-Subscribe: <https://mails.dpdk.org/listinfo/dev>, <mailto:dev-request@dpdk.org?subject=subscribe> Errors-To: dev-bounces@dpdk.org Sender: "dev" <dev-bounces@dpdk.org> |
Series |
A new net PMD - ice
|
|
Message
Wenzhuo Lu
Nov. 23, 2018, 6:56 a.m. UTC
This patch set adds the support of a new net PMD, IntelĀ® Ethernet Network Adapters E810, also called ice. Besides enabling this new NIC, also some other features supported on this NIC. Like below, Basic features: 1, Basic device operations: probe, initialization, start/stop, configure, info get. 2, RX/TX queue operations: setup/release, start/stop, info get. 3, RX/TX. HW Offload features: 1, CRC Stripping/insertion. 2, L2/L3 checksum strip/insertion. 3, PVID set. 4, TPID change. 5, TSO (LRO/RSC not supported). Stats: 1, statics & xstatics. Switch functions: 1, MAC Filter Add/Delete. 2, VLAN Filter Add/Delete. Power saving: 1, RX interrupt mode. Misc: 1, Interrupt For Link Status. 2, firmware info query. 3, Jumbo Frame Support. 4, ptype check. 5, EEPROM check and set. Wenzhuo Lu (19): net/ice: add base code net/ice: support device initialization net/ice: support device and queue ops net/ice: support getting device information net/ice: support packet type getting net/ice: support link update net/ice: support MTU setting net/ice: support MAC ops net/ice: support VLAN ops net/ice: support RSS net/ice: support RX queue interruption net/ice: support FW version getting net/ice: support EEPROM information getting net/ice: support statistics net/ice: support queue information getting net/ice: support basic RX/TX net/ice: support advance RX/TX net/ice: support descriptor ops doc: add ICE description and update release note MAINTAINERS | 7 + config/common_base | 9 + doc/guides/nics/features/ice.ini | 39 + doc/guides/nics/ice.rst | 78 + drivers/net/Makefile | 1 + drivers/net/ice/Makefile | 76 + drivers/net/ice/base/README | 22 + drivers/net/ice/base/ice_acl.c | 4 + drivers/net/ice/base/ice_acl.h | 7 + drivers/net/ice/base/ice_acl_ctrl.c | 4 + drivers/net/ice/base/ice_adminq_cmd.h | 1724 ++++++ drivers/net/ice/base/ice_alloc.h | 22 + drivers/net/ice/base/ice_bitops.h | 233 + drivers/net/ice/base/ice_common.c | 3332 ++++++++++ drivers/net/ice/base/ice_common.h | 159 + drivers/net/ice/base/ice_controlq.c | 1098 ++++ drivers/net/ice/base/ice_controlq.h | 97 + drivers/net/ice/base/ice_devids.h | 17 + drivers/net/ice/base/ice_flex_pipe.c | 5 + drivers/net/ice/base/ice_flex_pipe.h | 83 + drivers/net/ice/base/ice_flex_type.h | 19 + drivers/net/ice/base/ice_flow.c | 4 + drivers/net/ice/base/ice_flow.h | 8 + drivers/net/ice/base/ice_hw_autogen.h | 9815 ++++++++++++++++++++++++++++++ drivers/net/ice/base/ice_impl_guide.c | 167 + drivers/net/ice/base/ice_lan_tx_rx.h | 2290 +++++++ drivers/net/ice/base/ice_nvm.c | 388 ++ drivers/net/ice/base/ice_osdep.h | 491 ++ drivers/net/ice/base/ice_protocol_type.h | 237 + drivers/net/ice/base/ice_sbq_cmd.h | 93 + drivers/net/ice/base/ice_sched.c | 1715 ++++++ drivers/net/ice/base/ice_sched.h | 68 + drivers/net/ice/base/ice_sriov.c | 129 + drivers/net/ice/base/ice_sriov.h | 35 + drivers/net/ice/base/ice_status.h | 45 + drivers/net/ice/base/ice_switch.c | 2415 ++++++++ drivers/net/ice/base/ice_switch.h | 320 + drivers/net/ice/base/ice_type.h | 789 +++ drivers/net/ice/base/virtchnl.h | 787 +++ drivers/net/ice/ice_ethdev.c | 3302 ++++++++++ drivers/net/ice/ice_ethdev.h | 318 + drivers/net/ice/ice_lan_rxtx.c | 2922 +++++++++ drivers/net/ice/ice_logs.h | 45 + drivers/net/ice/ice_rxtx.h | 155 + drivers/net/ice/rte_pmd_ice_version.map | 4 + mk/rte.app.mk | 1 + 46 files changed, 33579 insertions(+) create mode 100644 doc/guides/nics/features/ice.ini create mode 100644 doc/guides/nics/ice.rst create mode 100644 drivers/net/ice/Makefile create mode 100644 drivers/net/ice/base/README create mode 100644 drivers/net/ice/base/ice_acl.c create mode 100644 drivers/net/ice/base/ice_acl.h create mode 100644 drivers/net/ice/base/ice_acl_ctrl.c create mode 100644 drivers/net/ice/base/ice_adminq_cmd.h create mode 100644 drivers/net/ice/base/ice_alloc.h create mode 100644 drivers/net/ice/base/ice_bitops.h create mode 100644 drivers/net/ice/base/ice_common.c create mode 100644 drivers/net/ice/base/ice_common.h create mode 100644 drivers/net/ice/base/ice_controlq.c create mode 100644 drivers/net/ice/base/ice_controlq.h create mode 100644 drivers/net/ice/base/ice_devids.h create mode 100644 drivers/net/ice/base/ice_flex_pipe.c create mode 100644 drivers/net/ice/base/ice_flex_pipe.h create mode 100644 drivers/net/ice/base/ice_flex_type.h create mode 100644 drivers/net/ice/base/ice_flow.c create mode 100644 drivers/net/ice/base/ice_flow.h create mode 100644 drivers/net/ice/base/ice_hw_autogen.h create mode 100644 drivers/net/ice/base/ice_impl_guide.c create mode 100644 drivers/net/ice/base/ice_lan_tx_rx.h create mode 100644 drivers/net/ice/base/ice_nvm.c create mode 100644 drivers/net/ice/base/ice_osdep.h create mode 100644 drivers/net/ice/base/ice_protocol_type.h create mode 100644 drivers/net/ice/base/ice_sbq_cmd.h create mode 100644 drivers/net/ice/base/ice_sched.c create mode 100644 drivers/net/ice/base/ice_sched.h create mode 100644 drivers/net/ice/base/ice_sriov.c create mode 100644 drivers/net/ice/base/ice_sriov.h create mode 100644 drivers/net/ice/base/ice_status.h create mode 100644 drivers/net/ice/base/ice_switch.c create mode 100644 drivers/net/ice/base/ice_switch.h create mode 100644 drivers/net/ice/base/ice_type.h create mode 100644 drivers/net/ice/base/virtchnl.h create mode 100644 drivers/net/ice/ice_ethdev.c create mode 100644 drivers/net/ice/ice_ethdev.h create mode 100644 drivers/net/ice/ice_lan_rxtx.c create mode 100644 drivers/net/ice/ice_logs.h create mode 100644 drivers/net/ice/ice_rxtx.h create mode 100644 drivers/net/ice/rte_pmd_ice_version.map
Comments
Hi Wenzhuo,
23/11/2018 07:56, Wenzhuo Lu:
> net/ice: add base code
This first patch is really too big.
Please could you try to split it logically?
Hi Thomas, > -----Original Message----- > From: Thomas Monjalon [mailto:thomas@monjalon.net] > Sent: Friday, November 23, 2018 7:00 PM > To: Lu, Wenzhuo <wenzhuo.lu@intel.com> > Cc: dev@dpdk.org > Subject: Re: [dpdk-dev] [PATCH 00/19] A new net PMD - ice > > Hi Wenzhuo, > > 23/11/2018 07:56, Wenzhuo Lu: > > net/ice: add base code > > This first patch is really too big. > Please could you try to split it logically? This is base code which is not developed by us. We're not so familiar with it. It's the first time to release the code, I know it's too big, to us too. But anyway we'll maintain it. To save the effort, we always don't split the base code when releasing it at the first time. Is that OK?
05/12/2018 07:39, Lu, Wenzhuo: > From: Thomas Monjalon [mailto:thomas@monjalon.net] > > 23/11/2018 07:56, Wenzhuo Lu: > > > net/ice: add base code > > > > This first patch is really too big. > > Please could you try to split it logically? > > This is base code which is not developed by us. We're not so familiar with it. It's the first time to release the code, I know it's too big, to us too. But anyway we'll maintain it. > To save the effort, we always don't split the base code when releasing it at the first time. Is that OK? It's not the best start. How a very new driver can start with so many code and not being fully understood by those who will maintain it? It's really better to start small and grow. It would ease both testing and understanding.
> -----Original Message----- > From: Thomas Monjalon [mailto:thomas@monjalon.net] > Sent: Wednesday, December 5, 2018 3:29 PM > To: Lu, Wenzhuo <wenzhuo.lu@intel.com> > Cc: dev@dpdk.org > Subject: Re: [dpdk-dev] [PATCH 00/19] A new net PMD - ice > > 05/12/2018 07:39, Lu, Wenzhuo: > > From: Thomas Monjalon [mailto:thomas@monjalon.net] > > > 23/11/2018 07:56, Wenzhuo Lu: > > > > net/ice: add base code > > > > > > This first patch is really too big. > > > Please could you try to split it logically? > > > > This is base code which is not developed by us. We're not so familiar with > it. It's the first time to release the code, I know it's too big, to us too. But > anyway we'll maintain it. > > To save the effort, we always don't split the base code when releasing it at > the first time. Is that OK? > > It's not the best start. > How a very new driver can start with so many code and not being fully > understood by those who will maintain it? > > It's really better to start small and grow. > It would ease both testing and understanding. Agree ideally it's much better if I can understand the whole code. But there's about 26K lines of code. I cannot lie to say I or any single person can fully understand all of them. There's a team that's supporting us. If any bug related to the code, we'll ask the help from the team. Even we found the root cause of the bug, we'd like getting confirm from them. That's how we make it work for all our NICs.