From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <matejvido@gmail.com>
Received: from mail-wi0-f176.google.com (mail-wi0-f176.google.com
 [209.85.212.176]) by dpdk.org (Postfix) with ESMTP id 34A448E65
 for <dev@dpdk.org>; Fri, 18 Sep 2015 10:34:32 +0200 (CEST)
Received: by wicgb1 with SMTP id gb1so22210090wic.1
 for <dev@dpdk.org>; Fri, 18 Sep 2015 01:34:32 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;
 h=from:to:subject:date:message-id:in-reply-to:references;
 bh=o3khyiNquwmnpy+rHBO0WhEXbbYKUEMjAq/fVWMJQoE=;
 b=uL5qBlmnAPbP88L6nfr3AebVNiCLYi/yRFPdz8N3ECeF8YljIvjuswXXREPe1n/0fN
 OjnXlKqWec9g3e0h6kOzUJdpg2QEnI4o5ge6/46AL75ogBhK/pQHD708lWJXDpoZ/eoI
 rZs/c6vtzuxnj/+huTj1P1ywwHCTwt1FavEbrFGeQHdaeIHQ/OCEWhqTnrhEKcbdWZa7
 NQ3bvzCcEODDxpZkpOrRbz+0/3AeSmtzRq3KEOQPsx0MoF2aNmVg2uDWDz49noa2c79I
 KNrOjXNLHMlAA/MDDm2PamCLhST2fI8Xs0DMenu72AoESCFzSW2/6zs/yIdlt44AKF8B
 PpOQ==
X-Received: by 10.180.106.4 with SMTP id gq4mr15086388wib.42.1442565272090;
 Fri, 18 Sep 2015 01:34:32 -0700 (PDT)
Received: from nbmato.fit.vutbr.cz ([2001:67c:1220:80e:7cf4:95f9:f390:9a4b])
 by smtp.gmail.com with ESMTPSA id xw2sm7620553wjc.12.2015.09.18.01.34.31
 for <dev@dpdk.org>
 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-SHA bits=128/128);
 Fri, 18 Sep 2015 01:34:31 -0700 (PDT)
From: Matej Vido <matejvido@gmail.com>
To: dev@dpdk.org
Date: Fri, 18 Sep 2015 10:32:51 +0200
Message-Id: <1442565172-5338-5-git-send-email-matejvido@gmail.com>
X-Mailer: git-send-email 1.9.1
In-Reply-To: <1442565172-5338-1-git-send-email-matejvido@gmail.com>
References: <1434702301-4509-1-git-send-email-vido@cesnet.cz>
 <1442565172-5338-1-git-send-email-matejvido@gmail.com>
Subject: [dpdk-dev] [PATCH v2 4/5] doc: add documentation for szedata2 PMD
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: Fri, 18 Sep 2015 08:34:32 -0000

Signed-off-by: Matej Vido <matejvido@gmail.com>
Reviewed-by: Jan Viktorin <viktorin@rehivetech.com>
---
 doc/guides/nics/index.rst            |   1 +
 doc/guides/nics/szedata2.rst         | 105 +++++++++++++++++++++++++++++++++++
 doc/guides/prog_guide/source_org.rst |   1 +
 3 files changed, 107 insertions(+)
 create mode 100644 doc/guides/nics/szedata2.rst

diff --git a/doc/guides/nics/index.rst b/doc/guides/nics/index.rst
index d1a92f8..fcbf8dd 100644
--- a/doc/guides/nics/index.rst
+++ b/doc/guides/nics/index.rst
@@ -45,6 +45,7 @@ Network Interface Controller Drivers
     ixgbe
     intel_vf
     mlx4
+    szedata2
     virtio
     vmxnet3
     pcap_ring
diff --git a/doc/guides/nics/szedata2.rst b/doc/guides/nics/szedata2.rst
new file mode 100644
index 0000000..05864c5
--- /dev/null
+++ b/doc/guides/nics/szedata2.rst
@@ -0,0 +1,105 @@
+..  BSD LICENSE
+    Copyright 2015 CESNET
+    All rights reserved.
+
+    Redistribution and use in source and binary forms, with or without
+    modification, are permitted provided that the following conditions
+    are met:
+
+    * Redistributions of source code must retain the above copyright
+    notice, this list of conditions and the following disclaimer.
+    * Redistributions in binary form must reproduce the above copyright
+    notice, this list of conditions and the following disclaimer in
+    the documentation and/or other materials provided with the
+    distribution.
+    * Neither the name of CESNET nor the names of its
+    contributors may be used to endorse or promote products derived
+    from this software without specific prior written permission.
+
+    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+    "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+    LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+    A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+    OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+    SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+    LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+    DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+    THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+    (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+    OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+SZEDATA2 PMD
+============
+
+SZEDATA2 PMD is virtual PMD which uses sze2 layer to communicate with COMBO
+cards (COMBO-80G, COMBO-100G) using interface provided by libsze2 library.
+
+.. note::
+
+   This driver has external dependencies. Therefore it is disabled in default
+   configuration files. It can be enabled by setting CONFIG_RTE_LIBRTE_PMD_SZEDATA2=y
+   and recompiling.
+
+Prerequisities
+--------------
+
+This PMD requires kernel modules which are responsible for initialization and
+allocation of resources needed for sze2 layer function. Communication between
+PMD and kernel modules is mediated by libsze2 library. These kernel modules and
+library are not part of DPDK and must be installed separately:
+
+- **libsze2**
+
+  This library provides API for initialization of sze2 transfers, receiving and
+  transmitting data segments.
+
+- **Kernel modules**
+
+  These kernel modules manage initialization of hardware, allocation and sharing
+  of resources for user space applications:
+
+  - combov3
+  - szedata2_cv3
+
+Using PMD
+---------
+
+SZEDATA2 PMD can be created by passing --vdev= option to EAL in the following
+format:
+
+.. code-block:: console
+
+    --vdev 'DEVICE_NAME,dev_path=PATH_TO_SZEDATA2_DEVICE,rx_ifaces=RX_MASK,tx_ifaces=TX_MASK'
+
+DEVICE_NAME and options dev_path, rx_ifaces, tx_ifaces are mandatory and must
+be separated by commas.
+
+*   DEVICE_NAME: contains prefix eth_szedata2 followed by numbers or letters,
+    must be unique for each virtual device
+
+*   dev_path: Defines path to szedata2 device.
+    Value is valid path to szedata2 device.
+
+        dev_path=/dev/szedataII0
+
+*   rx_ifaces: Defines which receive channels will be used.
+    For each channel is created one queue. Value is mask for selecting which
+    receive channels are required.
+
+        rx_ifaces=0x3
+
+*   tx_ifaces: Defines which transmit channels will be used.
+    For each channel is created one queue. Value is mask for selecting which
+    transmit channels are required.
+
+        tx_ifaces=0x3
+
+Example of usage
+^^^^^^^^^^^^^^^^
+
+Read packets from 0. and 1. receive channel and write them to 0. and 1. transmit
+channel
+
+.. code-block:: console
+
+    $RTE_TARGET/app/testpmd -c 0xf -n 2 --vdev 'eth_szedata20,dev_path=/dev/szedataII0,rx_ifaces=0x3,tx_ifaces=0x3' -- --port-topology=chained --rxq=2 --txq=2 --nb-cores=2
diff --git a/doc/guides/prog_guide/source_org.rst b/doc/guides/prog_guide/source_org.rst
index ae11b3b..2393002 100644
--- a/doc/guides/prog_guide/source_org.rst
+++ b/doc/guides/prog_guide/source_org.rst
@@ -106,6 +106,7 @@ The drivers directory has a *net* subdirectory which contains::
     +-- null               # NULL poll mode driver for testing
     +-- pcap               # PCAP poll mode driver
     +-- ring               # Ring poll mode driver
+    +-- szedata2           # szedata2 poll mode driver
     +-- virtio             # Virtio poll mode driver
     +-- vmxnet3            # VMXNET3 poll mode driver
     +-- xenvirt            # Xen virtio poll mode driver
-- 
1.9.1