From patchwork Mon Dec 9 21:46:39 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Alfredo Cardigliano X-Patchwork-Id: 63677 Return-Path: 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 4EA77A04B3; Mon, 9 Dec 2019 22:48:32 +0100 (CET) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 3C4F72C12; Mon, 9 Dec 2019 22:48:31 +0100 (CET) Received: from mail.ntop.org (mail-digitalocean.ntop.org [167.99.215.164]) by dpdk.org (Postfix) with ESMTP id 1BC111F5 for ; Mon, 9 Dec 2019 22:48:29 +0100 (CET) Received: from devele.ntop.org (net-93-145-196-230.cust.vodafonedsl.it [93.145.196.230]) by mail.ntop.org (Postfix) with ESMTPSA id 8783F4090E; Mon, 9 Dec 2019 22:48:28 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ntop.org; s=mail; t=1575928108; bh=+rgzCoK7i7N2YGiSD6ca6L8MkmEqhXaGBPwE/C6L6qo=; h=From:To:Cc:Subject:Date:From; b=Ss0WoXxbV3zDgmQ9bpbRi/R1POlhQ7LKlUb65HqeAQ92JIgi1vUsB5f05iHULEXpx YUUNWOlWgiNEd8wfAog3Ir7T9uTTNV1u1Ff3896DZ1uNTHZfH5DBagUbiXLFUr5aQP Af1hnHq2JBlEnnk3Z9sj0z1A10UdFaWIAva7vgWs= From: Alfredo Cardigliano To: Cc: dev@dpdk.org, Alfredo Cardigliano Date: Mon, 9 Dec 2019 22:46:39 +0100 Message-Id: <20191209214656.27347-1-cardigliano@ntop.org> X-Mailer: git-send-email 2.17.1 Subject: [dpdk-dev] [PATCH v3 00/17] Introduces net/ionic PMD 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" The patch series provides an initial version of a poll mode driver for Pensando network adapters. The driver name is ionic. v3 Changes: ---------- - Set the license to BSD-3 (in addition to GPL-2) - Add the new PMD driver to the release notes - Add a link to the adapter vendor page - Cleanup the makefile (compilation flags, libraries, etc) - Fix clang build errors - Fix indentation according to the dpdk coding style - Cleanup log functions and macros - Set min/max mtu to be checked by the API - Uninitialize device in close dev_ops - Fix VLAN offload support - Initialize stats struct - Move structures size check - Other minor code cleanup Signed-off-by: Alfredo Cardigliano Reviewed-by: Shannon Nelson Alfredo Cardigliano (17): net/ionic: add skeleton net/ionic: add hardware structures definitions net/ionic: add log net/ionic: register and initialize the adapter net/ionic: add port management commands net/ionic: add basic lif support net/ionic: add doorbells net/ionic: add adminq support net/ionic: add notifyq support net/ionic: add basic port operations net/ionic: add RX filters support net/ionic: add Flow Control support net/ionic: add RX and TX handling net/ionic: add RSS support net/ionic: add stats net/ionic: add TX checksum support net/ionic: read fw version MAINTAINERS | 6 + config/common_base | 5 + doc/guides/nics/features/ionic.ini | 37 + doc/guides/nics/index.rst | 1 + doc/guides/nics/ionic.rst | 37 + doc/guides/rel_notes/release_20_02.rst | 4 + drivers/net/Makefile | 1 + drivers/net/ionic/Makefile | 47 + drivers/net/ionic/ionic.h | 81 + drivers/net/ionic/ionic_dev.c | 577 +++++ drivers/net/ionic/ionic_dev.h | 269 ++ drivers/net/ionic/ionic_ethdev.c | 1348 ++++++++++ drivers/net/ionic/ionic_ethdev.h | 22 + drivers/net/ionic/ionic_if.h | 2491 +++++++++++++++++++ drivers/net/ionic/ionic_lif.c | 1718 +++++++++++++ drivers/net/ionic/ionic_lif.h | 189 ++ drivers/net/ionic/ionic_logs.h | 26 + drivers/net/ionic/ionic_mac_api.c | 61 + drivers/net/ionic/ionic_mac_api.h | 13 + drivers/net/ionic/ionic_main.c | 450 ++++ drivers/net/ionic/ionic_osdep.h | 79 + drivers/net/ionic/ionic_regs.h | 142 ++ drivers/net/ionic/ionic_rx_filter.c | 139 ++ drivers/net/ionic/ionic_rx_filter.h | 47 + drivers/net/ionic/ionic_rxtx.c | 1087 ++++++++ drivers/net/ionic/ionic_rxtx.h | 44 + drivers/net/ionic/meson.build | 13 + drivers/net/ionic/rte_pmd_ionic_version.map | 5 + mk/rte.app.mk | 1 + 29 files changed, 8940 insertions(+) create mode 100644 doc/guides/nics/features/ionic.ini create mode 100644 doc/guides/nics/ionic.rst create mode 100644 drivers/net/ionic/Makefile create mode 100644 drivers/net/ionic/ionic.h create mode 100644 drivers/net/ionic/ionic_dev.c create mode 100644 drivers/net/ionic/ionic_dev.h create mode 100644 drivers/net/ionic/ionic_ethdev.c create mode 100644 drivers/net/ionic/ionic_ethdev.h create mode 100644 drivers/net/ionic/ionic_if.h create mode 100644 drivers/net/ionic/ionic_lif.c create mode 100644 drivers/net/ionic/ionic_lif.h create mode 100644 drivers/net/ionic/ionic_logs.h create mode 100644 drivers/net/ionic/ionic_mac_api.c create mode 100644 drivers/net/ionic/ionic_mac_api.h create mode 100644 drivers/net/ionic/ionic_main.c create mode 100644 drivers/net/ionic/ionic_osdep.h create mode 100644 drivers/net/ionic/ionic_regs.h create mode 100644 drivers/net/ionic/ionic_rx_filter.c create mode 100644 drivers/net/ionic/ionic_rx_filter.h create mode 100644 drivers/net/ionic/ionic_rxtx.c create mode 100644 drivers/net/ionic/ionic_rxtx.h create mode 100644 drivers/net/ionic/meson.build create mode 100644 drivers/net/ionic/rte_pmd_ionic_version.map