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 at networkplumber.org> wrote: > From: Stephen Hemminger <shemming at 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 >