New upstream version 18.08
[deb_dpdk.git] / doc / guides / rel_notes / release_17_02.rst
1 ..  SPDX-License-Identifier: BSD-3-Clause
2     Copyright 2017 The DPDK contributors
3
4 DPDK Release 17.02
5 ==================
6
7 .. **Read this first.**
8
9    The text below explains how to update the release notes.
10
11    Use proper spelling, capitalization and punctuation in all sections.
12
13    Variable and config names should be quoted as fixed width text: ``LIKE_THIS``.
14
15    Build the docs and view the output file to ensure the changes are correct::
16
17       make doc-guides-html
18
19       firefox build/doc/html/guides/rel_notes/release_17_02.html
20
21
22 New Features
23 ------------
24
25 .. This section should contain new features added in this release. Sample format:
26
27    * **Add a title in the past tense with a full stop.**
28
29      Add a short 1-2 sentence description in the past tense. The description
30      should be enough to allow someone scanning the release notes to understand
31      the new feature.
32
33      If the feature adds a lot of sub-features you can use a bullet list like this.
34
35      * Added feature foo to do something.
36      * Enhanced feature bar to do something else.
37
38      Refer to the previous release notes for examples.
39
40      This section is a comment. do not overwrite or remove it.
41      Also, make sure to start the actual text at the margin.
42      =========================================================
43
44 * **Added support for representing buses in EAL**
45
46   The ``rte_bus`` structure was introduced into the EAL. This allows for
47   devices to be represented by buses they are connected to. A new bus can be
48   added to DPDK by extending the ``rte_bus`` structure and implementing the
49   scan and probe functions. Once a new bus is registered using the provided
50   APIs, new devices can be detected and initialized using bus scan and probe
51   callbacks.
52
53   With this change, devices other than PCI or VDEV type can be represented
54   in the DPDK framework.
55
56 * **Added generic EAL API for I/O device memory read/write operations.**
57
58   This API introduces 8 bit, 16 bit, 32 bit and 64 bit I/O device
59   memory read/write operations along with "relaxed" versions.
60
61   Weakly-ordered architectures like ARM need an additional I/O barrier for
62   device memory read/write access over PCI bus. By introducing the EAL
63   abstraction for I/O device memory read/write access, the drivers can access
64   I/O device memory in an architecture-agnostic manner. The relaxed version
65   does not have an additional I/O memory barrier, which is useful in accessing
66   the device registers of integrated controllers which is implicitly strongly
67   ordered with respect to memory access.
68
69 * **Added generic flow API (rte_flow).**
70
71   This API provides a generic means to configure hardware to match specific
72   ingress or egress traffic, alter its behavior and query related counters
73   according to any number of user-defined rules.
74
75   In order to expose a single interface with an unambiguous behavior that is
76   common to all poll-mode drivers (PMDs) the ``rte_flow`` API is slightly
77   higher-level than the legacy filtering framework, which it encompasses and
78   supersedes (including all functions and filter types) .
79
80   See the :ref:`Generic flow API <Generic_flow_API>` documentation for more
81   information.
82
83 * **Added firmware version get API.**
84
85   Added a new function ``rte_eth_dev_fw_version_get()`` to fetch the firmware
86   version for a given device.
87
88 * **Added APIs for MACsec offload support to the ixgbe PMD.**
89
90   Six new APIs have been added to the ixgbe PMD for MACsec offload support.
91   The declarations for the APIs can be found in ``rte_pmd_ixgbe.h``.
92
93 * **Added I219 NICs support.**
94
95   Added support for I219 Intel 1GbE NICs.
96
97 * **Added VF Daemon (VFD) for i40e. - EXPERIMENTAL**
98
99   This is an EXPERIMENTAL feature to enhance the capability of the DPDK PF as
100   many VF management features are not currently supported by the kernel PF
101   driver. Some new private APIs are implemented directly in the PMD without an
102   abstraction layer. They can be used directly by some users who have the
103   need.
104
105   The new APIs to control VFs directly from PF include:
106
107   * Set VF MAC anti-spoofing.
108   * Set VF VLAN anti-spoofing.
109   * Set TX loopback.
110   * Set VF unicast promiscuous mode.
111   * Set VF multicast promiscuous mode.
112   * Set VF MTU.
113   * Get/reset VF stats.
114   * Set VF MAC address.
115   * Set VF VLAN stripping.
116   * Vf VLAN insertion.
117   * Set VF broadcast mode.
118   * Set VF VLAN tag.
119   * Set VF VLAN filter.
120
121   VFD also includes VF to PF mailbox message management from an application.
122   When the PF receives mailbox messages from the VF the PF should call the
123   callback provided by the application to know if they're permitted to be
124   processed.
125
126   As an EXPERIMENTAL feature, please be aware it can be changed or even
127   removed without prior notice.
128
129 * **Updated the i40e base driver.**
130
131   Updated the i40e base driver, including the following changes:
132
133   * Replace existing legacy ``memcpy()`` calls with ``i40e_memcpy()`` calls.
134   * Use ``BIT()`` macro instead of bit fields.
135   * Add clear all WoL filters implementation.
136   * Add broadcast promiscuous control per VLAN.
137   * Remove unused ``X722_SUPPORT`` and ``I40E_NDIS_SUPPORT`` macros.
138
139 * **Updated the enic driver.**
140
141   * Set new Rx checksum flags in mbufs to indicate unknown, good or bad checksums.
142   * Fix set/remove of MAC addresses. Allow up to 64 addresses per device.
143   * Enable TSO on outer headers.
144
145 * **Added Solarflare libefx-based network PMD.**
146
147   Added a new network PMD which supports Solarflare SFN7xxx and SFN8xxx family
148   of 10/40 Gbps adapters.
149
150 * **Updated the mlx4 driver.**
151
152   * Addressed a few bugs.
153
154 * **Added support for Mellanox ConnectX-5 adapters (mlx5).**
155
156   Added support for Mellanox ConnectX-5 family of 10/25/40/50/100 Gbps
157   adapters to the existing mlx5 PMD.
158
159 * **Updated the mlx5 driver.**
160
161   * Improve Tx performance by using vector logic.
162   * Improve RSS balancing when number of queues is not a power of two.
163   * Generic flow API support for Ethernet, IPv4, IPv4, UDP, TCP, VLAN and
164     VXLAN pattern items with DROP and QUEUE actions.
165   * Support for extended statistics.
166   * Addressed several data path bugs.
167   * As of MLNX_OFED 4.0-1.0.1.0, the Toeplitz RSS hash function is not
168     symmetric anymore for consistency with other PMDs.
169
170 * **virtio-user with vhost-kernel as another exceptional path.**
171
172   Previously, we upstreamed a virtual device, virtio-user with vhost-user as
173   the backend as a way of enabling IPC (Inter-Process Communication) and user
174   space container networking.
175
176   Virtio-user with vhost-kernel as the backend is a solution for the exception
177   path, such as KNI, which exchanges packets with the kernel networking stack.
178   This solution is very promising in:
179
180   * Maintenance: vhost and vhost-net (kernel) is an upstreamed and extensively
181     used kernel module.
182   * Features: vhost-net is designed to be a networking solution, which has
183     lots of networking related features, like multi-queue, TSO, multi-seg
184     mbuf, etc.
185   * Performance: similar to KNI, this solution would use one or more
186     kthreads to send/receive packets from user space DPDK applications,
187     which has little impact on user space polling thread (except that
188     it might enter into kernel space to wake up those kthreads if
189     necessary).
190
191 * **Added virtio Rx interrupt support.**
192
193   Added a feature to enable Rx interrupt mode for virtio pci net devices as
194   bound to VFIO (noiommu mode) and driven by virtio PMD.
195
196   With this feature, the virtio PMD can switch between polling mode and
197   interrupt mode, to achieve best performance, and at the same time save
198   power. It can work on both legacy and modern virtio devices. In this mode,
199   each ``rxq`` is mapped with an excluded MSIx interrupt.
200
201   See the :ref:`Virtio Interrupt Mode <virtio_interrupt_mode>` documentation
202   for more information.
203
204 * **Added ARMv8 crypto PMD.**
205
206   A new crypto PMD has been added, which provides combined mode cryptographic
207   operations optimized for ARMv8 processors. The driver can be used to enhance
208   performance in processing chained operations such as cipher + HMAC.
209
210 * **Updated the QAT PMD.**
211
212   The QAT PMD has been updated with additional support for:
213
214   * DES algorithm.
215   * Scatter-gather list (SGL) support.
216
217 * **Updated the AESNI MB PMD.**
218
219   * The Intel(R) Multi Buffer Crypto for IPsec library used in
220     AESNI MB PMD has been moved to a new repository, in GitHub.
221   * Support has been added for single operations (cipher only and
222     authentication only).
223
224 * **Updated the AES-NI GCM PMD.**
225
226   The AES-NI GCM PMD was migrated from the Multi Buffer library to the ISA-L
227   library. The migration entailed adding additional support for:
228
229   * GMAC algorithm.
230   * 256-bit cipher key.
231   * Session-less mode.
232   * Out-of place processing
233   * Scatter-gather support for chained mbufs (only out-of place and destination
234     mbuf must be contiguous)
235
236 * **Added crypto performance test application.**
237
238   Added a new performance test application for measuring performance
239   parameters of PMDs available in the crypto tree.
240
241 * **Added Elastic Flow Distributor library (rte_efd).**
242
243   Added a new library which uses perfect hashing to determine a target/value
244   for a given incoming flow key.
245
246   The library does not store the key itself for lookup operations, and
247   therefore, lookup performance is not dependent on the key size. Also, the
248   target/value can be any arbitrary value (8 bits by default). Finally, the
249   storage requirement is much smaller than a hash-based flow table and
250   therefore, it can better fit in CPU cache and scale to millions of flow
251   keys.
252
253   See the :ref:`Elastic Flow Distributor Library <Efd_Library>` documentation in
254   the Programmers Guide document, for more information.
255
256
257 Resolved Issues
258 ---------------
259
260 .. This section should contain bug fixes added to the relevant sections. Sample format:
261
262    * **code/section Fixed issue in the past tense with a full stop.**
263
264      Add a short 1-2 sentence description of the resolved issue in the past tense.
265      The title should contain the code/lib section like a commit message.
266      Add the entries in alphabetic order in the relevant sections below.
267
268    This section is a comment. do not overwrite or remove it.
269    Also, make sure to start the actual text at the margin.
270    =========================================================
271
272 Drivers
273 ~~~~~~~
274
275 * **net/virtio: Fixed multiple process support.**
276
277   Fixed a few regressions introduced in recent releases that break the virtio
278   multiple process support.
279
280
281 Examples
282 ~~~~~~~~
283
284 * **examples/ethtool: Fixed crash with non-PCI devices.**
285
286   Fixed issue where querying a non-PCI device was dereferencing non-existent
287   PCI data resulting in a segmentation fault.
288
289
290
291 API Changes
292 -----------
293
294 .. This section should contain API changes. Sample format:
295
296    * Add a short 1-2 sentence description of the API change. Use fixed width
297      quotes for ``rte_function_names`` or ``rte_struct_names``. Use the past tense.
298
299    This section is a comment. do not overwrite or remove it.
300    Also, make sure to start the actual text at the margin.
301    =========================================================
302
303 * **Moved five APIs for VF management from the ethdev to the ixgbe PMD.**
304
305   The following five APIs for VF management from the PF have been removed from
306   the ethdev, renamed, and added to the ixgbe PMD::
307
308      rte_eth_dev_set_vf_rate_limit()
309      rte_eth_dev_set_vf_rx()
310      rte_eth_dev_set_vf_rxmode()
311      rte_eth_dev_set_vf_tx()
312      rte_eth_dev_set_vf_vlan_filter()
313
314   The API's have been renamed to the following::
315
316      rte_pmd_ixgbe_set_vf_rate_limit()
317      rte_pmd_ixgbe_set_vf_rx()
318      rte_pmd_ixgbe_set_vf_rxmode()
319      rte_pmd_ixgbe_set_vf_tx()
320      rte_pmd_ixgbe_set_vf_vlan_filter()
321
322   The declarations for the API’s can be found in ``rte_pmd_ixgbe.h``.
323
324
325 ABI Changes
326 -----------
327
328 .. This section should contain ABI changes. Sample format:
329
330    * Add a short 1-2 sentence description of the ABI change that was announced in
331      the previous releases and made in this release. Use fixed width quotes for
332      ``rte_function_names`` or ``rte_struct_names``. Use the past tense.
333
334    This section is a comment. do not overwrite or remove it.
335    Also, make sure to start the actual text at the margin.
336    =========================================================
337
338
339
340 Shared Library Versions
341 -----------------------
342
343 .. Update any library version updated in this release and prepend with a ``+``
344    sign, like this:
345
346      librte_acl.so.2
347    + librte_cfgfile.so.2
348      librte_cmdline.so.2
349
350    This section is a comment. do not overwrite or remove it.
351    =========================================================
352
353
354 The libraries prepended with a plus sign were incremented in this version.
355
356 .. code-block:: diff
357
358      librte_acl.so.2
359      librte_cfgfile.so.2
360      librte_cmdline.so.2
361      librte_cryptodev.so.2
362      librte_distributor.so.1
363      librte_eal.so.3
364    + librte_ethdev.so.6
365      librte_hash.so.2
366      librte_ip_frag.so.1
367      librte_jobstats.so.1
368      librte_kni.so.2
369      librte_kvargs.so.1
370      librte_lpm.so.2
371      librte_mbuf.so.2
372      librte_mempool.so.2
373      librte_meter.so.1
374      librte_net.so.1
375      librte_pdump.so.1
376      librte_pipeline.so.3
377      librte_pmd_bond.so.1
378      librte_pmd_ring.so.2
379      librte_port.so.3
380      librte_power.so.1
381      librte_reorder.so.1
382      librte_ring.so.1
383      librte_sched.so.1
384      librte_table.so.2
385      librte_timer.so.1
386      librte_vhost.so.3
387
388
389 Tested Platforms
390 ----------------
391
392 .. This section should contain a list of platforms that were tested with this release.
393
394    The format is:
395
396    * <vendor> platform with <vendor> <type of devices> combinations
397
398      * List of CPU
399      * List of OS
400      * List of devices
401      * Other relevant details...
402
403    This section is a comment. do not overwrite or remove it.
404    Also, make sure to start the actual text at the margin.
405    =========================================================
406
407 This release has been tested with the below list of CPU/device/firmware/OS.
408 Each section describes a different set of combinations.
409
410 * Intel(R) platforms with Mellanox(R) NICs combinations
411
412    * Platform details
413
414      * Intel(R) Xeon(R) CPU E5-2697 v2 @ 2.70GHz
415      * Intel(R) Xeon(R) CPU E5-2680 v2 @ 2.80GHz
416      * Intel(R) Xeon(R) CPU E5-2697 v3 @ 2.60GHz
417
418    * OS:
419
420      * CentOS 7.0
421      * Fedora 23
422      * Fedora 24
423      * FreeBSD 10.3
424      * Red Hat Enterprise Linux 7.2
425      * SUSE Enterprise Linux 12
426      * Ubuntu 14.04 LTS
427      * Ubuntu 15.10
428      * Ubuntu 16.04 LTS
429      * Wind River Linux 8
430
431    * MLNX_OFED: 4.0-1.0.1.0
432
433    * NICs:
434
435      * Mellanox(R) ConnectX(R)-3 Pro 40G MCX354A-FCC_Ax (2x40G)
436
437        * Host interface: PCI Express 3.0 x8
438        * Device ID: 15b3:1007
439        * Firmware version: 2.40.5030
440
441      * Mellanox(R) ConnectX(R)-4 10G MCX4111A-XCAT (1x10G)
442
443        * Host interface: PCI Express 3.0 x8
444        * Device ID: 15b3:1013
445        * Firmware version: 12.18.1000
446
447      * Mellanox(R) ConnectX(R)-4 10G MCX4121A-XCAT (2x10G)
448
449        * Host interface: PCI Express 3.0 x8
450        * Device ID: 15b3:1013
451        * Firmware version: 12.18.1000
452
453      * Mellanox(R) ConnectX(R)-4 25G MCX4111A-ACAT (1x25G)
454
455        * Host interface: PCI Express 3.0 x8
456        * Device ID: 15b3:1013
457        * Firmware version: 12.18.1000
458
459      * Mellanox(R) ConnectX(R)-4 25G MCX4121A-ACAT (2x25G)
460
461        * Host interface: PCI Express 3.0 x8
462        * Device ID: 15b3:1013
463        * Firmware version: 12.18.1000
464
465      * Mellanox(R) ConnectX(R)-4 40G MCX4131A-BCAT/MCX413A-BCAT (1x40G)
466
467        * Host interface: PCI Express 3.0 x8
468        * Device ID: 15b3:1013
469        * Firmware version: 12.18.1000
470
471      * Mellanox(R) ConnectX(R)-4 40G MCX415A-BCAT (1x40G)
472
473        * Host interface: PCI Express 3.0 x16
474        * Device ID: 15b3:1013
475        * Firmware version: 12.18.1000
476
477      * Mellanox(R) ConnectX(R)-4 50G MCX4131A-GCAT/MCX413A-GCAT (1x50G)
478
479        * Host interface: PCI Express 3.0 x8
480        * Device ID: 15b3:1013
481        * Firmware version: 12.18.1000
482
483      * Mellanox(R) ConnectX(R)-4 50G MCX414A-BCAT (2x50G)
484
485        * Host interface: PCI Express 3.0 x8
486        * Device ID: 15b3:1013
487        * Firmware version: 12.18.1000
488
489      * Mellanox(R) ConnectX(R)-4 50G MCX415A-GCAT/MCX416A-BCAT/MCX416A-GCAT (2x50G)
490
491        * Host interface: PCI Express 3.0 x16
492        * Device ID: 15b3:1013
493        * Firmware version: 12.18.1000
494
495      * Mellanox(R) ConnectX(R)-4 50G MCX415A-CCAT (1x100G)
496
497        * Host interface: PCI Express 3.0 x16
498        * Device ID: 15b3:1013
499        * Firmware version: 12.18.1000
500
501      * Mellanox(R) ConnectX(R)-4 100G MCX416A-CCAT (2x100G)
502
503        * Host interface: PCI Express 3.0 x16
504        * Device ID: 15b3:1013
505        * Firmware version: 12.18.1000
506
507      * Mellanox(R) ConnectX(R)-4 Lx 10G MCX4121A-XCAT (2x10G)
508
509        * Host interface: PCI Express 3.0 x8
510        * Device ID: 15b3:1015
511        * Firmware version: 14.18.1000
512
513      * Mellanox(R) ConnectX(R)-4 Lx 25G MCX4121A-ACAT (2x25G)
514
515        * Host interface: PCI Express 3.0 x8
516        * Device ID: 15b3:1015
517        * Firmware version: 14.18.1000
518
519      * Mellanox(R) ConnectX(R)-5 100G MCX556A-ECAT (2x100G)
520
521        * Host interface: PCI Express 3.0 x16
522        * Device ID: 15b3:1017
523        * Firmware version: 16.18.1000
524
525      * Mellanox(R) ConnectX-5 Ex EN 100G MCX516A-CDAT (2x100G)
526
527        * Host interface: PCI Express 4.0 x16
528        * Device ID: 15b3:1019
529        * Firmware version: 16.18.1000
530
531 * IBM(R) Power8(R) with Mellanox(R) NICs combinations
532
533    * Machine:
534
535      * Processor: POWER8E (raw), AltiVec supported
536
537        * type-model: 8247-22L
538        * Firmware FW810.21 (SV810_108)
539
540    * OS: Ubuntu 16.04 LTS PPC le
541
542    * MLNX_OFED: 4.0-1.0.1.0
543
544    * NICs:
545
546      * Mellanox(R) ConnectX(R)-4 10G MCX4111A-XCAT (1x10G)
547
548        * Host interface: PCI Express 3.0 x8
549        * Device ID: 15b3:1013
550        * Firmware version: 12.18.1000
551
552      * Mellanox(R) ConnectX(R)-4 10G MCX4121A-XCAT (2x10G)
553
554        * Host interface: PCI Express 3.0 x8
555        * Device ID: 15b3:1013
556        * Firmware version: 12.18.1000
557
558      * Mellanox(R) ConnectX(R)-4 25G MCX4111A-ACAT (1x25G)
559
560        * Host interface: PCI Express 3.0 x8
561        * Device ID: 15b3:1013
562        * Firmware version: 12.18.1000
563
564      * Mellanox(R) ConnectX(R)-4 25G MCX4121A-ACAT (2x25G)
565
566        * Host interface: PCI Express 3.0 x8
567        * Device ID: 15b3:1013
568        * Firmware version: 12.18.1000
569
570      * Mellanox(R) ConnectX(R)-4 40G MCX4131A-BCAT/MCX413A-BCAT (1x40G)
571
572        * Host interface: PCI Express 3.0 x8
573        * Device ID: 15b3:1013
574        * Firmware version: 12.18.1000
575
576      * Mellanox(R) ConnectX(R)-4 40G MCX415A-BCAT (1x40G)
577
578        * Host interface: PCI Express 3.0 x16
579        * Device ID: 15b3:1013
580        * Firmware version: 12.18.1000
581
582      * Mellanox(R) ConnectX(R)-4 50G MCX4131A-GCAT/MCX413A-GCAT (1x50G)
583
584        * Host interface: PCI Express 3.0 x8
585        * Device ID: 15b3:1013
586        * Firmware version: 12.18.1000
587
588      * Mellanox(R) ConnectX(R)-4 50G MCX414A-BCAT (2x50G)
589
590        * Host interface: PCI Express 3.0 x8
591        * Device ID: 15b3:1013
592        * Firmware version: 12.18.1000
593
594      * Mellanox(R) ConnectX(R)-4 50G MCX415A-GCAT/MCX416A-BCAT/MCX416A-GCAT (2x50G)
595
596        * Host interface: PCI Express 3.0 x16
597        * Device ID: 15b3:1013
598        * Firmware version: 12.18.1000
599
600      * Mellanox(R) ConnectX(R)-4 50G MCX415A-CCAT (1x100G)
601
602        * Host interface: PCI Express 3.0 x16
603        * Device ID: 15b3:1013
604        * Firmware version: 12.18.1000
605
606      * Mellanox(R) ConnectX(R)-4 100G MCX416A-CCAT (2x100G)
607
608        * Host interface: PCI Express 3.0 x16
609        * Device ID: 15b3:1013
610        * Firmware version: 12.18.1000
611
612      * Mellanox(R) ConnectX(R)-4 Lx 10G MCX4121A-XCAT (2x10G)
613
614        * Host interface: PCI Express 3.0 x8
615        * Device ID: 15b3:1015
616        * Firmware version: 14.18.1000
617
618      * Mellanox(R) ConnectX(R)-4 Lx 25G MCX4121A-ACAT (2x25G)
619
620        * Host interface: PCI Express 3.0 x8
621        * Device ID: 15b3:1015
622        * Firmware version: 14.18.1000
623
624      * Mellanox(R) ConnectX(R)-5 100G MCX556A-ECAT (2x100G)
625
626        * Host interface: PCI Express 3.0 x16
627        * Device ID: 15b3:1017
628        * Firmware version: 16.18.1000
629
630 * Intel(R) platforms with Intel(R) NICs combinations
631
632    * Platform details
633
634      * Intel(R) Atom(TM) CPU C2758 @ 2.40GHz
635      * Intel(R) Xeon(R) CPU D-1540 @ 2.00GHz
636      * Intel(R) Xeon(R) CPU E5-4667 v3 @ 2.00GHz
637      * Intel(R) Xeon(R) CPU E5-2680 v2 @ 2.80GHz
638      * Intel(R) Xeon(R) CPU E5-2699 v3 @ 2.30GHz
639      * Intel(R) Xeon(R) CPU E5-2695 v4 @ 2.10GHz
640      * Intel(R) Xeon(R) CPU E5-2658 v2 @ 2.40GHz
641
642    * OS:
643
644      * CentOS 7.2
645      * Fedora 25
646      * FreeBSD 11
647      * Red Hat Enterprise Linux Server release 7.3
648      * SUSE Enterprise Linux 12
649      * Wind River Linux 8
650      * Ubuntu 16.04
651      * Ubuntu 16.10
652
653    * NICs:
654
655      * Intel(R) 82599ES 10 Gigabit Ethernet Controller
656
657        * Firmware version: 0x61bf0001
658        * Device id (pf/vf): 8086:10fb / 8086:10ed
659        * Driver version: 4.0.1-k (ixgbe)
660
661      * Intel(R) Corporation Ethernet Connection X552/X557-AT 10GBASE-T
662
663        * Firmware version: 0x800001cf
664        * Device id (pf/vf): 8086:15ad / 8086:15a8
665        * Driver version: 4.2.5 (ixgbe)
666
667      * Intel(R) Ethernet Converged Network Adapter X710-DA4 (4x10G)
668
669        * Firmware version: 5.05
670        * Device id (pf/vf): 8086:1572 / 8086:154c
671        * Driver version: 1.5.23 (i40e)
672
673      * Intel(R) Ethernet Converged Network Adapter X710-DA2 (2x10G)
674
675        * Firmware version: 5.05
676        * Device id (pf/vf): 8086:1572 / 8086:154c
677        * Driver version: 1.5.23 (i40e)
678
679      * Intel(R) Ethernet Converged Network Adapter XL710-QDA1 (1x40G)
680
681        * Firmware version: 5.05
682        * Device id (pf/vf): 8086:1584 / 8086:154c
683        * Driver version: 1.5.23 (i40e)
684
685      * Intel(R) Ethernet Converged Network Adapter XL710-QDA2 (2X40G)
686
687        * Firmware version: 5.05
688        * Device id (pf/vf): 8086:1583 / 8086:154c
689        * Driver version: 1.5.23 (i40e)
690
691      * Intel(R) Corporation I350 Gigabit Network Connection
692
693        * Firmware version: 1.48, 0x800006e7
694        * Device id (pf/vf): 8086:1521 / 8086:1520
695        * Driver version: 5.2.13-k (igb)