DPDK patches and discussions
 help / color / mirror / Atom feed
From: Matej Vido <vido@cesnet.cz>
To: dev@dpdk.org
Cc: remes@netcope.com
Subject: [dpdk-dev] [PATCH 1/3] net/szedata2: do not affect Ethernet interfaces
Date: Fri,  6 Apr 2018 16:12:07 +0200	[thread overview]
Message-ID: <1523023929-1257-2-git-send-email-vido@cesnet.cz> (raw)
In-Reply-To: <1523023929-1257-1-git-send-email-vido@cesnet.cz>

NFB cards employ multiple Ethernet ports.
Until now, Ethernet port-related operations were performed on all of them
(since the whole card was represented as a single port).
With new NFB-200G2QL card, this is no longer viable.

Since there is no fixed mapping between the queues and Ethernet ports,
and since a single card can be represented as two ports in DPDK,
there is no way of telling which (if any) physical ports should be
associated with individual ports in DPDK.

This is also described in documentation in more detail.

Signed-off-by: Matej Vido <vido@cesnet.cz>
Signed-off-by: Jan Remes <remes@netcope.com>
---
 config/common_base                                 |   5 -
 .../nics/img/szedata2_nfb200g_architecture.svg     | 171 +++++++++++
 doc/guides/nics/szedata2.rst                       |  66 +++--
 drivers/net/szedata2/Makefile                      |   1 -
 drivers/net/szedata2/rte_eth_szedata2.c            | 137 +--------
 drivers/net/szedata2/szedata2_iobuf.c              | 174 -----------
 drivers/net/szedata2/szedata2_iobuf.h              | 327 ---------------------
 7 files changed, 225 insertions(+), 656 deletions(-)
 create mode 100644 doc/guides/nics/img/szedata2_nfb200g_architecture.svg
 delete mode 100644 drivers/net/szedata2/szedata2_iobuf.c
 delete mode 100644 drivers/net/szedata2/szedata2_iobuf.h

diff --git a/config/common_base b/config/common_base
index 7abf7c6..b182b01 100644
--- a/config/common_base
+++ b/config/common_base
@@ -307,11 +307,6 @@ CONFIG_RTE_LIBRTE_SFC_EFX_DEBUG=n
 # Compile software PMD backed by SZEDATA2 device
 #
 CONFIG_RTE_LIBRTE_PMD_SZEDATA2=n
-#
-# Defines firmware type address space.
-# See documentation for supported values.
-# Other values raise compile time error.
-CONFIG_RTE_LIBRTE_PMD_SZEDATA2_AS=0
 
 #
 # Compile burst-oriented Cavium Thunderx NICVF PMD driver
diff --git a/doc/guides/nics/img/szedata2_nfb200g_architecture.svg b/doc/guides/nics/img/szedata2_nfb200g_architecture.svg
new file mode 100644
index 0000000..6ee536b
--- /dev/null
+++ b/doc/guides/nics/img/szedata2_nfb200g_architecture.svg
@@ -0,0 +1,171 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   id="svg2"
+   stroke-miterlimit="10"
+   stroke-linecap="square"
+   stroke="none"
+   fill="none"
+   viewBox="0.0 0.0 568.7322834645669 352.3937007874016"
+   version="1.1">
+  <metadata
+     id="metadata65">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+        <dc:title></dc:title>
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <defs
+     id="defs63" />
+  <clipPath
+     id="p.0">
+    <path
+       id="path5"
+       clip-rule="nonzero"
+       d="m0 0l568.7323 0l0 352.3937l-568.7323 0l0 -352.3937z" />
+  </clipPath>
+  <g
+     id="g7"
+     clip-path="url(#p.0)">
+    <path
+       id="path9"
+       fill-rule="evenodd"
+       d="m0 0l568.7323 0l0 352.3937l-568.7323 0z"
+       fill-opacity="0.0"
+       fill="#000000" />
+    <path
+       id="path11"
+       fill-rule="evenodd"
+       d="m40.564304 14.364829l254.36221 0l0 131.84253l-254.36221 0z"
+       fill="#47c3d3" />
+    <path
+       id="path13"
+       fill-rule="nonzero"
+       d="m109.54107 87.20609l0 -13.359375l1.8125 0l7.015625 10.484375l0 -10.484375l1.6875 0l0 13.359375l-1.8125 0l-7.015625 -10.5l0 10.5l-1.6875 0zm13.582321 0l0 -13.359375l9.015617 0l0 1.578125l-7.2499924 0l0 4.140625l6.2656174 0l0 1.578125l-6.2656174 0l0 6.0625l-1.765625 0zm11.224098 0l0 -13.359375l5.015625 0q1.53125 0 2.453125 0.40625q0.921875 0.40625 1.4375 1.25q0.53125 0.84375 0.53125 1.765625q0 0.859375 -0.46875 1.625q-0.453125 0.75 -1.390625 1.203125q1.203125 0.359375 1.859375 1.21875q0.65625 0.859375 0.65625 2.015625q0 0.9375 -0.40625 1.75q-0.390625 0.796875 -0.984375 1.234375q-0.578125 0.4375 -1.453125 0.671875q-0.875 0.21875 -2.15625 0.21875l-5.09375 0zm1.78125 -7.75l2.875 0q1.1875 0 1.6875 -0.140625q0.671875 -0.203125 1.015625 -0.671875q0.34375 -0.46875 0.34375 -1.171875q0 -0.65625 -0.328125 -1.15625q-0.3125 -0.515625 -0.90625 -0.703125q-0.59375 -0.1875 -2.03125 -0.1875l-2.65625 0l0 4.03125zm0 6.171875l3.3125 0q0.859375 0 1.203125 -0.0625q0.609375 -0.109375 1.015625 -0.3
 59375q0.421875 -0.265625 0.6875 -0.75q0.265625 -0.484375 0.265625 -1.125q0 -0.75 -0.390625 -1.296875q-0.375 -0.546875 -1.0625 -0.765625q-0.671875 -0.234375 -1.953125 -0.234375l-3.078125 0l0 4.59375zm9.896698 -2.4375l0 -1.640625l5.03125 0l0 1.640625l-5.03125 0zm15.009552 2.4375l0 1.578125l-8.828125 0q-0.015625 -0.59375 0.1875 -1.140625q0.34375 -0.90625 1.078125 -1.78125q0.75 -0.875 2.15625 -2.015625q2.171875 -1.78125 2.9375 -2.828125q0.765625 -1.046875 0.765625 -1.96875q0 -0.984375 -0.703125 -1.640625q-0.6875 -0.671875 -1.8125 -0.671875q-1.1875 0 -1.90625 0.71875q-0.703125 0.703125 -0.703125 1.953125l-1.6875 -0.171875q0.171875 -1.890625 1.296875 -2.875q1.140625 -0.984375 3.03125 -0.984375q1.921875 0 3.046875 1.0625q1.125 1.0625 1.125 2.640625q0 0.796875 -0.328125 1.578125q-0.328125 0.78125 -1.09375 1.640625q-0.75 0.84375 -2.53125 2.34375q-1.46875 1.234375 -1.890625 1.6875q-0.421875 0.4375 -0.6875 0.875l6.546875 0zm1.7663422 -5.015625q0 -2.359375 0.484375 -3.796875q0.484375 -1.453125 
 1.4375 -2.234375q0.96875 -0.78125 2.421875 -0.78125q1.078125 0 1.890625 0.4375q0.8125 0.421875 1.328125 1.25q0.53125 0.8125 0.828125 1.984375q0.3125 1.15625 0.3125 3.140625q0 2.359375 -0.484375 3.8125q-0.484375 1.4375 -1.453125 2.234375q-0.953125 0.78125 -2.421875 0.78125q-1.921875 0 -3.03125 -1.390625q-1.3125 -1.671875 -1.3125 -5.4375zm1.671875 0q0 3.296875 0.765625 4.390625q0.78125 1.078125 1.90625 1.078125q1.140625 0 1.90625 -1.09375q0.765625 -1.09375 0.765625 -4.375q0 -3.296875 -0.765625 -4.375q-0.765625 -1.078125 -1.921875 -1.078125q-1.125 0 -1.796875 0.953125q-0.859375 1.21875 -0.859375 4.5zm8.703842 0q0 -2.359375 0.484375 -3.796875q0.484375 -1.453125 1.4375 -2.234375q0.96875 -0.78125 2.421875 -0.78125q1.078125 0 1.890625 0.4375q0.8125 0.421875 1.328125 1.25q0.53125 0.8125 0.828125 1.984375q0.3125 1.15625 0.3125 3.140625q0 2.359375 -0.484375 3.8125q-0.484375 1.4375 -1.453125 2.234375q-0.953125 0.78125 -2.421875 0.78125q-1.921875 0 -3.03125 -1.390625q-1.3125 -1.671875 -1.3125 -
 5.4375zm1.671875 0q0 3.296875 0.765625 4.390625q0.78125 1.078125 1.90625 1.078125q1.140625 0 1.90625 -1.09375q0.765625 -1.09375 0.765625 -4.375q0 -3.296875 -0.765625 -4.375q-0.765625 -1.078125 -1.921875 -1.078125q-1.125 0 -1.796875 0.953125q-0.859375 1.21875 -0.859375 4.5zm15.610092 1.359375l0 -1.578125l5.65625 0l0 4.953125q-1.296875 1.046875 -2.6875 1.578125q-1.375 0.515625 -2.84375 0.515625q-1.96875 0 -3.578125 -0.84375q-1.609375 -0.84375 -2.421875 -2.4375q-0.8125 -1.59375 -0.8125 -3.5625q0 -1.953125 0.8125 -3.640625q0.8125 -1.6875 2.34375 -2.5q1.53125 -0.828125 3.515625 -0.828125q1.453125 0 2.625 0.46875q1.171875 0.46875 1.828125 1.3125q0.671875 0.828125 1.015625 2.171875l-1.59375 0.4375q-0.296875 -1.015625 -0.75 -1.59375q-0.4375 -0.59375 -1.265625 -0.9375q-0.828125 -0.34375 -1.84375 -0.34375q-1.203125 0 -2.09375 0.375q-0.890625 0.359375 -1.4375 0.96875q-0.53125 0.59375 -0.828125 1.3125q-0.515625 1.234375 -0.515625 2.6875q0 1.78125 0.609375 2.984375q0.625 1.203125 1.796875 1.7968
 75q1.171875 0.578125 2.5 0.578125q1.140625 0 2.234375 -0.4375q1.09375 -0.453125 1.65625 -0.953125l0 -2.484375l-3.921875 0zm16.214554 3.65625l0 1.578125l-8.828125 0q-0.015625 -0.59375 0.1875 -1.140625q0.34375 -0.90625 1.078125 -1.78125q0.75 -0.875 2.15625 -2.015625q2.171875 -1.78125 2.9375 -2.828125q0.765625 -1.046875 0.765625 -1.96875q0 -0.984375 -0.703125 -1.640625q-0.6875 -0.671875 -1.8125 -0.671875q-1.1875 0 -1.90625 0.71875q-0.703125 0.703125 -0.703125 1.953125l-1.6875 -0.171875q0.171875 -1.890625 1.296875 -2.875q1.140625 -0.984375 3.03125 -0.984375q1.921875 0 3.046875 1.0625q1.125 1.0625 1.125 2.640625q0 0.796875 -0.328125 1.578125q-0.328125 0.78125 -1.09375 1.640625q-0.75 0.84375 -2.53125 2.34375q-1.46875 1.234375 -1.890625 1.6875q-0.421875 0.4375 -0.6875 0.875l6.546875 0zm12.547592 0.140625q1.234375 0.859375 2.265625 1.25l-0.515625 1.21875q-1.4375 -0.515625 -2.875 -1.625q-1.484375 0.828125 -3.28125 0.828125q-1.8125 0 -3.296875 -0.875q-1.46875 -0.875 -2.265625 -2.453125q-0.796
 875 -1.59375 -0.796875 -3.578125q0 -1.984375 0.796875 -3.59375q0.8125 -1.625 2.28125 -2.46875q1.484375 -0.859375 3.328125 -0.859375q1.84375 0 3.328125 0.890625q1.484375 0.875 2.265625 2.453125q0.78125 1.578125 0.78125 3.5625q0 1.65625 -0.5 2.96875q-0.5 1.3125 -1.515625 2.28125zm-3.890625 -2.25q1.53125 0.421875 2.515625 1.28125q1.5625 -1.421875 1.5625 -4.28125q0 -1.625 -0.546875 -2.828125q-0.546875 -1.21875 -1.609375 -1.875q-1.0625 -0.671875 -2.390625 -0.671875q-1.96875 0 -3.28125 1.359375q-1.296875 1.34375 -1.296875 4.03125q0 2.59375 1.28125 4.0q1.296875 1.390625 3.296875 1.390625q0.953125 0 1.78125 -0.359375q-0.828125 -0.53125 -1.75 -0.765625l0.4375 -1.28125zm8.198929 3.6875l0 -13.359375l1.78125 0l0 11.78125l6.5625 0l0 1.578125l-8.34375 0zm21.746521 -3.546875l1.609375 0.21875q-0.265625 1.65625 -1.359375 2.609375q-1.078125 0.9375 -2.671875 0.9375q-1.984375 0 -3.1875 -1.296875q-1.203125 -1.296875 -1.203125 -3.71875q0 -1.578125 0.515625 -2.75q0.515625 -1.171875 1.578125 -1.75q1.0625 -
 0.59375 2.3125 -0.59375q1.578125 0 2.578125 0.796875q1.0 0.796875 1.28125 2.265625l-1.59375 0.234375q-0.234375 -0.96875 -0.8125 -1.453125q-0.578125 -0.5 -1.390625 -0.5q-1.234375 0 -2.015625 0.890625q-0.78125 0.890625 -0.78125 2.8125q0 1.953125 0.75 2.84375q0.75 0.875 1.953125 0.875q0.96875 0 1.609375 -0.59375q0.65625 -0.59375 0.828125 -1.828125zm9.328125 2.359375q-0.921875 0.765625 -1.765625 1.09375q-0.828125 0.3125 -1.796875 0.3125q-1.59375 0 -2.453125 -0.78125q-0.859375 -0.78125 -0.859375 -1.984375q0 -0.71875 0.328125 -1.296875q0.328125 -0.59375 0.84375 -0.9375q0.53125 -0.359375 1.1875 -0.546875q0.46875 -0.125 1.453125 -0.25q1.984375 -0.234375 2.921875 -0.5625q0.015625 -0.34375 0.015625 -0.421875q0 -1.0 -0.46875 -1.421875q-0.625 -0.546875 -1.875 -0.546875q-1.15625 0 -1.703125 0.40625q-0.546875 0.40625 -0.8125 1.421875l-1.609375 -0.21875q0.21875 -1.015625 0.71875 -1.640625q0.5 -0.640625 1.453125 -0.984375q0.953125 -0.34375 2.1875 -0.34375q1.25 0 2.015625 0.296875q0.78125 0.28125 1.
 140625 0.734375q0.375 0.4375 0.51564026 1.109375q0.078125 0.421875 0.078125 1.515625l0 2.1875q0 2.28125 0.109375 2.890625q0.109375 0.59375 0.40625 1.15625l-1.7031403 0q-0.265625 -0.515625 -0.328125 -1.1875zm-0.140625 -3.671875q-0.890625 0.375 -2.671875 0.625q-1.015625 0.140625 -1.4375 0.328125q-0.421875 0.1875 -0.65625 0.53125q-0.21875 0.34375 -0.21875 0.78125q0 0.65625 0.5 1.09375q0.5 0.4375 1.453125 0.4375q0.9375 0 1.671875 -0.40625q0.75 -0.421875 1.09375 -1.140625q0.265625 -0.5625 0.265625 -1.640625l0 -0.609375zm4.188217 4.859375l0 -9.671875l1.46875 0l0 1.46875q0.5625 -1.03125 1.03125 -1.359375q0.484375 -0.328125 1.0625 -0.328125q0.828125 0 1.6875 0.53125l-0.5625 1.515625q-0.609375 -0.359375 -1.203125 -0.359375q-0.546875 0 -0.96875 0.328125q-0.421875 0.328125 -0.609375 0.890625q-0.28125 0.875 -0.28125 1.921875l0 5.0625l-1.625 0zm12.493927 0l0 -1.21875q-0.90625 1.4375 -2.703125 1.4375q-1.15625 0 -2.125 -0.640625q-0.96875 -0.640625 -1.5 -1.78125q-0.53125 -1.140625 -0.53125 -2.625q0
  -1.453125 0.484375 -2.625q0.484375 -1.1875 1.4375 -1.8125q0.96875 -0.625 2.171875 -0.625q0.875 0 1.546875 0.375q0.6875 0.359375 1.109375 0.953125l0 -4.796875l1.640625 0l0 13.359375l-1.53125 0zm-5.171875 -4.828125q0 1.859375 0.78125 2.78125q0.78125 0.921875 1.84375 0.921875q1.078125 0 1.828125 -0.875q0.75 -0.890625 0.75 -2.6875q0 -1.984375 -0.765625 -2.90625q-0.765625 -0.9375 -1.890625 -0.9375q-1.078125 0 -1.8125 0.890625q-0.734375 0.890625 -0.734375 2.8125z"
+       fill="#000000" />
+    <path
+       id="path15"
+       fill-rule="evenodd"
+       d="m54.076115 146.20735l227.3386 0l0 32.944885l-227.3386 0z"
+       fill="#c2c2c2" />
+    <path
+       id="path17"
+       fill-rule="nonzero"
+       d="m96.09741 169.5998l0 -13.359375l5.046875 0q1.328125 0 2.03125 0.125q0.96875 0.171875 1.640625 0.640625q0.671875 0.453125 1.078125 1.28125q0.40625 0.828125 0.40625 1.828125q0 1.703125 -1.09375 2.890625q-1.078125 1.171875 -3.921875 1.171875l-3.421875 0l0 5.421875l-1.765625 0zm1.765625 -7.0l3.453125 0q1.71875 0 2.4375 -0.640625q0.71875 -0.640625 0.71875 -1.796875q0 -0.84375 -0.421875 -1.4375q-0.421875 -0.59375 -1.125 -0.78125q-0.4375 -0.125 -1.640625 -0.125l-3.421875 0l0 4.78125zm20.209198 2.3125l1.765625 0.453125q-0.5625 2.171875 -2.0 3.328125q-1.4375 1.140625 -3.53125 1.140625q-2.15625 0 -3.515625 -0.875q-1.34375 -0.890625 -2.0625 -2.546875q-0.703125 -1.671875 -0.703125 -3.59375q0 -2.078125 0.796875 -3.625q0.796875 -1.5625 2.265625 -2.359375q1.484375 -0.8125 3.25 -0.8125q2.0 0 3.359375 1.015625q1.375 1.015625 1.90625 2.875l-1.734375 0.40625q-0.46875 -1.453125 -1.359375 -2.109375q-0.875 -0.671875 -2.203125 -0.671875q-1.546875 0 -2.578125 0.734375q-1.03125 0.734375 -1.453125 
 1.984375q-0.421875 1.234375 -0.421875 2.5625q0 1.703125 0.5 2.96875q0.5 1.265625 1.546875 1.90625q1.046875 0.625 2.265625 0.625q1.484375 0 2.515625 -0.859375q1.03125 -0.859375 1.390625 -2.546875zm4.238571 4.6875l0 -13.359375l1.765625 0l0 13.359375l-1.765625 0zm4.042679 -4.015625l0 -1.640625l5.03125 0l0 1.640625l-5.03125 0zm7.087677 4.015625l0 -13.359375l9.65625 0l0 1.578125l-7.875 0l0 4.09375l7.375 0l0 1.5625l-7.375 0l0 4.546875l8.1875 0l0 1.578125l-9.96875 0zm17.392502 0l0 -9.671875l1.46875 0l0 1.359375q0.453125 -0.71875 1.203125 -1.140625q0.765625 -0.4375 1.71875 -0.4375q1.078125 0 1.765625 0.453125q0.6875 0.4375 0.96875 1.234375q1.15625 -1.6875 2.984375 -1.6875q1.453125 0 2.21875 0.796875q0.78125 0.796875 0.78125 2.453125l0 6.640625l-1.640625 0l0 -6.09375q0 -0.984375 -0.15625 -1.40625q-0.15625 -0.4375 -0.578125 -0.703125q-0.421875 -0.265625 -0.984375 -0.265625q-1.015625 0 -1.6875 0.6875q-0.671875 0.671875 -0.671875 2.15625l0 5.625l-1.640625 0l0 -6.28125q0 -1.09375 -0.40625 -1.640
 625q-0.40625 -0.546875 -1.3125 -0.546875q-0.6875 0 -1.28125 0.359375q-0.59375 0.359375 -0.859375 1.0625q-0.25 0.703125 -0.25 2.03125l0 5.015625l-1.640625 0zm21.853302 -1.1875q-0.921875 0.765625 -1.765625 1.09375q-0.828125 0.3125 -1.796875 0.3125q-1.59375 0 -2.453125 -0.78125q-0.859375 -0.78125 -0.859375 -1.984375q0 -0.71875 0.328125 -1.296875q0.328125 -0.59375 0.84375 -0.9375q0.53125 -0.359375 1.1875 -0.546875q0.46875 -0.125 1.453125 -0.25q1.984375 -0.234375 2.921875 -0.5625q0.015625 -0.34375 0.015625 -0.421875q0 -1.0 -0.46875 -1.421875q-0.625 -0.546875 -1.875 -0.546875q-1.15625 0 -1.703125 0.40625q-0.546875 0.40625 -0.8125 1.421875l-1.609375 -0.21875q0.21875 -1.015625 0.71875 -1.640625q0.5 -0.640625 1.453125 -0.984375q0.953125 -0.34375 2.1875 -0.34375q1.25 0 2.015625 0.296875q0.78125 0.28125 1.140625 0.734375q0.375 0.4375 0.515625 1.109375q0.078125 0.421875 0.078125 1.515625l0 2.1875q0 2.28125 0.109375 2.890625q0.109375 0.59375 0.40625 1.15625l-1.703125 0q-0.265625 -0.515625 -0.328
 125 -1.1875zm-0.140625 -3.671875q-0.890625 0.375 -2.671875 0.625q-1.015625 0.140625 -1.4375 0.328125q-0.421875 0.1875 -0.65625 0.53125q-0.21875 0.34375 -0.21875 0.78125q0 0.65625 0.5 1.09375q0.5 0.4375 1.453125 0.4375q0.9375 0 1.671875 -0.40625q0.75 -0.421875 1.09375 -1.140625q0.265625 -0.5625 0.265625 -1.640625l0 -0.609375zm3.5475922 1.96875l1.625 -0.25q0.125 0.96875 0.75 1.5q0.625 0.515625 1.75 0.515625q1.125 0 1.671875 -0.453125q0.546875 -0.46875 0.546875 -1.09375q0 -0.546875 -0.484375 -0.875q-0.328125 -0.21875 -1.671875 -0.546875q-1.8125 -0.46875 -2.515625 -0.796875q-0.6875 -0.328125 -1.046875 -0.90625q-0.359375 -0.59375 -0.359375 -1.3125q0 -0.640625 0.296875 -1.1875q0.296875 -0.5625 0.8125 -0.921875q0.375 -0.28125 1.03125 -0.46875q0.671875 -0.203125 1.421875 -0.203125q1.140625 0 2.0 0.328125q0.859375 0.328125 1.265625 0.890625q0.421875 0.5625 0.578125 1.5l-1.609375 0.21875q-0.109375 -0.75 -0.640625 -1.171875q-0.515625 -0.421875 -1.46875 -0.421875q-1.140625 0 -1.625 0.375q-0.468
 75 0.375 -0.46875 0.875q0 0.3125 0.1875 0.578125q0.203125 0.265625 0.640625 0.4375q0.234375 0.09375 1.4375 0.421875q1.75 0.453125 2.4375 0.75q0.6875 0.296875 1.078125 0.859375q0.390625 0.5625 0.390625 1.40625q0 0.828125 -0.484375 1.546875q-0.46875 0.71875 -1.375 1.125q-0.90625 0.390625 -2.046875 0.390625q-1.875 0 -2.875 -0.78125q-0.984375 -0.78125 -1.25 -2.328125zm13.5625 1.421875l0.234375 1.453125q-0.6875 0.140625 -1.234375 0.140625q-0.890625 0 -1.390625 -0.28125q-0.484375 -0.28125 -0.6875 -0.734375q-0.203125 -0.46875 -0.203125 -1.9375l0 -5.578125l-1.203125 0l0 -1.265625l1.203125 0l0 -2.390625l1.625 -0.984375l0 3.375l1.65625 0l0 1.265625l-1.65625 0l0 5.671875q0 0.6875 0.078125 0.890625q0.09375 0.203125 0.28125 0.328125q0.203125 0.109375 0.578125 0.109375q0.265625 0 0.71875 -0.0625zm8.230164 -1.640625l1.6875 0.203125q-0.40625 1.484375 -1.484375 2.3125q-1.078125 0.8125 -2.765625 0.8125q-2.125 0 -3.375 -1.296875q-1.234375 -1.3125 -1.234375 -3.671875q0 -2.453125 1.25 -3.796875q1.265625
  -1.34375 3.265625 -1.34375q1.9375 0 3.15625 1.328125q1.234375 1.3125 1.234375 3.703125q0 0.15625 0 0.4375l-7.21875 0q0.09375 1.59375 0.90625 2.453125q0.8125 0.84375 2.015625 0.84375q0.90625 0 1.546875 -0.46875q0.640625 -0.484375 1.015625 -1.515625zm-5.390625 -2.65625l5.40625 0q-0.109375 -1.21875 -0.625 -1.828125q-0.78125 -0.953125 -2.03125 -0.953125q-1.125 0 -1.90625 0.765625q-0.765625 0.75 -0.84375 2.015625zm9.125732 5.765625l0 -9.671875l1.46875 0l0 1.46875q0.5625 -1.03125 1.03125 -1.359375q0.484375 -0.328125 1.0625 -0.328125q0.828125 0 1.6875 0.53125l-0.5625 1.515625q-0.609375 -0.359375 -1.203125 -0.359375q-0.546875 0 -0.96875 0.328125q-0.421875 0.328125 -0.609375 0.890625q-0.28125 0.875 -0.28125 1.921875l0 5.0625l-1.625 0zm10.755341 -2.890625l1.625 -0.25q0.125 0.96875 0.75 1.5q0.625 0.515625 1.75 0.515625q1.125 0 1.671875 -0.453125q0.546875 -0.46875 0.546875 -1.09375q0 -0.546875 -0.484375 -0.875q-0.328125 -0.21875 -1.671875 -0.546875q-1.8125 -0.46875 -2.515625 -0.796875q-0.6875 
 -0.328125 -1.046875 -0.90625q-0.359375 -0.59375 -0.359375 -1.3125q0 -0.640625 0.296875 -1.1875q0.296875 -0.5625 0.8125 -0.921875q0.375 -0.28125 1.03125 -0.46875q0.671875 -0.203125 1.421875 -0.203125q1.140625 0 2.0 0.328125q0.859375 0.328125 1.265625 0.890625q0.421875 0.5625 0.578125 1.5l-1.609375 0.21875q-0.109375 -0.75 -0.640625 -1.171875q-0.515625 -0.421875 -1.46875 -0.421875q-1.140625 0 -1.625 0.375q-0.46875 0.375 -0.46875 0.875q0 0.3125 0.1875 0.578125q0.203125 0.265625 0.640625 0.4375q0.234375 0.09375 1.4375 0.421875q1.75 0.453125 2.4375 0.75q0.6875 0.296875 1.078125 0.859375q0.390625 0.5625 0.390625 1.40625q0 0.828125 -0.484375 1.546875q-0.46875 0.71875 -1.375 1.125q-0.90625 0.390625 -2.046875 0.390625q-1.875 0 -2.875 -0.78125q-0.984375 -0.78125 -1.25 -2.328125zm9.9375 2.890625l0 -13.359375l1.640625 0l0 13.359375l-1.640625 0zm3.5823364 -4.84375q0 -2.6875 1.484375 -3.96875q1.25 -1.078125 3.046875 -1.078125q2.0 0 3.265625 1.3125q1.265625 1.296875 1.265625 3.609375q0 1.859375 -0.
 5625 2.9375q-0.5625 1.0625 -1.640625 1.65625q-1.0625 0.59375 -2.328125 0.59375q-2.03125 0 -3.28125 -1.296875q-1.25 -1.3125 -1.25 -3.765625zm1.6875 0q0 1.859375 0.796875 2.796875q0.8125 0.921875 2.046875 0.921875q1.21875 0 2.03125 -0.921875q0.8125 -0.9375 0.8125 -2.84375q0 -1.796875 -0.8125 -2.71875q-0.8125 -0.921875 -2.03125 -0.921875q-1.234375 0 -2.046875 0.921875q-0.796875 0.90625 -0.796875 2.765625zm12.875702 3.375l0.234375 1.453125q-0.6875 0.140625 -1.234375 0.140625q-0.890625 0 -1.390625 -0.28125q-0.484375 -0.28125 -0.6875 -0.734375q-0.203125 -0.46875 -0.203125 -1.9375l0 -5.578125l-1.203125 0l0 -1.265625l1.203125 0l0 -2.390625l1.625 -0.984375l0 3.375l1.65625 0l0 1.265625l-1.65625 0l0 5.671875q0 0.6875 0.078125 0.890625q0.09375 0.203125 0.28125 0.328125q0.203125 0.109375 0.578125 0.109375q0.265625 0 0.71875 -0.0625z"
+       fill="#000000" />
+    <path
+       id="path19"
+       fill-rule="evenodd"
+       d="m321.90552 146.20735l227.33856 0l0 32.944885l-227.33856 0z"
+       fill="#c2c2c2" />
+    <path
+       id="path21"
+       fill-rule="nonzero"
+       d="m370.65872 169.5998l0 -13.359375l5.046875 0q1.328125 0 2.03125 0.125q0.96875 0.171875 1.640625 0.640625q0.671875 0.453125 1.078125 1.28125q0.40625 0.828125 0.40625 1.828125q0 1.703125 -1.09375 2.890625q-1.078125 1.171875 -3.921875 1.171875l-3.421875 0l0 5.421875l-1.765625 0zm1.765625 -7.0l3.453125 0q1.71875 0 2.4375 -0.640625q0.71875 -0.640625 0.71875 -1.796875q0 -0.84375 -0.421875 -1.4375q-0.421875 -0.59375 -1.125 -0.78125q-0.4375 -0.125 -1.640625 -0.125l-3.421875 0l0 4.78125zm20.209198 2.3125l1.765625 0.453125q-0.5625 2.171875 -2.0 3.328125q-1.4375 1.140625 -3.53125 1.140625q-2.15625 0 -3.515625 -0.875q-1.34375 -0.890625 -2.0625 -2.546875q-0.703125 -1.671875 -0.703125 -3.59375q0 -2.078125 0.796875 -3.625q0.796875 -1.5625 2.265625 -2.359375q1.484375 -0.8125 3.25 -0.8125q2.0 0 3.359375 1.015625q1.375 1.015625 1.90625 2.875l-1.734375 0.40625q-0.46875 -1.453125 -1.359375 -2.109375q-0.875 -0.671875 -2.203125 -0.671875q-1.546875 0 -2.578125 0.734375q-1.03125 0.734375 -1.453125
  1.984375q-0.421875 1.234375 -0.421875 2.5625q0 1.703125 0.5 2.96875q0.5 1.265625 1.546875 1.90625q1.046875 0.625 2.265625 0.625q1.484375 0 2.515625 -0.859375q1.03125 -0.859375 1.390625 -2.546875zm4.2385864 4.6875l0 -13.359375l1.765625 0l0 13.359375l-1.765625 0zm4.0426636 -4.015625l0 -1.640625l5.03125 0l0 1.640625l-5.03125 0zm7.087677 4.015625l0 -13.359375l9.65625 0l0 1.578125l-7.875 0l0 4.09375l7.375 0l0 1.5625l-7.375 0l0 4.546875l8.1875 0l0 1.578125l-9.96875 0zm16.736267 -2.890625l1.625 -0.25q0.125 0.96875 0.75 1.5q0.625 0.515625 1.75 0.515625q1.125 0 1.671875 -0.453125q0.546875 -0.46875 0.546875 -1.09375q0 -0.546875 -0.484375 -0.875q-0.328125 -0.21875 -1.671875 -0.546875q-1.8125 -0.46875 -2.515625 -0.796875q-0.6875 -0.328125 -1.046875 -0.90625q-0.359375 -0.59375 -0.359375 -1.3125q0 -0.640625 0.296875 -1.1875q0.296875 -0.5625 0.8125 -0.921875q0.375 -0.28125 1.03125 -0.46875q0.671875 -0.203125 1.421875 -0.203125q1.140625 0 2.0 0.328125q0.859375 0.328125 1.265625 0.890625q0.421875 0
 .5625 0.578125 1.5l-1.609375 0.21875q-0.109375 -0.75 -0.640625 -1.171875q-0.515625 -0.421875 -1.46875 -0.421875q-1.140625 0 -1.625 0.375q-0.46875 0.375 -0.46875 0.875q0 0.3125 0.1875 0.578125q0.203125 0.265625 0.640625 0.4375q0.234375 0.09375 1.4375 0.421875q1.75 0.453125 2.4375 0.75q0.6875 0.296875 1.078125 0.859375q0.390625 0.5625 0.390625 1.40625q0 0.828125 -0.484375 1.546875q-0.46875 0.71875 -1.375 1.125q-0.90625 0.390625 -2.046875 0.390625q-1.875 0 -2.875 -0.78125q-0.984375 -0.78125 -1.25 -2.328125zm9.9375 2.890625l0 -13.359375l1.640625 0l0 13.359375l-1.640625 0zm10.504181 -1.1875q-0.921875 0.765625 -1.765625 1.09375q-0.828125 0.3125 -1.796875 0.3125q-1.59375 0 -2.453125 -0.78125q-0.859375 -0.78125 -0.859375 -1.984375q0 -0.71875 0.328125 -1.296875q0.328125 -0.59375 0.84375 -0.9375q0.53125 -0.359375 1.1875 -0.546875q0.46875 -0.125 1.453125 -0.25q1.984375 -0.234375 2.921875 -0.5625q0.015625 -0.34375 0.015625 -0.421875q0 -1.0 -0.46875 -1.421875q-0.625 -0.546875 -1.875 -0.546875q-1
 .15625 0 -1.703125 0.40625q-0.546875 0.40625 -0.8125 1.421875l-1.609375 -0.21875q0.21875 -1.015625 0.71875 -1.640625q0.5 -0.640625 1.453125 -0.984375q0.953125 -0.34375 2.1875 -0.34375q1.25 0 2.015625 0.296875q0.78125 0.28125 1.140625 0.734375q0.375 0.4375 0.515625 1.109375q0.078125 0.421875 0.078125 1.515625l0 2.1875q0 2.28125 0.109375 2.890625q0.109375 0.59375 0.40625 1.15625l-1.703125 0q-0.265625 -0.515625 -0.328125 -1.1875zm-0.140625 -3.671875q-0.890625 0.375 -2.671875 0.625q-1.015625 0.140625 -1.4375 0.328125q-0.421875 0.1875 -0.65625 0.53125q-0.21875 0.34375 -0.21875 0.78125q0 0.65625 0.5 1.09375q0.5 0.4375 1.453125 0.4375q0.9375 0 1.671875 -0.40625q0.75 -0.421875 1.09375 -1.140625q0.265625 -0.5625 0.265625 -1.640625l0 -0.609375zm6.8913574 4.859375l-3.6875 -9.671875l1.734375 0l2.078125 5.796875q0.328125 0.9375 0.625 1.9375q0.203125 -0.765625 0.609375 -1.828125l2.140625 -5.90625l1.6875 0l-3.65625 9.671875l-1.53125 0zm13.265625 -3.109375l1.6875 0.203125q-0.40625 1.484375 -1.48437
 5 2.3125q-1.078125 0.8125 -2.765625 0.8125q-2.125 0 -3.375 -1.296875q-1.234375 -1.3125 -1.234375 -3.671875q0 -2.453125 1.25 -3.796875q1.265625 -1.34375 3.265625 -1.34375q1.9375 0 3.15625 1.328125q1.234375 1.3125 1.234375 3.703125q0 0.15625 0 0.4375l-7.21875 0q0.09375 1.59375 0.90625 2.453125q0.8125 0.84375 2.015625 0.84375q0.90625 0 1.546875 -0.46875q0.640625 -0.484375 1.015625 -1.515625zm-5.390625 -2.65625l5.40625 0q-0.109375 -1.21875 -0.625 -1.828125q-0.78125 -0.953125 -2.03125 -0.953125q-1.125 0 -1.90625 0.765625q-0.765625 0.75 -0.84375 2.015625zm13.668396 2.875l1.625 -0.25q0.125 0.96875 0.75 1.5q0.625 0.515625 1.75 0.515625q1.125 0 1.671875 -0.453125q0.546875 -0.46875 0.546875 -1.09375q0 -0.546875 -0.484375 -0.875q-0.328125 -0.21875 -1.671875 -0.546875q-1.8125 -0.46875 -2.515625 -0.796875q-0.6875 -0.328125 -1.046875 -0.90625q-0.359375 -0.59375 -0.359375 -1.3125q0 -0.640625 0.296875 -1.1875q0.296875 -0.5625 0.8125 -0.921875q0.375 -0.28125 1.03125 -0.46875q0.671875 -0.203125 1.421
 875 -0.203125q1.140625 0 2.0 0.328125q0.859375 0.328125 1.265625 0.890625q0.421875 0.5625 0.578125 1.5l-1.609375 0.21875q-0.109375 -0.75 -0.640625 -1.171875q-0.515625 -0.421875 -1.46875 -0.421875q-1.140625 0 -1.625 0.375q-0.46875 0.375 -0.46875 0.875q0 0.3125 0.1875 0.578125q0.203125 0.265625 0.640625 0.4375q0.234375 0.09375 1.4375 0.421875q1.75 0.453125 2.4375 0.75q0.6875 0.296875 1.078125 0.859375q0.390625 0.5625 0.390625 1.40625q0 0.828125 -0.484375 1.546875q-0.46875 0.71875 -1.375 1.125q-0.90625 0.390625 -2.046875 0.390625q-1.875 0 -2.875 -0.78125q-0.984375 -0.78125 -1.25 -2.328125zm9.9375 2.890625l0 -13.359375l1.640625 0l0 13.359375l-1.640625 0zm3.582306 -4.84375q0 -2.6875 1.484375 -3.96875q1.25 -1.078125 3.046875 -1.078125q2.0 0 3.265625 1.3125q1.265625 1.296875 1.265625 3.609375q0 1.859375 -0.5625 2.9375q-0.5625 1.0625 -1.640625 1.65625q-1.0625 0.59375 -2.328125 0.59375q-2.03125 0 -3.28125 -1.296875q-1.25 -1.3125 -1.25 -3.765625zm1.6875 0q0 1.859375 0.796875 2.796875q0.8125 0
 .921875 2.046875 0.921875q1.21875 0 2.03125 -0.921875q0.8125 -0.9375 0.8125 -2.84375q0 -1.796875 -0.8125 -2.71875q-0.8125 -0.921875 -2.03125 -0.921875q-1.234375 0 -2.046875 0.921875q-0.796875 0.90625 -0.796875 2.765625zm12.875732 3.375l0.234375 1.453125q-0.6875 0.140625 -1.234375 0.140625q-0.890625 0 -1.390625 -0.28125q-0.484375 -0.28125 -0.6875 -0.734375q-0.203125 -0.46875 -0.203125 -1.9375l0 -5.578125l-1.203125 0l0 -1.265625l1.203125 0l0 -2.390625l1.625 -0.984375l0 3.375l1.65625 0l0 1.265625l-1.65625 0l0 5.671875q0 0.6875 0.078125 0.890625q0.09375 0.203125 0.28125 0.328125q0.203125 0.109375 0.578125 0.109375q0.265625 0 0.71875 -0.0625z"
+       fill="#000000" />
+    <path
+       id="path23"
+       fill-rule="evenodd"
+       d="m440.30234 145.3517l-11.823639 -20.283455l6.8631287 0l0 -44.06624l-120.12924 0l0 6.8631134l-20.283447 -11.823631l20.283447 -11.823639l0 6.8631134l130.0503 0l0 53.98728l6.863098 0z"
+       fill="#9a9a9a" />
+    <path
+       id="path25"
+       fill-rule="evenodd"
+       d="m112.3937 263.0974l0 0c0 -8.088745 6.5572205 -14.645966 14.645966 -14.645966l58.582085 0l0 0c3.8843536 0 7.609619 1.543045 10.356262 4.2897034c2.7466583 2.746643 4.2897034 6.4718933 4.2897034 10.356262l0 58.582092c0 8.088745 -6.5572205 14.645966 -14.645966 14.645966l-58.582085 0c-8.088745 0 -14.645966 -6.5572205 -14.645966 -14.645966z"
+       fill="#c2c2c2" />
+    <path
+       id="path27"
+       fill-rule="nonzero"
+       d="m139.82521 294.62094l1.765625 0.453125q-0.5625 2.171875 -2.0 3.328125q-1.4375 1.140625 -3.53125 1.140625q-2.15625 0 -3.515625 -0.875q-1.34375 -0.890625 -2.0625 -2.546875q-0.703125 -1.671875 -0.703125 -3.59375q0 -2.078125 0.796875 -3.625q0.796875 -1.5625 2.265625 -2.359375q1.484375 -0.8125 3.25 -0.8125q2.0 0 3.359375 1.015625q1.375 1.015625 1.90625 2.875l-1.734375 0.40625q-0.46875 -1.453125 -1.359375 -2.109375q-0.875 -0.671875 -2.203125 -0.671875q-1.546875 0 -2.578125 0.734375q-1.03125 0.734375 -1.453125 1.984375q-0.421875 1.234375 -0.421875 2.5625q0 1.703125 0.5 2.96875q0.5 1.265625 1.546875 1.90625q1.046875 0.625 2.265625 0.625q1.484375 0 2.515625 -0.859375q1.03125 -0.859375 1.390625 -2.546875zm3.9416962 4.6875l0 -13.359375l5.046875 0q1.328125 0 2.03125 0.125q0.96875 0.171875 1.640625 0.640625q0.671875 0.453125 1.078125 1.28125q0.40625 0.828125 0.40625 1.828125q0 1.703125 -1.09375 2.890625q-1.078125 1.171875 -3.921875 1.171875l-3.421875 0l0 5.421875l-1.765625 0zm1.765625 
 -7.0l3.453125 0q1.71875 0 2.4375 -0.640625q0.71875 -0.640625 0.71875 -1.796875q0 -0.84375 -0.421875 -1.4375q-0.421875 -0.59375 -1.125 -0.78125q-0.4375 -0.125 -1.640625 -0.125l-3.421875 0l0 4.78125zm19.443573 -6.359375l1.765625 0l0 7.71875q0 2.015625 -0.453125 3.203125q-0.453125 1.1875 -1.640625 1.9375q-1.1875 0.734375 -3.125 0.734375q-1.875 0 -3.078125 -0.640625q-1.1875 -0.65625 -1.703125 -1.875q-0.5 -1.234375 -0.5 -3.359375l0 -7.71875l1.765625 0l0 7.71875q0 1.734375 0.3125 2.5625q0.328125 0.8125 1.109375 1.265625q0.796875 0.453125 1.9375 0.453125q1.953125 0 2.78125 -0.890625q0.828125 -0.890625 0.828125 -3.390625l0 -7.71875zm9.234375 6.765625q0 -2.359375 0.484375 -3.796875q0.484375 -1.453125 1.4375 -2.234375q0.96875 -0.78125 2.421875 -0.78125q1.078125 0 1.890625 0.4375q0.8125 0.421875 1.328125 1.25q0.53125 0.8125 0.828125 1.984375q0.3125 1.15625 0.3125 3.140625q0 2.359375 -0.484375 3.8125q-0.484375 1.4375 -1.453125 2.234375q-0.953125 0.78125 -2.421875 0.78125q-1.921875 0 -3.03125 -1
 .390625q-1.3125 -1.671875 -1.3125 -5.4375zm1.671875 0q0 3.296875 0.765625 4.390625q0.78125 1.078125 1.90625 1.078125q1.140625 0 1.90625 -1.09375q0.765625 -1.09375 0.765625 -4.375q0 -3.296875 -0.765625 -4.375q-0.765625 -1.078125 -1.921875 -1.078125q-1.125 0 -1.796875 0.953125q-0.859375 1.21875 -0.859375 4.5z"
+       fill="#000000" />
+    <path
+       id="path29"
+       fill-rule="evenodd"
+       d="m391.6378 263.0974l0 0c0 -8.088745 6.5572205 -14.645966 14.645966 -14.645966l58.582092 0l0 0c3.884369 0 7.609619 1.543045 10.356262 4.2897034c2.746643 2.746643 4.2897034 6.4718933 4.2897034 10.356262l0 58.582092c0 8.088745 -6.5572205 14.645966 -14.645966 14.645966l-58.582092 0c-8.088745 0 -14.645966 -6.5572205 -14.645966 -14.645966z"
+       fill="#c2c2c2" />
+    <path
+       id="path31"
+       fill-rule="nonzero"
+       d="m419.0693 294.62094l1.765625 0.453125q-0.5625 2.171875 -2.0 3.328125q-1.4375 1.140625 -3.53125 1.140625q-2.15625 0 -3.515625 -0.875q-1.34375 -0.890625 -2.0625 -2.546875q-0.703125 -1.671875 -0.703125 -3.59375q0 -2.078125 0.796875 -3.625q0.796875 -1.5625 2.265625 -2.359375q1.484375 -0.8125 3.25 -0.8125q2.0 0 3.359375 1.015625q1.375 1.015625 1.90625 2.875l-1.734375 0.40625q-0.46875 -1.453125 -1.359375 -2.109375q-0.875 -0.671875 -2.203125 -0.671875q-1.546875 0 -2.578125 0.734375q-1.03125 0.734375 -1.453125 1.984375q-0.421875 1.234375 -0.421875 2.5625q0 1.703125 0.5 2.96875q0.5 1.265625 1.546875 1.90625q1.046875 0.625 2.265625 0.625q1.484375 0 2.515625 -0.859375q1.03125 -0.859375 1.390625 -2.546875zm3.9417114 4.6875l0 -13.359375l5.046875 0q1.328125 0 2.03125 0.125q0.96875 0.171875 1.640625 0.640625q0.671875 0.453125 1.078125 1.28125q0.40625 0.828125 0.40625 1.828125q0 1.703125 -1.09375 2.890625q-1.078125 1.171875 -3.921875 1.171875l-3.421875 0l0 5.421875l-1.765625 0zm1.765625 -
 7.0l3.453125 0q1.71875 0 2.4375 -0.640625q0.71875 -0.640625 0.71875 -1.796875q0 -0.84375 -0.421875 -1.4375q-0.421875 -0.59375 -1.125 -0.78125q-0.4375 -0.125 -1.640625 -0.125l-3.421875 0l0 4.78125zm19.443573 -6.359375l1.765625 0l0 7.71875q0 2.015625 -0.453125 3.203125q-0.453125 1.1875 -1.640625 1.9375q-1.1875 0.734375 -3.125 0.734375q-1.875 0 -3.078125 -0.640625q-1.1875 -0.65625 -1.703125 -1.875q-0.5 -1.234375 -0.5 -3.359375l0 -7.71875l1.765625 0l0 7.71875q0 1.734375 0.3125 2.5625q0.328125 0.8125 1.109375 1.265625q0.796875 0.453125 1.9375 0.453125q1.953125 0 2.78125 -0.890625q0.828125 -0.890625 0.828125 -3.390625l0 -7.71875zm15.40625 13.359375l-1.640625 0l0 -10.453125q-0.59375 0.5625 -1.5625 1.140625q-0.953125 0.5625 -1.71875 0.84375l0 -1.59375q1.375 -0.640625 2.40625 -1.5625q1.03125 -0.921875 1.453125 -1.78125l1.0625 0l0 13.40625z"
+       fill="#000000" />
+    <path
+       id="path33"
+       fill-rule="evenodd"
+       d="m135.20998 199.0105l19.858261 -19.858261l19.858276 19.858261l-9.929138 0l0 29.574799l9.929138 0l-19.858276 19.858276l-19.858261 -19.858276l9.929138 0l0 -29.574799z"
+       fill="#9a9a9a" />
+    <path
+       id="path35"
+       fill-rule="evenodd"
+       d="m415.71652 199.86613l19.858276 -19.858261l19.858276 19.858261l-9.929138 0l0 29.574814l9.929138 0l-19.858276 19.858261l-19.858276 -19.858261l9.929138 0l0 -29.574814z"
+       fill="#9a9a9a" />
+    <path
+       id="path37"
+       fill-rule="evenodd"
+       d="m15.205167 31.272966l74.362206 0l0 32.944885l-74.362206 0z"
+       fill="#ff8434" />
+    <path
+       id="path39"
+       fill-rule="nonzero"
+       d="m27.41926 54.665405l0 -13.359375l9.656248 0l0 1.578125l-7.874998 0l0 4.09375l7.374998 0l0 1.5625l-7.374998 0l0 4.546875l8.187498 0l0 1.578125l-9.968748 0zm15.818571 0l0 -11.78125l-4.40625 0l0 -1.578125l10.578125 0l0 1.578125l-4.40625 0l0 11.78125l-1.765625 0zm8.052231 0l0 -13.359375l1.765625 0l0 5.484375l6.9375 0l0 -5.484375l1.765625 0l0 13.359375l-1.765625 0l0 -6.296875l-6.9375 0l0 6.296875l-1.765625 0zm17.9375 -6.59375q0 -2.359375 0.484375 -3.796875q0.484375 -1.453125 1.4375 -2.234375q0.96875 -0.78125 2.421875 -0.78125q1.078125 0 1.890625 0.4375q0.8125 0.421875 1.328125 1.25q0.53125 0.8125 0.828125 1.984375q0.3125 1.15625 0.3125 3.140625q0 2.359375 -0.484375 3.8125q-0.484375 1.4375 -1.453125 2.234375q-0.953125 0.78125 -2.421875 0.78125q-1.921875 0 -3.03125 -1.390625q-1.3125 -1.671875 -1.3125 -5.4375zm1.671875 0q0 3.296875 0.765625 4.390625q0.78125 1.078125 1.90625 1.078125q1.140625 0 1.90625 -1.09375q0.765625 -1.09375 0.765625 -4.375q0 -3.296875 -0.765625 -4.375q-0.76562
 5 -1.078125 -1.921875 -1.078125q-1.125 0 -1.796875 0.953125q-0.859375 1.21875 -0.859375 4.5z"
+       fill="#000000" />
+    <path
+       id="path41"
+       fill-rule="evenodd"
+       d="m16.055477 80.23097l74.3622 0l0 32.944878l-74.3622 0z"
+       fill="#ff8434" />
+    <path
+       id="path43"
+       fill-rule="nonzero"
+       d="m28.26957 103.62341l0 -13.359375l9.65625 0l0 1.578125l-7.875 0l0 4.09375l7.375 0l0 1.5625l-7.375 0l0 4.546875l8.1875 0l0 1.578125l-9.96875 0zm15.818573 0l0 -11.78125l-4.40625 0l0 -1.578125l10.578125 0l0 1.578125l-4.40625 0l0 11.78125l-1.765625 0zm8.052231 0l0 -13.359375l1.765625 0l0 5.484375l6.9375 0l0 -5.484375l1.765625 0l0 13.359375l-1.765625 0l0 -6.296875l-6.9375 0l0 6.296875l-1.765625 0zm24.109375 0l-1.640625 0l0 -10.453125q-0.59375 0.5625 -1.5625 1.140625q-0.953125 0.5625 -1.71875 0.84375l0 -1.59375q1.375 -0.640625 2.40625 -1.5625q1.03125 -0.921875 1.453125 -1.78125l1.0625 0l0 13.40625z"
+       fill="#000000" />
+    <path
+       id="path45"
+       fill-rule="evenodd"
+       d="m275.44394 174.07086l0 111.55905l-37.16536 0l0 -111.55905z"
+       fill="#ff8434" />
+    <path
+       id="path47"
+       fill-rule="nonzero"
+       d="m251.37877 194.63336q-0.859375 1.234375 -1.25 2.265625l-1.21875 -0.515625q0.515625 -1.4375 1.625 -2.875q-0.828125 -1.484375 -0.828125 -3.28125q0 -1.8125 0.875 -3.296875q0.875 -1.46875 2.453125 -2.265625q1.59375 -0.796875 3.5781097 -0.796875q1.984375 0 3.59375 0.796875q1.625 0.8125 2.46875 2.28125q0.859375 1.484375 0.859375 3.328125q0 1.84375 -0.890625 3.328125q-0.875 1.484375 -2.453125 2.265625q-1.578125 0.78125 -3.5625 0.78125q-1.6562347 0 -2.9687347 -0.5q-1.3125 -0.5 -2.28125 -1.515625zm2.25 -3.890625q-0.421875 1.53125 -1.28125 2.515625q1.421875 1.5625 4.2812347 1.5625q1.625 0 2.828125 -0.546875q1.21875 -0.546875 1.875 -1.609375q0.671875 -1.0625 0.671875 -2.390625q0 -1.96875 -1.359375 -3.28125q-1.34375 -1.296875 -4.03125 -1.296875q-2.5937347 0 -3.9999847 1.28125q-1.390625 1.296875 -1.390625 3.296875q0 0.953125 0.359375 1.78125q0.53125 -0.828125 0.765625 -1.75l1.28125 0.4375zm9.67186 17.042679l0 1.765625l-7.7187347 0q-2.015625 0 -3.203125 -0.453125q-1.1875 -0.453125 -1.93
 75 -1.640625q-0.734375 -1.1875 -0.734375 -3.125q0 -1.875 0.640625 -3.078125q0.65625 -1.1875 1.875 -1.703125q1.234375 -0.5 3.359375 -0.5l7.7187347 0l0 1.765625l-7.7187347 0q-1.734375 0 -2.5625 0.3125q-0.8125 0.328125 -1.265625 1.109375q-0.453125 0.796875 -0.453125 1.9375q0 1.953125 0.890625 2.78125q0.890625 0.828125 3.390625 0.828125l7.7187347 0zm-13.35936 4.738571l13.35936 0l0 9.65625l-1.578125 0l0 -7.875l-4.09375 0l0 7.375l-1.5625 0l0 -7.375l-4.5468597 0l0 8.1875l-1.578125 0l0 -9.96875zm13.35936 21.177948l0 1.765625l-7.7187347 0q-2.015625 0 -3.203125 -0.453125q-1.1875 -0.453125 -1.9375 -1.640625q-0.734375 -1.1875 -0.734375 -3.125q0 -1.875 0.640625 -3.078125q0.65625 -1.1875 1.875 -1.703125q1.234375 -0.5 3.359375 -0.5l7.7187347 0l0 1.765625l-7.7187347 0q-1.734375 0 -2.5625 0.3125q-0.8125 0.328125 -1.265625 1.109375q-0.453125 0.796875 -0.453125 1.9375q0 1.953125 0.890625 2.78125q0.890625 0.828125 3.390625 0.828125l7.7187347 0zm-13.35936 4.738571l13.35936 0l0 9.65625l-1.578125 0l0 -7.8
 75l-4.09375 0l0 7.375l-1.5625 0l0 -7.375l-4.5468597 0l0 8.1875l-1.578125 0l0 -9.96875zm0 23.111252l0 -1.640625l10.45311 0q-0.5625 -0.59375 -1.140625 -1.5625q-0.5625 -0.953125 -0.84375 -1.71875l1.59375 0q0.640625 1.375 1.5625 2.40625q0.921875 1.03125 1.78125 1.453125l0 1.0625l-13.406235 0zm3.5 4.2038574l0.140625 1.71875q-1.25 0.1875 -1.890625 0.875q-0.625 0.703125 -0.625 1.6875q0 1.1875 0.890625 2.0q0.890625 0.828125 2.359375 0.828125q1.40625 0 2.2187347 -0.796875q0.8125 -0.78125 0.8125 -2.0625q0 -0.78125 -0.359375 -1.421875q-0.359375 -0.640625 -0.9375 -1.0l0.203125 -1.546875l6.859375 1.296875l0 6.640625l-1.5625 0l0 -5.328125l-3.59375 -0.71875q0.84375 1.203125 0.84375 2.515625q0 1.75 -1.21875 2.953125q-1.203125 1.203125 -3.1093597 1.203125q-1.8125 0 -3.140625 -1.046875q-1.625 -1.296875 -1.625 -3.515625q0 -1.8125 1.015625 -2.96875q1.03125 -1.15625 2.71875 -1.3125z"
+       fill="#000000" />
+    <path
+       id="path49"
+       fill-rule="evenodd"
+       d="m97.92366 174.07086l0 111.55905l-37.16535 0l0 -111.55905z"
+       fill="#ff8434" />
+    <path
+       id="path51"
+       fill-rule="nonzero"
+       d="m73.85849 194.63336q-0.859375 1.234375 -1.25 2.265625l-1.21875 -0.515625q0.515625 -1.4375 1.625 -2.875q-0.828125 -1.484375 -0.828125 -3.28125q0 -1.8125 0.875 -3.296875q0.875 -1.46875 2.453125 -2.265625q1.59375 -0.796875 3.578125 -0.796875q1.984375 0 3.59375 0.796875q1.625 0.8125 2.46875 2.28125q0.859375 1.484375 0.859375 3.328125q0 1.84375 -0.890625 3.328125q-0.875 1.484375 -2.453125 2.265625q-1.578125 0.78125 -3.5625 0.78125q-1.65625 0 -2.96875 -0.5q-1.3125 -0.5 -2.28125 -1.515625zm2.25 -3.890625q-0.421875 1.53125 -1.28125 2.515625q1.421875 1.5625 4.28125 1.5625q1.625 0 2.828125 -0.546875q1.21875 -0.546875 1.875 -1.609375q0.671875 -1.0625 0.671875 -2.390625q0 -1.96875 -1.359375 -3.28125q-1.34375 -1.296875 -4.03125 -1.296875q-2.59375 0 -4.0 1.28125q-1.390625 1.296875 -1.390625 3.296875q0 0.953125 0.359375 1.78125q0.53125 -0.828125 0.765625 -1.75l1.28125 0.4375zm9.671875 17.042679l0 1.765625l-7.71875 0q-2.015625 0 -3.203125 -0.453125q-1.1875 -0.453125 -1.9375 -1.640625q-0.7
 34375 -1.1875 -0.734375 -3.125q0 -1.875 0.640625 -3.078125q0.65625 -1.1875 1.875 -1.703125q1.234375 -0.5 3.359375 -0.5l7.71875 0l0 1.765625l-7.71875 0q-1.734375 0 -2.5625 0.3125q-0.8125 0.328125 -1.265625 1.109375q-0.453125 0.796875 -0.453125 1.9375q0 1.953125 0.890625 2.78125q0.890625 0.828125 3.390625 0.828125l7.71875 0zm-13.359375 4.738571l13.359375 0l0 9.65625l-1.578125 0l0 -7.875l-4.09375 0l0 7.375l-1.5625 0l0 -7.375l-4.546875 0l0 8.1875l-1.578125 0l0 -9.96875zm13.359375 21.177948l0 1.765625l-7.71875 0q-2.015625 0 -3.203125 -0.453125q-1.1875 -0.453125 -1.9375 -1.640625q-0.734375 -1.1875 -0.734375 -3.125q0 -1.875 0.640625 -3.078125q0.65625 -1.1875 1.875 -1.703125q1.234375 -0.5 3.359375 -0.5l7.71875 0l0 1.765625l-7.71875 0q-1.734375 0 -2.5625 0.3125q-0.8125 0.328125 -1.265625 1.109375q-0.453125 0.796875 -0.453125 1.9375q0 1.953125 0.890625 2.78125q0.890625 0.828125 3.390625 0.828125l7.71875 0zm-13.359375 4.738571l13.359375 0l0 9.65625l-1.578125 0l0 -7.875l-4.09375 0l0 7.375l-1.56
 25 0l0 -7.375l-4.546875 0l0 8.1875l-1.578125 0l0 -9.96875zm6.59375 16.939377q2.359375 0 3.796875 0.484375q1.453125 0.484375 2.234375 1.4375q0.78125 0.96875 0.78125 2.421875q0 1.078125 -0.4375 1.890625q-0.421875 0.8125 -1.25 1.328125q-0.8125 0.53125 -1.984375 0.828125q-1.15625 0.3125 -3.140625 0.3125q-2.359375 0 -3.8125 -0.484375q-1.4375 -0.484375 -2.234375 -1.453125q-0.78125 -0.953125 -0.78125 -2.421875q0 -1.921875 1.390625 -3.03125q1.671875 -1.3125 5.4375 -1.3125zm0 1.671875q-3.296875 0 -4.390625 0.765625q-1.078125 0.78125 -1.078125 1.90625q0 1.140625 1.09375 1.90625q1.09375 0.765625 4.375 0.765625q3.296875 0 4.375 -0.765625q1.078125 -0.765625 1.078125 -1.921875q0 -1.125 -0.953125 -1.796875q-1.21875 -0.859375 -4.5 -0.859375z"
+       fill="#000000" />
+    <path
+       id="path53"
+       fill-rule="evenodd"
+       d="m366.2756 174.07086l0 111.55905l-37.165375 0l0 -111.55905z"
+       fill="#ff8434" />
+    <path
+       id="path55"
+       fill-rule="nonzero"
+       d="m342.21042 194.63336q-0.859375 1.234375 -1.25 2.265625l-1.21875 -0.515625q0.515625 -1.4375 1.625 -2.875q-0.828125 -1.484375 -0.828125 -3.28125q0 -1.8125 0.875 -3.296875q0.875 -1.46875 2.453125 -2.265625q1.59375 -0.796875 3.578125 -0.796875q1.984375 0 3.59375 0.796875q1.625 0.8125 2.46875 2.28125q0.859375 1.484375 0.859375 3.328125q0 1.84375 -0.890625 3.328125q-0.875 1.484375 -2.453125 2.265625q-1.578125 0.78125 -3.5625 0.78125q-1.65625 0 -2.96875 -0.5q-1.3125 -0.5 -2.28125 -1.515625zm2.25 -3.890625q-0.421875 1.53125 -1.28125 2.515625q1.421875 1.5625 4.28125 1.5625q1.625 0 2.828125 -0.546875q1.21875 -0.546875 1.875 -1.609375q0.671875 -1.0625 0.671875 -2.390625q0 -1.96875 -1.359375 -3.28125q-1.34375 -1.296875 -4.03125 -1.296875q-2.59375 0 -4.0 1.28125q-1.390625 1.296875 -1.390625 3.296875q0 0.953125 0.359375 1.78125q0.53125 -0.828125 0.765625 -1.75l1.28125 0.4375zm9.671875 17.042679l0 1.765625l-7.71875 0q-2.015625 0 -3.203125 -0.453125q-1.1875 -0.453125 -1.9375 -1.640625q-0.
 734375 -1.1875 -0.734375 -3.125q0 -1.875 0.640625 -3.078125q0.65625 -1.1875 1.875 -1.703125q1.234375 -0.5 3.359375 -0.5l7.71875 0l0 1.765625l-7.71875 0q-1.734375 0 -2.5625 0.3125q-0.8125 0.328125 -1.265625 1.109375q-0.453125 0.796875 -0.453125 1.9375q0 1.953125 0.890625 2.78125q0.890625 0.828125 3.390625 0.828125l7.71875 0zm-13.359375 4.738571l13.359375 0l0 9.65625l-1.578125 0l0 -7.875l-4.09375 0l0 7.375l-1.5625 0l0 -7.375l-4.546875 0l0 8.1875l-1.578125 0l0 -9.96875zm13.359375 21.177948l0 1.765625l-7.71875 0q-2.015625 0 -3.203125 -0.453125q-1.1875 -0.453125 -1.9375 -1.640625q-0.734375 -1.1875 -0.734375 -3.125q0 -1.875 0.640625 -3.078125q0.65625 -1.1875 1.875 -1.703125q1.234375 -0.5 3.359375 -0.5l7.71875 0l0 1.765625l-7.71875 0q-1.734375 0 -2.5625 0.3125q-0.8125 0.328125 -1.265625 1.109375q-0.453125 0.796875 -0.453125 1.9375q0 1.953125 0.890625 2.78125q0.890625 0.828125 3.390625 0.828125l7.71875 0zm-13.359375 4.738571l13.359375 0l0 9.65625l-1.578125 0l0 -7.875l-4.09375 0l0 7.375l-1.5
 625 0l0 -7.375l-4.546875 0l0 8.1875l-1.578125 0l0 -9.96875zm0 23.111252l0 -1.640625l10.453125 0q-0.5625 -0.59375 -1.140625 -1.5625q-0.5625 -0.953125 -0.84375 -1.71875l1.59375 0q0.640625 1.375 1.5625 2.40625q0.921875 1.03125 1.78125 1.453125l0 1.0625l-13.40625 0zm10.078125 12.703857l-0.125 -1.625q0.96875 -0.21875 1.40625 -0.625q0.703125 -0.65625 0.703125 -1.640625q0 -0.78125 -0.4375 -1.375q-0.5625 -0.765625 -1.65625 -1.21875q-1.078125 -0.453125 -3.078125 -0.46875q0.890625 0.59375 1.328125 1.453125q0.4375 0.859375 0.4375 1.796875q0 1.640625 -1.203125 2.78125q-1.203125 1.15625 -3.109375 1.15625q-1.265625 0 -2.34375 -0.546875q-1.078125 -0.53125 -1.65625 -1.484375q-0.578125 -0.9375 -0.578125 -2.140625q0 -2.0625 1.5 -3.359375q1.515625 -1.28125 4.984375 -1.28125q3.875 0 5.625 1.421875q1.53125 1.25 1.53125 3.375q0 1.5625 -0.890625 2.5625q-0.875 1.015625 -2.4375 1.21875zm-5.75 -6.6875q-0.84375 0 -1.625 0.359375q-0.765625 0.359375 -1.171875 1.0q-0.40625 0.640625 -0.40625 1.359375q0 1.03125 0.
 828125 1.78125q0.84375 0.75 2.28125 0.75q1.390625 0 2.1875 -0.734375q0.796875 -0.734375 0.796875 -1.859375q0 -1.109375 -0.796875 -1.890625q-0.796875 -0.765625 -2.09375 -0.765625z"
+       fill="#000000" />
+    <path
+       id="path57"
+       fill-rule="evenodd"
+       d="m542.03937 174.07086l0 111.55905l-37.165344 0l0 -111.55905z"
+       fill="#ff8434" />
+    <path
+       id="path59"
+       fill-rule="nonzero"
+       d="m517.9742 194.63336q-0.859375 1.234375 -1.25 2.265625l-1.21875 -0.515625q0.515625 -1.4375 1.625 -2.875q-0.828125 -1.484375 -0.828125 -3.28125q0 -1.8125 0.875 -3.296875q0.875 -1.46875 2.453125 -2.265625q1.59375 -0.796875 3.578125 -0.796875q1.984375 0 3.59375 0.796875q1.625 0.8125 2.46875 2.28125q0.859375 1.484375 0.859375 3.328125q0 1.84375 -0.890625 3.328125q-0.875 1.484375 -2.453125 2.265625q-1.578125 0.78125 -3.5625 0.78125q-1.65625 0 -2.96875 -0.5q-1.3125 -0.5 -2.28125 -1.515625zm2.25 -3.890625q-0.421875 1.53125 -1.28125 2.515625q1.421875 1.5625 4.28125 1.5625q1.625 0 2.828125 -0.546875q1.21875 -0.546875 1.875 -1.609375q0.671875 -1.0625 0.671875 -2.390625q0 -1.96875 -1.359375 -3.28125q-1.34375 -1.296875 -4.03125 -1.296875q-2.59375 0 -4.0 1.28125q-1.390625 1.296875 -1.390625 3.296875q0 0.953125 0.359375 1.78125q0.53125 -0.828125 0.765625 -1.75l1.28125 0.4375zm9.671875 17.042679l0 1.765625l-7.71875 0q-2.015625 0 -3.203125 -0.453125q-1.1875 -0.453125 -1.9375 -1.640625q-0.7
 34375 -1.1875 -0.734375 -3.125q0 -1.875 0.640625 -3.078125q0.65625 -1.1875 1.875 -1.703125q1.234375 -0.5 3.359375 -0.5l7.71875 0l0 1.765625l-7.71875 0q-1.734375 0 -2.5625 0.3125q-0.8125 0.328125 -1.265625 1.109375q-0.453125 0.796875 -0.453125 1.9375q0 1.953125 0.890625 2.78125q0.890625 0.828125 3.390625 0.828125l7.71875 0zm-13.359375 4.738571l13.359375 0l0 9.65625l-1.578125 0l0 -7.875l-4.09375 0l0 7.375l-1.5625 0l0 -7.375l-4.546875 0l0 8.1875l-1.578125 0l0 -9.96875zm13.359375 21.177948l0 1.765625l-7.71875 0q-2.015625 0 -3.203125 -0.453125q-1.1875 -0.453125 -1.9375 -1.640625q-0.734375 -1.1875 -0.734375 -3.125q0 -1.875 0.640625 -3.078125q0.65625 -1.1875 1.875 -1.703125q1.234375 -0.5 3.359375 -0.5l7.71875 0l0 1.765625l-7.71875 0q-1.734375 0 -2.5625 0.3125q-0.8125 0.328125 -1.265625 1.109375q-0.453125 0.796875 -0.453125 1.9375q0 1.953125 0.890625 2.78125q0.890625 0.828125 3.390625 0.828125l7.71875 0zm-13.359375 4.738571l13.359375 0l0 9.65625l-1.578125 0l0 -7.875l-4.09375 0l0 7.375l-1.56
 25 0l0 -7.375l-4.546875 0l0 8.1875l-1.578125 0l0 -9.96875zm3.53125 16.939377l0.21875 1.640625q-1.40625 0.28125 -2.015625 0.953125q-0.609375 0.6875 -0.609375 1.65625q0 1.15625 0.796875 1.953125q0.796875 0.796875 1.984375 0.796875q1.125 0 1.859375 -0.734375q0.734375 -0.734375 0.734375 -1.875q0 -0.46875 -0.171875 -1.15625l1.4375 0.1875q-0.015625 0.15625 -0.015625 0.265625q0 1.046875 0.546875 1.875q0.546875 0.84375 1.671875 0.84375q0.90625 0 1.5 -0.609375q0.59375 -0.609375 0.59375 -1.578125q0 -0.953125 -0.609375 -1.59375q-0.59375 -0.640625 -1.796875 -0.8125l0.296875 -1.640625q1.640625 0.296875 2.546875 1.359375q0.90625 1.0625 0.90625 2.65625q0 1.09375 -0.46875 2.0q-0.46875 0.921875 -1.28125 1.40625q-0.8125 0.5 -1.71875 0.5q-0.859375 0 -1.578125 -0.46875q-0.703125 -0.46875 -1.125 -1.375q-0.28125 1.1875 -1.140625 1.84375q-0.859375 0.65625 -2.15625 0.65625q-1.734375 0 -2.953125 -1.28125q-1.21875 -1.265625 -1.21875 -3.21875q0 -1.765625 1.046875 -2.921875q1.046875 -1.15625 2.71875 -1.328125z
 m-1.953125 18.985107l-1.578125 0l0 -8.828125q0.59375 -0.015625 1.140625 0.1875q0.90625 0.34375 1.78125 1.078125q0.875 0.75 2.015625 2.15625q1.78125 2.171875 2.828125 2.9375q1.046875 0.765625 1.96875 0.765625q0.984375 0 1.640625 -0.703125q0.671875 -0.6875 0.671875 -1.8125q0 -1.1875 -0.71875 -1.90625q-0.703125 -0.703125 -1.953125 -0.703125l0.171875 -1.6875q1.890625 0.171875 2.875 1.296875q0.984375 1.140625 0.984375 3.03125q0 1.921875 -1.0625 3.046875q-1.0625 1.125 -2.640625 1.125q-0.796875 0 -1.578125 -0.328125q-0.78125 -0.328125 -1.640625 -1.09375q-0.84375 -0.75 -2.34375 -2.53125q-1.234375 -1.46875 -1.6875 -1.890625q-0.4375 -0.421875 -0.875 -0.6875l0 6.546875z"
+       fill="#000000" />
+  </g>
+</svg>
diff --git a/doc/guides/nics/szedata2.rst b/doc/guides/nics/szedata2.rst
index 4327e4e..1b4b3eb 100644
--- a/doc/guides/nics/szedata2.rst
+++ b/doc/guides/nics/szedata2.rst
@@ -43,8 +43,10 @@ separately:
 
 *  **Kernel modules**
 
+   * combo6core
    * combov3
-   * szedata2_cv3
+   * szedata2
+   * szedata2_cv3 or szedata2_cv3_fdt
 
    Kernel modules manage initialization of hardware, allocation and
    sharing of resources for user space applications.
@@ -62,45 +64,53 @@ These configuration options can be modified before compilation in the
 
    Value **y** enables compilation of szedata2 PMD.
 
-*  ``CONFIG_RTE_LIBRTE_PMD_SZEDATA2_AS`` default value: **0**
-
-   This option defines type of firmware address space and must be set
-   according to the used card and mode.
-   Currently supported values are:
-
-   * **0** - for cards (modes):
-
-      * NFB-100G1 (100G1)
+Using the SZEDATA2 PMD
+----------------------
 
-   * **1** - for cards (modes):
+From DPDK version 16.04 the type of SZEDATA2 PMD is changed to PMD_PDEV.
+SZEDATA2 device is automatically recognized during EAL initialization.
+No special command line options are needed.
 
-      * NFB-100G2Q (100G1)
+Kernel modules have to be loaded before running the DPDK application.
 
-   * **2** - for cards (modes):
+NFB card architecture
+---------------------
 
-      * NFB-40G2 (40G2)
-      * NFB-100G2C (100G2)
-      * NFB-100G2Q (40G2)
+The NFB cards are multi-port multi-queue cards, where (generally) data from any
+Ethernet port may be sent to any queue.
+They were historically represented in DPDK as a single port.
 
-   * **3** - for cards (modes):
+However, the new NFB-200G2QL card employs an addon cable which allows to connect
+it to two physical PCI-E slots at the same time (see the diagram below).
+This is done to allow 200 Gbps of traffic to be transferred through the PCI-E
+bus (note that a single PCI-E 3.0 x16 slot provides only 125 Gbps theoretical
+throughput).
 
-      * NFB-40G2 (10G8)
-      * NFB-100G2Q (10G8)
+Since each slot may be connected to a different CPU and therefore to a different
+NUMA node, the card is represented as two ports in DPDK (each with half of the
+queues), which allows DPDK to work with data from the individual queues on the
+right NUMA node.
 
-   * **4** - for cards (modes):
+.. figure:: img/szedata2_nfb200g_architecture.svg
+    :align: center
 
-      * NFB-100G1 (10G10)
+    NFB-200G2QL high-level diagram
 
-   * **5** - for experimental firmwares and future use
+Limitations
+-----------
 
-Using the SZEDATA2 PMD
-----------------------
+The SZEDATA2 PMD does not support operations related to Ethernet ports
+(link_up, link_down, set_mac_address, etc.).
 
-From DPDK version 16.04 the type of SZEDATA2 PMD is changed to PMD_PDEV.
-SZEDATA2 device is automatically recognized during EAL initialization.
-No special command line options are needed.
+NFB cards employ multiple Ethernet ports.
+Until now, Ethernet port-related operations were performed on all of them
+(since the whole card was represented as a single port).
+With NFB-200G2QL card, this is no longer viable (see above).
 
-Kernel modules have to be loaded before running the DPDK application.
+Since there is no fixed mapping between the queues and Ethernet ports, and since
+a single card can be represented as two ports in DPDK, there is no way of
+telling which (if any) physical ports should be associated with individual
+ports in DPDK.
 
 Example of usage
 ----------------
diff --git a/drivers/net/szedata2/Makefile b/drivers/net/szedata2/Makefile
index c5204cb..b77fae1 100644
--- a/drivers/net/szedata2/Makefile
+++ b/drivers/net/szedata2/Makefile
@@ -23,7 +23,6 @@ LIBABIVER := 1
 # all source are stored in SRCS-y
 #
 SRCS-$(CONFIG_RTE_LIBRTE_PMD_SZEDATA2) += rte_eth_szedata2.c
-SRCS-$(CONFIG_RTE_LIBRTE_PMD_SZEDATA2) += szedata2_iobuf.c
 
 #
 # Export include files
diff --git a/drivers/net/szedata2/rte_eth_szedata2.c b/drivers/net/szedata2/rte_eth_szedata2.c
index fb9aac0..0f3ee94 100644
--- a/drivers/net/szedata2/rte_eth_szedata2.c
+++ b/drivers/net/szedata2/rte_eth_szedata2.c
@@ -24,7 +24,6 @@
 
 #include "rte_eth_szedata2.h"
 #include "szedata2_logs.h"
-#include "szedata2_iobuf.h"
 
 #define RTE_ETH_SZEDATA2_MAX_RX_QUEUES 32
 #define RTE_ETH_SZEDATA2_MAX_TX_QUEUES 32
@@ -1142,78 +1141,17 @@ struct szedata2_tx_queue {
 	dev->data->nb_tx_queues = 0;
 }
 
-/**
- * Function takes value from first IBUF status register.
- * Values in IBUF and OBUF should be same.
- *
- * @param internals
- *     Pointer to device private structure.
- * @return
- *     Link speed constant.
- */
-static inline enum szedata2_link_speed
-get_link_speed(const struct pmd_internals *internals)
-{
-	const volatile struct szedata2_ibuf *ibuf =
-		ibuf_ptr_by_index(internals->pci_rsc, 0);
-	uint32_t speed = (szedata2_read32(&ibuf->ibuf_st) & 0x70) >> 4;
-	switch (speed) {
-	case 0x03:
-		return SZEDATA2_LINK_SPEED_10G;
-	case 0x04:
-		return SZEDATA2_LINK_SPEED_40G;
-	case 0x05:
-		return SZEDATA2_LINK_SPEED_100G;
-	default:
-		return SZEDATA2_LINK_SPEED_DEFAULT;
-	}
-}
-
 static int
 eth_link_update(struct rte_eth_dev *dev,
 		int wait_to_complete __rte_unused)
 {
 	struct rte_eth_link link;
-	struct pmd_internals *internals = (struct pmd_internals *)
-		dev->data->dev_private;
-	const volatile struct szedata2_ibuf *ibuf;
-	uint32_t i;
-	bool link_is_up = false;
 
 	memset(&link, 0, sizeof(link));
 
-	switch (get_link_speed(internals)) {
-	case SZEDATA2_LINK_SPEED_10G:
-		link.link_speed = ETH_SPEED_NUM_10G;
-		break;
-	case SZEDATA2_LINK_SPEED_40G:
-		link.link_speed = ETH_SPEED_NUM_40G;
-		break;
-	case SZEDATA2_LINK_SPEED_100G:
-		link.link_speed = ETH_SPEED_NUM_100G;
-		break;
-	default:
-		link.link_speed = ETH_SPEED_NUM_10G;
-		break;
-	}
-
-	/* szedata2 uses only full duplex */
+	link.link_speed = ETH_SPEED_NUM_100G;
 	link.link_duplex = ETH_LINK_FULL_DUPLEX;
-
-	for (i = 0; i < szedata2_ibuf_count; i++) {
-		ibuf = ibuf_ptr_by_index(internals->pci_rsc, i);
-		/*
-		 * Link is considered up if at least one ibuf is enabled
-		 * and up.
-		 */
-		if (ibuf_is_enabled(ibuf) && ibuf_is_link_up(ibuf)) {
-			link_is_up = true;
-			break;
-		}
-	}
-
-	link.link_status = link_is_up ? ETH_LINK_UP : ETH_LINK_DOWN;
-
+	link.link_status = ETH_LINK_UP;
 	link.link_autoneg = ETH_LINK_FIXED;
 
 	rte_eth_linkstatus_set(dev, &link);
@@ -1221,30 +1159,16 @@ struct szedata2_tx_queue {
 }
 
 static int
-eth_dev_set_link_up(struct rte_eth_dev *dev)
+eth_dev_set_link_up(struct rte_eth_dev *dev __rte_unused)
 {
-	struct pmd_internals *internals = (struct pmd_internals *)
-		dev->data->dev_private;
-	uint32_t i;
-
-	for (i = 0; i < szedata2_ibuf_count; i++)
-		ibuf_enable(ibuf_ptr_by_index(internals->pci_rsc, i));
-	for (i = 0; i < szedata2_obuf_count; i++)
-		obuf_enable(obuf_ptr_by_index(internals->pci_rsc, i));
+	PMD_DRV_LOG(WARNING, "Setting link up is not supported.");
 	return 0;
 }
 
 static int
-eth_dev_set_link_down(struct rte_eth_dev *dev)
+eth_dev_set_link_down(struct rte_eth_dev *dev __rte_unused)
 {
-	struct pmd_internals *internals = (struct pmd_internals *)
-		dev->data->dev_private;
-	uint32_t i;
-
-	for (i = 0; i < szedata2_ibuf_count; i++)
-		ibuf_disable(ibuf_ptr_by_index(internals->pci_rsc, i));
-	for (i = 0; i < szedata2_obuf_count; i++)
-		obuf_disable(obuf_ptr_by_index(internals->pci_rsc, i));
+	PMD_DRV_LOG(WARNING, "Setting link down is not supported.");
 	return 0;
 }
 
@@ -1368,55 +1292,29 @@ struct szedata2_tx_queue {
 }
 
 static void
-eth_promiscuous_enable(struct rte_eth_dev *dev)
+eth_promiscuous_enable(struct rte_eth_dev *dev __rte_unused)
 {
-	struct pmd_internals *internals = (struct pmd_internals *)
-		dev->data->dev_private;
-	uint32_t i;
-
-	for (i = 0; i < szedata2_ibuf_count; i++) {
-		ibuf_mac_mode_write(ibuf_ptr_by_index(internals->pci_rsc, i),
-				SZEDATA2_MAC_CHMODE_PROMISC);
-	}
+	PMD_DRV_LOG(WARNING, "Enabling promiscuous mode is not supported. "
+			"The card is always in promiscuous mode.");
 }
 
 static void
-eth_promiscuous_disable(struct rte_eth_dev *dev)
+eth_promiscuous_disable(struct rte_eth_dev *dev __rte_unused)
 {
-	struct pmd_internals *internals = (struct pmd_internals *)
-		dev->data->dev_private;
-	uint32_t i;
-
-	for (i = 0; i < szedata2_ibuf_count; i++) {
-		ibuf_mac_mode_write(ibuf_ptr_by_index(internals->pci_rsc, i),
-				SZEDATA2_MAC_CHMODE_ONLY_VALID);
-	}
+	PMD_DRV_LOG(WARNING, "Disabling promiscuous mode is not supported. "
+			"The card is always in promiscuous mode.");
 }
 
 static void
-eth_allmulticast_enable(struct rte_eth_dev *dev)
+eth_allmulticast_enable(struct rte_eth_dev *dev __rte_unused)
 {
-	struct pmd_internals *internals = (struct pmd_internals *)
-		dev->data->dev_private;
-	uint32_t i;
-
-	for (i = 0; i < szedata2_ibuf_count; i++) {
-		ibuf_mac_mode_write(ibuf_ptr_by_index(internals->pci_rsc, i),
-				SZEDATA2_MAC_CHMODE_ALL_MULTICAST);
-	}
+	PMD_DRV_LOG(WARNING, "Enabling allmulticast mode is not supported.");
 }
 
 static void
-eth_allmulticast_disable(struct rte_eth_dev *dev)
+eth_allmulticast_disable(struct rte_eth_dev *dev __rte_unused)
 {
-	struct pmd_internals *internals = (struct pmd_internals *)
-		dev->data->dev_private;
-	uint32_t i;
-
-	for (i = 0; i < szedata2_ibuf_count; i++) {
-		ibuf_mac_mode_write(ibuf_ptr_by_index(internals->pci_rsc, i),
-				SZEDATA2_MAC_CHMODE_ONLY_VALID);
-	}
+	PMD_DRV_LOG(WARNING, "Disabling allmulticast mode is not supported.");
 }
 
 static const struct eth_dev_ops ops = {
@@ -1626,9 +1524,6 @@ struct szedata2_tx_queue {
 
 	ether_addr_copy(&eth_addr, data->mac_addrs);
 
-	/* At initial state COMBO card is in promiscuous mode so disable it */
-	eth_promiscuous_disable(dev);
-
 	PMD_INIT_LOG(INFO, "szedata2 device ("
 			PCI_PRI_FMT ") successfully initialized",
 			pci_addr->domain, pci_addr->bus, pci_addr->devid,
diff --git a/drivers/net/szedata2/szedata2_iobuf.c b/drivers/net/szedata2/szedata2_iobuf.c
deleted file mode 100644
index 2d18989..0000000
--- a/drivers/net/szedata2/szedata2_iobuf.c
+++ /dev/null
@@ -1,174 +0,0 @@
-/* SPDX-License-Identifier: BSD-3-Clause
- * Copyright(c) 2017 CESNET
- */
-
-#include <stdint.h>
-
-#include <rte_common.h>
-
-#include "szedata2_iobuf.h"
-
-/*
- * IBUFs and OBUFs can generally be located at different offsets in different
- * firmwares (modes).
- * This part defines base offsets of IBUFs and OBUFs for various cards
- * and firmwares (modes).
- * Type of firmware (mode) is set through configuration option
- * CONFIG_RTE_LIBRTE_PMD_SZEDATA2_AS.
- * Possible values are:
- * 0 - for cards (modes):
- *     NFB-100G1 (100G1)
- *
- * 1 - for cards (modes):
- *     NFB-100G2Q (100G1)
- *
- * 2 - for cards (modes):
- *     NFB-40G2 (40G2)
- *     NFB-100G2C (100G2)
- *     NFB-100G2Q (40G2)
- *
- * 3 - for cards (modes):
- *     NFB-40G2 (10G8)
- *     NFB-100G2Q (10G8)
- *
- * 4 - for cards (modes):
- *     NFB-100G1 (10G10)
- *
- * 5 - for experimental firmwares and future use
- */
-#if !defined(RTE_LIBRTE_PMD_SZEDATA2_AS)
-#error "RTE_LIBRTE_PMD_SZEDATA2_AS has to be defined"
-#elif RTE_LIBRTE_PMD_SZEDATA2_AS == 0
-
-/*
- * Cards (modes):
- *     NFB-100G1 (100G1)
- */
-
-const uint32_t szedata2_ibuf_base_table[] = {
-	0x8000
-};
-const uint32_t szedata2_obuf_base_table[] = {
-	0x9000
-};
-
-#elif RTE_LIBRTE_PMD_SZEDATA2_AS == 1
-
-/*
- * Cards (modes):
- *     NFB-100G2Q (100G1)
- */
-
-const uint32_t szedata2_ibuf_base_table[] = {
-	0x8800
-};
-const uint32_t szedata2_obuf_base_table[] = {
-	0x9800
-};
-
-#elif RTE_LIBRTE_PMD_SZEDATA2_AS == 2
-
-/*
- * Cards (modes):
- *     NFB-40G2 (40G2)
- *     NFB-100G2C (100G2)
- *     NFB-100G2Q (40G2)
- */
-
-const uint32_t szedata2_ibuf_base_table[] = {
-	0x8000,
-	0x8800
-};
-const uint32_t szedata2_obuf_base_table[] = {
-	0x9000,
-	0x9800
-};
-
-#elif RTE_LIBRTE_PMD_SZEDATA2_AS == 3
-
-/*
- * Cards (modes):
- *     NFB-40G2 (10G8)
- *     NFB-100G2Q (10G8)
- */
-
-const uint32_t szedata2_ibuf_base_table[] = {
-	0x8000,
-	0x8200,
-	0x8400,
-	0x8600,
-	0x8800,
-	0x8A00,
-	0x8C00,
-	0x8E00
-};
-const uint32_t szedata2_obuf_base_table[] = {
-	0x9000,
-	0x9200,
-	0x9400,
-	0x9600,
-	0x9800,
-	0x9A00,
-	0x9C00,
-	0x9E00
-};
-
-#elif RTE_LIBRTE_PMD_SZEDATA2_AS == 4
-
-/*
- * Cards (modes):
- *     NFB-100G1 (10G10)
- */
-
-const uint32_t szedata2_ibuf_base_table[] = {
-	0x8000,
-	0x8200,
-	0x8400,
-	0x8600,
-	0x8800,
-	0x8A00,
-	0x8C00,
-	0x8E00,
-	0x9000,
-	0x9200
-};
-const uint32_t szedata2_obuf_base_table[] = {
-	0xA000,
-	0xA200,
-	0xA400,
-	0xA600,
-	0xA800,
-	0xAA00,
-	0xAC00,
-	0xAE00,
-	0xB000,
-	0xB200
-};
-
-#elif RTE_LIBRTE_PMD_SZEDATA2_AS == 5
-
-/*
- * Future use and experimental firmwares.
- */
-
-const uint32_t szedata2_ibuf_base_table[] = {
-	0x8000,
-	0x8200,
-	0x8400,
-	0x8600,
-	0x8800
-};
-const uint32_t szedata2_obuf_base_table[] = {
-	0x9000,
-	0x9200,
-	0x9400,
-	0x9600,
-	0x9800
-};
-
-#else
-#error "RTE_LIBRTE_PMD_SZEDATA2_AS has wrong value, see comments in config file"
-#endif
-
-const uint32_t szedata2_ibuf_count = RTE_DIM(szedata2_ibuf_base_table);
-const uint32_t szedata2_obuf_count = RTE_DIM(szedata2_obuf_base_table);
diff --git a/drivers/net/szedata2/szedata2_iobuf.h b/drivers/net/szedata2/szedata2_iobuf.h
deleted file mode 100644
index 795f0f5..0000000
--- a/drivers/net/szedata2/szedata2_iobuf.h
+++ /dev/null
@@ -1,327 +0,0 @@
-/* SPDX-License-Identifier: BSD-3-Clause
- * Copyright(c) 2017 CESNET
- */
-
-#ifndef _SZEDATA2_IOBUF_H_
-#define _SZEDATA2_IOBUF_H_
-
-#include <stdint.h>
-#include <stdbool.h>
-
-#include <rte_byteorder.h>
-#include <rte_io.h>
-#include <rte_dev.h>
-
-/* IBUF offsets from the beginning of the PCI resource address space. */
-extern const uint32_t szedata2_ibuf_base_table[];
-extern const uint32_t szedata2_ibuf_count;
-
-/* OBUF offsets from the beginning of the PCI resource address space. */
-extern const uint32_t szedata2_obuf_base_table[];
-extern const uint32_t szedata2_obuf_count;
-
-enum szedata2_link_speed {
-	SZEDATA2_LINK_SPEED_DEFAULT = 0,
-	SZEDATA2_LINK_SPEED_10G,
-	SZEDATA2_LINK_SPEED_40G,
-	SZEDATA2_LINK_SPEED_100G,
-};
-
-enum szedata2_mac_check_mode {
-	SZEDATA2_MAC_CHMODE_PROMISC       = 0x0,
-	SZEDATA2_MAC_CHMODE_ONLY_VALID    = 0x1,
-	SZEDATA2_MAC_CHMODE_ALL_BROADCAST = 0x2,
-	SZEDATA2_MAC_CHMODE_ALL_MULTICAST = 0x3,
-};
-
-/**
- * Macro takes pointer to pci resource structure (rsc)
- * and returns pointer to mapped resource memory at
- * specified offset (offset) typecast to the type (type).
- */
-#define SZEDATA2_PCI_RESOURCE_PTR(rsc, offset, type) \
-	((type)(((uint8_t *)(rsc)->addr) + (offset)))
-
-/**
- * Maximum possible number of MAC addresses (limited by IBUF status
- * register value MAC_COUNT which has 5 bits).
- */
-#define SZEDATA2_IBUF_MAX_MAC_COUNT 32
-
-/**
- * Structure describes IBUF address space.
- */
-struct szedata2_ibuf {
-	/** Total Received Frames Counter low part */
-	uint32_t trfcl; /**< 0x00 */
-	/** Correct Frames Counter low part */
-	uint32_t cfcl; /**< 0x04 */
-	/** Discarded Frames Counter low part */
-	uint32_t dfcl; /**< 0x08 */
-	/** Counter of frames discarded due to buffer overflow low part */
-	uint32_t bodfcl; /**< 0x0C */
-	/** Total Received Frames Counter high part */
-	uint32_t trfch; /**< 0x10 */
-	/** Correct Frames Counter high part */
-	uint32_t cfch; /**< 0x14 */
-	/** Discarded Frames Counter high part */
-	uint32_t dfch; /**< 0x18 */
-	/** Counter of frames discarded due to buffer overflow high part */
-	uint32_t bodfch; /**< 0x1C */
-	/** IBUF enable register */
-	uint32_t ibuf_en; /**< 0x20 */
-	/** Error mask register */
-	uint32_t err_mask; /**< 0x24 */
-	/** IBUF status register */
-	uint32_t ibuf_st; /**< 0x28 */
-	/** IBUF command register */
-	uint32_t ibuf_cmd; /**< 0x2C */
-	/** Minimum frame length allowed */
-	uint32_t mfla; /**< 0x30 */
-	/** Frame MTU */
-	uint32_t mtu; /**< 0x34 */
-	/** MAC address check mode */
-	uint32_t mac_chmode; /**< 0x38 */
-	/** Octets Received OK Counter low part */
-	uint32_t orocl; /**< 0x3C */
-	/** Octets Received OK Counter high part */
-	uint32_t oroch; /**< 0x40 */
-	/** reserved */
-	uint8_t reserved[60]; /**< 0x4C */
-	/** IBUF memory for MAC addresses */
-	uint32_t mac_mem[2 * SZEDATA2_IBUF_MAX_MAC_COUNT]; /**< 0x80 */
-} __rte_packed;
-
-/**
- * Structure describes OBUF address space.
- */
-struct szedata2_obuf {
-	/** Total Sent Frames Counter low part */
-	uint32_t tsfcl; /**< 0x00 */
-	/** Octets Sent Counter low part */
-	uint32_t oscl; /**< 0x04 */
-	/** Total Discarded Frames Counter low part */
-	uint32_t tdfcl; /**< 0x08 */
-	/** reserved */
-	uint32_t reserved1; /**< 0x0C */
-	/** Total Sent Frames Counter high part */
-	uint32_t tsfch; /**< 0x10 */
-	/** Octets Sent Counter high part */
-	uint32_t osch; /**< 0x14 */
-	/** Total Discarded Frames Counter high part */
-	uint32_t tdfch; /**< 0x18 */
-	/** reserved */
-	uint32_t reserved2; /**< 0x1C */
-	/** OBUF enable register */
-	uint32_t obuf_en; /**< 0x20 */
-	/** reserved */
-	uint64_t reserved3; /**< 0x24 */
-	/** OBUF control register */
-	uint32_t ctrl; /**< 0x2C */
-	/** OBUF status register */
-	uint32_t obuf_st; /**< 0x30 */
-} __rte_packed;
-
-/**
- * Wrapper for reading 4 bytes from device memory in correct endianness.
- *
- * @param addr
- *     Address for reading.
- * @return
- *     4 B value.
- */
-static inline uint32_t
-szedata2_read32(const volatile void *addr)
-{
-	return rte_le_to_cpu_32(rte_read32(addr));
-}
-
-/**
- * Wrapper for writing 4 bytes to device memory in correct endianness.
- *
- * @param value
- *     Value to write.
- * @param addr
- *     Address for writing.
- */
-static inline void
-szedata2_write32(uint32_t value, volatile void *addr)
-{
-	rte_write32(rte_cpu_to_le_32(value), addr);
-}
-
-/**
- * Get pointer to IBUF structure according to specified index.
- *
- * @param rsc
- *     Pointer to base address of memory resource.
- * @param index
- *     Index of IBUF.
- * @return
- *     Pointer to IBUF structure.
- */
-static inline struct szedata2_ibuf *
-ibuf_ptr_by_index(struct rte_mem_resource *rsc, uint32_t index)
-{
-	if (index >= szedata2_ibuf_count)
-		index = szedata2_ibuf_count - 1;
-	return SZEDATA2_PCI_RESOURCE_PTR(rsc, szedata2_ibuf_base_table[index],
-		struct szedata2_ibuf *);
-}
-
-/**
- * Get pointer to OBUF structure according to specified idnex.
- *
- * @param rsc
- *     Pointer to base address of memory resource.
- * @param index
- *     Index of OBUF.
- * @return
- *     Pointer to OBUF structure.
- */
-static inline struct szedata2_obuf *
-obuf_ptr_by_index(struct rte_mem_resource *rsc, uint32_t index)
-{
-	if (index >= szedata2_obuf_count)
-		index = szedata2_obuf_count - 1;
-	return SZEDATA2_PCI_RESOURCE_PTR(rsc, szedata2_obuf_base_table[index],
-		struct szedata2_obuf *);
-}
-
-/**
- * Checks if IBUF is enabled.
- *
- * @param ibuf
- *     Pointer to IBUF structure.
- * @return
- *     true if IBUF is enabled.
- *     false if IBUF is disabled.
- */
-static inline bool
-ibuf_is_enabled(const volatile struct szedata2_ibuf *ibuf)
-{
-	return ((szedata2_read32(&ibuf->ibuf_en) & 0x1) != 0) ? true : false;
-}
-
-/**
- * Enables IBUF.
- *
- * @param ibuf
- *     Pointer to IBUF structure.
- */
-static inline void
-ibuf_enable(volatile struct szedata2_ibuf *ibuf)
-{
-	szedata2_write32(szedata2_read32(&ibuf->ibuf_en) | 0x1, &ibuf->ibuf_en);
-}
-
-/**
- * Disables IBUF.
- *
- * @param ibuf
- *     Pointer to IBUF structure.
- */
-static inline void
-ibuf_disable(volatile struct szedata2_ibuf *ibuf)
-{
-	szedata2_write32(szedata2_read32(&ibuf->ibuf_en) & ~0x1,
-			&ibuf->ibuf_en);
-}
-
-/**
- * Checks if link is up.
- *
- * @param ibuf
- *     Pointer to IBUF structure.
- * @return
- *     true if ibuf link is up.
- *     false if ibuf link is down.
- */
-static inline bool
-ibuf_is_link_up(const volatile struct szedata2_ibuf *ibuf)
-{
-	return ((szedata2_read32(&ibuf->ibuf_st) & 0x80) != 0) ? true : false;
-}
-
-/**
- * Get current MAC address check mode from IBUF.
- *
- * @param ibuf
- *     Pointer to IBUF structure.
- * @return
- *     MAC address check mode constant.
- */
-static inline enum szedata2_mac_check_mode
-ibuf_mac_mode_read(const volatile struct szedata2_ibuf *ibuf)
-{
-	switch (szedata2_read32(&ibuf->mac_chmode) & 0x3) {
-	case 0x0:
-		return SZEDATA2_MAC_CHMODE_PROMISC;
-	case 0x1:
-		return SZEDATA2_MAC_CHMODE_ONLY_VALID;
-	case 0x2:
-		return SZEDATA2_MAC_CHMODE_ALL_BROADCAST;
-	case 0x3:
-		return SZEDATA2_MAC_CHMODE_ALL_MULTICAST;
-	default:
-		return SZEDATA2_MAC_CHMODE_PROMISC;
-	}
-}
-
-/**
- * Writes mode in MAC address check mode register in IBUF.
- *
- * @param ibuf
- *     Pointer to IBUF structure.
- * @param mode
- *     MAC address check mode to set.
- */
-static inline void
-ibuf_mac_mode_write(volatile struct szedata2_ibuf *ibuf,
-		enum szedata2_mac_check_mode mode)
-{
-	szedata2_write32((szedata2_read32(&ibuf->mac_chmode) & ~0x3) | mode,
-			&ibuf->mac_chmode);
-}
-
-/**
- * Checks if obuf is enabled.
- *
- * @param obuf
- *     Pointer to OBUF structure.
- * @return
- *     true if OBUF is enabled.
- *     false if OBUF is disabled.
- */
-static inline bool
-obuf_is_enabled(const volatile struct szedata2_obuf *obuf)
-{
-	return ((szedata2_read32(&obuf->obuf_en) & 0x1) != 0) ? true : false;
-}
-
-/**
- * Enables OBUF.
- *
- * @param obuf
- *     Pointer to OBUF structure.
- */
-static inline void
-obuf_enable(volatile struct szedata2_obuf *obuf)
-{
-	szedata2_write32(szedata2_read32(&obuf->obuf_en) | 0x1, &obuf->obuf_en);
-}
-
-/**
- * Disables OBUF.
- *
- * @param obuf
- *     Pointer to OBUF structure.
- */
-static inline void
-obuf_disable(volatile struct szedata2_obuf *obuf)
-{
-	szedata2_write32(szedata2_read32(&obuf->obuf_en) & ~0x1,
-			&obuf->obuf_en);
-}
-
-#endif /* _SZEDATA2_IOBUF_H_ */
-- 
1.8.3.1

  reply	other threads:[~2018-04-06 14:12 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-04-06 14:12 [dpdk-dev] [PATCH 0/3] net/szedata2: patch set for new card support Matej Vido
2018-04-06 14:12 ` Matej Vido [this message]
2018-04-10 15:28   ` [dpdk-dev] [PATCH 1/3] net/szedata2: do not affect Ethernet interfaces Ferruh Yigit
2018-04-11  9:36     ` Matej Vido
2018-04-11 10:51       ` Ferruh Yigit
2018-04-12  7:38         ` Matej Vido
2018-04-13  4:25           ` Yasufumi Ogawa
2018-04-13 10:39             ` Matej Vido
2018-04-06 14:12 ` [dpdk-dev] [PATCH 2/3] net/szedata2: add support for new NIC Matej Vido
2018-04-06 14:12 ` [dpdk-dev] [PATCH 3/3] net/szedata2: add kernel module dependency Matej Vido
2018-04-12  7:41 ` [dpdk-dev] [PATCH v2 0/3] net/szedata2: patch set for new card support Matej Vido
2018-04-13 16:32   ` Ferruh Yigit
2018-04-27  8:57   ` [dpdk-dev] [PATCH 1/1] doc: update doc and release notes for szedata2 driver Matej Vido
2018-04-27 13:11     ` Ferruh Yigit
2018-04-12  7:41 ` [dpdk-dev] [PATCH v2 1/3] net/szedata2: do not affect Ethernet interfaces Matej Vido
2018-04-12  7:41 ` [dpdk-dev] [PATCH v2 2/3] net/szedata2: add support for new NIC Matej Vido
2018-04-12 16:11   ` Ferruh Yigit
2018-04-13  8:17     ` Jan Remeš
2018-04-13 14:26       ` Ferruh Yigit
2018-04-13 15:03         ` Jan Remeš
2018-04-13 16:29           ` Ferruh Yigit
2018-04-18  7:21             ` Matej Vido
2018-04-12  7:41 ` [dpdk-dev] [PATCH v2 3/3] net/szedata2: add kernel module dependency Matej Vido

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=1523023929-1257-2-git-send-email-vido@cesnet.cz \
    --to=vido@cesnet.cz \
    --cc=dev@dpdk.org \
    --cc=remes@netcope.com \
    /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).