net/ice: support device and queue ops
[dpdk.git] / doc / guides / nics / ice.rst
1 ..  SPDX-License-Identifier: BSD-3-Clause
2     Copyright(c) 2018 Intel Corporation.
3
4 ICE Poll Mode Driver
5 ======================
6
7 The ice PMD (librte_pmd_ice) provides poll mode driver support for
8 10/25 Gbps IntelĀ® Ethernet 810 Series Network Adapters based on
9 the Intel Ethernet Controller E810.
10
11
12 Prerequisites
13 -------------
14
15 - Identifying your adapter using `Intel Support
16   <http://www.intel.com/support>`_ and get the latest NVM/FW images.
17
18 - Follow the DPDK :ref:`Getting Started Guide for Linux <linux_gsg>` to setup the basic DPDK environment.
19
20 - To get better performance on Intel platforms, please follow the "How to get best performance with NICs on Intel platforms"
21   section of the :ref:`Getting Started Guide for Linux <linux_gsg>`.
22
23
24 Pre-Installation Configuration
25 ------------------------------
26
27 Config File Options
28 ~~~~~~~~~~~~~~~~~~~
29
30 The following options can be modified in the ``config`` file.
31 Please note that enabling debugging options may affect system performance.
32
33 - ``CONFIG_RTE_LIBRTE_ICE_PMD`` (default ``y``)
34
35   Toggle compilation of the ``librte_pmd_ice`` driver.
36
37 - ``CONFIG_RTE_LIBRTE_ICE_DEBUG_*`` (default ``n``)
38
39   Toggle display of generic debugging messages.
40
41 - ``CONFIG_RTE_LIBRTE_ICE_RX_ALLOW_BULK_ALLOC`` (default ``y``)
42
43   Toggle bulk allocation for RX.
44
45 - ``CONFIG_RTE_LIBRTE_ICE_16BYTE_RX_DESC`` (default ``n``)
46
47   Toggle to use a 16-byte RX descriptor, by default the RX descriptor is 32 byte.
48
49 Runtime Config Options
50 ~~~~~~~~~~~~~~~~~~~~~~
51
52 - ``Maximum Number of Queue Pairs``
53
54   The maximum number of queue pairs is decided by HW. If not configured, APP
55   uses the number from HW. Users can check the number by calling the API
56   ``rte_eth_dev_info_get``.
57   If users want to limit the number of queues, they can set a smaller number
58   using EAL parameter like ``max_queue_pair_num=n``.
59
60
61 Driver compilation and testing
62 ------------------------------
63
64 Refer to the document :ref:`compiling and testing a PMD for a NIC <pmd_build_and_test>`
65 for details.
66
67
68 Limitations or Known issues
69 ---------------------------
70
71 19.02 limitation
72 ~~~~~~~~~~~~~~~~
73
74 Ice code released in 19.02 is for evaluation only.
75
76
77 Promiscuous mode not supported
78 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
79 As promiscuous mode is not supported as this stage, a port can only receive the
80 packets which destination MAC address is this port's own.
81
82
83 TX anti-spoofing cannot be disabled
84 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
85 TX anti-spoofing is enabled by default. At this stage it's not supported to
86 disable it. So any TX packet which source MAC address is not this port's own
87 will be dropped by HW. It means io-fwd is not supported now. Recommand to use
88 MAC-fwd for evaluation.