From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <xiaojuntime@gmail.com>
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 <dev@dpdk.org>; Sat,  7 Feb 2015 17:05:37 +0100 (CET)
Received: by iecrl12 with SMTP id rl12so7934523iec.11
 for <dev@dpdk.org>; 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: <CAOaVG17Yb0yYVxrpm_qo1w3mEyZXDzXN+LX2K8GAZ=7pc5Hv_w@mail.gmail.com>
References: <1423247795-22399-1-git-send-email-stephen@networkplumber.org>
 <CACyt=TG8EgADhVpiWN4cu56z904hBFH4LyUJAPvgrWhddqemBQ@mail.gmail.com>
 <CAOaVG17Yb0yYVxrpm_qo1w3mEyZXDzXN+LX2K8GAZ=7pc5Hv_w@mail.gmail.com>
From: Jun Xiao <xiaojuntime@gmail.com>
Date: Sun, 8 Feb 2015 00:05:16 +0800
Message-ID: <CACyt=TFiM3m3GkDs8HhoYRat7GEf6TE4hJYn31rR-TU=+=N4EQ@mail.gmail.com>
To: Stephen Hemminger <stephen@networkplumber.org>
Content-Type: text/plain; charset=UTF-8
Cc: dev <dev@dpdk.org>, Stephen Hemminger <shemming@brocade.com>
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 <dev.dpdk.org>
List-Unsubscribe: <http://dpdk.org/ml/options/dev>,
 <mailto:dev-request@dpdk.org?subject=unsubscribe>
List-Archive: <http://dpdk.org/ml/archives/dev/>
List-Post: <mailto:dev@dpdk.org>
List-Help: <mailto:dev-request@dpdk.org?subject=help>
List-Subscribe: <http://dpdk.org/ml/listinfo/dev>,
 <mailto:dev-request@dpdk.org?subject=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
<stephen@networkplumber.org> 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 <xiaojuntime@gmail.com> 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
>> <stephen@networkplumber.org> wrote:
>> > From: Stephen Hemminger <shemming@brocade.com>
>> >
>> > 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
>> >
>
>