DPDK patches and discussions
 help / color / mirror / Atom feed
From: Helin Zhang <helin.zhang@intel.com>
To: dev@dpdk.org
Subject: [dpdk-dev] [PATCH 00/22][PMD][I40E] *** Add i40e PMD support ***
Date: Wed, 21 May 2014 23:29:59 +0800	[thread overview]
Message-ID: <1400686221-4696-1-git-send-email-helin.zhang@intel.com> (raw)

Summary:
The series of patches are to add i40e PMD support.
* Add new PMD driver of i40e in the folder of librte_pmd_i40e
* Add some neccessary definitions, changes in rte_mbuf.h and eth_dev
* Add new configurations for i40e
* Add or modifiy makefiles to support i40e compilation
* Add neccessary changes in ixgbe, e1000 and vmxnet3 PMD, as hash flags
  has been enlarged from 16 bits to 64 bits to support i40e
* Add neccessary changes in example applications and testpmd to use
  ETH_RSS_IP to replace all IP hash flags, as i40e introduced more
  hash flags.
* Add command in testpmd for port based vlan insertion offload testing
* Add neccessary changes in eth_dev to support configuring maximum
  packet length of less than 1518
* Add two sys files in igb_uio to support enabling/disabling
  'Extended Tag' and resetting 'Max Read Request Size', as it has
  big impacts on i40e performance
* Add neccessary changes in pci to read/write the above two sys files
  during probing PCI

Helin Zhang (22):
  i40e: add basic shared code
  i40e: add PMD source files
  i40e: add i40e support
  e1000: enlarge the hash flags of RSS to 64 bits
  ixgbe: enlarge the hash flags of RSS to 64 bits
  vmxnet3: enlarge the hash flags of RSS to 64 bits
  app/testpmd: enlarge the hash flags of RSS to 64 bits
  examples/qos_meter: use ETH_RSS_IP to replace IP hash flags of RSS
  examples/multi_process: use ETH_RSS_IP to replace IP hash flags of RSS
  examples/l3fwd: use ETH_RSS_IP to replace IP hash flags of RSS
  examples/l3fwd-vf: use ETH_RSS_IP to replace IP hash flags of RSS
  examples/l3fwd-power: use ETH_RSS_IP to replace IP hash flags of RSS
  examples/ip_reassembly: use ETH_RSS_IP to replace IP hash flags of RSS
  examples/dpdk_qat: use ETH_RSS_IP to replace IP hash flags of RSS
  examples/load_balancer: use ETH_RSS_IP to replace IP hash flags of RSS
  app/test-pmd: tell the driver the correct packet type to support    
    i40e TX checksum offload
  app/test-pmd: support displaying i40e 32 bytes RX descriptor
  app/test-pmd: support setting port based VLAN ID offloading
  igb_uio: add sys files to read/write specific bits in pci config space
  pci: support reading/writing sys files of 'extended_tag' and    
    'max_read_request_size'
  config: add configurations for enabling 'Extended Tag' or    
    resetting 'Max Read Request Size'
  ethdev: support setting maximum packet length to less than 1518

 app/test-pmd/cmdline.c                          |    65 +-
 app/test-pmd/config.c                           |    45 +-
 app/test-pmd/csumonly.c                         |     2 +
 app/test-pmd/parameters.c                       |     5 +-
 app/test-pmd/testpmd.c                          |     2 +-
 app/test-pmd/testpmd.h                          |     4 +-
 config/defconfig_i686-default-linuxapp-gcc      |    30 +
 config/defconfig_i686-default-linuxapp-icc      |    30 +
 config/defconfig_x86_64-default-bsdapp-gcc      |    15 +
 config/defconfig_x86_64-default-linuxapp-gcc    |    30 +
 config/defconfig_x86_64-default-linuxapp-icc    |    30 +
 examples/dpdk_qat/main.c                        |     2 +-
 examples/ip_reassembly/main.c                   |     2 +-
 examples/l3fwd-power/main.c                     |     2 +-
 examples/l3fwd-vf/main.c                        |     2 +-
 examples/l3fwd/main.c                           |     2 +-
 examples/load_balancer/init.c                   |     2 +-
 examples/multi_process/symmetric_mp/main.c      |     2 +-
 examples/qos_meter/main.c                       |     2 +-
 lib/Makefile                                    |     1 +
 lib/librte_eal/common/include/rte_pci_dev_ids.h |    44 +
 lib/librte_eal/linuxapp/eal/eal_pci.c           |   101 +
 lib/librte_eal/linuxapp/igb_uio/igb_uio.c       |   107 +
 lib/librte_ether/rte_ethdev.c                   |    25 +-
 lib/librte_ether/rte_ethdev.h                   |   146 +-
 lib/librte_ether/rte_ether.h                    |    24 +
 lib/librte_mbuf/rte_mbuf.h                      |     8 +
 lib/librte_pmd_e1000/igb_rxtx.c                 |    16 +-
 lib/librte_pmd_i40e/Makefile                    |    85 +
 lib/librte_pmd_i40e/i40e/i40e_adminq.c          |  1210 ++
 lib/librte_pmd_i40e/i40e/i40e_adminq.h          |   121 +
 lib/librte_pmd_i40e/i40e/i40e_adminq_cmd.h      |  2198 ++++
 lib/librte_pmd_i40e/i40e/i40e_alloc.h           |    65 +
 lib/librte_pmd_i40e/i40e/i40e_common.c          |  5176 ++++++++
 lib/librte_pmd_i40e/i40e/i40e_dcb.c             |  1165 ++
 lib/librte_pmd_i40e/i40e/i40e_dcb.h             |   264 +
 lib/librte_pmd_i40e/i40e/i40e_diag.c            |   180 +
 lib/librte_pmd_i40e/i40e/i40e_diag.h            |    61 +
 lib/librte_pmd_i40e/i40e/i40e_hmc.c             |   388 +
 lib/librte_pmd_i40e/i40e/i40e_hmc.h             |   287 +
 lib/librte_pmd_i40e/i40e/i40e_lan_hmc.c         |  1443 ++
 lib/librte_pmd_i40e/i40e/i40e_lan_hmc.h         |   272 +
 lib/librte_pmd_i40e/i40e/i40e_nvm.c             |   487 +
 lib/librte_pmd_i40e/i40e/i40e_osdep.h           |   192 +
 lib/librte_pmd_i40e/i40e/i40e_prototype.h       |   480 +
 lib/librte_pmd_i40e/i40e/i40e_register.h        | 15210 ++++++++++++++++++++++
 lib/librte_pmd_i40e/i40e/i40e_register_int.h    |    96 +
 lib/librte_pmd_i40e/i40e/i40e_status.h          |   107 +
 lib/librte_pmd_i40e/i40e/i40e_type.h            |  1660 +++
 lib/librte_pmd_i40e/i40e/i40e_virtchnl.h        |   385 +
 lib/librte_pmd_i40e/i40e_ethdev.c               |  3961 ++++++
 lib/librte_pmd_i40e/i40e_ethdev.h               |   349 +
 lib/librte_pmd_i40e/i40e_ethdev_vf.c            |  1286 ++
 lib/librte_pmd_i40e/i40e_logs.h                 |    74 +
 lib/librte_pmd_i40e/i40e_pf.c                   |   902 ++
 lib/librte_pmd_i40e/i40e_pf.h                   |    67 +
 lib/librte_pmd_i40e/i40e_rxtx.c                 |  2217 ++++
 lib/librte_pmd_i40e/i40e_rxtx.h                 |   187 +
 lib/librte_pmd_ixgbe/ixgbe_rxtx.c               |    16 +-
 lib/librte_pmd_vmxnet3/vmxnet3_rxtx.c           |    16 +-
 mk/rte.app.mk                                   |     4 +
 61 files changed, 41311 insertions(+), 46 deletions(-)
 create mode 100644 lib/librte_pmd_i40e/Makefile
 create mode 100644 lib/librte_pmd_i40e/i40e/i40e_adminq.c
 create mode 100644 lib/librte_pmd_i40e/i40e/i40e_adminq.h
 create mode 100644 lib/librte_pmd_i40e/i40e/i40e_adminq_cmd.h
 create mode 100644 lib/librte_pmd_i40e/i40e/i40e_alloc.h
 create mode 100644 lib/librte_pmd_i40e/i40e/i40e_common.c
 create mode 100644 lib/librte_pmd_i40e/i40e/i40e_dcb.c
 create mode 100644 lib/librte_pmd_i40e/i40e/i40e_dcb.h
 create mode 100644 lib/librte_pmd_i40e/i40e/i40e_diag.c
 create mode 100644 lib/librte_pmd_i40e/i40e/i40e_diag.h
 create mode 100644 lib/librte_pmd_i40e/i40e/i40e_hmc.c
 create mode 100644 lib/librte_pmd_i40e/i40e/i40e_hmc.h
 create mode 100644 lib/librte_pmd_i40e/i40e/i40e_lan_hmc.c
 create mode 100644 lib/librte_pmd_i40e/i40e/i40e_lan_hmc.h
 create mode 100644 lib/librte_pmd_i40e/i40e/i40e_nvm.c
 create mode 100644 lib/librte_pmd_i40e/i40e/i40e_osdep.h
 create mode 100644 lib/librte_pmd_i40e/i40e/i40e_prototype.h
 create mode 100644 lib/librte_pmd_i40e/i40e/i40e_register.h
 create mode 100644 lib/librte_pmd_i40e/i40e/i40e_register_int.h
 create mode 100644 lib/librte_pmd_i40e/i40e/i40e_status.h
 create mode 100644 lib/librte_pmd_i40e/i40e/i40e_type.h
 create mode 100644 lib/librte_pmd_i40e/i40e/i40e_virtchnl.h
 create mode 100644 lib/librte_pmd_i40e/i40e_ethdev.c
 create mode 100644 lib/librte_pmd_i40e/i40e_ethdev.h
 create mode 100644 lib/librte_pmd_i40e/i40e_ethdev_vf.c
 create mode 100644 lib/librte_pmd_i40e/i40e_logs.h
 create mode 100644 lib/librte_pmd_i40e/i40e_pf.c
 create mode 100644 lib/librte_pmd_i40e/i40e_pf.h
 create mode 100644 lib/librte_pmd_i40e/i40e_rxtx.c
 create mode 100644 lib/librte_pmd_i40e/i40e_rxtx.h

-- 
1.8.1.4

             reply	other threads:[~2014-05-21 15:30 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-05-21 15:29 Helin Zhang [this message]
2014-05-21 15:30 ` [dpdk-dev] [PATCH 01/22] i40e: add basic shared code Helin Zhang
2014-05-21 15:30 ` [dpdk-dev] [PATCH 02/22] i40e: add PMD source files Helin Zhang
2014-05-21 15:30 ` [dpdk-dev] [PATCH 03/22] i40e: add i40e support Helin Zhang
2014-05-21 15:30 ` [dpdk-dev] [PATCH 04/22] e1000: enlarge the hash flags of RSS to 64 bits Helin Zhang
2014-05-21 15:30 ` [dpdk-dev] [PATCH 05/22] ixgbe: " Helin Zhang
2014-05-21 15:30 ` [dpdk-dev] [PATCH 06/22] vmxnet3: " Helin Zhang
2014-05-21 15:30 ` [dpdk-dev] [PATCH 07/22] app/testpmd: " Helin Zhang
2014-05-21 15:30 ` [dpdk-dev] [PATCH 08/22] examples/qos_meter: use ETH_RSS_IP to replace IP hash flags of RSS Helin Zhang
2014-05-21 15:30 ` [dpdk-dev] [PATCH 09/22] examples/multi_process: " Helin Zhang
2014-05-21 15:30 ` [dpdk-dev] [PATCH 10/22] examples/l3fwd: " Helin Zhang
2014-05-21 15:30 ` [dpdk-dev] [PATCH 11/22] examples/l3fwd-vf: " Helin Zhang
2014-05-21 15:30 ` [dpdk-dev] [PATCH 12/22] examples/l3fwd-power: " Helin Zhang
2014-05-21 15:30 ` [dpdk-dev] [PATCH 13/22] examples/ip_reassembly: " Helin Zhang
2014-05-21 15:30 ` [dpdk-dev] [PATCH 14/22] examples/dpdk_qat: " Helin Zhang
2014-05-21 15:30 ` [dpdk-dev] [PATCH 15/22] examples/load_balancer: " Helin Zhang
2014-05-21 15:30 ` [dpdk-dev] [PATCH 16/22] app/test-pmd: tell the driver the correct packet type to support i40e TX checksum offload Helin Zhang
2014-05-21 15:30 ` [dpdk-dev] [PATCH 17/22] app/test-pmd: support displaying i40e 32 bytes RX descriptor Helin Zhang
2014-05-21 15:30 ` [dpdk-dev] [PATCH 18/22] app/test-pmd: support setting port based VLAN ID offloading Helin Zhang
2014-05-21 15:30 ` [dpdk-dev] [PATCH 19/22] igb_uio: add sys files to read/write specific bits in pci config space Helin Zhang
2014-05-21 15:30 ` [dpdk-dev] [PATCH 20/22] pci: support reading/writing sys files of 'extended_tag' and 'max_read_request_size' Helin Zhang
2014-05-21 15:30 ` [dpdk-dev] [PATCH 21/22] config: add configurations for enabling 'Extended Tag' or resetting 'Max Read Request Size' Helin Zhang
2014-05-21 15:30 ` [dpdk-dev] [PATCH 22/22] ethdev: support setting maximum packet length to less than 1518 Helin Zhang

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1400686221-4696-1-git-send-email-helin.zhang@intel.com \
    --to=helin.zhang@intel.com \
    --cc=dev@dpdk.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).