From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 14926A0544; Mon, 10 Oct 2022 12:19:06 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 053854021E; Mon, 10 Oct 2022 12:19:06 +0200 (CEST) Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by mails.dpdk.org (Postfix) with ESMTP id 6B16340041 for ; Mon, 10 Oct 2022 12:19:04 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1665397144; x=1696933144; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=A1YdA+q2/qU8vgRP/Xv3Wnb58gcUgAVxgdRcs0isyvE=; b=XekAjRo6ngIOeF7q+nOSszGIyCTYQUwAMPX2QPT0k/AW8ws2E9q7bm3T 7rc320aZ3XF9Kp6f/waBqSXOfkj3SCrzQsTEtAQwkLBMyfHwnZ2W9Wlet bywY+AEQaS7ma6y70xrT2pq6QVa97wOyVzAI41CtRvCzWlyVUQOsSUQkc uqB2nKPSy1KVZ21DOdLOiWWoPfZf3kQLeA/siERYIYoTxFWAF1pR9a9Bx i9Hh1nTxD0Be2R/zyLL9nPTULZxC4/R9Ysk7RD+7GA3hNvp81z8XGEw5l Q2eleSY6TeyHy5iDGff5ml3pQcIqIy3wCseAtRHzjakbATjKY/y8Ms7i+ Q==; X-IronPort-AV: E=McAfee;i="6500,9779,10495"; a="304178769" X-IronPort-AV: E=Sophos;i="5.95,173,1661842800"; d="scan'208";a="304178769" Received: from orsmga004.jf.intel.com ([10.7.209.38]) by fmsmga103.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 10 Oct 2022 03:19:03 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10495"; a="751307171" X-IronPort-AV: E=Sophos;i="5.95,173,1661842800"; d="scan'208";a="751307171" Received: from dpdk-jf-ntb-one.sh.intel.com ([10.67.111.104]) by orsmga004.jf.intel.com with ESMTP; 10 Oct 2022 03:18:59 -0700 From: Junfeng Guo To: qi.z.zhang@intel.com, jingjing.wu@intel.com Cc: ferruh.yigit@xilinx.com, dev@dpdk.org, xiaoyun.li@intel.com, awogbemila@google.com, bruce.richardson@intel.com, xueqin.lin@intel.com, junfeng.guo@intel.com Subject: [PATCH v5 0/8] introduce GVE PMD Date: Mon, 10 Oct 2022 18:17:49 +0800 Message-Id: <20221010101757.878317-1-junfeng.guo@intel.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20220927073255.1803892-2-junfeng.guo@intel.com> References: <20220927073255.1803892-2-junfeng.guo@intel.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Introduce a new PMD for Google Virtual Ethernet (GVE). This patch set requires an exception for MIT license for GVE base code. And the base code includes the following files: - gve_adminq.c - gve_adminq.h - gve_desc.h - gve_desc_dqo.h - gve_register.h It's based on GVE kernel driver v1.3.0 and the original code is in https://github.com/GoogleCloudPlatform/compute-virtual-ethernet-linux/tree/v1.3.0 v2: fix some CI check error. v3: refactor some code and fix some build error. v4: move the Google base code files into DPDK base folder. v5: reorder commit sequence and drop the stats feature. Junfeng Guo (8): net/gve/base: introduce GVE PMD base code net/gve/base: add OS specific implementation net/gve: add support for device initialization net/gve: add support for link update net/gve: add support for MTU setting net/gve: add support for dev info get and dev configure net/gve: add support for queue operations net/gve: add support for Rx/Tx MAINTAINERS | 6 + doc/guides/nics/features/gve.ini | 16 + doc/guides/nics/gve.rst | 71 ++ doc/guides/nics/index.rst | 1 + doc/guides/rel_notes/release_22_11.rst | 5 + drivers/net/gve/base/gve.h | 58 ++ drivers/net/gve/base/gve_adminq.c | 925 +++++++++++++++++++++++++ drivers/net/gve/base/gve_adminq.h | 383 ++++++++++ drivers/net/gve/base/gve_desc.h | 139 ++++ drivers/net/gve/base/gve_desc_dqo.h | 256 +++++++ drivers/net/gve/base/gve_osdep.h | 159 +++++ drivers/net/gve/base/gve_register.h | 30 + drivers/net/gve/gve_ethdev.c | 704 +++++++++++++++++++ drivers/net/gve/gve_ethdev.h | 295 ++++++++ drivers/net/gve/gve_logs.h | 14 + drivers/net/gve/gve_rx.c | 352 ++++++++++ drivers/net/gve/gve_tx.c | 669 ++++++++++++++++++ drivers/net/gve/meson.build | 16 + drivers/net/gve/version.map | 3 + drivers/net/meson.build | 1 + 20 files changed, 4103 insertions(+) create mode 100644 doc/guides/nics/features/gve.ini create mode 100644 doc/guides/nics/gve.rst create mode 100644 drivers/net/gve/base/gve.h create mode 100644 drivers/net/gve/base/gve_adminq.c create mode 100644 drivers/net/gve/base/gve_adminq.h create mode 100644 drivers/net/gve/base/gve_desc.h create mode 100644 drivers/net/gve/base/gve_desc_dqo.h create mode 100644 drivers/net/gve/base/gve_osdep.h create mode 100644 drivers/net/gve/base/gve_register.h create mode 100644 drivers/net/gve/gve_ethdev.c create mode 100644 drivers/net/gve/gve_ethdev.h create mode 100644 drivers/net/gve/gve_logs.h create mode 100644 drivers/net/gve/gve_rx.c create mode 100644 drivers/net/gve/gve_tx.c create mode 100644 drivers/net/gve/meson.build create mode 100644 drivers/net/gve/version.map -- 2.34.1