Re: [dpdk-dev] [PATCH 00/31] Support VFD and DPDK PF + kernel VF on i40e

2016-12-02 Thread Andrew Rybchenko
Hi Bernard, On 12/02/2016 01:58 PM, Iremonger, Bernard wrote: -Original Message- From: dev [mailto:dev-boun...@dpdk.org] On Behalf Of Andrew Rybchenko Sent: Friday, December 2, 2016 9:00 AM To: Lu, Wenzhuo <wenzhuo...@intel.com>; dev@dpdk.org Subject: Re: [dpdk-dev] [PATCH

[dpdk-dev] Solarflare PMD submission question

2016-11-18 Thread Andrew Rybchenko
On 10/28/2016 05:43 PM, Andrew Rybchenko wrote: > On 10/28/2016 03:33 PM, Thomas Monjalon wrote: >> 2016-10-28 13:50, Andrew Rybchenko: >>> The only thing which comes to my mind is to split libefx import on >>> subsystem >>> basis (few files per subsyste

[dpdk-dev] Solarflare PMD submission question

2016-11-21 Thread Andrew Rybchenko
On 11/21/2016 11:19 AM, Thomas Monjalon wrote: >> Before submitting 56 patches I'd like to double-check that checkpatch.pl >> errors (for example, because of assignments in the 'if' condition, >> parenthesis around return value) is not a show-stopper for base driver >> import. > You can run

[dpdk-dev] [PATCH 00/56] Solarflare libefx-based PMD

2016-11-21 Thread Andrew Rybchenko
] https://github.com/illumos/illumos-gate/tree/master/usr/src/uts/common/io/sfxge/common/ --- Andrew Rybchenko (49): net/sfc: libefx-based PMD stub sufficient to build and init net/sfc: import libefx base net/sfc: import libefx register definitions net/sfc: import libefx filters support

[dpdk-dev] [PATCH 07/56] net/sfc: import libefx MCDI logging support

2016-11-21 Thread Andrew Rybchenko
Driver can provide a function to be called to log MCDI requests and responses to help with debugging. Solarflare netlogdecode cross-platform tool may be used to decode these logs. EFSYS_OPT_MCDI_LOGGING should be enabled to use it. >From Solarflare Communications Inc. Signed-off-by: And

[dpdk-dev] [PATCH 04/56] net/sfc: import libefx filters support

2016-11-21 Thread Andrew Rybchenko
off-by: Andrew Rybchenko --- drivers/net/sfc/efx/base/efx.h| 157 drivers/net/sfc/efx/base/efx_check.h | 5 + drivers/net/sfc/efx/base/efx_filter.c | 332 ++ drivers/net/sfc/efx/base/efx_impl.h | 38 4 files changed, 532 insertions(+) cre

[dpdk-dev] [PATCH 15/56] net/sfc: import libefx PHY flags control support

2016-11-21 Thread Andrew Rybchenko
EFSYS_OPT_PHY_FLAGS should be enabled to use it. >From Solarflare Communications Inc. Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/base/ef10_phy.c | 4 drivers/net/sfc/efx/base/efx.h | 3 +++ drivers/net/sfc/efx/base/efx_check.h | 7 +++ drivers/net/sfc/efx/b

[dpdk-dev] [PATCH 08/56] net/sfc: import libefx MCDI proxy authorization support

2016-11-21 Thread Andrew Rybchenko
it. >From Solarflare Communications Inc. Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/base/efx.h | 3 ++ drivers/net/sfc/efx/base/efx_check.h | 7 drivers/net/sfc/efx/base/efx_mcdi.c | 74 drivers/net/sfc/efx/base/efx_mcdi.h |

[dpdk-dev] [PATCH 14/56] net/sfc: import libefx software per-queue statistics support

2016-11-21 Thread Andrew Rybchenko
EFSYS_OPT_QSTATS should be enabled to use it. >From Solarflare Communications Inc. Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/base/ef10_ev.c | 25 drivers/net/sfc/efx/base/ef10_impl.h | 16 + drivers/net/sfc/efx/base/ef10_tx.c | 26 drivers/net/sfc/

[dpdk-dev] [PATCH 01/56] net/sfc: libefx-based PMD stub sufficient to build and init

2016-11-21 Thread Andrew Rybchenko
The PMD is put into the sfc/efx subdirectory to have a place for the second PMD and library shared by both. Enable the PMD by default on supported configuratons. Reviewed-by: Andy Moreton Signed-off-by: Andrew Rybchenko --- MAINTAINERS | 6 ++ config

[dpdk-dev] [PATCH 13/56] net/sfc: import libefx built-in selftest support

2016-11-21 Thread Andrew Rybchenko
EFSYS_OPT_BIST should be enabled to use it. >From Solarflare Communications Inc. Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/base/ef10_impl.h | 29 + drivers/net/sfc/efx/base/ef10_phy.c | 153 + drivers/net/sfc/efx/base/efx.h|

[dpdk-dev] [PATCH 12/56] net/sfc: import libefx diagnostics support

2016-11-21 Thread Andrew Rybchenko
EFSYS_OPT_DIAG should be enabled to use it. >From Solarflare Communications Inc. Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/base/ef10_impl.h | 8 ++ drivers/net/sfc/efx/base/ef10_nic.c | 27 ++ drivers/net/sfc/efx/base/efx.h| 33 +++ drivers/net/sfc/efx/b

[dpdk-dev] [PATCH 19/56] net/sfc: import libefx event prefetch support

2016-11-21 Thread Andrew Rybchenko
EFSYS_OPT_EV_PREFECT allows to enable event prefetching when event queue is polled. >From Solarflare Communications Inc. Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/base/efx.h | 9 + drivers/net/sfc/efx/base/efx_check.h | 7 +++ drivers/net/sfc/efx/base/efx_e

[dpdk-dev] [PATCH 20/56] net/sfc: import libefx Rx scatter support

2016-11-21 Thread Andrew Rybchenko
EFSYS_OPT_RX_SCATTER should be enabled to use it. >From Solarflare Communications Inc. Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/base/ef10_impl.h | 7 +++ drivers/net/sfc/efx/base/ef10_rx.c | 11 + drivers/net/sfc/efx/base/efx.h | 7 +++ drivers/net/sfc/efx/b

[dpdk-dev] [PATCH 25/56] net/sfc: import libefx support for Rx packed stream mode

2016-11-21 Thread Andrew Rybchenko
are Communications Inc. Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/base/ef10_ev.c | 124 +++ drivers/net/sfc/efx/base/ef10_impl.h | 46 + drivers/net/sfc/efx/base/ef10_rx.c | 114 drivers/net/sfc/efx/base/ef

[dpdk-dev] [PATCH 16/56] net/sfc: import libefx PHY statistics support

2016-11-21 Thread Andrew Rybchenko
EFSYS_OPT_PHY_STATS should be enabled to use it. >From Solarflare Communications Inc. Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/base/ef10_impl.h | 10 +++ drivers/net/sfc/efx/base/ef10_phy.c | 17 drivers/net/sfc/efx/base/efx.h| 80 ++ driv

[dpdk-dev] [PATCH 28/56] net/sfc: import libefx bootrom configuration support

2016-11-21 Thread Andrew Rybchenko
Provide API to read/write bootrom configuration from/to NVRAM. EFSYS_OPT_BOOTROM should be enabled to use it. >From Solarflare Communications Inc. Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/base/efx.h | 39 +++ drivers/net/sfc/efx/base/efx_bootcfg.c |

[dpdk-dev] [PATCH 23/56] net/sfc: import libefx monitors statistics support

2016-11-21 Thread Andrew Rybchenko
EFSYS_OPT_MON_STATS should be enabled to use it. >From Solarflare Communications Inc. Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/base/ef10_ev.c | 20 + drivers/net/sfc/efx/base/ef10_nic.c | 15 drivers/net/sfc/efx/base/efx.h |

[dpdk-dev] [PATCH 33/56] net/sfc: add device configure and close stubs

2016-11-21 Thread Andrew Rybchenko
Reviewed-by: Andy Moreton Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/sfc.c| 29 +++ drivers/net/sfc/efx/sfc.h| 31 drivers/net/sfc/efx/sfc_ethdev.c | 62 ++-- 3 files changed, 114 insertions

[dpdk-dev] [PATCH 06/56] net/sfc: import libefx MCDI implementation

2016-11-21 Thread Andrew Rybchenko
) to execute it. Events about MCDI completion are delivered to house-keeping event queue, but usage of these events is optional and MCDI buffer may be simply polled waiting for completion indication set. >From Solarflare Communications Inc. Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/

[dpdk-dev] [PATCH 21/56] net/sfc: import libefx RSS support

2016-11-21 Thread Andrew Rybchenko
EFSYS_OPT_RX_SCALE should be enabled to use it. >From Solarflare Communications Inc. Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/base/ef10_filter.c | 10 + drivers/net/sfc/efx/base/ef10_impl.h | 29 +++ drivers/net/sfc/efx/base/ef10_rx.c |

[dpdk-dev] [PATCH 29/56] net/sfc: import libefx licensing support

2016-11-21 Thread Andrew Rybchenko
Provide API to deal with licences on SFN7xxx and SFN8xxx family adapaters. EFSYS_OPT_LICENSING should be enabled to use it. >From Solarflare Communications Inc. Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/base/efx.h | 145 +++ drivers/net/sfc/efx/base/efx_check.h |

[dpdk-dev] [PATCH 41/56] net/sfc: periodic management EVQ polling using alarm

2016-11-21 Thread Andrew Rybchenko
Timers cannot be used to implement periodic polling, since it implies requirement on application to process timers in the main loop. Reviewed-by: Andy Moreton Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/sfc_ev.c | 42 ++ 1 file changed, 42

[dpdk-dev] [PATCH 03/56] net/sfc: import libefx register definitions

2016-11-21 Thread Andrew Rybchenko
>From Solarflare Communications Inc. Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/base/efx_regs.h | 3870 +++ drivers/net/sfc/efx/base/efx_regs_pci.h | 2356 +++ 2 files changed, 6226 insertions(+) create mode 100644 drivers/net/

[dpdk-dev] [PATCH 31/56] net/sfc: implement dummy callback to get device information

2016-11-21 Thread Andrew Rybchenko
Just a stub to be filled in when corresponding functionality is implemented. Reviewed-by: Andy Moreton Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/sfc_ethdev.c | 11 +-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/drivers/net/sfc/efx/sfc_ethdev.c b/drivers

[dpdk-dev] [PATCH 18/56] net/sfc: import libefx MAC statistics support

2016-11-21 Thread Andrew Rybchenko
rom Solarflare Communications Inc. Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/base/ef10_ev.c| 6 + drivers/net/sfc/efx/base/ef10_impl.h | 17 ++ drivers/net/sfc/efx/base/ef10_mac.c | 415 ++ drivers/net/sfc/efx/base/ef10_nic.c | 10 + drivers/net/

[dpdk-dev] [PATCH 35/56] net/sfc: implement device start and stop operations

2016-11-21 Thread Andrew Rybchenko
Reviewed-by: Andy Moreton Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/sfc.c| 65 drivers/net/sfc/efx/sfc.h| 19 drivers/net/sfc/efx/sfc_ethdev.c | 37 +++ 3 files changed, 121 insertions

[dpdk-dev] [PATCH 02/56] net/sfc: import libefx base

2016-11-21 Thread Andrew Rybchenko
/write DMA-mapped memory, read/write PCI BAR space, locks, barriers etc. efx.h and efx_types.h provide external interfaces intended to be used by drivers. Other header files are internal. >From Solarflare Communications Inc. Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/base/REA

[dpdk-dev] [PATCH 38/56] net/sfc: implement event queue support

2016-11-21 Thread Andrew Rybchenko
Reviewed-by: Andy Moreton Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/Makefile | 1 + drivers/net/sfc/efx/sfc.c| 17 ++ drivers/net/sfc/efx/sfc.h| 7 + drivers/net/sfc/efx/sfc_ev.c | 484 +++ drivers/net/sfc/efx/sfc_ev.h | 138

[dpdk-dev] [PATCH 22/56] net/sfc: import libefx loopback control support

2016-11-21 Thread Andrew Rybchenko
EFSYS_OPT_LOOPBACK should be enabled to use it. >From Solarflare Communications Inc. Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/base/ef10_impl.h | 13 +++ drivers/net/sfc/efx/base/ef10_mac.c | 36 +++ drivers/net/sfc/efx/base/ef10_nic.c | 9 ++ drivers/net/sfc/

[dpdk-dev] [PATCH 36/56] net/sfc: make available resources estimation and allocation

2016-11-21 Thread Andrew Rybchenko
Resources required in accordance with configuration are allocated only. Reviewed-by: Andy Moreton Signed-off-by: Andrew Rybchenko --- doc/guides/nics/sfc_efx.rst | 8 +++ drivers/net/sfc/efx/sfc.c | 117 +--- 2 files changed, 117 insertions(+), 8

[dpdk-dev] [PATCH 34/56] net/sfc: add device configuration checks

2016-11-21 Thread Andrew Rybchenko
-by: Andrew Rybchenko --- doc/guides/nics/sfc_efx.rst | 14 drivers/net/sfc/efx/sfc.c | 55 + 2 files changed, 69 insertions(+) diff --git a/doc/guides/nics/sfc_efx.rst b/doc/guides/nics/sfc_efx.rst index 2eebcd7..31e86a7 100644 --- a/doc

[dpdk-dev] [PATCH 39/56] net/sfc: implement EVQ dummy exception handling

2016-11-21 Thread Andrew Rybchenko
Right now the code just logs the exception and sets flag to notify subsequent event handlers and poller that recovery is required. Reviewed-by: Andy Moreton Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/sfc_ev.c | 20 ++-- 1 file changed, 18 insertions(+), 2 deletions

[dpdk-dev] [PATCH 09/56] net/sfc: import libefx 5xxx/6xxx family support

2016-11-21 Thread Andrew Rybchenko
EFSYS_OPT_SIENA should be enabled to use it. >From Solarflare Communications Inc. Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/base/efx_check.h | 14 + drivers/net/sfc/efx/base/efx_ev.c | 783 drivers/net/sfc/efx/base/efx_filter.c | 1

[dpdk-dev] [PATCH 45/56] net/sfc: check configured rxmode

2016-11-21 Thread Andrew Rybchenko
Reviewed-by: Andy Moreton Signed-off-by: Andrew Rybchenko --- doc/guides/nics/sfc_efx.rst | 12 + drivers/net/sfc/efx/sfc_rx.c | 61 2 files changed, 73 insertions(+) diff --git a/doc/guides/nics/sfc_efx.rst b/doc/guides/nics/sfc_efx.rst

[dpdk-dev] [PATCH 26/56] net/sfc: import libefx NVRAM support

2016-11-21 Thread Andrew Rybchenko
Provide API to work with NIC non-volatile memory. It is used to update firmware, configure NIC including bootrom parameters, manage licenses, store PCI Vital Product Data etc. EFSYS_OPT_NVRAM should be enabled to use it. >From Solarflare Communications Inc. Signed-off-by: Andrew Rybche

[dpdk-dev] [PATCH 24/56] net/sfc: import libefx support to access monitors via MCDI

2016-11-21 Thread Andrew Rybchenko
EFSYS_OPT_MON_MCDI should be enabled to use it. >From Solarflare Communications Inc. Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/base/ef10_nic.c | 3 + drivers/net/sfc/efx/base/efx_check.h | 7 + drivers/net/sfc/efx/base/efx_ev.c| 3 + drivers/net/sfc/efx/base/efx_mo

[dpdk-dev] [PATCH 46/56] net/sfc: implement Rx queue setup release operations

2016-11-21 Thread Andrew Rybchenko
Reviewed-by: Andy Moreton Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/sfc_ethdev.c | 60 drivers/net/sfc/efx/sfc_ev.h | 2 + drivers/net/sfc/efx/sfc_rx.c | 147 +++ drivers/net/sfc/efx/sfc_rx.h | 64

[dpdk-dev] [PATCH 47/56] net/sfc: calculate Rx buffer size which may be used

2016-11-21 Thread Andrew Rybchenko
Take Rx buffer start alignment and end-padding into account. Reviewed-by: Andy Moreton Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/sfc_rx.c | 110 +-- drivers/net/sfc/efx/sfc_rx.h | 1 + 2 files changed, 107 insertions(+), 4 deletions

[dpdk-dev] [PATCH 49/56] net/sfc: implement Rx queue start and stop operations

2016-11-21 Thread Andrew Rybchenko
These functions should set the queue state in dev->data->rx_queue_state array. Reviewed-by: Andy Moreton Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/sfc.c | 8 ++ drivers/net/sfc/efx/sfc_ev.c| 23 +++- drivers/net/sfc/efx/sfc_rx.c

[dpdk-dev] [PATCH 40/56] net/sfc: maintain management event queue

2016-11-21 Thread Andrew Rybchenko
The event queue is required for device level events (e.g. link status change) and flush events. Provide thread-safe function to poll the event queue since it may be really done from different contexts. Reviewed-by: Andy Moreton Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/sfc.h

[dpdk-dev] [PATCH 44/56] net/sfc: implement Rx subsystem stubs

2016-11-21 Thread Andrew Rybchenko
Reviewed-by: Andy Moreton Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/Makefile | 1 + drivers/net/sfc/efx/sfc.c| 9 drivers/net/sfc/efx/sfc.h| 4 ++ drivers/net/sfc/efx/sfc_ethdev.c | 10 drivers/net/sfc/efx/sfc_rx.c | 104

[dpdk-dev] [PATCH 27/56] net/sfc: import libefx VPD support

2016-11-21 Thread Andrew Rybchenko
Provide API to read/write PCI Vital Product Data. EFSYS_OPT_VPD should be enabled to use it. >From Solarflare Communications Inc. Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/base/ef10_impl.h | 63 ++ drivers/net/sfc/efx/base/ef10_vpd.c | 463 +++ drivers/net/

[dpdk-dev] [PATCH 37/56] net/sfc: interrupts support sufficient for event queue init

2016-11-21 Thread Andrew Rybchenko
Reviewed-by: Andy Moreton Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/Makefile | 1 + drivers/net/sfc/efx/sfc.c | 22 +++ drivers/net/sfc/efx/sfc.h | 12 drivers/net/sfc/efx/sfc_intr.c | 129 + 4 files changed, 164

[dpdk-dev] [PATCH 42/56] net/sfc: minimum port control sufficient to receive traffic

2016-11-21 Thread Andrew Rybchenko
Reviewed-by: Andy Moreton Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/Makefile | 1 + drivers/net/sfc/efx/sfc.c| 16 + drivers/net/sfc/efx/sfc.h| 12 drivers/net/sfc/efx/sfc_ethdev.c | 2 + drivers/net/sfc/efx/sfc_port.c | 131

[dpdk-dev] [PATCH 51/56] net/sfc: discard scattered packet on Rx correctly

2016-11-21 Thread Andrew Rybchenko
Since Rx scatter is not supported, all scattered packets are discarded. It is not always possible to disable scatter on Huntington, so we should handle scattered packets correctly in any case. Reviewed-by: Andy Moreton Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/sfc_ev.c | 22

[dpdk-dev] [PATCH 50/56] net/sfc: implement device callback to Rx burst of packets

2016-11-21 Thread Andrew Rybchenko
Reviewed-by: Andy Moreton Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/sfc_ethdev.c | 2 ++ drivers/net/sfc/efx/sfc_ev.c | 47 -- drivers/net/sfc/efx/sfc_rx.c | 72 +++- drivers/net/sfc/efx/sfc_rx.h | 7 4

[dpdk-dev] [PATCH 10/56] net/sfc: import libefx SFN7xxx family support

2016-11-21 Thread Andrew Rybchenko
SFN7xxx is the first family based on EF10 architecture. EFSYS_OPT_HUNTINGTON should be enabled to use it. >From Solarflare Communications Inc. Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/base/ef10_ev.c | 1226 +++ drivers/net/sfc/efx/base/ef10_filte

[dpdk-dev] [PATCH 48/56] net/sfc: validate Rx queue buffers setup

2016-11-21 Thread Andrew Rybchenko
Check that Rx mbuf pool, MTU and Rx scatter config are in sync. Reviewed-by: Andy Moreton Signed-off-by: Andrew Rybchenko --- doc/guides/nics/sfc_efx.rst | 10 ++ drivers/net/sfc/efx/sfc_rx.c | 14 ++ 2 files changed, 24 insertions(+) diff --git a/doc/guides/nics

[dpdk-dev] [PATCH 56/56] net/sfc: add callback to send bursts of packets

2016-11-21 Thread Andrew Rybchenko
From: Ivan Malov <ivan.ma...@oktetlabs.ru> Reviewed-by: Andy Moreton Signed-off-by: Ivan Malov Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/sfc_ethdev.c | 2 + drivers/net/sfc/efx/sfc_ev.c | 22 +++- drivers/net/sfc/efx/sfc_tweak.h | 7 +++ drivers/net/s

[dpdk-dev] [PATCH 53/56] net/sfc: add function to check configured Tx mode

2016-11-21 Thread Andrew Rybchenko
From: Ivan Malov <ivan.ma...@oktetlabs.ru> Reviewed-by: Andy Moreton Signed-off-by: Ivan Malov Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/sfc_tx.c | 42 ++ 1 file changed, 42 insertions(+) diff --git a/drivers/net/sfc/efx/sfc_

[dpdk-dev] [PATCH 52/56] net/sfc: provide basic stubs for Tx subsystem

2016-11-21 Thread Andrew Rybchenko
From: Ivan Malov <ivan.ma...@oktetlabs.ru> Reviewed-by: Andy Moreton Signed-off-by: Ivan Malov Signed-off-by: Andrew Rybchenko --- doc/guides/nics/features/sfc_efx.ini | 2 + doc/guides/nics/sfc_efx.rst | 2 + drivers/net/sfc/efx/Makefile | 1 + drivers/net/sfc/efx

[dpdk-dev] [PATCH 30/56] net/sfc: include libefx in build

2016-11-21 Thread Andrew Rybchenko
From: Artem Andreev <artem.andr...@oktetlabs.ru> Implement efsys.h for the PMD. Reviewed-by: Andy Moreton Signed-off-by: Artem Andreev Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/Makefile | 54 +++ drivers/net/sfc/efx/efsys.h | 767

[dpdk-dev] [PATCH 54/56] net/sfc: add callbacks to set up and release Tx queues

2016-11-21 Thread Andrew Rybchenko
From: Ivan Malov <ivan.ma...@oktetlabs.ru> Reviewed-by: Andy Moreton Signed-off-by: Ivan Malov Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/sfc_ethdev.c | 58 ++ drivers/net/sfc/efx/sfc_ev.h | 2 + drivers/net/sfc/efx/sfc_tx.c

[dpdk-dev] Solarflare PMD submission question

2016-11-21 Thread Andrew Rybchenko
On 11/21/2016 01:30 PM, Ferruh Yigit wrote: > On 11/21/2016 8:59 AM, Thomas Monjalon wrote: >> 2016-11-21 11:46, Andrew Rybchenko: >>> On 11/21/2016 11:19 AM, Thomas Monjalon wrote: >>>>> Before submitting 56 patches I'd like to double-check that checkpatch.pl &

[dpdk-dev] [PATCH 00/56] Solarflare libefx-based PMD

2016-11-23 Thread Andrew Rybchenko
On 11/23/2016 03:02 AM, Ferruh Yigit wrote: > On 11/21/2016 3:00 PM, Andrew Rybchenko wrote: >> The patch series adds Solarflare libefx-based network PMD. >> >> This version of the driver supports Solarflare SFN7xxx and SFN8xxx >> families of 10/40 Gbps adapters.

[dpdk-dev] [PATCH 00/56] Solarflare libefx-based PMD

2016-11-24 Thread Andrew Rybchenko
On 11/23/2016 10:21 PM, Stephen Hemminger wrote: > On Wed, 23 Nov 2016 10:49:33 +0300 > Andrew Rybchenko wrote: > >> I've tried to explain it above in item (2): >> >> >>> >> >>2. Another Solarflare PMD with in-kernel part (for control opera

[dpdk-dev] [PATCH 33/56] net/sfc: add device configure and close stubs

2016-11-24 Thread Andrew Rybchenko
On 11/23/2016 06:26 PM, Ferruh Yigit wrote: > On 11/21/2016 3:00 PM, Andrew Rybchenko wrote: >> Reviewed-by: Andy Moreton >> Signed-off-by: Andrew Rybchenko >> --- > <...> > >> diff --git a/drivers/net/sfc/efx/sfc.h b/drivers/net/sfc/efx/sfc.h >> i

[dpdk-dev] [PATCH 32/56] net/sfc: implement driver operation to init device on attach

2016-11-24 Thread Andrew Rybchenko
On 11/23/2016 06:26 PM, Ferruh Yigit wrote: > On 11/21/2016 3:00 PM, Andrew Rybchenko wrote: >> The setup and configuration of the PMD is not performance sensitive, >> but is not thread safe either. It is possible that the multiple >> read/writes during PMD setup an

[dpdk-dev] [PATCH 31/56] net/sfc: implement dummy callback to get device information

2016-11-24 Thread Andrew Rybchenko
On 11/23/2016 06:26 PM, Ferruh Yigit wrote: > On 11/21/2016 3:00 PM, Andrew Rybchenko wrote: >> Just a stub to be filled in when corresponding functionality is >> implemented. > What about merging this stub with real implementation? > Or perhaps replace with code that adds

[dpdk-dev] [PATCH 30/56] net/sfc: include libefx in build

2016-11-24 Thread Andrew Rybchenko
See one question below. On 11/23/2016 06:26 PM, Ferruh Yigit wrote: > On 11/21/2016 3:00 PM, Andrew Rybchenko wrote: >> From: Artem Andreev >> >> Implement efsys.h for the PMD. >> >> Reviewed-by: Andy Moreton >> Signed-off-by: Artem Andr

[dpdk-dev] [PATCH 01/56] net/sfc: libefx-based PMD stub sufficient to build and init

2016-11-24 Thread Andrew Rybchenko
On 11/23/2016 06:26 PM, Ferruh Yigit wrote: > On 11/21/2016 3:00 PM, Andrew Rybchenko wrote: >> The PMD is put into the sfc/efx subdirectory to have a place for >> the second PMD and library shared by both. >> >> Enable the PMD by default on supported configuratons. >

[dpdk-dev] [PATCH 00/56] Solarflare libefx-based PMD

2016-11-24 Thread Andrew Rybchenko
On 11/23/2016 06:29 PM, Ferruh Yigit wrote: > On 11/21/2016 3:00 PM, Andrew Rybchenko wrote: >> The patch series adds Solarflare libefx-based network PMD. >> >> This version of the driver supports Solarflare SFN7xxx and SFN8xxx >> families of 10/40 Gbps adapters.

[dpdk-dev] [PATCH 00/56] Solarflare libefx-based PMD

2016-11-25 Thread Andrew Rybchenko
On 11/25/2016 01:24 PM, Ferruh Yigit wrote: > On 11/23/2016 7:49 AM, Andrew Rybchenko wrote: >> On 11/23/2016 03:02 AM, Ferruh Yigit wrote: >>> On 11/21/2016 3:00 PM, Andrew Rybchenko wrote: >>>> The patch series adds Solarflare libefx-based network PMD. >&g

[dpdk-dev] [PATCH 00/56] Solarflare libefx-based PMD

2016-11-25 Thread Andrew Rybchenko
On 11/23/2016 03:02 AM, Ferruh Yigit wrote: > On 11/21/2016 3:00 PM, Andrew Rybchenko wrote: >> The patch series adds Solarflare libefx-based network PMD. >> >> This version of the driver supports Solarflare SFN7xxx and SFN8xxx >> families of 10/40 Gbps adapters.

[dpdk-dev] [PATCH 00/56] Solarflare libefx-based PMD

2016-11-25 Thread Andrew Rybchenko
On 11/25/2016 04:00 PM, Thomas Monjalon wrote: > 2016-11-25 12:43, Ferruh Yigit: >> On 11/25/2016 12:02 PM, Andrew Rybchenko wrote: >>> On 11/25/2016 01:24 PM, Ferruh Yigit wrote: >>>> On 11/23/2016 7:49 AM, Andrew Rybchenko wrote: >>>>> On 11/23/2

[dpdk-dev] [PATCH 01/56] net/sfc: libefx-based PMD stub sufficient to build and init

2016-11-25 Thread Andrew Rybchenko
On 11/25/2016 01:17 PM, Ferruh Yigit wrote: > On 11/24/2016 3:59 PM, Andrew Rybchenko wrote: >> On 11/23/2016 06:26 PM, Ferruh Yigit wrote: >>> On 11/21/2016 3:00 PM, Andrew Rybchenko wrote: >>>> The PMD is put into the sfc/efx subdirectory to have a place for &

[dpdk-dev] [PATCH 30/56] net/sfc: include libefx in build

2016-11-25 Thread Andrew Rybchenko
On 11/25/2016 01:24 PM, Ferruh Yigit wrote: > On 11/24/2016 3:44 PM, Andrew Rybchenko wrote: >> See one question below. >> >> On 11/23/2016 06:26 PM, Ferruh Yigit wrote: >>> On 11/21/2016 3:00 PM, Andrew Rybchenko wrote: >>>> From: Artem Andree

[dpdk-dev] [PATCH v2 08/55] net/sfc: import libefx MCDI proxy authorization support

2016-11-29 Thread Andrew Rybchenko
it. >From Solarflare Communications Inc. Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/base/efx.h | 3 ++ drivers/net/sfc/base/efx_check.h | 7 drivers/net/sfc/base/efx_mcdi.c | 74 drivers/net/sfc/base/efx_mcdi.h | 17 + 4 fi

[dpdk-dev] [PATCH v2 01/55] net/sfc: libefx-based PMD stub sufficient to build and init

2016-11-29 Thread Andrew Rybchenko
The PMD is put into the sfc/efx subdirectory to have a place for the second PMD and library shared by both. Enable the PMD by default on supported configuratons. Reviewed-by: Andy Moreton Signed-off-by: Andrew Rybchenko --- MAINTAINERS | 6 ++ config

[dpdk-dev] [PATCH v2 15/55] net/sfc: import libefx PHY flags control support

2016-11-29 Thread Andrew Rybchenko
EFSYS_OPT_PHY_FLAGS should be enabled to use it. >From Solarflare Communications Inc. Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/base/ef10_phy.c | 4 drivers/net/sfc/base/efx.h | 3 +++ drivers/net/sfc/base/efx_check.h | 7 +++ drivers/net/sfc/base/efx_impl.h

[dpdk-dev] [PATCH v2 07/55] net/sfc: import libefx MCDI logging support

2016-11-29 Thread Andrew Rybchenko
Driver can provide a function to be called to log MCDI requests and responses to help with debugging. Solarflare netlogdecode cross-platform tool may be used to decode these logs. EFSYS_OPT_MCDI_LOGGING should be enabled to use it. >From Solarflare Communications Inc. Signed-off-by: And

[dpdk-dev] [PATCH v2 17/55] net/sfc: import libefx PHY LEDs control support

2016-11-29 Thread Andrew Rybchenko
EFSYS_OPT_PHY_LED_CONTROL should be enabled to use it. >From Solarflare Communications Inc. Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/base/ef10_phy.c | 19 + drivers/net/sfc/base/efx.h | 20 ++ drivers/net/sfc/base/efx_check.h |

[dpdk-dev] [PATCH v2 04/55] net/sfc: import libefx filters support

2016-11-29 Thread Andrew Rybchenko
off-by: Andrew Rybchenko --- drivers/net/sfc/base/efx.h| 159 ++ drivers/net/sfc/base/efx_check.h | 5 + drivers/net/sfc/base/efx_filter.c | 332 ++ drivers/net/sfc/base/efx_impl.h | 38 + 4 files changed, 534 insertions(+) create m

[dpdk-dev] [PATCH v2 14/55] net/sfc: import libefx software per-queue statistics support

2016-11-29 Thread Andrew Rybchenko
EFSYS_OPT_QSTATS should be enabled to use it. >From Solarflare Communications Inc. Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/base/ef10_ev.c | 25 + drivers/net/sfc/base/ef10_impl.h | 16 ++ drivers/net/sfc/base/ef10_tx.c | 26 + drivers/net/sfc/base/ef

[dpdk-dev] [PATCH v2 00/55] Solarflare libefx-based PMD

2016-11-29 Thread Andrew Rybchenko
disabling for the PMD itself * Comment enabled EFSYS_OPT_ * Use space after #define instead of TAB * Update version map to upcoming release * Use bool for boolean_t in efsys.h Andrew Rybchenko (48): net/sfc: libefx-based PMD stub sufficient to build and init net/sfc: import libefx base net/sfc

[dpdk-dev] [PATCH v2 16/55] net/sfc: import libefx PHY statistics support

2016-11-29 Thread Andrew Rybchenko
EFSYS_OPT_PHY_STATS should be enabled to use it. >From Solarflare Communications Inc. Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/base/ef10_impl.h | 10 +++ drivers/net/sfc/base/ef10_phy.c | 17 + drivers/net/sfc/base/efx.h| 80 drivers/net/

[dpdk-dev] [PATCH v2 12/55] net/sfc: import libefx diagnostics support

2016-11-29 Thread Andrew Rybchenko
EFSYS_OPT_DIAG should be enabled to use it. >From Solarflare Communications Inc. Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/base/ef10_impl.h | 8 ++ drivers/net/sfc/base/ef10_nic.c | 27 ++ drivers/net/sfc/base/efx.h| 33 drivers/net/sfc/base/efx_chec

[dpdk-dev] [PATCH v2 19/55] net/sfc: import libefx event prefetch support

2016-11-29 Thread Andrew Rybchenko
EFSYS_OPT_EV_PREFECT allows to enable event prefetching when event queue is polled. >From Solarflare Communications Inc. Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/base/efx.h | 9 + drivers/net/sfc/base/efx_check.h | 7 +++ drivers/net/sfc/base/efx_ev.c|

[dpdk-dev] [PATCH v2 11/55] net/sfc: import libefx SFN8xxx family support

2016-11-29 Thread Andrew Rybchenko
SFN8xxx is the second family based on EF10 architecture. It has few differences from SFN7xxx adapters family. EFSYS_OPT_MEDFORD should be enabled to use it. >From Solarflare Communications Inc. Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/base/ef10_impl.h| 6 +- drivers/net/

[dpdk-dev] [PATCH v2 32/55] net/sfc: add device configure and close stubs

2016-11-29 Thread Andrew Rybchenko
Reviewed-by: Andy Moreton Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/sfc.c| 29 ++ drivers/net/sfc/sfc.h| 29 ++ drivers/net/sfc/sfc_ethdev.c | 58 3 files changed, 111 insertions(+), 5

[dpdk-dev] [PATCH v2 35/55] net/sfc: make available resources estimation and allocation

2016-11-29 Thread Andrew Rybchenko
Resources required in accordance with configuration are allocated only. Reviewed-by: Andy Moreton Signed-off-by: Andrew Rybchenko --- doc/guides/nics/sfc_efx.rst | 8 +++ drivers/net/sfc/sfc.c | 117 +--- 2 files changed, 117 insertions(+), 8

[dpdk-dev] [PATCH v2 06/55] net/sfc: import libefx MCDI implementation

2016-11-29 Thread Andrew Rybchenko
) to execute it. Events about MCDI completion are delivered to house-keeping event queue, but usage of these events is optional and MCDI buffer may be simply polled waiting for completion indication set. >From Solarflare Communications Inc. Signed-off-by: Andrew Rybchenko --- drivers/net/

[dpdk-dev] [PATCH v2 13/55] net/sfc: import libefx built-in selftest support

2016-11-29 Thread Andrew Rybchenko
EFSYS_OPT_BIST should be enabled to use it. >From Solarflare Communications Inc. Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/base/ef10_impl.h | 29 ++ drivers/net/sfc/base/ef10_phy.c | 153 drivers/net/sfc/base/efx.h|

[dpdk-dev] [PATCH v2 28/55] net/sfc: import libefx bootrom configuration support

2016-11-29 Thread Andrew Rybchenko
Provide API to read/write bootrom configuration from/to NVRAM. EFSYS_OPT_BOOTROM should be enabled to use it. >From Solarflare Communications Inc. Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/base/efx.h | 39 +++ drivers/net/sfc/base/efx_bootcfg.c |

[dpdk-dev] [PATCH v2 23/55] net/sfc: import libefx monitors statistics support

2016-11-29 Thread Andrew Rybchenko
EFSYS_OPT_MON_STATS should be enabled to use it. >From Solarflare Communications Inc. Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/base/ef10_ev.c | 20 ++ drivers/net/sfc/base/ef10_nic.c | 15 + drivers/net/sfc/base/efx.h |

[dpdk-dev] [PATCH v2 22/55] net/sfc: import libefx loopback control support

2016-11-29 Thread Andrew Rybchenko
EFSYS_OPT_LOOPBACK should be enabled to use it. >From Solarflare Communications Inc. Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/base/ef10_impl.h | 13 +++ drivers/net/sfc/base/ef10_mac.c | 36 drivers/net/sfc/base/ef10_nic.c | 9 ++ drivers/net/sfc/base/ef10_ph

[dpdk-dev] [PATCH v2 38/55] net/sfc: implement EVQ dummy exception handling

2016-11-29 Thread Andrew Rybchenko
Right now the code just logs the exception and sets flag to notify subsequent event handlers and poller that recovery is required. Reviewed-by: Andy Moreton Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/sfc_ev.c | 20 ++-- 1 file changed, 18 insertions(+), 2 deletions

[dpdk-dev] [PATCH v2 29/55] net/sfc: import libefx licensing support

2016-11-29 Thread Andrew Rybchenko
Provide API to deal with licences on SFN7xxx and SFN8xxx family adapaters. EFSYS_OPT_LICENSING should be enabled to use it. >From Solarflare Communications Inc. Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/base/efx.h | 145 drivers/net/sfc/base/efx_check.h | 10 + driv

[dpdk-dev] [PATCH v2 27/55] net/sfc: import libefx VPD support

2016-11-29 Thread Andrew Rybchenko
Provide API to read/write PCI Vital Product Data. EFSYS_OPT_VPD should be enabled to use it. >From Solarflare Communications Inc. Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/base/ef10_impl.h | 63 +++ drivers/net/sfc/base/ef10_vpd.c | 463 + drivers/net/sfc/b

[dpdk-dev] [PATCH v2 24/55] net/sfc: import libefx support to access monitors via MCDI

2016-11-29 Thread Andrew Rybchenko
EFSYS_OPT_MON_MCDI should be enabled to use it. >From Solarflare Communications Inc. Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/base/ef10_nic.c | 3 + drivers/net/sfc/base/efx_check.h | 7 + drivers/net/sfc/base/efx_ev.c| 3 + drivers/net/sfc/base/efx_mon.c |

[dpdk-dev] [PATCH v2 02/55] net/sfc: import libefx base

2016-11-29 Thread Andrew Rybchenko
/write DMA-mapped memory, read/write PCI BAR space, locks, barriers etc. efx.h and efx_types.h provide external interfaces intended to be used by drivers. Other header files are internal. >From Solarflare Communications Inc. Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/base/REA

[dpdk-dev] [PATCH v2 44/55] net/sfc: check configured rxmode

2016-11-29 Thread Andrew Rybchenko
Reviewed-by: Andy Moreton Signed-off-by: Andrew Rybchenko --- doc/guides/nics/sfc_efx.rst | 12 + drivers/net/sfc/sfc_rx.c| 61 + 2 files changed, 73 insertions(+) diff --git a/doc/guides/nics/sfc_efx.rst b/doc/guides/nics/sfc_efx.rst

[dpdk-dev] [PATCH v2 03/55] net/sfc: import libefx register definitions

2016-11-29 Thread Andrew Rybchenko
>From Solarflare Communications Inc. Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/base/efx_regs.h | 3870 +++ drivers/net/sfc/base/efx_regs_pci.h | 2356 + 2 files changed, 6226 insertions(+) create mode 100644 drivers/net/sfc/b

[dpdk-dev] [PATCH v2 33/55] net/sfc: add device configuration checks

2016-11-29 Thread Andrew Rybchenko
-by: Andrew Rybchenko --- doc/guides/nics/sfc_efx.rst | 14 drivers/net/sfc/sfc.c | 55 + 2 files changed, 69 insertions(+) diff --git a/doc/guides/nics/sfc_efx.rst b/doc/guides/nics/sfc_efx.rst index 2eebcd7..31e86a7 100644 --- a/doc

[dpdk-dev] [PATCH v2 21/55] net/sfc: import libefx RSS support

2016-11-29 Thread Andrew Rybchenko
EFSYS_OPT_RX_SCALE should be enabled to use it. >From Solarflare Communications Inc. Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/base/ef10_filter.c | 10 + drivers/net/sfc/base/ef10_impl.h | 29 +++ drivers/net/sfc/base/ef10_rx.c |

[dpdk-dev] [PATCH v2 30/55] net/sfc: include libefx in build

2016-11-29 Thread Andrew Rybchenko
From: Artem Andreev <artem.andr...@oktetlabs.ru> Implement efsys.h for the PMD. Reviewed-by: Andy Moreton Signed-off-by: Artem Andreev Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/Makefile | 62 +++- drivers/net/sfc/efsys.h | 773

[dpdk-dev] [PATCH v2 37/55] net/sfc: implement event queue support

2016-11-29 Thread Andrew Rybchenko
Reviewed-by: Andy Moreton Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/Makefile | 1 + drivers/net/sfc/sfc.c| 17 ++ drivers/net/sfc/sfc.h| 7 + drivers/net/sfc/sfc_ev.c | 482 +++ drivers/net/sfc/sfc_ev.h | 139 ++ 5

[dpdk-dev] [PATCH v2 18/55] net/sfc: import libefx MAC statistics support

2016-11-29 Thread Andrew Rybchenko
rom Solarflare Communications Inc. Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/base/ef10_ev.c| 6 + drivers/net/sfc/base/ef10_impl.h | 17 ++ drivers/net/sfc/base/ef10_mac.c | 415 ++ drivers/net/sfc/base/ef10_nic.c | 10 + drivers/net/sfc/base/ef

[dpdk-dev] [PATCH v2 40/55] net/sfc: periodic management EVQ polling using alarm

2016-11-29 Thread Andrew Rybchenko
Timers cannot be used to implement periodic polling, since it implies requirement on application to process timers in the main loop. Reviewed-by: Andy Moreton Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/sfc_ev.c | 42 ++ 1 file changed, 42

  1   2   >