From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-ie0-f181.google.com (mail-ie0-f181.google.com [209.85.223.181]) by dpdk.org (Postfix) with ESMTP id 563BB1F7 for ; Sat, 7 Feb 2015 17:05:37 +0100 (CET) Received: by iecrl12 with SMTP id rl12so7934523iec.11 for ; Sat, 07 Feb 2015 08:05:36 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc:content-type; bh=AqnNZy2Nbd9afmiSZAKvVRaUE1FhBmqE7Wlvm/rG9gw=; b=IFwmPos1Sl5Do3/0npecHpL+m57oJjPd2yiZ6nzo/Px1LL5QRWYuLH9elMXJB3RuKQ W4wx05E7aK5bwC4qZGGvFk3x8LUgYuz3ds2zOjN214Um0fxCoMTZXO9NChiVqPwpKjj6 hhmG+F+pZ/S2jm9lbo34s8qj/sbs/ZDSh/JaChKgMyR+b6x3LmYEa1xjxrwANf2YquWf jGvkPKxYKanJP9/z8KT6Q9uwXU5ls6EX+eYyelMvLCN9kXjEF0Hf+8a7xk1EtBzaYv4T OaYMGRZpvFbZCngSvCklD+CbKMW3HE/7lL+1G9AovON4xuiyogxR+U/G60dNlbjuYXUr cU4A== X-Received: by 10.50.136.228 with SMTP id qd4mr8135700igb.13.1423325136669; Sat, 07 Feb 2015 08:05:36 -0800 (PST) MIME-Version: 1.0 Received: by 10.36.96.132 with HTTP; Sat, 7 Feb 2015 08:05:16 -0800 (PST) In-Reply-To: References: <1423247795-22399-1-git-send-email-stephen@networkplumber.org> From: Jun Xiao Date: Sun, 8 Feb 2015 00:05:16 +0800 Message-ID: To: Stephen Hemminger Content-Type: text/plain; charset=UTF-8 Cc: dev , Stephen Hemminger Subject: Re: [dpdk-dev] [PATCH 0/4] Broadcom 10G NIC Poll Mode Driver X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 07 Feb 2015 16:05:37 -0000 Thanks Stephen for all the info! Do you expect this pmd driver will be in sync with FreeBSD repo in the future, or it's going to be diverged? I am just asking from a maintenance stand point. On Sat, Feb 7, 2015 at 11:15 PM, Stephen Hemminger wrote: > Source was from FreeBSD. > > changes were to make it work and lots of de-uglification. > > For example, the last change was to remove custom logging and debug macros. > > There are still lots of style issues with the driver, because of the amount > of > useless macro wrapping. > > I don't believe in the vendor model of taking one driver with lots of macros > and pretending > it is generic across OS's. > > It has been tested by our QA group as part of our vRouter product release, > which is > based on DPDK 1.6. There are no open problem reports. The performance is > less > than IXGBE but that is probably because it a a port an not optimized. > > > > On Sat, Feb 7, 2015 at 1:15 AM, Jun Xiao wrote: >> >> Hi Stephen, >> >> Thanks for your great work on this! >> >> Could you elaborate on a few things: >> - What's the methodology used in the driver porting? >> e.g. what's the base source you ported from? >> what's the major change against the base source? >> - What kind of tests have been done on Linux? any known limitations? >> >> Thanks, >> Jun >> >> On Sat, Feb 7, 2015 at 2:36 AM, Stephen Hemminger >> wrote: >> > From: Stephen Hemminger >> > >> > These are the patches to enable supporting the Broadcom >> > NetExtreme II 10G devices (show up as bnx2x on Linux). >> > >> > The driver has only been tested on Linux, there maybe issues >> > with firmware loading and PCI config access on BSD. >> > >> > Stephen Hemminger (4): >> > pci: allow access to PCI config space >> > bcm: add BCM pci device ids >> > bcm: new poll mode driver >> > bcm: enable BCM poll mode driver in config >> > >> > config/common_linuxapp | 10 + >> > lib/Makefile | 1 + >> > lib/librte_eal/common/include/rte_pci.h | 29 + >> > lib/librte_eal/common/include/rte_pci_dev_ids.h | 30 + >> > lib/librte_eal/linuxapp/eal/eal_pci.c | 15 + >> > lib/librte_eal/linuxapp/eal/eal_pci_uio.c | 10 + >> > lib/librte_eal/linuxapp/eal/rte_eal_version.map | 2 + >> > lib/librte_pmd_bcm/Makefile | 28 + >> > lib/librte_pmd_bcm/bcm.c | 11817 >> > +++++++++++++++++++ >> > lib/librte_pmd_bcm/bcm.h | 1998 ++++ >> > lib/librte_pmd_bcm/bcm_ethdev.c | 544 + >> > lib/librte_pmd_bcm/bcm_ethdev.h | 79 + >> > lib/librte_pmd_bcm/bcm_logs.h | 51 + >> > lib/librte_pmd_bcm/bcm_rxtx.c | 487 + >> > lib/librte_pmd_bcm/bcm_rxtx.h | 85 + >> > lib/librte_pmd_bcm/bcm_stats.c | 1619 +++ >> > lib/librte_pmd_bcm/bcm_stats.h | 633 + >> > lib/librte_pmd_bcm/bcm_vfpf.c | 597 + >> > lib/librte_pmd_bcm/bcm_vfpf.h | 315 + >> > lib/librte_pmd_bcm/debug.c | 113 + >> > lib/librte_pmd_bcm/ecore_fw_defs.h | 423 + >> > lib/librte_pmd_bcm/ecore_hsi.h | 6349 ++++++++++ >> > lib/librte_pmd_bcm/ecore_init.h | 842 ++ >> > lib/librte_pmd_bcm/ecore_init_ops.h | 886 ++ >> > lib/librte_pmd_bcm/ecore_mfw_req.h | 207 + >> > lib/librte_pmd_bcm/ecore_reg.h | 3664 ++++++ >> > lib/librte_pmd_bcm/ecore_sp.c | 5455 +++++++++ >> > lib/librte_pmd_bcm/ecore_sp.h | 1796 +++ >> > lib/librte_pmd_bcm/elink.c | 13378 >> > ++++++++++++++++++++++ >> > lib/librte_pmd_bcm/elink.h | 610 + >> > 30 files changed, 52073 insertions(+) >> > create mode 100644 lib/librte_pmd_bcm/Makefile >> > create mode 100644 lib/librte_pmd_bcm/bcm.c >> > create mode 100644 lib/librte_pmd_bcm/bcm.h >> > create mode 100644 lib/librte_pmd_bcm/bcm_ethdev.c >> > create mode 100644 lib/librte_pmd_bcm/bcm_ethdev.h >> > create mode 100644 lib/librte_pmd_bcm/bcm_logs.h >> > create mode 100644 lib/librte_pmd_bcm/bcm_rxtx.c >> > create mode 100644 lib/librte_pmd_bcm/bcm_rxtx.h >> > create mode 100644 lib/librte_pmd_bcm/bcm_stats.c >> > create mode 100644 lib/librte_pmd_bcm/bcm_stats.h >> > create mode 100644 lib/librte_pmd_bcm/bcm_vfpf.c >> > create mode 100644 lib/librte_pmd_bcm/bcm_vfpf.h >> > create mode 100644 lib/librte_pmd_bcm/debug.c >> > create mode 100644 lib/librte_pmd_bcm/ecore_fw_defs.h >> > create mode 100644 lib/librte_pmd_bcm/ecore_hsi.h >> > create mode 100644 lib/librte_pmd_bcm/ecore_init.h >> > create mode 100644 lib/librte_pmd_bcm/ecore_init_ops.h >> > create mode 100644 lib/librte_pmd_bcm/ecore_mfw_req.h >> > create mode 100644 lib/librte_pmd_bcm/ecore_reg.h >> > create mode 100644 lib/librte_pmd_bcm/ecore_sp.c >> > create mode 100644 lib/librte_pmd_bcm/ecore_sp.h >> > create mode 100644 lib/librte_pmd_bcm/elink.c >> > create mode 100644 lib/librte_pmd_bcm/elink.h >> > >> > -- >> > 2.1.4 >> > > >