Message ID | 1600949555-28043-1-git-send-email-arybchenko@solarflare.com (mailing list archive) |
---|---|
Headers |
Return-Path: <dev-bounces@dpdk.org> X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 8DF34A04B1; Thu, 24 Sep 2020 14:13:52 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 2386A1DE2C; Thu, 24 Sep 2020 14:13:05 +0200 (CEST) Received: from dispatch1-us1.ppe-hosted.com (dispatch1-us1.ppe-hosted.com [148.163.129.52]) by dpdk.org (Postfix) with ESMTP id EC0831DE00 for <dev@dpdk.org>; Thu, 24 Sep 2020 14:12:53 +0200 (CEST) Received: from mx1-us1.ppe-hosted.com (unknown [10.7.65.60]) by dispatch1-us1.ppe-hosted.com (PPE Hosted ESMTP Server) with ESMTP id 72F8A6008F for <dev@dpdk.org>; Thu, 24 Sep 2020 12:12:53 +0000 (UTC) Received: from us4-mdac16-61.ut7.mdlocal (unknown [10.7.66.58]) by mx1-us1.ppe-hosted.com (PPE Hosted ESMTP Server) with ESMTP id 717E92009A for <dev@dpdk.org>; Thu, 24 Sep 2020 12:12:53 +0000 (UTC) X-Virus-Scanned: Proofpoint Essentials engine Received: from mx1-us1.ppe-hosted.com (unknown [10.7.65.175]) by mx1-us1.ppe-hosted.com (PPE Hosted ESMTP Server) with ESMTPS id E30BE1C0051 for <dev@dpdk.org>; Thu, 24 Sep 2020 12:12:49 +0000 (UTC) Received: from webmail.solarflare.com (uk.solarflare.com [193.34.186.16]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by mx1-us1.ppe-hosted.com (PPE Hosted ESMTP Server) with ESMTPS id 7392C700053 for <dev@dpdk.org>; Thu, 24 Sep 2020 12:12:49 +0000 (UTC) Received: from ukex01.SolarFlarecom.com (10.17.10.4) by ukex01.SolarFlarecom.com (10.17.10.4) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Thu, 24 Sep 2020 13:12:45 +0100 Received: from opal.uk.solarflarecom.com (10.17.10.1) by ukex01.SolarFlarecom.com (10.17.10.4) with Microsoft SMTP Server id 15.0.1497.2 via Frontend Transport; Thu, 24 Sep 2020 13:12:45 +0100 Received: from ukv-loginhost.uk.solarflarecom.com (ukv-loginhost.uk.solarflarecom.com [10.17.10.39]) by opal.uk.solarflarecom.com (8.13.8/8.13.8) with ESMTP id 08OCCj9n025844 for <dev@dpdk.org>; Thu, 24 Sep 2020 13:12:45 +0100 Received: from ukv-loginhost.uk.solarflarecom.com (localhost [127.0.0.1]) by ukv-loginhost.uk.solarflarecom.com (Postfix) with ESMTP id BD0F31613A9 for <dev@dpdk.org>; Thu, 24 Sep 2020 13:12:45 +0100 (BST) From: Andrew Rybchenko <arybchenko@solarflare.com> To: <dev@dpdk.org> Date: Thu, 24 Sep 2020 13:11:35 +0100 Message-ID: <1600949555-28043-1-git-send-email-arybchenko@solarflare.com> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1600764594-14752-1-git-send-email-arybchenko@solarflare.com> References: <1600764594-14752-1-git-send-email-arybchenko@solarflare.com> MIME-Version: 1.0 Content-Type: text/plain X-TM-AS-Product-Ver: SMEX-12.5.0.1300-8.6.1012-25674.003 X-TM-AS-Result: No-4.599600-8.000000-10 X-TMASE-MatchedRID: +C09vFzOuny6yx6FMBgECn4neC0h7SADRf40pT7Zmv73Ru3JrjJxKA9a ESljuMCwNNN0dk/lb45k5NRCsylb+UwWaZA7m5R3bBMSu4v05tO7xmCZDXrutXCHlyx4X5j2fuO dvv6xqlKhmO/RfAItvRRRlRwitBdJK2WYxVdE2l9IcJTn2HkqsQnYwtywxoaBOzrXChUtBARudm gOUVCwDYTiBh4OcqZhWNUOejXwKm9Zd4QvSPO8nvSZ/2axrnPBMI2NtA9qrmI4WKr1PmPdtX1VA AVhzJtLI7uY8/l7m6+UCv8HOvXVaoq/w6hKvELWW1M77Gh1ugY5OMMyyCn/watkcxxU6EVI8CUI tRfmsqCm8h0elQQTofmpjDPjqvkirH9NJG/0SI2QgeuUY0WN7FJVMsx1CTj3xzfbZxx4F4SU8e2 n2dYpprQYR4V+595vVGIKKJekTQTAFhNmLe+SeUNuJSeNFwKYNU8z+tFJHR2+d8e9SCCBEvA/oS FI2FfCFdUs6ssCUGKq24siXERPcXQMGIuvFqGPB8Lglj0iCABSQLJ/PYofeAaYevV4zG3ZX68QU o5lmJDi8zVgXoAltsIJ+4gwXrEtJ0RPnyOnrZLiF2bE36Pz+hKIt7CEHzH7o6aSJybFYe/jRUQU LWvn1tTS73DLzqxfxDG+OQUDy/RnlN+5PBYS8ZnFUeP2nC9u0XyJzCgqhOOqFrt9xUgp+uq+T0I cdvQ1BtPt5WQTZkLauEQaIW46K6fL1/LSJ6vL X-TM-AS-User-Approved-Sender: Yes X-TM-AS-User-Blocked-Sender: No X-TMASE-Result: 10--4.599600-8.000000 X-TMASE-Version: SMEX-12.5.0.1300-8.6.1012-25674.003 X-MDID: 1600949570-UKMt6J62af_W Subject: [dpdk-dev] [PATCH v3 00/60] common/sfc_efx: support Riverhead NIC family 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 |
common/sfc_efx: support Riverhead NIC family
|
|
Message
Andrew Rybchenko
Sept. 24, 2020, 12:11 p.m. UTC
Riverhead is a new NIC family, the first one with EF100 architecture. Control interface is an MCDI similar to EF10. Datapath interface is completely new. The patch series is build tested with and without EFSYS_OPT_RIVERHEAD enabled. EF10-based NICs are tested with the patch series applied with and without EFSYS_OPT_RIVERHEAD enabled. net/sfc patches will follow. v3: - more spelling fixes - fix extremely long lines in common/sfc_efx/base: update MCDI headers v2: - fix spelling in few patches - use tabs to indent instead of spaces Andrew Rybchenko (41): common/sfc_efx/base: add EF100 registers definitions common/sfc_efx/base: update MCDI headers common/sfc_efx/base: add event queue operation to do polling common/sfc_efx/base: add efsys option for Riverhead common/sfc_efx/base: add Riverhead NIC family common/sfc_efx/base: update registers check for Riverhead common/sfc_efx/base: use EF10 MCDI methods for Riverhead common/sfc_efx/base: use EF10 PHY methods for Riverhead common/sfc_efx/base: move 14b prefix check out of caps get common/sfc_efx/base: remove PF count get from caps get common/sfc_efx/base: factor out helper to get board config common/sfc_efx/base: set NIC features in generic place common/sfc_efx/base: factor out MCDI entity reset helper common/sfc_efx/base: add Riverhead support to NIC module common/sfc_efx/base: use dummy tunnel ops for Riverhead common/sfc_efx/base: use EF10 filter methods for Riverhead common/sfc_efx/base: use EF10 MAC methods for Riverhead common/sfc_efx/base: add interrupts module for Riverhead common/sfc_efx/base: move EvQ init/fini wrappers to generic common/sfc_efx/base: move EvQ create generic checks common/sfc_efx/base: prepare to merge EvQ init functions common/sfc_efx/base: merge versions of init EvQ wrappers common/sfc_efx/base: add event queue module for Riverhead common/sfc_efx/base: handle MCDI events on Riverhead common/sfc_efx/base: move RxQ init/fini wrappers to generic common/sfc_efx/base: move TxQ init/fini wrappers to generic common/sfc_efx/base: switch TxQ init to extended version common/sfc_efx/base: maintain RxQ counter in generic code common/sfc_efx/base: free Rx queue structure in generic code common/sfc_efx/base: move Rx index check to generic code common/sfc_efx/base: implement Rx control path for Riverhead common/sfc_efx/base: implement Tx control path for Riverhead common/sfc_efx/base: fix Tx descriptor DMA sync on Riverhead common/sfc_efx/base: handle Rx events for Riverhead common/sfc_efx/base: handle Tx complete on Riverhead common/sfc_efx: do not include libefx headers from efsys.h common/sfc_efx/base: add API to get Rx prefix information common/sfc_efx/base: group RxQ parameters into a structure common/sfc_efx/base: choose smallest Rx prefix on Riverhead common/sfc_efx/base: use EF10 EVB methods for Riverhead common/sfc_efx/base: allocate vAdaptor on Riverhead Andy Moreton (7): common/sfc_efx/base: add option for extended width events common/sfc_efx/base: add 256bit type common/sfc_efx/base: support creation of extended width EvQ common/sfc_efx/base: poll extended width event queues common/sfc_efx/base: handle normal events in extended width common/sfc_efx/base: add option for descriptor proxy queues common/sfc_efx/base: handle descriptor proxy queue events Igor Romanov (9): common/sfc_efx/base: add function control window concept common/sfc_efx/base: add function control window lookup API common/sfc_efx/base: add efsys API to find a memory BAR common/sfc_efx/base: add Xilinx capabilities table lookup common/sfc_efx/base: add NIC magic check on BAR lookup common/sfc_efx/base: introduce UDP tunnel destruct operation common/sfc_efx/base: introduce states for UDP tunnel entries common/sfc_efx/base: support UDP tunnel operations for EF100 common/sfc_efx/base: replace PCI efsys macros with functions Ivan Malov (3): common/sfc_efx/base: complete EvQ creation on Riverhead common/sfc_efx/base: indicate support for TSO version 3 common/sfc_efx/base: report restrictions for TSO version 3 drivers/common/sfc_efx/base/ef10_ev.c | 391 +- drivers/common/sfc_efx/base/ef10_evb.c | 8 +- drivers/common/sfc_efx/base/ef10_filter.c | 24 +- drivers/common/sfc_efx/base/ef10_impl.h | 38 + drivers/common/sfc_efx/base/ef10_mac.c | 6 +- drivers/common/sfc_efx/base/ef10_mcdi.c | 55 +- drivers/common/sfc_efx/base/ef10_nic.c | 413 +- drivers/common/sfc_efx/base/ef10_phy.c | 4 +- drivers/common/sfc_efx/base/ef10_rx.c | 384 +- drivers/common/sfc_efx/base/ef10_tx.c | 137 +- drivers/common/sfc_efx/base/efx.h | 226 +- drivers/common/sfc_efx/base/efx_check.h | 71 +- drivers/common/sfc_efx/base/efx_ev.c | 456 +- drivers/common/sfc_efx/base/efx_evb.c | 24 + drivers/common/sfc_efx/base/efx_filter.c | 18 + drivers/common/sfc_efx/base/efx_impl.h | 252 +- drivers/common/sfc_efx/base/efx_intr.c | 20 + drivers/common/sfc_efx/base/efx_mac.c | 32 + drivers/common/sfc_efx/base/efx_mcdi.c | 588 +- drivers/common/sfc_efx/base/efx_mcdi.h | 11 + drivers/common/sfc_efx/base/efx_nic.c | 102 + drivers/common/sfc_efx/base/efx_pci.c | 367 ++ drivers/common/sfc_efx/base/efx_phy.c | 26 + drivers/common/sfc_efx/base/efx_regs_ef100.h | 934 +++ drivers/common/sfc_efx/base/efx_regs_mcdi.h | 5483 ++++++++++++++++- .../common/sfc_efx/base/efx_regs_mcdi_aoe.h | 201 +- .../common/sfc_efx/base/efx_regs_mcdi_strs.h | 2 +- drivers/common/sfc_efx/base/efx_rx.c | 112 +- drivers/common/sfc_efx/base/efx_tunnel.c | 342 +- drivers/common/sfc_efx/base/efx_tx.c | 35 +- drivers/common/sfc_efx/base/efx_types.h | 581 +- drivers/common/sfc_efx/base/hunt_nic.c | 6 + drivers/common/sfc_efx/base/medford2_nic.c | 6 + drivers/common/sfc_efx/base/medford_nic.c | 6 + drivers/common/sfc_efx/base/meson.build | 10 +- drivers/common/sfc_efx/base/rhead_ev.c | 687 +++ drivers/common/sfc_efx/base/rhead_impl.h | 484 ++ drivers/common/sfc_efx/base/rhead_intr.c | 104 + drivers/common/sfc_efx/base/rhead_nic.c | 633 ++ drivers/common/sfc_efx/base/rhead_pci.c | 146 + drivers/common/sfc_efx/base/rhead_rx.c | 677 ++ drivers/common/sfc_efx/base/rhead_tunnel.c | 343 ++ drivers/common/sfc_efx/base/rhead_tx.c | 192 + drivers/common/sfc_efx/base/siena_nic.c | 10 +- drivers/common/sfc_efx/efsys.h | 9 +- .../sfc_efx/rte_common_sfc_efx_version.map | 3 + drivers/net/sfc/sfc.c | 3 +- drivers/net/sfc/sfc_ev.c | 18 +- 48 files changed, 13193 insertions(+), 1487 deletions(-) create mode 100644 drivers/common/sfc_efx/base/efx_pci.c create mode 100644 drivers/common/sfc_efx/base/efx_regs_ef100.h create mode 100644 drivers/common/sfc_efx/base/rhead_ev.c create mode 100644 drivers/common/sfc_efx/base/rhead_impl.h create mode 100644 drivers/common/sfc_efx/base/rhead_intr.c create mode 100644 drivers/common/sfc_efx/base/rhead_nic.c create mode 100644 drivers/common/sfc_efx/base/rhead_pci.c create mode 100644 drivers/common/sfc_efx/base/rhead_rx.c create mode 100644 drivers/common/sfc_efx/base/rhead_tunnel.c create mode 100644 drivers/common/sfc_efx/base/rhead_tx.c
Comments
On 9/24/2020 1:11 PM, Andrew Rybchenko wrote: > Riverhead is a new NIC family, the first one with EF100 architecture. > Control interface is an MCDI similar to EF10. Datapath interface is > completely new. Hi Andrew, Can you please update documentation and release notes for new Riverhead devices, it is OK to send it as separate patches from this patchset. > > The patch series is build tested with and without EFSYS_OPT_RIVERHEAD > enabled. > > EF10-based NICs are tested with the patch series applied with and > without EFSYS_OPT_RIVERHEAD enabled. > > net/sfc patches will follow. > > v3: > - more spelling fixes > - fix extremely long lines in common/sfc_efx/base: update MCDI headers > > v2: > - fix spelling in few patches > - use tabs to indent instead of spaces > > Andrew Rybchenko (41): > common/sfc_efx/base: add EF100 registers definitions > common/sfc_efx/base: update MCDI headers > common/sfc_efx/base: add event queue operation to do polling > common/sfc_efx/base: add efsys option for Riverhead > common/sfc_efx/base: add Riverhead NIC family > common/sfc_efx/base: update registers check for Riverhead > common/sfc_efx/base: use EF10 MCDI methods for Riverhead > common/sfc_efx/base: use EF10 PHY methods for Riverhead > common/sfc_efx/base: move 14b prefix check out of caps get > common/sfc_efx/base: remove PF count get from caps get > common/sfc_efx/base: factor out helper to get board config > common/sfc_efx/base: set NIC features in generic place > common/sfc_efx/base: factor out MCDI entity reset helper > common/sfc_efx/base: add Riverhead support to NIC module > common/sfc_efx/base: use dummy tunnel ops for Riverhead > common/sfc_efx/base: use EF10 filter methods for Riverhead > common/sfc_efx/base: use EF10 MAC methods for Riverhead > common/sfc_efx/base: add interrupts module for Riverhead > common/sfc_efx/base: move EvQ init/fini wrappers to generic > common/sfc_efx/base: move EvQ create generic checks > common/sfc_efx/base: prepare to merge EvQ init functions > common/sfc_efx/base: merge versions of init EvQ wrappers > common/sfc_efx/base: add event queue module for Riverhead > common/sfc_efx/base: handle MCDI events on Riverhead > common/sfc_efx/base: move RxQ init/fini wrappers to generic > common/sfc_efx/base: move TxQ init/fini wrappers to generic > common/sfc_efx/base: switch TxQ init to extended version > common/sfc_efx/base: maintain RxQ counter in generic code > common/sfc_efx/base: free Rx queue structure in generic code > common/sfc_efx/base: move Rx index check to generic code > common/sfc_efx/base: implement Rx control path for Riverhead > common/sfc_efx/base: implement Tx control path for Riverhead > common/sfc_efx/base: fix Tx descriptor DMA sync on Riverhead > common/sfc_efx/base: handle Rx events for Riverhead > common/sfc_efx/base: handle Tx complete on Riverhead > common/sfc_efx: do not include libefx headers from efsys.h > common/sfc_efx/base: add API to get Rx prefix information > common/sfc_efx/base: group RxQ parameters into a structure > common/sfc_efx/base: choose smallest Rx prefix on Riverhead > common/sfc_efx/base: use EF10 EVB methods for Riverhead > common/sfc_efx/base: allocate vAdaptor on Riverhead > > Andy Moreton (7): > common/sfc_efx/base: add option for extended width events > common/sfc_efx/base: add 256bit type > common/sfc_efx/base: support creation of extended width EvQ > common/sfc_efx/base: poll extended width event queues > common/sfc_efx/base: handle normal events in extended width > common/sfc_efx/base: add option for descriptor proxy queues > common/sfc_efx/base: handle descriptor proxy queue events > > Igor Romanov (9): > common/sfc_efx/base: add function control window concept > common/sfc_efx/base: add function control window lookup API > common/sfc_efx/base: add efsys API to find a memory BAR > common/sfc_efx/base: add Xilinx capabilities table lookup > common/sfc_efx/base: add NIC magic check on BAR lookup > common/sfc_efx/base: introduce UDP tunnel destruct operation > common/sfc_efx/base: introduce states for UDP tunnel entries > common/sfc_efx/base: support UDP tunnel operations for EF100 > common/sfc_efx/base: replace PCI efsys macros with functions > > Ivan Malov (3): > common/sfc_efx/base: complete EvQ creation on Riverhead > common/sfc_efx/base: indicate support for TSO version 3 > common/sfc_efx/base: report restrictions for TSO version 3 <...>
On 9/29/20 2:32 PM, Ferruh Yigit wrote: > On 9/24/2020 1:11 PM, Andrew Rybchenko wrote: >> Riverhead is a new NIC family, the first one with EF100 architecture. >> Control interface is an MCDI similar to EF10. Datapath interface is >> completely new. > > Hi Andrew, > > Can you please update documentation and release notes for new Riverhead > devices, it is OK to send it as separate patches from this patchset. Hi Ferruh, these patches just update base driver. It does not add any new functionality visible to DPDK users. The point here is to prepare base driver to add new HW to DPDK native net/sfc driver. Release notes will be updated at the point (this release). I can join these patch series, but it is already tooooo long. Thanks, Andrew. > >> >> The patch series is build tested with and without EFSYS_OPT_RIVERHEAD >> enabled. >> >> EF10-based NICs are tested with the patch series applied with and >> without EFSYS_OPT_RIVERHEAD enabled. >> >> net/sfc patches will follow. >> >> v3: >> - more spelling fixes >> - fix extremely long lines in common/sfc_efx/base: update MCDI headers >> >> v2: >> - fix spelling in few patches >> - use tabs to indent instead of spaces >> >> Andrew Rybchenko (41): >> common/sfc_efx/base: add EF100 registers definitions >> common/sfc_efx/base: update MCDI headers >> common/sfc_efx/base: add event queue operation to do polling >> common/sfc_efx/base: add efsys option for Riverhead >> common/sfc_efx/base: add Riverhead NIC family >> common/sfc_efx/base: update registers check for Riverhead >> common/sfc_efx/base: use EF10 MCDI methods for Riverhead >> common/sfc_efx/base: use EF10 PHY methods for Riverhead >> common/sfc_efx/base: move 14b prefix check out of caps get >> common/sfc_efx/base: remove PF count get from caps get >> common/sfc_efx/base: factor out helper to get board config >> common/sfc_efx/base: set NIC features in generic place >> common/sfc_efx/base: factor out MCDI entity reset helper >> common/sfc_efx/base: add Riverhead support to NIC module >> common/sfc_efx/base: use dummy tunnel ops for Riverhead >> common/sfc_efx/base: use EF10 filter methods for Riverhead >> common/sfc_efx/base: use EF10 MAC methods for Riverhead >> common/sfc_efx/base: add interrupts module for Riverhead >> common/sfc_efx/base: move EvQ init/fini wrappers to generic >> common/sfc_efx/base: move EvQ create generic checks >> common/sfc_efx/base: prepare to merge EvQ init functions >> common/sfc_efx/base: merge versions of init EvQ wrappers >> common/sfc_efx/base: add event queue module for Riverhead >> common/sfc_efx/base: handle MCDI events on Riverhead >> common/sfc_efx/base: move RxQ init/fini wrappers to generic >> common/sfc_efx/base: move TxQ init/fini wrappers to generic >> common/sfc_efx/base: switch TxQ init to extended version >> common/sfc_efx/base: maintain RxQ counter in generic code >> common/sfc_efx/base: free Rx queue structure in generic code >> common/sfc_efx/base: move Rx index check to generic code >> common/sfc_efx/base: implement Rx control path for Riverhead >> common/sfc_efx/base: implement Tx control path for Riverhead >> common/sfc_efx/base: fix Tx descriptor DMA sync on Riverhead >> common/sfc_efx/base: handle Rx events for Riverhead >> common/sfc_efx/base: handle Tx complete on Riverhead >> common/sfc_efx: do not include libefx headers from efsys.h >> common/sfc_efx/base: add API to get Rx prefix information >> common/sfc_efx/base: group RxQ parameters into a structure >> common/sfc_efx/base: choose smallest Rx prefix on Riverhead >> common/sfc_efx/base: use EF10 EVB methods for Riverhead >> common/sfc_efx/base: allocate vAdaptor on Riverhead >> >> Andy Moreton (7): >> common/sfc_efx/base: add option for extended width events >> common/sfc_efx/base: add 256bit type >> common/sfc_efx/base: support creation of extended width EvQ >> common/sfc_efx/base: poll extended width event queues >> common/sfc_efx/base: handle normal events in extended width >> common/sfc_efx/base: add option for descriptor proxy queues >> common/sfc_efx/base: handle descriptor proxy queue events >> >> Igor Romanov (9): >> common/sfc_efx/base: add function control window concept >> common/sfc_efx/base: add function control window lookup API >> common/sfc_efx/base: add efsys API to find a memory BAR >> common/sfc_efx/base: add Xilinx capabilities table lookup >> common/sfc_efx/base: add NIC magic check on BAR lookup >> common/sfc_efx/base: introduce UDP tunnel destruct operation >> common/sfc_efx/base: introduce states for UDP tunnel entries >> common/sfc_efx/base: support UDP tunnel operations for EF100 >> common/sfc_efx/base: replace PCI efsys macros with functions >> >> Ivan Malov (3): >> common/sfc_efx/base: complete EvQ creation on Riverhead >> common/sfc_efx/base: indicate support for TSO version 3 >> common/sfc_efx/base: report restrictions for TSO version 3 > > <...>
On 9/29/2020 12:41 PM, Andrew Rybchenko wrote: > On 9/29/20 2:32 PM, Ferruh Yigit wrote: >> On 9/24/2020 1:11 PM, Andrew Rybchenko wrote: >>> Riverhead is a new NIC family, the first one with EF100 architecture. >>> Control interface is an MCDI similar to EF10. Datapath interface is >>> completely new. >> >> Hi Andrew, >> >> Can you please update documentation and release notes for new Riverhead >> devices, it is OK to send it as separate patches from this patchset. > > Hi Ferruh, > > these patches just update base driver. It does not add any new > functionality visible to DPDK users. > The point here is to prepare base driver to add new HW to > DPDK native net/sfc driver. Release notes will be updated > at the point (this release). > Got it, if you already have a plan to update the documentation and release note that is OK. > I can join these patch series, but it is already tooooo long. > scary > Thanks, > Andrew. > >> >>> >>> The patch series is build tested with and without EFSYS_OPT_RIVERHEAD >>> enabled. >>> >>> EF10-based NICs are tested with the patch series applied with and >>> without EFSYS_OPT_RIVERHEAD enabled. >>> >>> net/sfc patches will follow. >>> >>> v3: >>> - more spelling fixes >>> - fix extremely long lines in common/sfc_efx/base: update MCDI headers >>> >>> v2: >>> - fix spelling in few patches >>> - use tabs to indent instead of spaces >>> >>> Andrew Rybchenko (41): >>> common/sfc_efx/base: add EF100 registers definitions >>> common/sfc_efx/base: update MCDI headers >>> common/sfc_efx/base: add event queue operation to do polling >>> common/sfc_efx/base: add efsys option for Riverhead >>> common/sfc_efx/base: add Riverhead NIC family >>> common/sfc_efx/base: update registers check for Riverhead >>> common/sfc_efx/base: use EF10 MCDI methods for Riverhead >>> common/sfc_efx/base: use EF10 PHY methods for Riverhead >>> common/sfc_efx/base: move 14b prefix check out of caps get >>> common/sfc_efx/base: remove PF count get from caps get >>> common/sfc_efx/base: factor out helper to get board config >>> common/sfc_efx/base: set NIC features in generic place >>> common/sfc_efx/base: factor out MCDI entity reset helper >>> common/sfc_efx/base: add Riverhead support to NIC module >>> common/sfc_efx/base: use dummy tunnel ops for Riverhead >>> common/sfc_efx/base: use EF10 filter methods for Riverhead >>> common/sfc_efx/base: use EF10 MAC methods for Riverhead >>> common/sfc_efx/base: add interrupts module for Riverhead >>> common/sfc_efx/base: move EvQ init/fini wrappers to generic >>> common/sfc_efx/base: move EvQ create generic checks >>> common/sfc_efx/base: prepare to merge EvQ init functions >>> common/sfc_efx/base: merge versions of init EvQ wrappers >>> common/sfc_efx/base: add event queue module for Riverhead >>> common/sfc_efx/base: handle MCDI events on Riverhead >>> common/sfc_efx/base: move RxQ init/fini wrappers to generic >>> common/sfc_efx/base: move TxQ init/fini wrappers to generic >>> common/sfc_efx/base: switch TxQ init to extended version >>> common/sfc_efx/base: maintain RxQ counter in generic code >>> common/sfc_efx/base: free Rx queue structure in generic code >>> common/sfc_efx/base: move Rx index check to generic code >>> common/sfc_efx/base: implement Rx control path for Riverhead >>> common/sfc_efx/base: implement Tx control path for Riverhead >>> common/sfc_efx/base: fix Tx descriptor DMA sync on Riverhead >>> common/sfc_efx/base: handle Rx events for Riverhead >>> common/sfc_efx/base: handle Tx complete on Riverhead >>> common/sfc_efx: do not include libefx headers from efsys.h >>> common/sfc_efx/base: add API to get Rx prefix information >>> common/sfc_efx/base: group RxQ parameters into a structure >>> common/sfc_efx/base: choose smallest Rx prefix on Riverhead >>> common/sfc_efx/base: use EF10 EVB methods for Riverhead >>> common/sfc_efx/base: allocate vAdaptor on Riverhead >>> >>> Andy Moreton (7): >>> common/sfc_efx/base: add option for extended width events >>> common/sfc_efx/base: add 256bit type >>> common/sfc_efx/base: support creation of extended width EvQ >>> common/sfc_efx/base: poll extended width event queues >>> common/sfc_efx/base: handle normal events in extended width >>> common/sfc_efx/base: add option for descriptor proxy queues >>> common/sfc_efx/base: handle descriptor proxy queue events >>> >>> Igor Romanov (9): >>> common/sfc_efx/base: add function control window concept >>> common/sfc_efx/base: add function control window lookup API >>> common/sfc_efx/base: add efsys API to find a memory BAR >>> common/sfc_efx/base: add Xilinx capabilities table lookup >>> common/sfc_efx/base: add NIC magic check on BAR lookup >>> common/sfc_efx/base: introduce UDP tunnel destruct operation >>> common/sfc_efx/base: introduce states for UDP tunnel entries >>> common/sfc_efx/base: support UDP tunnel operations for EF100 >>> common/sfc_efx/base: replace PCI efsys macros with functions >>> >>> Ivan Malov (3): >>> common/sfc_efx/base: complete EvQ creation on Riverhead >>> common/sfc_efx/base: indicate support for TSO version 3 >>> common/sfc_efx/base: report restrictions for TSO version 3 >> >> <...> >
On 9/24/2020 1:11 PM, Andrew Rybchenko wrote: > Riverhead is a new NIC family, the first one with EF100 architecture. > Control interface is an MCDI similar to EF10. Datapath interface is > completely new. > > The patch series is build tested with and without EFSYS_OPT_RIVERHEAD > enabled. > > EF10-based NICs are tested with the patch series applied with and > without EFSYS_OPT_RIVERHEAD enabled. > > net/sfc patches will follow. > > v3: > - more spelling fixes > - fix extremely long lines in common/sfc_efx/base: update MCDI headers > > v2: > - fix spelling in few patches > - use tabs to indent instead of spaces > > Andrew Rybchenko (41): > common/sfc_efx/base: add EF100 registers definitions > common/sfc_efx/base: update MCDI headers > common/sfc_efx/base: add event queue operation to do polling > common/sfc_efx/base: add efsys option for Riverhead > common/sfc_efx/base: add Riverhead NIC family > common/sfc_efx/base: update registers check for Riverhead > common/sfc_efx/base: use EF10 MCDI methods for Riverhead > common/sfc_efx/base: use EF10 PHY methods for Riverhead > common/sfc_efx/base: move 14b prefix check out of caps get > common/sfc_efx/base: remove PF count get from caps get > common/sfc_efx/base: factor out helper to get board config > common/sfc_efx/base: set NIC features in generic place > common/sfc_efx/base: factor out MCDI entity reset helper > common/sfc_efx/base: add Riverhead support to NIC module > common/sfc_efx/base: use dummy tunnel ops for Riverhead > common/sfc_efx/base: use EF10 filter methods for Riverhead > common/sfc_efx/base: use EF10 MAC methods for Riverhead > common/sfc_efx/base: add interrupts module for Riverhead > common/sfc_efx/base: move EvQ init/fini wrappers to generic > common/sfc_efx/base: move EvQ create generic checks > common/sfc_efx/base: prepare to merge EvQ init functions > common/sfc_efx/base: merge versions of init EvQ wrappers > common/sfc_efx/base: add event queue module for Riverhead > common/sfc_efx/base: handle MCDI events on Riverhead > common/sfc_efx/base: move RxQ init/fini wrappers to generic > common/sfc_efx/base: move TxQ init/fini wrappers to generic > common/sfc_efx/base: switch TxQ init to extended version > common/sfc_efx/base: maintain RxQ counter in generic code > common/sfc_efx/base: free Rx queue structure in generic code > common/sfc_efx/base: move Rx index check to generic code > common/sfc_efx/base: implement Rx control path for Riverhead > common/sfc_efx/base: implement Tx control path for Riverhead > common/sfc_efx/base: fix Tx descriptor DMA sync on Riverhead > common/sfc_efx/base: handle Rx events for Riverhead > common/sfc_efx/base: handle Tx complete on Riverhead > common/sfc_efx: do not include libefx headers from efsys.h > common/sfc_efx/base: add API to get Rx prefix information > common/sfc_efx/base: group RxQ parameters into a structure > common/sfc_efx/base: choose smallest Rx prefix on Riverhead > common/sfc_efx/base: use EF10 EVB methods for Riverhead > common/sfc_efx/base: allocate vAdaptor on Riverhead > > Andy Moreton (7): > common/sfc_efx/base: add option for extended width events > common/sfc_efx/base: add 256bit type > common/sfc_efx/base: support creation of extended width EvQ > common/sfc_efx/base: poll extended width event queues > common/sfc_efx/base: handle normal events in extended width > common/sfc_efx/base: add option for descriptor proxy queues > common/sfc_efx/base: handle descriptor proxy queue events > > Igor Romanov (9): > common/sfc_efx/base: add function control window concept > common/sfc_efx/base: add function control window lookup API > common/sfc_efx/base: add efsys API to find a memory BAR > common/sfc_efx/base: add Xilinx capabilities table lookup > common/sfc_efx/base: add NIC magic check on BAR lookup > common/sfc_efx/base: introduce UDP tunnel destruct operation > common/sfc_efx/base: introduce states for UDP tunnel entries > common/sfc_efx/base: support UDP tunnel operations for EF100 > common/sfc_efx/base: replace PCI efsys macros with functions > > Ivan Malov (3): > common/sfc_efx/base: complete EvQ creation on Riverhead > common/sfc_efx/base: indicate support for TSO version 3 > common/sfc_efx/base: report restrictions for TSO version 3 > Series applied to dpdk-next-net/main, thanks.