From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 4EAAFA04E1; Tue, 22 Sep 2020 11:35:48 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 893631DCB8; Tue, 22 Sep 2020 11:35:19 +0200 (CEST) Received: from dispatch1-us1.ppe-hosted.com (dispatch1-us1.ppe-hosted.com [67.231.154.164]) by dpdk.org (Postfix) with ESMTP id 74E581D3F0 for ; Tue, 22 Sep 2020 11:35:02 +0200 (CEST) Received: from mx1-us1.ppe-hosted.com (unknown [10.110.50.150]) by dispatch1-us1.ppe-hosted.com (PPE Hosted ESMTP Server) with ESMTP id 1C4152006B for ; Tue, 22 Sep 2020 09:35:02 +0000 (UTC) Received: from us4-mdac16-7.at1.mdlocal (unknown [10.110.49.174]) by mx1-us1.ppe-hosted.com (PPE Hosted ESMTP Server) with ESMTP id 1BC0B800A3 for ; Tue, 22 Sep 2020 09:35:02 +0000 (UTC) X-Virus-Scanned: Proofpoint Essentials engine Received: from mx1-us1.ppe-hosted.com (unknown [10.110.50.8]) by mx1-us1.ppe-hosted.com (PPE Hosted ESMTP Server) with ESMTPS id 92A10100052 for ; Tue, 22 Sep 2020 09:35:01 +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 5B4294C0059 for ; Tue, 22 Sep 2020 09:35:01 +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; Tue, 22 Sep 2020 10:34:55 +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; Tue, 22 Sep 2020 10:34:55 +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 08M9YtTr026860 for ; Tue, 22 Sep 2020 10:34:55 +0100 Received: from ukv-loginhost.uk.solarflarecom.com (localhost [127.0.0.1]) by ukv-loginhost.uk.solarflarecom.com (Postfix) with ESMTP id 6D8831613A9 for ; Tue, 22 Sep 2020 10:34:55 +0100 (BST) From: Andrew Rybchenko To: Date: Tue, 22 Sep 2020 10:33:48 +0100 Message-ID: <1600767288-12109-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.383200-8.000000-10 X-TMASE-MatchedRID: ztJEIiMQkV+6yx6FMBgECn4neC0h7SADRf40pT7Zmv73Ru3JrjJxKA9a ESljuMCwNNN0dk/lb45k5NRCsylb+Ud3Qx6f9WnIbBMSu4v05tM1X1Ls767cpgv1OPvvDLzs2bG 4Cd+1MM4ziEuzhx2HsZqPAhkz7UIwyGOiXr1rOL7dfjaNBxFEbVB1e7/F/vq50WQe+eeGBovQGF lKOB0iJOHK1iK6XpoOo3IPF/4N0/kKlulsOcMOD9WxbZgaqhS0RwDU669267x03EU8crzuS8PDa ySduj5lE08iDqcSz3SyLPF1Ukbf9c44J5N2ZNqXlgE9m1ByUWepXdWa4gU0S1oYLdRBLzykO7uF velD285izyVYZyl+C2iCGuOijGU2Q9x1CLc+xtptJYfOb0q5OwCm784gsJu44yMRUg7+x04o7EF GIwwE7+BQQESP++QBe4zjUTogjMJaawfmixS5CpyebS/i2xjjE02Pr4CkNSOuiyJNZGE/iVt/7J Vo3YuaVvq8yHKcgGYlPrs4vIExtkWSfdP0PEqZ9cb9iRwZHB8/pOSL72dTf5r53KOa+Gtzo8WMk QWv6iXBcIE78YqRWo6HM5rqDwqtgFl4NwwLOrB1nXH+Prd05jiexsMj2cYJLdMjKI3DOBWUTSap hUrY8gThRKMIOgpOrgRzlUy2MjUcL8frcraM4juLbe7gcVldNyPA1MjqGnlPsCTSrxuh0NTzZKM 4UWNx1DUdwIcMSOx1QoPdG+Gv/A== X-TM-AS-User-Approved-Sender: Yes X-TM-AS-User-Blocked-Sender: No X-TMASE-Result: 10--4.383200-8.000000 X-TMASE-Version: SMEX-12.5.0.1300-8.6.1012-25674.003 X-MDID: 1600767302-m4TihnvoMuSS Subject: [dpdk-dev] [PATCH v2 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 List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" 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. 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 | 5241 ++++++++++++++++- .../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, 12951 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 -- 2.17.1