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 D9EE4A0C45; Wed, 20 Oct 2021 05:49:05 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 64E1140683; Wed, 20 Oct 2021 05:49:05 +0200 (CEST) Received: from mail-pj1-f44.google.com (mail-pj1-f44.google.com [209.85.216.44]) by mails.dpdk.org (Postfix) with ESMTP id BA52740142 for ; Wed, 20 Oct 2021 05:49:03 +0200 (CEST) Received: by mail-pj1-f44.google.com with SMTP id na16-20020a17090b4c1000b0019f5bb661f9so1517218pjb.0 for ; Tue, 19 Oct 2021 20:49:03 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=fuh5cziEhUEUgxMgHqWEX45LsCD8CDHq1Gcta/+LUKQ=; b=l62MnsSXAMMsfe9HDNXcdMv6ImrhGj2fcJ3bVOIvX5uJcdf/9/9LepzlnHEDXOXi+Z vRtz8fe9zDQLuyB/d6jJEDrcEoXE3skzZiWnxG8iXktc/DEhWt6IrjVHEwlI034rdf7S rvBemhOafs6dQgD+yi/y2CImKzMqQDoJwhmUMrhZVFmzVhbXyNcbfmhXPCzbAi3zcPxN WqIKVZJTuWKwQgivsv9Hr5TbOSf26nk4fumevNclYv/1sx7xaqYrmqXIzbqQ3f9boV3o 5rZOHv08oDlGd4xDyt399YRky4LjEMVgeVokONBM1xgfZaMXAJhpv5aqqj5cX48vrGn1 P4dg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=fuh5cziEhUEUgxMgHqWEX45LsCD8CDHq1Gcta/+LUKQ=; b=1yow+3p0ake/lNbzYKL1F+AuFi62ZTSBLATmOt+An6t4UvbLR8vEA27rzZwNOl+730 GbNZDm24yQBZKFy55SvSJ9XiXXRwqAEfCAgW7D2939e1s0V4h+rig71MKp5fxu21w71N PTVHPL7GYehnpsKDc71fWDRvgOEq3a74ftTt25GbW+Pg+IcLee+iIc76XWmqzuxgIv1N WFr2EqUPsK96J2gnt796rPNLC27PscaHlIpO61Xwm3nIoe2GGwQOpahl89dlxfsQ5gm6 U9O/gA2/oEzpq/IjXm+mDePyvaIwkzcrjjyYLJivbBFBXTMx9WXRBler8uN9st42Ax7X +brw== X-Gm-Message-State: AOAM5307CQ0zNTxpPgK2eRDtIqyczMyCi9NXaIt/xWo+rqAwwlHr3Dz7 Br8Il1kjLzt7WYClQ49+DtsTQeQ750g= X-Google-Smtp-Source: ABdhPJz5jX/umsjYWeBgUEEsNPO27kbOEeIlvBZou93V6Mkdu7mlNUbopZxRpch1qyk9VtvNgTvXwg== X-Received: by 2002:a17:90b:1212:: with SMTP id gl18mr4577945pjb.166.1634701742374; Tue, 19 Oct 2021 20:49:02 -0700 (PDT) Received: from localhost.localdomain (c-67-160-105-174.hsd1.wa.comcast.net. [67.160.105.174]) by smtp.gmail.com with ESMTPSA id om5sm571343pjb.36.2021.10.19.20.49.00 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 19 Oct 2021 20:49:01 -0700 (PDT) From: William Tu To: dev@dpdk.org Cc: Haiyue Wang , Pallavi Kadam , Dmitry Kozlyuk Date: Tue, 19 Oct 2021 20:47:49 -0700 Message-Id: <20211020034749.1285-1-u9012063@gmail.com> X-Mailer: git-send-email 2.33.0.windows.2 In-Reply-To: <20211009163103.297-1-u9012063@gmail.com> References: <20211009163103.297-1-u9012063@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Subject: [dpdk-dev] [PATCH v4] net/e1000: build on Windows 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 Sender: "dev" This patch enables building the e1000 driver for Windows. I tested using two Windows VM on top of VMware Fusion, creating two e1000 devices with device ID 0x10D3 (8274L), verifying rx/tx works correctly using dpdk-testpmd.exe rxonly and txonly mode. Signed-off-by: William Tu Acked-by: Haiyue Wang Acked-by: Pallavi Kadam Tested-by: Dmitry Kozlyuk Tested-by: Pallavi Kadam --- v4: * remove the documentation about Windows setup. this is already mention in doc/windows_gsg v3: * Add acked and tested by tags * @Dmitry: I think it's better keep the doc for people to reference NetUIO setup. * I will send corresponding netuio device id patch to dpdk-kmods * A short demo: https://youtu.be/UZ9hm2jQa2Y --- doc/guides/nics/features/e1000.ini | 1 + doc/guides/rel_notes/release_21_11.rst | 4 ++++ drivers/net/e1000/base/e1000_osdep.h | 2 ++ drivers/net/e1000/e1000_ethdev.h | 1 + drivers/net/e1000/meson.build | 6 ------ 5 files changed, 8 insertions(+), 6 deletions(-) diff --git a/doc/guides/nics/features/e1000.ini b/doc/guides/nics/features/e1000.ini index 5af6040e375b..b33f5a86e2e9 100644 --- a/doc/guides/nics/features/e1000.ini +++ b/doc/guides/nics/features/e1000.ini @@ -27,6 +27,7 @@ Tx descriptor status = Y Basic stats = Y FreeBSD = Y Linux = Y +Windows = Y x86-32 = Y x86-64 = Y diff --git a/doc/guides/rel_notes/release_21_11.rst b/doc/guides/rel_notes/release_21_11.rst index 3362c52a738c..876b5f1886bb 100644 --- a/doc/guides/rel_notes/release_21_11.rst +++ b/doc/guides/rel_notes/release_21_11.rst @@ -91,6 +91,10 @@ New Features * Implement support for tunnel offload. * Updated HWRM API to version 1.10.2.44 +* **Updated Intel e1000 emulated driver.** + + * Added Intel e1000 support on Windows. + * **Updated Intel iavf driver.** * Added Intel iavf support on Windows. diff --git a/drivers/net/e1000/base/e1000_osdep.h b/drivers/net/e1000/base/e1000_osdep.h index 94a49f340446..cd90228cef59 100644 --- a/drivers/net/e1000/base/e1000_osdep.h +++ b/drivers/net/e1000/base/e1000_osdep.h @@ -34,7 +34,9 @@ #define DEBUGOUT6(S, args...) DEBUGOUT(S, ##args) #define DEBUGOUT7(S, args...) DEBUGOUT(S, ##args) +#ifndef UNREFERENCED_PARAMETER #define UNREFERENCED_PARAMETER(_p) +#endif #define UNREFERENCED_1PARAMETER(_p) #define UNREFERENCED_2PARAMETER(_p, _q) #define UNREFERENCED_3PARAMETER(_p, _q, _r) diff --git a/drivers/net/e1000/e1000_ethdev.h b/drivers/net/e1000/e1000_ethdev.h index 8e10e2777e64..bf0e902991a7 100644 --- a/drivers/net/e1000/e1000_ethdev.h +++ b/drivers/net/e1000/e1000_ethdev.h @@ -6,6 +6,7 @@ #define _E1000_ETHDEV_H_ #include +#include #include #include diff --git a/drivers/net/e1000/meson.build b/drivers/net/e1000/meson.build index c5e48c6bc7fc..296ec25f2ce7 100644 --- a/drivers/net/e1000/meson.build +++ b/drivers/net/e1000/meson.build @@ -1,12 +1,6 @@ # SPDX-License-Identifier: BSD-3-Clause # Copyright(c) 2017 Intel Corporation -if is_windows - build = false - reason = 'not supported on Windows' - subdir_done() -endif - subdir('base') objs = [base_objs] -- 2.33.0.windows.2