mbox series

[v1,0/5] net/qede: fixes and enhancement

Message ID 20190906073217.13873-1-shshaikh@marvell.com (mailing list archive)
Headers
Series net/qede: fixes and enhancement |

Message

Shahed Shaikh Sept. 6, 2019, 7:32 a.m. UTC
  First four patches are part of a fix for the ovs-dpdk issue
with 100Gb NIC [1].
Fifth patch adds support for drop action in rte_flow.

[1]
As per HW design of 100Gb mode, device internally uses 2 engines
(eng0 and eng1), and both engines need to be configured symmetrically.
Based on this requirement, driver design chose an approach
to allow user to allocate only even number of queues and split
those queues on both engines equally.

This approach puts a limitation on number of queues to be allocated -
i.e. user can't configure odd number of queues on 100Gb mode.
OVS configures DPDK port with 1 rxq and 1 txq, which causes initialization
of qede port to fail.

This patch series changes the implementation of queue allocation method
for 100Gb devices by removing above mentioned limitation and allowing
user to configure odd number of queues.

Fix is split into 4 logical patches -
 - First patch refactors Rx and Tx queue setup code to lay a foundation
   for actual fix.
 - Second patch actually implements a new approach to fix the issue.
 - Third patch fixes RSS configuration w.r.t. new approach.
 - Fourth patch fixes statistics code impacted due to new approach.

Shahed Shaikh (5):
  net/qede: refactor Rx and Tx queue setup
  net/qede: fix ovs-dpdk failure when using odd number of queues on
    100Gb mode
  net/qede: fix RSS configuration as per new 100Gb queue allocation
    method
  net/qede: fix stats flow as per new 100Gb queue allocation method
  net/qede: implement rte_flow drop action

 doc/guides/nics/qede.rst              |  39 +++
 drivers/net/qede/base/ecore_dev_api.h |   1 +
 drivers/net/qede/base/ecore_l2.c      |  50 ++--
 drivers/net/qede/base/ecore_l2_api.h  |  39 ++-
 drivers/net/qede/qede_ethdev.c        | 331 +++++++++++------------
 drivers/net/qede/qede_ethdev.h        |   6 +-
 drivers/net/qede/qede_filter.c        |  27 +-
 drivers/net/qede/qede_rxtx.c          | 362 +++++++++++++++++++-------
 drivers/net/qede/qede_rxtx.h          |  26 +-
 9 files changed, 549 insertions(+), 332 deletions(-)