From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <jblunck@gmail.com>
Received: from mail-wm0-f65.google.com (mail-wm0-f65.google.com [74.125.82.65])
 by dpdk.org (Postfix) with ESMTP id 4C3222E81
 for <dev@dpdk.org>; Tue, 22 Mar 2016 10:56:20 +0100 (CET)
Received: by mail-wm0-f65.google.com with SMTP id r129so16281626wmr.2
 for <dev@dpdk.org>; Tue, 22 Mar 2016 02:56:20 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;
 h=sender:from:to:cc:subject:date:message-id:in-reply-to:references;
 bh=4U2Av9rR2Grmq5adb4Mpi9nauA4S2PuNUcGOgKiCVS4=;
 b=oTkPYtXRoaNAen121mPROw5TAFk/FdrW+TnvzwWN5PYSKpkyIOF9FpGaIx14cU2FLs
 91SDOOcrv02zeONWX4akJbsTEhkm6Fbun5jb1gi6cZz4Yd8lW4Na3TkRT35iBa822HYs
 JjFpyMy+RtPd2wcKconuCwmX2cMvV7MUm31AJWpSMtMCbSm9hHclcFO+CF7pUR1eNjs4
 V8Z0yFYuWl+sHYvbf39NR/DNKEM0OFAixoFr0praUICABtcGKj+3/SrH5pdKA+0PyPk2
 /7afCFvvHFhnyi4Y+uoxHxYH1gLp2kIIs4PjQD4VZ/euhzq/oUxT0l2Td0OmfR0gpgdP
 MkOQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20130820;
 h=x-gm-message-state:sender:from:to:cc:subject:date:message-id
 :in-reply-to:references;
 bh=4U2Av9rR2Grmq5adb4Mpi9nauA4S2PuNUcGOgKiCVS4=;
 b=VqbtlGM6HTXhupmRlNuksIyzRAsYZUNDzILj9z72BKzhjPdtD/L3cSsawYWHhwzsxY
 SWK6nCqderhrVr1uWIM2ZW4NIgX9gUdRePJ1i/EVypOAX5MkJaQ4aP0OiajjEsV/+Z4A
 8HJrRkZtZNgAvDL6pxczc7Xj3klRpFKdZB3SDqDJo7bQoxdsceddQvQugsuiKoH7b0p/
 P5XPQ+adlp4wXk+vFOY457QlN7oHY3FAU12I+Fa2y6epR/abMFSltpeck5LDgZ1TfzzN
 o2CDGffdlK77y9lejhsbOo8ICzExNpuqr8fgZmZZOJ5ypd2mIN59MwU1dvRn2Nh+MyNw
 J7tA==
X-Gm-Message-State: AD7BkJJQcU7WzACZhzJpC3MkcNfATnkvOsiuIscvenORdoGg7VH9seNR6JCbiUMgz141gw==
X-Received: by 10.28.16.206 with SMTP id 197mr18409154wmq.15.1458640580118;
 Tue, 22 Mar 2016 02:56:20 -0700 (PDT)
Received: from weierstrass.local.net (port-92-196-120-98.dynamic.qsc.de.
 [92.196.120.98])
 by smtp.gmail.com with ESMTPSA id k125sm16439551wmb.14.2016.03.22.02.56.18
 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
 Tue, 22 Mar 2016 02:56:18 -0700 (PDT)
Sender: Jan Blunck <jblunck@gmail.com>
From: Jan Blunck <jblunck@infradead.org>
To: dev@dpdk.org
Cc: jblunck@brocade.com,
	shemming@brocade.com
Date: Tue, 22 Mar 2016 10:55:29 +0100
Message-Id: <1458640529-9183-4-git-send-email-jblunck@infradead.org>
X-Mailer: git-send-email 2.5.5
In-Reply-To: <1458640529-9183-1-git-send-email-jblunck@infradead.org>
References: <1424013889-2226-4-git-send-email-shemming@brocade.com>
 <1458640529-9183-1-git-send-email-jblunck@infradead.org>
Subject: [dpdk-dev] [PATCH v3 3/3] xen: Add documentation
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: Tue, 22 Mar 2016 09:56:20 -0000

Add basic documentation for Xen Netfront PMD compilation and testpmd
invocation.

Signed-off-by: Jan Blunck <jblunck@infradead.org>
---
 doc/guides/nics/overview.rst |  28 ++++++------
 doc/guides/nics/xen.rst      | 101 +++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 115 insertions(+), 14 deletions(-)
 create mode 100644 doc/guides/nics/xen.rst

diff --git a/doc/guides/nics/overview.rst b/doc/guides/nics/overview.rst
index 2d4f014..de07390 100644
--- a/doc/guides/nics/overview.rst
+++ b/doc/guides/nics/overview.rst
@@ -74,18 +74,18 @@ Most of these differences are summarized below.
 
 .. table:: Features availability in networking drivers
 
-   ==================== = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
-   Feature              a b b b c e e i i i i i i i i i i f f m m m n n p r s v v v x
-                        f n n o x 1 n 4 4 4 4 g g x x x x m m l l p f u c i z i i m e
-                        p x x n g 0 i 0 0 0 0 b b g g g g 1 1 x x i p l a n e r r x n
-                        a 2 2 d b 0 c e e e e   v b b b b 0 0 4 5 p   l p g d t t n v
-                        c x x i e 0     . v v   f e e e e k k     e         a i i e i
-                        k   v n         . f f       . v v   .               t o o t r
-                        e   f g         .   .       . f f   .               a   . 3 t
+   ==================== = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
+   Feature              a b b b c e e i i i i i i i i i i f f m m m n n p r s v v v x x
+                        f n n o x 1 n 4 4 4 4 g g x x x x m m l l p f u c i z i i m e e
+                        p x x n g 0 i 0 0 0 0 b b g g g g 1 1 x x i p l a n e r r x n n
+                        a 2 2 d b 0 c e e e e   v b b b b 0 0 4 5 p   l p g d t t n   v
+                        c x x i e 0     . v v   f e e e e k k     e         a i i e   i
+                        k   v n         . f f       . v v   .               t o o t   r
+                        e   f g         .   .       . f f   .               a   . 3   t
                         t               v   v       v   v   v               2   v
                                         e   e       e   e   e                   e
                                         c   c       c   c   c                   c
-   ==================== = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
+   ==================== = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
    link status                  X     X X                                   X
    link status event                  X X
    Rx interrupt                       X X X X
@@ -125,23 +125,23 @@ Most of these differences are summarized below.
    inner L4 checksum                  X   X
    packet type parsing          X     X   X
    timesync                           X X
-   basic stats                  X     X X X X                               X
+   basic stats                  X     X X X X                               X       X
    extended stats                     X X X X
    stats per queue              X                                           X
    EEPROM dump
    registers dump
    multiprocess aware                 X X X X
    BSD nic_uio                  X     X X X X
-   Linux UIO                    X     X X X X
+   Linux UIO                    X     X X X X                                       X
    Linux VFIO                   X     X X X X
    other kdrv                                                               X
    ARMv7
    ARMv8
    Power8
    TILE-Gx
-   x86-32                       X     X X X X
-   x86-64                       X     X X X X                               X
+   x86-32                       X     X X X X                                       X
+   x86-64                       X     X X X X                               X       X
    usage doc                    X                                           X
    design doc
    perf doc
-   ==================== = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
+   ==================== = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
diff --git a/doc/guides/nics/xen.rst b/doc/guides/nics/xen.rst
new file mode 100644
index 0000000..4e4531e
--- /dev/null
+++ b/doc/guides/nics/xen.rst
@@ -0,0 +1,101 @@
+..  BSD LICENSE
+    Copyright(c) 2016 Brocade Communications Systems, Inc.
+
+    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 Brocade Communications Systems 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.
+
+XEN Netfront Poll Mode Driver
+=============================
+
+The XEN netfront poll mode driver connects to the XEN netback driver offering the same functionality as the
+Xen netfront driver in the Linux kernel.
+
+Supported Features
+------------------
+
+- Single TX/RX queue pair
+- Single MAC address
+
+Config File Options
+-------------------
+
+
+- ``CONFIG_RTE_LIBRTE_PMD_XEN`` (default **n**)
+
+  Toggle compilation of the ``librte_pmd_xen`` driver.
+
+
+Linux
+-----
+
+This section demonstrates how to load the Xen netfront PMD.
+
+#. Load ``xen_uio`` driver:
+
+   .. code-block:: console
+
+		   modprobe uio
+		   insmod ./x86_64-native-linuxapp-gcc/kmod/xen_uio.ko
+
+#. Bind the XEN network device vif-0 to ``xen_uio`` driver:
+
+   .. code-block:: console
+
+		   echo vif-0 > /sys/bus/xen/drivers/vif/unbind
+		   echo vif-0 > /sys/bus/xen/drivers/xen_uio/bind
+
+#. Start ``testpmd`` with basic parameters:
+
+   .. code-block:: console
+
+		   testpmd -c 0x3 -n 4  -- -i --txqflags=0x0e00 --mbuf-size=9000 --total-num-mbufs=2048
+
+   Example output:
+
+   .. code-block:: console
+
+		   ...
+		   EAL: Master lcore 0 is ready (tid=6e4128c0;cpuset=[0])
+		   PMD: vif-0 skipping device with driver vif
+		   PMD: vif-1 Creating xen-netfront PMD ethdev on socket 0
+		   PMD: vif-1 uio_num = 0
+		   PMD: /dev/uio0 mmap map0 (4096@0x0) to 0x7f366e419000
+		   PMD: /dev/uio0 mmap map1 (4096@0x0) to 0x7f366e418000
+		   PMD: /dev/uio0 mmap map2 (4096@0x0) to 0x7f366e411000
+		   EAL: lcore 1 is ready (tid=4c5ff700;cpuset=[1])
+		   Interactive-mode selected
+		   Configuring Port 0 (socket 0)
+		   rte_eth_dev_config_restore: port 0: MAC address array not supported
+		   rte_eth_promiscuous_disable: Function not supported
+		   rte_eth_allmulticast_disable: Function not supported
+		   Port 0: 00:16:3E:0A:CC:6D
+		   Checking link statuses...
+		   Port 0 Link Up - speed 10000 Mbps - full-duplex
+		   Done
+		   rte_eth_promiscuous_enable: Function not supported
+		   testpmd> 
-- 
2.5.5