From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from NAM02-SN1-obe.outbound.protection.outlook.com (mail-sn1nam02on0065.outbound.protection.outlook.com [104.47.36.65]) by dpdk.org (Postfix) with ESMTP id EFEE6912F for ; Thu, 31 Aug 2017 16:56:25 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=CAVIUMNETWORKS.onmicrosoft.com; s=selector1-cavium-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=6ZIENu40uiM2qQ7IAa9GvlKxoOOQ8oUOpqo5Mdq+79Y=; b=YVTZGqCYLtvikvaQap8Dsl9FlglD//FEQ0Ya8JZQQrLVvR3FlJw4DtZ29VBNJW+12nXvFVWh3EhsXiZc6HCFj6oCygFJR6PKkZBQT+hKbYz2oSTeNnJ1OPiR0J84WhwY6P6QsYKnoMZ+UBzCEp3OWFcMOyWvaE80UBlxDG2mXRs= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Jerin.JacobKollanukkaran@cavium.com; Received: from jerin.domain.name (171.76.126.71) by SN2PR07MB2526.namprd07.prod.outlook.com (2603:10b6:804:6::26) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.13.10; Thu, 31 Aug 2017 14:56:22 +0000 From: Jerin Jacob To: dev@dpdk.org Cc: ferruh.yigit@intel.com, santosh.shukla@caviumnetworks.com, Jerin Jacob , John McNamara Date: Thu, 31 Aug 2017 20:24:36 +0530 Message-Id: <20170831145436.5397-27-jerin.jacob@caviumnetworks.com> X-Mailer: git-send-email 2.14.1 In-Reply-To: <20170831145436.5397-1-jerin.jacob@caviumnetworks.com> References: <20170831145436.5397-1-jerin.jacob@caviumnetworks.com> MIME-Version: 1.0 Content-Type: text/plain X-Originating-IP: [171.76.126.71] X-ClientProxiedBy: MA1PR01CA0109.INDPRD01.PROD.OUTLOOK.COM (2603:1096:a00:1::25) To SN2PR07MB2526.namprd07.prod.outlook.com (2603:10b6:804:6::26) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: f50cb387-9f66-4a39-1065-08d4f080731a X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(300000500095)(300135000095)(300000501095)(300135300095)(300000502095)(300135100095)(22001)(2017030254152)(300000503095)(300135400095)(2017052603199)(201703131423075)(201703031133081)(201702281549075)(300000504095)(300135200095)(300000505095)(300135600095)(300000506095)(300135500095); SRVR:SN2PR07MB2526; X-Microsoft-Exchange-Diagnostics: 1; SN2PR07MB2526; 3:fEeROAkcYtBPzTm9zjwBVlT/Md08/Ewof/6UyJC/8FSJ9jhpaMMEKcvbgIme/Gpli+RHCSXaAKr+p6HW1NoV1R31/9n9X9nlZZhLPOZlIHx+c5vMgN6LSpwh3RJkQGJw+kfzJhcxat12+g8belTzcSD4Z6yepl3BrV0bFuQuKWn58XognJHE3m54ypLat8XqWr7YogRHIoBX1bkLa/LmcB8SEwKWoYV8+rqet0VtCRBbPMjnqKsYZ4nIBWDvvEX0; 25:l0CL9EUkOYDDn1m3Ksmdt8F3FuEzFQIz77K45TS19odvJCSsbfewg+an5/NXLcxO0pHKMWg9GoUYs9+DLSZoQ6i/1p8zZ3jcpsOwClWDPBkiBdupQNhsRST5xGYqV2VIN+Z68lJcHNKybOwyQhBp8mNkdUhDUOVIveyZc5QISCvOn0LYYseVm7iyYcb3dCtyuR4Sd14O514QOtduk5gf/mDPtumP5HYQNBLKTWyFMw44mxY1alEHI45YaBvDm+4Poy/Gbgz/NUX0QmDhbYml7o0ZuAh2qilnBUkabONCWfUVd2lh1SVZBsg5oqR4BMdNLUTq21Z0wDQ0Rr+e+n5tCg==; 31:54of1lwK2VWZnDs6EFbJUQi4yr5ZBXzX7r+TJn3Uvgm6kAbEckjSuF0WuYwTrz8LHEGhH2QlW7u4f0zMbqv03MLRmCSVkaP0/9SW4vKoPwTqC1C1UFf0pmfLqVBI8k11r7cDQFxvi/QDviu0kAcFmdvAcXZgtTPKQCg8c82MGj6gMWPc28clsmrSCmZnrSfrHURln2yECZOiR0Kb9lmKjmULie6fp7FYkBl19W8VmpI= X-MS-TrafficTypeDiagnostic: SN2PR07MB2526: X-Microsoft-Exchange-Diagnostics: 1; SN2PR07MB2526; 20:+Mlemfe43AViHPgOs78kd8fNVmQA5DeaTmxw0NsiuhktfTcIVekyt0sTt9WjiTk4gq+TT5LBKkwR1cSLPLOdfsDY+RCtiTxRCERLS2EyWIIwYOoCZlvRCwYygwpQQktjEJS9cKrHgYPX5ob70x591LeyQ7ztJmsUMKf4O/H1dPKllgWo7GksRmMvXliAB5Kt1W4hbwZ3ArXKpsJzxAJMStZUR6M9GB6llzq+LTJHp8IUmfT5776HEigL91sduHDbuH7WuAPReHh/enrgqySZxpobk9cDKJqnfn20rMjMLQTgTr7HtNHHw/V7UT7gMYGw3ml2lGu5i+XuZ8VufzVL4E7W75zoSEsRhjkYppRJplmzz8WI7yjavPfKH8FKnPDocf+YbZXfjUtlSroqVH0HRvP+PGTX49+xMblTDlB+J2vdYICD7cj4NcRQediA0Pdy9QNKMH2/qYqT48EXxBIw+XVuw6ik9mB1r69QlMi/lYjpwRcHFfk0DXuD8/tAmOLRS6MrhvTzqAFY0urWm108kncl4B5QlRVSL4/3rZKVVTgQXC7HigCmolSnvVoIEnrTVxh2guZVNafP/h2vvp5f1PGFckZL9us/55n9EfjZtjo= X-Exchange-Antispam-Report-Test: UriScan:(166708455590820)(228905959029699); X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(601004)(2401047)(5005006)(8121501046)(93006095)(100000703101)(100105400095)(10201501046)(3002001)(6041248)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123558100)(20161123564025)(20161123562025)(20161123560025)(20161123555025)(6072148)(201708071742011)(100000704101)(100105200095)(100000705101)(100105500095); SRVR:SN2PR07MB2526; BCL:0; PCL:0; RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095); SRVR:SN2PR07MB2526; X-Microsoft-Exchange-Diagnostics: 1; SN2PR07MB2526; 4:zR55gAqfRdmS49uYw0IPuXpWcrdB7kAqz9424uItoJ5amFyE7HJOsWiQYs4R8srqtokVXcylzc49Ihu27SnE7wDDVMkl7bdu3w5DeeOR2pgMD4jZIe6nQl/UfR0RNgJfQmOIXUShqEIVG0YVnmLpAVNXJHt4o1qFhZOCGiUvmctISskC5RUBAnIDwOrbZfQSozBDftbaGetkTH0mp+jhH8KrvylIp3J3bErD5IwsnrQluxCqhSnT/UObnLHBwUqMwXHtQJdu80txsDUQ+UfyPfM4rmcvwb+K1GaIiMqKa5AtXLQ4r3/26nlPI7Ybrg7I8SGScTZM/MGScyDhfI9nDQ== X-Forefront-PRVS: 04163EF38A X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(6009001)(199003)(189002)(25786009)(1076002)(54906002)(6306002)(53936002)(3846002)(6116002)(575784001)(478600001)(110136004)(72206003)(7736002)(6666003)(6512007)(305945005)(6506006)(36756003)(6486002)(68736007)(5003940100001)(189998001)(50986999)(42882006)(106356001)(101416001)(76176999)(2950100002)(6916009)(5660300001)(2361001)(33646002)(2351001)(2906002)(4326008)(97736004)(105586002)(48376002)(50466002)(81166006)(66066001)(69596002)(8936002)(47776003)(53416004)(8676002)(50226002)(81156014)(42186005); DIR:OUT; SFP:1101; SCL:1; SRVR:SN2PR07MB2526; H:jerin.domain.name; FPR:; SPF:None; PTR:InfoNoRecords; A:1; MX:1; LANG:en; Received-SPF: None (protection.outlook.com: cavium.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; SN2PR07MB2526; 23:sjMbu6cNGM6epmAfj4stdUhC+dyw08Xqru7pbhPV2?= =?us-ascii?Q?0Txzi7y00lNod1H8hshqcisP8VX4NOrDxgLRDGAaX1LW0DDJHtWnA12gxbOG?= =?us-ascii?Q?o9cpeuqPzOXQk+ugOvhcbft4vVSvMX7qsy6VDWmLWi3D4UWuIB159NedCekl?= =?us-ascii?Q?sGISh2ZXNYsm+gtKV/OrEcojaPpLyHQx7dSlbJwJKWijTf5EkiNbMbuhkpzD?= =?us-ascii?Q?Ak9VERe0SfdO0Z4JfXWPkD5fR2rFSV0awHTWTRO6nIZW2WMuAbJCCUWD8GYO?= =?us-ascii?Q?duUHE2I28k8u9J4iR0zv+sqs88Tb+3mKrwebqQGz8Dxkcfe04PUAaCpoakPM?= =?us-ascii?Q?4eNq2WDv8y1pcCXwMZT0qOGz49QWIicnntspw0Bh8DTkp8jNjsZlhOpV2dJ+?= =?us-ascii?Q?lJBL5GZBCAV+4u7gxJ35K+TV6/8+yQnBBqxoyJvE4vWEWspJTAhO2N2kBqMU?= =?us-ascii?Q?2/gyORqDVJIOyjCDQ65WyBL+It8z8IjY+Bu6MxA5H4DPBjXeVdcQHhV3fl7q?= =?us-ascii?Q?wf1oFThkbAbSJ9no4N/IssE95apJ+NaP3mr7XHPLhUBRyLK95poUC3PGYTsa?= =?us-ascii?Q?I+JU5jbsiLoNHvyhuMxmeeGat4Bgmsr/NAr7F4NctlqUUHhQavgMgsXi7gXE?= =?us-ascii?Q?11vHl1AWH7W1JtvPRKcXOqFEYs2go/UhF7QlXk3/I0whGPy1sBYPHiA9ma0K?= =?us-ascii?Q?F4qFYABGxRbMePQQn/ZuiRtmWuJ0Dp1Lk6yrZ0E1uPsVjillk65xYY4wUg+0?= =?us-ascii?Q?xTuP7roumROsqfOZPYZEsPYaQ4+LKJ7wDoS4OQ58KkDqsEyWRhe84WZ8pciH?= =?us-ascii?Q?tnU/K9cSf8eGtC2QItL8/E8Gw955qnBlvX4WQjInRK18epy6tkGcJEDcvJcF?= =?us-ascii?Q?PvDi+4G3RTwDYRcs5UNRzqOs9QNuo8skX9dHT+288wCEUfUQq1sbaaHTl7lt?= =?us-ascii?Q?aFuxHl1CtRfryUWxZ6AAfDnQoM0AEPB7oblIR1X044+OUIlgKwaA+OlFpRtO?= =?us-ascii?Q?y4ruLe1mewG/Ll/Z995dvzQVAe02021xbkBLryoTyFRYKiT2eFcVSOXOb+r/?= =?us-ascii?Q?6ObQ/a9r/YVC/4KK6gdQRJR8DoQED4B2H+EmvyOK6NVWMo/6kKtsUMl2xzcy?= =?us-ascii?Q?YdUdwUi8LoreIKwhr/3TMHyNWKkwa4OaGbHOrEDOnkK2sMqNDrdk+2d7LDaq?= =?us-ascii?Q?RA6Na0/sxUar9jrd6LGWgVrBldKNgdXdbXm?= X-Microsoft-Exchange-Diagnostics: 1; SN2PR07MB2526; 6:KyFVPVi2yMt5Kg9iJvWe7UMy6rjtXmwm4c5D1fpl4zoyqEPLeedmzgfsfldUsogwq//umGTzq1aJpiBayoQmV9Bmq35t4PKfkb44WcdtW6I/BHJR269yTsOSDleS7eXKASHMMxWv/67u3co3sNp4r216SSAX/fG/QxAVPZfeHLxE1GMdoXGr9BkHNxhd1z7ds8kWYzOMOX2+oFuZV0ktAQvDrW3+UtAllwnX+lm3ESyEiOfxzc9Oiml/YIeWpp/xNG4izKp3QbAnWIds+F0BmItVONbxcz6PVT+2rj1zQlnIQ9CdG9wjm/3hq0M9l9SJIpRl27drhItCVNxKMaPJ/A==; 5:QtWGhAIPwdr5bdcqTuDy/XMKrcFJSrtrCcoc1h/6c9mgqYrr8Ym2ZcUNIXo7BVUuS55rXFesmYzzPYx1Fo3M94B6BAcdRySKyAIw/vZowCctIIlpH6GAKZbR/QyG+SHO1wFXgqlQz650726vhHv2Tg==; 24:iNpAk2krXyyfQTIYxhzYWyOOjgtA+AEjPmVGvuHw2WGmPis0D9fverW8zbnyXdJYmI8gqB3LYRCfHZIQVhm/HIUtzw2P1iulxZgwTTHkVW0=; 7:8nD98vja8066PSXIialkCy6UcX3qMrG0EuRIQD0cAj87TcrPMxn/d/5J+ITTmmTS91bfNpwS/ehv0yMMEzlS5rr45pjixgr0ghcIYSkcGBcyZbuwvKNfSpgX7TpqqOOx9WXt/XIG6kwTQR5Djc8lNEwNuxFyUGhWMuvJfojZ3UGBF+iEt657D17UCF6LcU3WIk7iuJg3muHQfvIstcsZzsbhc239XSTicMHF/ZZLozg= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: caviumnetworks.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 31 Aug 2017 14:56:22.4588 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 711e4ccf-2e9b-4bcf-a551-4094005b6194 X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN2PR07MB2526 Subject: [dpdk-dev] [PATCH 26/26] doc: add octeontx ethdev driver documentation X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 31 Aug 2017 14:56:26 -0000 Adding octeontx ethdev driver documentation and claim octeontx ethdev driver maintainership. Cc: John McNamara Signed-off-by: Jerin Jacob Co-authored-by: Santosh Shukla --- MAINTAINERS | 7 ++ doc/guides/nics/index.rst | 1 + doc/guides/nics/octeontx.rst | 251 +++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 259 insertions(+) create mode 100644 doc/guides/nics/octeontx.rst diff --git a/MAINTAINERS b/MAINTAINERS index 58287ea0d..fb73ff1d0 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -323,6 +323,13 @@ F: drivers/net/bnxt/ F: doc/guides/nics/bnxt.rst F: doc/guides/nics/features/bnxt.ini +Cavium OCTEONTX +M: Santosh Shukla +M: Jerin Jacob +F: drivers/net/octeontx/ +F: doc/guides/nics/octeontx.rst +F: doc/guides/nics/features/octeontx.ini + Cavium ThunderX nicvf M: Jerin Jacob M: Maciej Czekaj diff --git a/doc/guides/nics/index.rst b/doc/guides/nics/index.rst index 36f4f3ff5..62eb3bd94 100644 --- a/doc/guides/nics/index.rst +++ b/doc/guides/nics/index.rst @@ -56,6 +56,7 @@ Network Interface Controller Drivers mlx4 mlx5 nfp + octeontx qede sfc_efx szedata2 diff --git a/doc/guides/nics/octeontx.rst b/doc/guides/nics/octeontx.rst new file mode 100644 index 000000000..4b276ddac --- /dev/null +++ b/doc/guides/nics/octeontx.rst @@ -0,0 +1,251 @@ +.. BSD LICENSE + Copyright (C) Cavium, Inc. 2017. + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + * Neither the name of Cavium, Inc nor the names of its + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +OCTEONTX Poll Mode driver +========================= + +The OCTEONTX ETHDEV PMD (**librte_pmd_octeontx**) provides poll mode ethdev +driver support for the inbuilt network device found in the **Cavium OCTEONTX** +SoC family as well as their virtual functions (VF) in SR-IOV context. + +More information can be found at `Cavium, Inc Official Website +`_. + +Features +-------- + +Features of the OCTEONTX Ethdev PMD are: + +- Packet type information +- Promiscuous mode +- Port hardware statistics +- Jumbo frames +- Link state information +- SR-IOV VF +- Multiple queues for TX +- Lock-free Tx queue +- HW offloaded `ethdev Rx queue` to `eventdev event queue` packet injection + +Supported OCTEONTX SoCs +----------------------- +- CN83xx + +Unsupported features +-------------------- + +The features supported by the device and not yet supported by this PMD include: + +- Receive Side Scaling (RSS) +- Scattered and gather for TX and RX +- Ingress classification support +- Egress hierarchical scheduling, traffic shaping, and marking + +Prerequisites +------------- + +There are three main pre-perquisites for executing OCTEONTX PMD on a OCTEONTX +compatible board: + +1. **OCTEONTX Linux kernel PF driver for Network acceleration HW blocks** + + The OCTEONTX Linux kernel drivers (including the required PF driver for the + all network acceleration blocks) are available on GitHub at + `octeontx-kmod `_ + along with build, install and dpdk usage instructions. + +2. **ARM64 Tool Chain** + + For example, the *aarch64* Linaro Toolchain, which can be obtained from + `here `_. + +3. **Rootfile system** + + Any *aarch64* supporting filesystem can be used. For example, + Ubuntu 15.10 (Wily) or 16.04 LTS (Xenial) userland which can be obtained + from ``_. + + As an alternative method, OCTEONTX PMD can also be executed using images provided + as part of SDK from Cavium. The SDK includes all the above prerequisites necessary + to bring up a OCTEONTX board. + + SDK and related information can be obtained from: `Cavium support site `_. + +- Follow the DPDK :ref:`Getting Started Guide for Linux ` to setup the basic DPDK environment. + +Pre-Installation Configuration +------------------------------ + +Config File Options +~~~~~~~~~~~~~~~~~~~ + +The following options can be modified in the ``config`` file. +Please note that enabling debugging options may affect system performance. + +- ``CONFIG_RTE_LIBRTE_OCTEONTX_PMD`` (default ``y``) + + Toggle compilation of the ``librte_pmd_octeontx`` driver. + +- ``CONFIG_RTE_LIBRTE_OCTEONTX_DEBUG_DRIVER`` (default ``n``) + + Toggle display of generic debugging messages + +- ``CONFIG_RTE_LIBRTE_OCTEONTX_DEBUG_INIT`` (default ``n``) + + Toggle display of initialization related messages. + +- ``CONFIG_RTE_LIBRTE_OCTEONTX_DEBUG_RX`` (default ``n``) + + Toggle display of receive path message + +- ``CONFIG_RTE_LIBRTE_OCTEONTX_DEBUG_TX`` (default ``n``) + + Toggle display of transmit path message + +- ``CONFIG_RTE_LIBRTE_OCTEONTX_DEBUG_MBOX`` (default ``n``) + + Toggle display of mbox related message + + +Driver compilation and testing +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +Refer to the document :ref:`compiling and testing a PMD for a NIC ` +for details. + +To compile the OCTEONTX PMD for Linux arm64 gcc target, run the +following ``make`` command: + +.. code-block:: console + + cd + make config T=arm64-thunderx-linuxapp-gcc install + +#. Running testpmd: + + Follow instructions available in the document + :ref:`compiling and testing a PMD for a NIC ` + to run testpmd. + + Example output: + + .. code-block:: console + + ./arm64-thunderx-linuxapp-gcc/app/testpmd -c 700 \ + --base-virtaddr=0x100000000000 \ + --mbuf-pool-ops="octeontx_fpavf" \ + --vdev='event_octeontx' \ + --vdev='eth_octeontx,nr_port=2' \ + -- --rxq=1 --txq=1 --nb-core=2 --total-num-mbufs=16384 \ + --disable-hw-vlan-filter -i + ..... + EAL: Detected 24 lcore(s) + EAL: Probing VFIO support... + EAL: VFIO support initialized + ..... + EAL: PCI device 0000:07:00.1 on NUMA socket 0 + EAL: probe driver: 177d:a04b octeontx_ssovf + ..... + EAL: PCI device 0001:02:00.7 on NUMA socket 0 + EAL: probe driver: 177d:a0dd octeontx_pkivf + ..... + EAL: PCI device 0001:03:01.0 on NUMA socket 0 + EAL: probe driver: 177d:a049 octeontx_pkovf + ..... + PMD: octeontx_probe(): created ethdev eth_octeontx for port 0 + PMD: octeontx_probe(): created ethdev eth_octeontx for port 1 + ..... + Configuring Port 0 (socket 0) + Port 0: 00:0F:B7:11:94:46 + Configuring Port 1 (socket 0) + Port 1: 00:0F:B7:11:94:47 + ..... + Checking link statuses... + Port 0 Link Up - speed 40000 Mbps - full-duplex + Port 1 Link Up - speed 40000 Mbps - full-duplex + Done + testpmd> + + +Initialization +-------------- + +The octeontx ethdev pmd is exposed as a vdev device which consists of a set +of PKI and PKO PCIe VF devices. On EAL initialization, +PKI/PKO PCIe VF devices will be probed and then the vdev device can be created +from the application code, or from the EAL command line based on +the number of probed/bound PKI/PKO PCIe VF device to DPDK by + +* Invoking ``rte_vdev_init("eth_octeontx")`` from the application + +* Using ``--vdev="eth_octeontx"`` in the EAL options, which will call + rte_vdev_init() internally + +Device arguments +~~~~~~~~~~~~~~~~ +Each ethdev port is mapped to a physical port(LMAC), Application can specify +the number of interesting ports with ``nr_ports`` argument. + +Dependency +~~~~~~~~~~ +``eth_octeontx`` pmd is depend on ``event_octeontx`` eventdev device and +``octeontx_fpavf`` external mempool handler. + +Example: + +.. code-block:: console + + ./your_dpdk_application --mbuf-pool-ops="octeontx_fpavf" \ + --vdev='event_octeontx' \ + --vdev="eth_octeontx,nr_port=2" + +Limitations +----------- + +``octeontx_fpavf`` external mempool handler dependency +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +The OCTEONTX SoC family NIC has inbuilt HW assisted external mempool manager. +This driver will only work with ``octeontx_fpavf`` external mempool handler +as it is the most performance effective way for packet allocation and Tx buffer +recycling on OCTEONTX SoC platform. + +CRC striping +~~~~~~~~~~~~ + +The OCTEONTX SoC family NICs strip the CRC for every packets coming into the +host interface. So, CRC will be stripped even when the +``rxmode.hw_strip_crc`` member is set to 0 in ``struct rte_eth_conf``. + +Maximum packet length +~~~~~~~~~~~~~~~~~~~~~ + +The OCTEONTX SoC family NICs support a maximum of a 32K jumbo frame. The value +is fixed and cannot be changed. So, even when the ``rxmode.max_rx_pkt_len`` +member of ``struct rte_eth_conf`` is set to a value lower than 32k, frames +up to 32k bytes can still reach the host interface. -- 2.14.1