net/szedata2: remove driver
Remove the szedata2 device driver as the platform is no longer supported. Signed-off-by: Martin Spinler <spinler@cesnet.cz> Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com>
This commit is contained in:
parent
5388be6eae
commit
0cd91fd31c
@ -848,12 +848,6 @@ F: drivers/net/netvsc/
|
|||||||
F: doc/guides/nics/netvsc.rst
|
F: doc/guides/nics/netvsc.rst
|
||||||
F: doc/guides/nics/features/netvsc.ini
|
F: doc/guides/nics/features/netvsc.ini
|
||||||
|
|
||||||
Netcope szedata2
|
|
||||||
M: Martin Spinler <spinler@cesnet.cz>
|
|
||||||
F: drivers/net/szedata2/
|
|
||||||
F: doc/guides/nics/szedata2.rst
|
|
||||||
F: doc/guides/nics/features/szedata2.ini
|
|
||||||
|
|
||||||
Netcope nfb
|
Netcope nfb
|
||||||
M: Martin Spinler <spinler@cesnet.cz>
|
M: Martin Spinler <spinler@cesnet.cz>
|
||||||
F: drivers/net/nfb/
|
F: drivers/net/nfb/
|
||||||
|
@ -1,18 +0,0 @@
|
|||||||
;
|
|
||||||
; Supported features of the 'szedata2' network poll mode driver.
|
|
||||||
;
|
|
||||||
; Refer to default.ini for the full list of available PMD features.
|
|
||||||
;
|
|
||||||
[Features]
|
|
||||||
Speed capabilities = P
|
|
||||||
Link status = Y
|
|
||||||
Queue start/stop = Y
|
|
||||||
Scattered Rx = Y
|
|
||||||
Promiscuous mode = Y
|
|
||||||
Allmulticast mode = Y
|
|
||||||
Basic stats = Y
|
|
||||||
Extended stats = Y
|
|
||||||
Stats per queue = Y
|
|
||||||
Linux = Y
|
|
||||||
x86-64 = Y
|
|
||||||
Usage doc = Y
|
|
@ -1,214 +0,0 @@
|
|||||||
<?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"
|
|
||||||
d="m 40.564137,14.365075 254.362203,0 0,131.842535 -254.362203,0 z"
|
|
||||||
style="fill:#47c3d3;fill-rule:evenodd" />
|
|
||||||
<path
|
|
||||||
id="path15"
|
|
||||||
d="m 54.075948,146.2076 227.338592,0 0,32.94488 -227.338592,0 z"
|
|
||||||
style="fill:#c2c2c2;fill-rule:evenodd" />
|
|
||||||
<path
|
|
||||||
id="path19"
|
|
||||||
d="m 321.90535,146.2076 227.33856,0 0,32.94488 -227.33856,0 z"
|
|
||||||
style="fill:#c2c2c2;fill-rule:evenodd" />
|
|
||||||
<path
|
|
||||||
id="path23"
|
|
||||||
d="m 440.30217,146.24338 -11.82364,-20.50632 6.86313,0 0,-44.550399 -120.12924,0 0,6.938519 -20.28345,-11.953539 20.28345,-11.953547 0,6.93852 130.0503,0 0,54.580446 6.8631,0 z"
|
|
||||||
style="fill:#9a9a9a;fill-rule:evenodd" />
|
|
||||||
<path
|
|
||||||
id="path25"
|
|
||||||
d="m 112.39353,263.09765 0,0 c 0,-8.08875 6.55722,-14.64597 14.64597,-14.64597 l 58.58208,0 0,0 c 3.88435,0 7.60962,1.54305 10.35626,4.28971 2.74666,2.74664 4.28971,6.47189 4.28971,10.35626 l 0,58.58209 c 0,8.08875 -6.55722,14.64597 -14.64597,14.64597 l -58.58208,0 c -8.08875,0 -14.64597,-6.55722 -14.64597,-14.64597 z"
|
|
||||||
style="fill:#c2c2c2;fill-rule:evenodd" />
|
|
||||||
<path
|
|
||||||
id="path29"
|
|
||||||
d="m 391.63763,263.09765 0,0 c 0,-8.08875 6.55722,-14.64597 14.64597,-14.64597 l 58.58209,0 0,0 c 3.88437,0 7.60962,1.54305 10.35626,4.28971 2.74664,2.74664 4.2897,6.47189 4.2897,10.35626 l 0,58.58209 c 0,8.08875 -6.55722,14.64597 -14.64596,14.64597 l -58.58209,0 c -8.08875,0 -14.64597,-6.55722 -14.64597,-14.64597 z"
|
|
||||||
style="fill:#c2c2c2;fill-rule:evenodd" />
|
|
||||||
<path
|
|
||||||
id="path33"
|
|
||||||
d="m 135.20981,199.01075 19.85826,-19.85826 19.85828,19.85826 -9.92914,0 0,29.5748 9.92914,0 -19.85828,19.85827 -19.85826,-19.85827 9.92914,0 0,-29.5748 z"
|
|
||||||
style="fill:#9a9a9a;fill-rule:evenodd" />
|
|
||||||
<path
|
|
||||||
id="path35"
|
|
||||||
d="m 415.71635,199.01064 19.85828,-19.85826 19.85827,19.85826 -9.92914,0 0,29.57481 9.92914,0 -19.85827,19.85826 -19.85828,-19.85826 9.92914,0 0,-29.57481 z"
|
|
||||||
style="fill:#9a9a9a;fill-rule:evenodd" />
|
|
||||||
<path
|
|
||||||
id="path37"
|
|
||||||
d="m 15.205,31.273212 74.362206,0 0,32.944885 -74.362206,0 z"
|
|
||||||
style="fill:#ff8434;fill-rule:evenodd" />
|
|
||||||
<path
|
|
||||||
id="path41"
|
|
||||||
d="m 16.05531,80.231216 74.3622,0 0,32.944884 -74.3622,0 z"
|
|
||||||
style="fill:#ff8434;fill-rule:evenodd" />
|
|
||||||
<path
|
|
||||||
id="path45"
|
|
||||||
d="m 275.44377,174.07111 0,111.55905 -37.16536,0 0,-111.55905 z"
|
|
||||||
style="fill:#ff8434;fill-rule:evenodd" />
|
|
||||||
<path
|
|
||||||
id="path49"
|
|
||||||
d="m 97.923493,174.07111 0,111.55905 -37.16535,0 0,-111.55905 z"
|
|
||||||
style="fill:#ff8434;fill-rule:evenodd" />
|
|
||||||
<path
|
|
||||||
id="path53"
|
|
||||||
d="m 366.27543,174.07111 0,111.55905 -37.16537,0 0,-111.55905 z"
|
|
||||||
style="fill:#ff8434;fill-rule:evenodd" />
|
|
||||||
<path
|
|
||||||
id="path57"
|
|
||||||
d="m 542.0392,174.07111 0,111.55905 -37.16534,0 0,-111.55905 z"
|
|
||||||
style="fill:#ff8434;fill-rule:evenodd" />
|
|
||||||
<text
|
|
||||||
id="text4480"
|
|
||||||
y="54.570911"
|
|
||||||
x="24.425898"
|
|
||||||
style="font-style:normal;font-weight:normal;font-size:18.75px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
|
||||||
xml:space="preserve"><tspan
|
|
||||||
y="54.570911"
|
|
||||||
x="24.425898"
|
|
||||||
id="tspan4482">ETH 0</tspan></text>
|
|
||||||
<text
|
|
||||||
id="text4480-3"
|
|
||||||
y="103.53807"
|
|
||||||
x="25.51882"
|
|
||||||
style="font-style:normal;font-weight:normal;font-size:20px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
|
||||||
xml:space="preserve"><tspan
|
|
||||||
style="font-size:18.75px"
|
|
||||||
id="tspan4502"
|
|
||||||
y="103.53807"
|
|
||||||
x="25.51882">ETH 1</tspan></text>
|
|
||||||
<text
|
|
||||||
id="text4480-7"
|
|
||||||
y="86.200645"
|
|
||||||
x="103.15979"
|
|
||||||
style="font-style:normal;font-weight:normal;font-size:18.75px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
|
||||||
xml:space="preserve"><tspan
|
|
||||||
id="tspan4524"
|
|
||||||
y="86.200645"
|
|
||||||
x="103.15979">NFB-200G2QL card</tspan></text>
|
|
||||||
<text
|
|
||||||
id="text4480-7-3"
|
|
||||||
y="169.2041"
|
|
||||||
x="92.195312"
|
|
||||||
style="font-style:normal;font-weight:normal;font-size:18.75px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
|
||||||
xml:space="preserve"><tspan
|
|
||||||
style="font-size:18.75px"
|
|
||||||
id="tspan4546"
|
|
||||||
y="169.2041"
|
|
||||||
x="92.195312">PCI-E master slot</tspan></text>
|
|
||||||
<text
|
|
||||||
id="text4480-7-3-6"
|
|
||||||
y="169.20409"
|
|
||||||
x="367.98856"
|
|
||||||
style="font-style:normal;font-weight:normal;font-size:18.75px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
|
||||||
xml:space="preserve"><tspan
|
|
||||||
style="font-size:18.75px"
|
|
||||||
id="tspan4546-2"
|
|
||||||
y="169.20409"
|
|
||||||
x="367.98856">PCI-E slave slot</tspan></text>
|
|
||||||
<text
|
|
||||||
transform="matrix(0,1,-1,0,0,0)"
|
|
||||||
id="text4480-3-9"
|
|
||||||
y="-73.591309"
|
|
||||||
x="182.29367"
|
|
||||||
style="font-style:normal;font-weight:normal;font-size:20px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
|
||||||
xml:space="preserve"><tspan
|
|
||||||
style="font-size:18.75px"
|
|
||||||
id="tspan4502-1"
|
|
||||||
y="-73.591309"
|
|
||||||
x="182.29367">QUEUE 0</tspan></text>
|
|
||||||
<text
|
|
||||||
transform="matrix(0,1.0000002,-0.99999976,0,0,0)"
|
|
||||||
id="text4480-3-9-2"
|
|
||||||
y="-251.11163"
|
|
||||||
x="182.29283"
|
|
||||||
style="font-style:normal;font-weight:normal;font-size:20px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
|
||||||
xml:space="preserve"><tspan
|
|
||||||
style="font-size:18.75px"
|
|
||||||
id="tspan4502-1-7"
|
|
||||||
y="-251.11163"
|
|
||||||
x="182.29283">QUEUE 15</tspan></text>
|
|
||||||
<text
|
|
||||||
transform="matrix(0,1,-1,0,0,0)"
|
|
||||||
id="text4480-3-9-2-0"
|
|
||||||
y="-341.94324"
|
|
||||||
x="182.29311"
|
|
||||||
style="font-style:normal;font-weight:normal;font-size:20px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
|
||||||
xml:space="preserve"><tspan
|
|
||||||
style="font-size:18.75px"
|
|
||||||
id="tspan4502-1-7-9"
|
|
||||||
y="-341.94324"
|
|
||||||
x="182.29311">QUEUE 16</tspan></text>
|
|
||||||
<text
|
|
||||||
transform="matrix(0,1,-1,0,0,0)"
|
|
||||||
id="text4480-3-9-2-3"
|
|
||||||
y="-517.70703"
|
|
||||||
x="182.29356"
|
|
||||||
style="font-style:normal;font-weight:normal;font-size:20px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
|
||||||
xml:space="preserve"><tspan
|
|
||||||
style="font-size:18.75px"
|
|
||||||
id="tspan4502-1-7-6"
|
|
||||||
y="-517.70703"
|
|
||||||
x="182.29356">QUEUE 31</tspan></text>
|
|
||||||
<text
|
|
||||||
id="text4480-3-0"
|
|
||||||
y="299.21396"
|
|
||||||
x="128.3978"
|
|
||||||
style="font-style:normal;font-weight:normal;font-size:20px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
|
||||||
xml:space="preserve"><tspan
|
|
||||||
style="font-size:18.75px"
|
|
||||||
id="tspan4502-6"
|
|
||||||
y="299.21396"
|
|
||||||
x="128.3978">CPU 0</tspan></text>
|
|
||||||
<text
|
|
||||||
id="text4480-3-0-2"
|
|
||||||
y="299.21396"
|
|
||||||
x="407.88452"
|
|
||||||
style="font-style:normal;font-weight:normal;font-size:20px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
|
||||||
xml:space="preserve"><tspan
|
|
||||||
style="font-size:18.75px"
|
|
||||||
id="tspan4502-6-6"
|
|
||||||
y="299.21396"
|
|
||||||
x="407.88452">CPU 1</tspan></text>
|
|
||||||
</g>
|
|
||||||
</svg>
|
|
Before Width: | Height: | Size: 9.5 KiB |
@ -58,7 +58,6 @@ Network Interface Controller Drivers
|
|||||||
qede
|
qede
|
||||||
sfc_efx
|
sfc_efx
|
||||||
softnic
|
softnic
|
||||||
szedata2
|
|
||||||
tap
|
tap
|
||||||
thunderx
|
thunderx
|
||||||
txgbe
|
txgbe
|
||||||
|
@ -97,11 +97,6 @@ NUMA node, the card is represented as a single port in DPDK. To work with data
|
|||||||
from the individual queues on the right NUMA node, connection of NUMA nodes on
|
from the individual queues on the right NUMA node, connection of NUMA nodes on
|
||||||
first and last queue (each NUMA node has half of the queues) need to be checked.
|
first and last queue (each NUMA node has half of the queues) need to be checked.
|
||||||
|
|
||||||
.. figure:: img/szedata2_nfb200g_architecture.*
|
|
||||||
:align: center
|
|
||||||
|
|
||||||
NFB-200G2QL high-level diagram
|
|
||||||
|
|
||||||
Limitations
|
Limitations
|
||||||
-----------
|
-----------
|
||||||
|
|
||||||
|
@ -1,146 +0,0 @@
|
|||||||
.. SPDX-License-Identifier: BSD-3-Clause
|
|
||||||
Copyright 2015 - 2016 CESNET
|
|
||||||
|
|
||||||
SZEDATA2 poll mode driver library
|
|
||||||
=================================
|
|
||||||
|
|
||||||
The SZEDATA2 poll mode driver library implements support for the Netcope
|
|
||||||
FPGA Boards (**NFB-40G2, NFB-100G2, NFB-200G2QL**) and Silicom **FB2CGG3** card,
|
|
||||||
FPGA-based programmable NICs. The SZEDATA2 PMD uses interface provided by the libsze2
|
|
||||||
library to communicate with the NFB cards over the sze2 layer.
|
|
||||||
|
|
||||||
More information about the
|
|
||||||
`NFB cards <http://www.netcope.com/en/products/fpga-boards>`_
|
|
||||||
and used technology
|
|
||||||
(`Netcope Development Kit <http://www.netcope.com/en/products/fpga-development-kit>`_)
|
|
||||||
can be found on the `Netcope Technologies website <http://www.netcope.com/>`_.
|
|
||||||
|
|
||||||
.. note::
|
|
||||||
|
|
||||||
Currently the driver is supported only on x86_64 architectures.
|
|
||||||
Only x86_64 versions of the external libraries are provided.
|
|
||||||
|
|
||||||
Prerequisites
|
|
||||||
-------------
|
|
||||||
|
|
||||||
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 library**
|
|
||||||
|
|
||||||
The library provides API for initialization of sze2 transfers, receiving and
|
|
||||||
transmitting data segments.
|
|
||||||
|
|
||||||
* **Kernel modules**
|
|
||||||
|
|
||||||
* combo6core
|
|
||||||
* combov3
|
|
||||||
* szedata2
|
|
||||||
* szedata2_cv3 or szedata2_cv3_fdt
|
|
||||||
|
|
||||||
Kernel modules manage initialization of hardware, allocation and
|
|
||||||
sharing of resources for user space applications.
|
|
||||||
|
|
||||||
Information about getting the dependencies can be found `here
|
|
||||||
<http://www.netcope.com/en/company/community-support/dpdk-libsze2>`_.
|
|
||||||
|
|
||||||
Versions of the packages
|
|
||||||
~~~~~~~~~~~~~~~~~~~~~~~~
|
|
||||||
|
|
||||||
The minimum version of the provided packages:
|
|
||||||
|
|
||||||
* for DPDK from 18.05: **4.4.1**
|
|
||||||
|
|
||||||
* for DPDK up to 18.02 (including): **3.0.5**
|
|
||||||
|
|
||||||
|
|
||||||
Using the SZEDATA2 PMD
|
|
||||||
----------------------
|
|
||||||
|
|
||||||
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.
|
|
||||||
|
|
||||||
Kernel modules have to be loaded before running the DPDK application.
|
|
||||||
|
|
||||||
NFB card architecture
|
|
||||||
---------------------
|
|
||||||
|
|
||||||
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.
|
|
||||||
|
|
||||||
However, the new NFB-200G2QL card employs an add-on 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).
|
|
||||||
|
|
||||||
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.
|
|
||||||
|
|
||||||
.. figure:: img/szedata2_nfb200g_architecture.*
|
|
||||||
:align: center
|
|
||||||
|
|
||||||
NFB-200G2QL high-level diagram
|
|
||||||
|
|
||||||
Limitations
|
|
||||||
-----------
|
|
||||||
|
|
||||||
The SZEDATA2 PMD does not support operations related to Ethernet ports
|
|
||||||
(link_up, link_down, set_mac_address, etc.).
|
|
||||||
|
|
||||||
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).
|
|
||||||
|
|
||||||
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
|
|
||||||
----------------
|
|
||||||
|
|
||||||
Read packets from 0. and 1. receive channel and write them to 0. and 1.
|
|
||||||
transmit channel:
|
|
||||||
|
|
||||||
.. code-block:: console
|
|
||||||
|
|
||||||
./<build_dir>/app/dpdk-testpmd -l 0-3 -n 2 \
|
|
||||||
-- --port-topology=chained --rxq=2 --txq=2 --nb-cores=2 -i -a
|
|
||||||
|
|
||||||
Example output:
|
|
||||||
|
|
||||||
.. code-block:: console
|
|
||||||
|
|
||||||
[...]
|
|
||||||
EAL: PCI device 0000:06:00.0 on NUMA socket -1
|
|
||||||
EAL: probe driver: 1b26:c1c1 rte_szedata2_pmd
|
|
||||||
PMD: Initializing szedata2 device (0000:06:00.0)
|
|
||||||
PMD: SZEDATA2 path: /dev/szedataII0
|
|
||||||
PMD: Available DMA channels RX: 8 TX: 8
|
|
||||||
PMD: resource0 phys_addr = 0xe8000000 len = 134217728 virt addr = 7f48f8000000
|
|
||||||
PMD: szedata2 device (0000:06:00.0) successfully initialized
|
|
||||||
Interactive-mode selected
|
|
||||||
Auto-start selected
|
|
||||||
Configuring Port 0 (socket 0)
|
|
||||||
Port 0: 00:11:17:00:00:00
|
|
||||||
Checking link statuses...
|
|
||||||
Port 0 Link Up - speed 10000 Mbps - full-duplex
|
|
||||||
Done
|
|
||||||
Start automatic packet forwarding
|
|
||||||
io packet forwarding - CRC stripping disabled - packets/burst=32
|
|
||||||
nb forwarding cores=2 - nb forwarding ports=1
|
|
||||||
RX queues=2 - RX desc=128 - RX free threshold=0
|
|
||||||
RX threshold registers: pthresh=0 hthresh=0 wthresh=0
|
|
||||||
TX queues=2 - TX desc=512 - TX free threshold=0
|
|
||||||
TX threshold registers: pthresh=0 hthresh=0 wthresh=0
|
|
||||||
TX RS bit threshold=0 - TXQ flags=0x0
|
|
||||||
testpmd>
|
|
@ -53,7 +53,6 @@ drivers = [
|
|||||||
'ring',
|
'ring',
|
||||||
'sfc',
|
'sfc',
|
||||||
'softnic',
|
'softnic',
|
||||||
'szedata2',
|
|
||||||
'tap',
|
'tap',
|
||||||
'thunderx',
|
'thunderx',
|
||||||
'txgbe',
|
'txgbe',
|
||||||
|
@ -1,14 +0,0 @@
|
|||||||
# SPDX-License-Identifier: BSD-3-Clause
|
|
||||||
# Copyright(c) 2018 Intel Corporation
|
|
||||||
|
|
||||||
if is_windows
|
|
||||||
build = false
|
|
||||||
reason = 'not supported on Windows'
|
|
||||||
subdir_done()
|
|
||||||
endif
|
|
||||||
|
|
||||||
dep = dependency('libsze2', required: false, method: 'pkg-config')
|
|
||||||
build = dep.found()
|
|
||||||
reason = 'missing dependency, "libsze2"'
|
|
||||||
ext_deps += dep
|
|
||||||
sources = files('rte_eth_szedata2.c')
|
|
File diff suppressed because it is too large
Load Diff
@ -1,90 +0,0 @@
|
|||||||
/* SPDX-License-Identifier: BSD-3-Clause
|
|
||||||
* Copyright(c) 2015 - 2016 CESNET
|
|
||||||
*/
|
|
||||||
|
|
||||||
#ifndef RTE_PMD_SZEDATA2_H_
|
|
||||||
#define RTE_PMD_SZEDATA2_H_
|
|
||||||
|
|
||||||
#include <stdint.h>
|
|
||||||
|
|
||||||
#include <libsze2.h>
|
|
||||||
|
|
||||||
#include <rte_common.h>
|
|
||||||
|
|
||||||
/* PCI Vendor ID */
|
|
||||||
#define PCI_VENDOR_ID_NETCOPE 0x1b26
|
|
||||||
#define PCI_VENDOR_ID_SILICOM 0x1c2c
|
|
||||||
|
|
||||||
/* PCI Device IDs */
|
|
||||||
#define PCI_DEVICE_ID_NETCOPE_COMBO80G 0xcb80
|
|
||||||
#define PCI_DEVICE_ID_NETCOPE_COMBO100G 0xc1c1
|
|
||||||
#define PCI_DEVICE_ID_NETCOPE_COMBO100G2 0xc2c1
|
|
||||||
#define PCI_DEVICE_ID_NETCOPE_NFB200G2QL 0xc250
|
|
||||||
#define PCI_DEVICE_ID_FB2CGG3 0x00d0
|
|
||||||
#define PCI_DEVICE_ID_FB2CGG3D 0xc240
|
|
||||||
|
|
||||||
/* szedata2_packet header length == 4 bytes == 2B segment size + 2B hw size */
|
|
||||||
#define RTE_SZE2_PACKET_HEADER_SIZE 4
|
|
||||||
|
|
||||||
#define RTE_SZE2_MMIO_MAX 10
|
|
||||||
|
|
||||||
/*!
|
|
||||||
* Round 'what' to the nearest larger (or equal) multiple of '8'
|
|
||||||
* (szedata2 packet is aligned to 8 bytes)
|
|
||||||
*/
|
|
||||||
#define RTE_SZE2_ALIGN8(what) RTE_ALIGN(what, 8)
|
|
||||||
|
|
||||||
/*! main handle structure */
|
|
||||||
struct szedata {
|
|
||||||
int fd;
|
|
||||||
struct sze2_instance_info *info;
|
|
||||||
uint32_t *write_size;
|
|
||||||
void *space[RTE_SZE2_MMIO_MAX];
|
|
||||||
struct szedata_lock lock[2][2];
|
|
||||||
|
|
||||||
__u32 *rx_asize, *tx_asize;
|
|
||||||
|
|
||||||
/* szedata_read_next variables - to keep context (ct) */
|
|
||||||
|
|
||||||
/*
|
|
||||||
* rx
|
|
||||||
*/
|
|
||||||
/** initial sze lock ptr */
|
|
||||||
const struct szedata_lock *ct_rx_lck_orig;
|
|
||||||
/** current sze lock ptr (initial or next) */
|
|
||||||
const struct szedata_lock *ct_rx_lck;
|
|
||||||
/** remaining bytes (not read) within current lock */
|
|
||||||
unsigned int ct_rx_rem_bytes;
|
|
||||||
/** current pointer to locked memory */
|
|
||||||
unsigned char *ct_rx_cur_ptr;
|
|
||||||
/**
|
|
||||||
* allocated buffer to store RX packet if it was split
|
|
||||||
* into 2 buffers
|
|
||||||
*/
|
|
||||||
unsigned char *ct_rx_buffer;
|
|
||||||
/** registered function to provide filtering based on hwdata */
|
|
||||||
int (*ct_rx_filter)(u_int16_t hwdata_len, u_char *hwdata);
|
|
||||||
|
|
||||||
/*
|
|
||||||
* tx
|
|
||||||
*/
|
|
||||||
/**
|
|
||||||
* buffer for tx - packet is prepared here
|
|
||||||
* (in future for burst write)
|
|
||||||
*/
|
|
||||||
unsigned char *ct_tx_buffer;
|
|
||||||
/** initial sze TX lock ptrs - number according to TX interfaces */
|
|
||||||
const struct szedata_lock **ct_tx_lck_orig;
|
|
||||||
/** current sze TX lock ptrs - number according to TX interfaces */
|
|
||||||
const struct szedata_lock **ct_tx_lck;
|
|
||||||
/** already written bytes in both locks */
|
|
||||||
unsigned int *ct_tx_written_bytes;
|
|
||||||
/** remaining bytes (not written) within current lock */
|
|
||||||
unsigned int *ct_tx_rem_bytes;
|
|
||||||
/** current pointers to locked memory */
|
|
||||||
unsigned char **ct_tx_cur_ptr;
|
|
||||||
/** NUMA node closest to PCIe device, or -1 */
|
|
||||||
int numa_node;
|
|
||||||
};
|
|
||||||
|
|
||||||
#endif /* RTE_PMD_SZEDATA2_H_ */
|
|
@ -1,22 +0,0 @@
|
|||||||
/* SPDX-License-Identifier: BSD-3-Clause
|
|
||||||
* Copyright(c) 2018 CESNET
|
|
||||||
*/
|
|
||||||
|
|
||||||
#ifndef _SZEDATA2_LOGS_H_
|
|
||||||
#define _SZEDATA2_LOGS_H_
|
|
||||||
|
|
||||||
#include <rte_log.h>
|
|
||||||
|
|
||||||
extern int szedata2_logtype_init;
|
|
||||||
#define PMD_INIT_LOG(level, fmt, args...) \
|
|
||||||
rte_log(RTE_LOG_ ## level, szedata2_logtype_init, \
|
|
||||||
"%s(): " fmt "\n", __func__, ## args)
|
|
||||||
|
|
||||||
#define PMD_INIT_FUNC_TRACE() PMD_INIT_LOG(DEBUG, " >>")
|
|
||||||
|
|
||||||
extern int szedata2_logtype_driver;
|
|
||||||
#define PMD_DRV_LOG(level, fmt, args...) \
|
|
||||||
rte_log(RTE_LOG_ ## level, szedata2_logtype_driver, \
|
|
||||||
"%s(): " fmt "\n", __func__, ## args)
|
|
||||||
|
|
||||||
#endif /* _SZEDATA2_LOGS_H_ */
|
|
@ -1,3 +0,0 @@
|
|||||||
DPDK_22 {
|
|
||||||
local: *;
|
|
||||||
};
|
|
Loading…
Reference in New Issue
Block a user