From patchwork Fri Sep 28 05:16:47 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Gagandeep Singh X-Patchwork-Id: 45562 Return-Path: X-Original-To: patchwork@dpdk.org Delivered-To: patchwork@dpdk.org Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 5A83A1B186; Fri, 28 Sep 2018 07:17:56 +0200 (CEST) Received: from EUR02-AM5-obe.outbound.protection.outlook.com (mail-eopbgr00053.outbound.protection.outlook.com [40.107.0.53]) by dpdk.org (Postfix) with ESMTP id 6F6491B135 for ; Fri, 28 Sep 2018 07:17:47 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=x7utFb7l76VbXN+kc1+KYEAHAQ6lfPNUqxTiQRlfPDc=; b=U+q+8D/IQb7rm2yjuQcDukc6aRYegAYC9uS1v1UdPxVCIHMakbUieEln1YTTUR9ykg+M1dXWcxiz9HdNNTlh7bahmvfNrPI9wwe4SXwQ8vRRBSyuCeFxbXXz2bfk3xsPfBw+WWLTHMQymfVPMmqrFPF2XtqZPVEqfbuMA4qz2SI= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=G.Singh@nxp.com; Received: from Tophie.ap.freescale.net (14.142.187.166) by DB5PR04MB1527.eurprd04.prod.outlook.com (2a01:111:e400:5993::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1185.20; Fri, 28 Sep 2018 05:17:44 +0000 From: Gagandeep Singh To: dev@dpdk.org, ferruh.yigit@intel.com Cc: pankaj.chauhan@nxp.com, Gagandeep Singh Date: Fri, 28 Sep 2018 10:46:47 +0530 Message-Id: <20180928051647.32341-4-g.singh@nxp.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180928051647.32341-1-g.singh@nxp.com> References: <20180913094201.17098-1-g.singh@nxp.com> <20180928051647.32341-1-g.singh@nxp.com> MIME-Version: 1.0 X-Originating-IP: [14.142.187.166] X-ClientProxiedBy: MAXPR0101CA0035.INDPRD01.PROD.OUTLOOK.COM (2603:1096:a00:d::21) To DB5PR04MB1527.eurprd04.prod.outlook.com (2a01:111:e400:5993::21) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 65e683b9-dee5-4d8a-8441-08d62501b9ac X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: BCL:0; PCL:0; RULEID:(7020095)(4652040)(8989299)(4534165)(7168020)(4627221)(201703031133081)(201702281549075)(8990200)(5600074)(711020)(4618075)(2017052603328)(7153060)(7193020); SRVR:DB5PR04MB1527; X-Microsoft-Exchange-Diagnostics: 1; DB5PR04MB1527; 3:IqVnIn6S6vO34sfP6kxbiJaV6ujvZE4hS3DZkNE34npffQCRymlsOH49V3xh1D+tOmxoLn67eKhJaBZbRu32wHIlf5O792IwnRtyGTQSibtuy8TT5Us3tgUNgcSdAMXJ+aq9FXA50O/KhnRU6zSxE3z5YzUSYc20Xtor+Jlc7gYZxsN3RC4jKolEByNDcM492sBX0LlVNVa9OKjb1O+9InAUcCH93t4HjtbENEHTqiDWqv6PnxdBhcy5A+zBSI/U; 25:DqCV5PkXnwEXIjW0uaND/yyowVweJrwFrLckKY5gK8e3i3ymY/YJFFs59jtsNLcI7bcSHkPVRzeUz/S5PJjpouZ7loWI6nPYpaK7nVAVX48/qbXup+p9XCKJSAnyooDUXW0+h5U7A1ACSgxTlK7+Wx8eYZKTBDdPi31HfsmU1EgtAfYrplPrV+jTRkZRHxbi3TCV7n4ucGRfU9Cuu/QSLY75OZjmq3DMo1y72+a3cmDC65QCrZety2NNtQr86KMmg4198RFwGHmCq8ogPFqYdLn1CZOz3u6mHID1F5WKwR2ihZpYUW+AKcW9biH16MXnUv5ChboCqgfEkoXyg6kofg==; 31:2p0eM8AIGkRjhovI6avwVBUS66wVHYAmapIKQU9xRsbnrCm3Zj+jBBArNKFuXUtO1Tu9ADt0vDaNQhZp8iMAoLTHzz/RyM2KUfXxROeejgM3Ex1lCm+dYXnp3ScYFLuLg1FW57CZH8Gf0Umj+MkkB3Zt09r4lapGCf4apKvu4A7NWl+EdbOISmuZUVUePLh12TlC/pL9TJ/IePBIzG7GndHeSq08VQGm9anouayCl04= X-MS-TrafficTypeDiagnostic: DB5PR04MB1527: X-Microsoft-Exchange-Diagnostics: 1; DB5PR04MB1527; 20:IpWDqbJEnJegNe2nNjxwetPqCr/lJBT+w17dlajzXFQNTEyWuF5YhPgLB9/iPmh10nBM23oO9y6RGrAHUkjLX7kuAeCyBXE9/aLxZ0Xe2ruqvVAnCYKpYRFOWLbqsq8yzWakVCwPoC1SOpgAiMFhM5bk+NYMQk86qoAdun6AuQs5zMFmZ5Srdubd2W+nJM/CDD4iIk6O1PycdHgWMH7IptYPfsB7hDVSPGLus9K7qvZMG8InksVvsm+7PsRP1YNmBmJ15R5zFGE8GlMfizJjO9koLWvOmVqFN7WkrJ4Mo5fXls2Igk9AdW6OZfMfo4bGUfNPPFG4qxV9WgEoB3avWv857BuKz+ybV0hm8GZ4MEg1L/5v7l8qq5k55dWokm2JCDqL2XgPfEWTF9Cg+vJaoruKWN0pdQ/jFkz1pVjTFATzrxpuhTRG9zmfp6VJzQb86gLgILqPSnufhMVSRR6NVXGrAWGTEJib4Mldu06V7zo/xXTBTRNRTJRs0y2bi7Hn; 4:gn0oNpRuNoQim8dpQDWRfPQ5V0wUSJ0pxDEyvvbWLWnhbq0RB2cPYxNffWfE1fH07oYTw90OHYSaMVQcNWts/D6nqnXOkFECPmZTTl9kR9k7+gZhzrnQEa6gVDvhaHs6ZagsDb+ltOzECB+bJwjfDvrGQfYvMEEYXNc8DSLpU9qx4B6pzs4n57zW234yHcP5f94Ktfxovpt3a7YX+sdQCGKo6QEZ/1jnL4atDY7Ugy4XwOOc7rrblgVbT2/+VX0HUtlSqIRd0j8AVxa+LZk9Qie7LlcaUGYrqiC7C19TRWAdARr/SycQGtEDQhZ6JqLBc8G2oBaged3KMKyF8P2AQZ1Yn3+/zHc/RgbOQSe0mAO9tVPnefpP6lKthtdbzgM2 X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(185117386973197)(264314650089876)(211171220733660); X-MS-Exchange-SenderADCheck: 1 X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(93006095)(93001095)(3002001)(3231355)(944501410)(52105095)(10201501046)(6055026)(149066)(150057)(6041310)(20161123558120)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123562045)(20161123564045)(20161123560045)(201708071742011)(7699051); SRVR:DB5PR04MB1527; BCL:0; PCL:0; RULEID:; SRVR:DB5PR04MB1527; X-Forefront-PRVS: 0809C12563 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(136003)(346002)(366004)(39860400002)(376002)(396003)(189003)(199004)(105586002)(4326008)(53936002)(50226002)(6306002)(47776003)(6512007)(81156014)(486006)(66066001)(81166006)(8676002)(106356001)(478600001)(446003)(316002)(8936002)(476003)(97736004)(11346002)(2616005)(72206003)(6486002)(956004)(26005)(16526019)(186003)(5660300001)(5009440100003)(1076002)(7736002)(34290500001)(305945005)(68736007)(23676004)(50466002)(36756003)(52116002)(2906002)(76176011)(55236004)(2870700001)(3846002)(6116002)(86362001)(6506007)(386003)(25786009)(110426005); DIR:OUT; SFP:1101; SCL:1; SRVR:DB5PR04MB1527; H:Tophie.ap.freescale.net; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A:1; Received-SPF: None (protection.outlook.com: nxp.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?utf-8?q?1=3BDB5PR04MB1527=3B23=3AXmcf?= =?utf-8?q?Z7yelw1BdaNuPzLanH6au63ZTichRr1s30p6scSpY9aP+JBqGyYxTGBo?= =?utf-8?q?z8nvhFeVQXO0x9FlNVGrLp33YTQUNyqVbWhyDiXUbcQNAuAncTv3t5bW?= =?utf-8?q?8heM/F0JMiyg4TzgUftc/sfZNEiHKYQD7E2cIPhAtZX6JdLXNRTB3Znu?= =?utf-8?q?U6ezgp4o7mpFco1ZacIuefOiUJVSyqrTPRFmK6uueqONqafSyA/zfOTz?= =?utf-8?q?XXL7ZDS3O/N9RxKnkTM5UMcxtZFOEpkqyOLyGhH5tLfKUjzzbtYC2NyY?= =?utf-8?q?24iu52qbnLsd2zv4D+wVvrBDePNiH7eXtOh5QVPq2v/dZekI6k3RrwFJ?= =?utf-8?q?5xUThfOT3O4ZAVF7Q8wNP028wKjC03rFWdFlfKh3egpsxWT0NaNnnniJ?= =?utf-8?q?ERAq94K0nYX3CFYxHNS9IYcaFib4/PxY0AjxnBO2wmVitIiQwso/AB96?= =?utf-8?q?5WTyzx8LxWzq3G/uHZ8FQcRqbmo7h8NTvSA25/vHUh0T8ngzdOZfF5Ih?= =?utf-8?q?dBxk/S7x9NEhtH0sARNuniEQIiPG/9tMrE5hLxbLG239KJE7gX3llHWn?= =?utf-8?q?vRualjGvyTz6rdHoAkxZC8rILJs912+44WnMybrMaSDI0LVXZ3E8ewTC?= =?utf-8?q?qQiWC2j2rFcW5OogZvsjlJgYd/wMHCmWm2csXs/OOnFmxxKa3mmZAOMU?= =?utf-8?q?+Z88qJRAAmS6CTUQnH9xgh+tPvb12k943mSwo8Qmu+NWIONv6XAQoySK?= =?utf-8?q?j4x85UysZwmO8dwnvIwvnWwIUJnTxbFBovKVl2SE0Lsl/HyFnqdtFJCs?= =?utf-8?q?r77qZkNTm/hj5MzF2b/swIveMq4yEP/ieVBzabKmeiKU+8gGjFohnYik?= =?utf-8?q?p6u5mYD/ckUoeUObz5Geg5t4PZA4nKyGboOumpkeiciEXwIjlkDoKrdi?= =?utf-8?q?FLlZXbAy8OhlMyaIc0sVyfjqItb6PsrFOtToFKqvSzEYwC9xoqyvFBGW?= =?utf-8?q?TxTof4dvY865fVFdimRZWtqroQOp9ENeX91aAMwdQCf/RG0yohadf3EQ?= =?utf-8?q?cClNagclMYl1sq15OCDaZEkYv/hpnGA0SPr8TCz4xJJcmSim29Di5rgW?= =?utf-8?q?YKoXR8qY60PIO0vvF4up9PJCmLXqgYruC7yzOISy8o5Mc8j4QolDwFYO?= =?utf-8?q?37Xq8UPABjCW8UdS7teVqINtAnzmf09lOlcDVGQ7WByZ6MiQOIowpsX9?= =?utf-8?q?CcyBggfJ7Lktuva4vt1gEQtH24zN3A3M2zFdZzyaogsXQFq4XC5CCPUM?= =?utf-8?q?yToII5Z6Y09KSZoABEX2BcQD29BH1QnGrCrUc8W2ysXb?= X-Microsoft-Antispam-Message-Info: TCdqDmfh1xGieUIrf2NzrsS5EM2urIpo+urSwIhTmgkmHPPEna2MTff2rQ+jYoSfGeGPYVazgCVcaUrD+6SGC3XaU2hAFNLhsLe3Z9L+BdEehyKFL8n7LROmrNCKPQUPnOFQDUO6vG+IGzR4wClpb6msjC/Anz0hDAbhqENGn0GO2q+L2H/qp1XR9pjKOEF5bQ5GzpO43GSyqt6EABusfqqnf1Kj4qW1mGSuCTWyMU1uofWKCpqTJGyPyB3wq2h5mVbHkRwXle5A1DZhiVkPActyP7kwjTaLVxnLs50BJAukvSy8i8y2rkm2Kcwr0t2xOhsu9IV8MrtgYxXgBbWF2SnK1R6vE4hIxoB5hPlQNbk= X-Microsoft-Exchange-Diagnostics: 1; DB5PR04MB1527; 6:5WsWzsIUBlujyfrQemQ1ufYvA0Iyp68KrJ10wAfEI4buRQHdAe4T6QvWgjIkZaJR4N3n2UfOA99xDDg+0Obqh4L3Hw+S1XQQlLybG5HeSmuaabcH2wWR0bvAg7hQxNOEPjVViG/9+T9W3muXbBWdBwOop/VQYRi/cKS03Bg0edrICAGpapZCRSq8GwYhXPJkoFA3Unla9JMlyieUb8D9lKAr286uVilAi+RYq1ymu5VVjnJ7VtCfOEsf0Jpb8JOpDv6k8Zu0qqB36dbm81zlm5IaWqz4OInUIILeuSxKDvQCDWQ/0lg5i0+4R3EQU1EoXkEUDsLkVJmETHlmISZBwgjqIvpj2isig6xG2+AFvBSra7K0R0w7k36AQcT8NTeAhaFrUmJRCzCALVcJpIl0HNbZw06AW1ng17sGfcPAjsZPV5TtPAs5k55GIl7iypYaJzZSIdXhDk79rn9DOetBEg==; 5:EunEBi3VRAJyDsYpRYeNtt6+fTktWufluXNUBJs3O0YuUWqRSWlk4kw5E81Tn8wleyrN9oYz1rYyNoKzlQD1HKG+NAJ1HLGQqRJXoDEbMSRumJoI/eeIvJIPgrx+LEjuYd8kBzytOoGAYu3y4FHAJUhbkyVBHu8fQ0SPTtsbtnQ=; 7:V/+d2ThCuB7xhTzZ5/I63bdvAeIHWyMCHt2aP8zq99hTd2EIKuVrPCCQ+XgprpzQ49wBy8cPOYhH3KFSYI/cRVHMTYekW4pGimgywt3jqzMf8GiYekkCg/6Sh+EQKQf8jIYZSuGvfZhKCV1jlRtvv/5aRjJ/O/VnWKc62xCrE2WC7SABWVyMHZ+6AWjn6gvYW1d7MDEtpQJOB8fp10EnEI55AK4RlFZW6b0Z7UoZvQck6D3aJf88GJsUekqW6UL0 SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Sep 2018 05:17:44.2656 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 65e683b9-dee5-4d8a-8441-08d62501b9ac X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB5PR04MB1527 Subject: [dpdk-dev] [PATCH v3 3/3] doc: add usage doc for ENETC PMD 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: , Errors-To: dev-bounces@dpdk.org Sender: "dev" Add enetc usage document to compile and run the DPDK application on enetc supported platform. This document introduces the enetc driver, supported platforms and supported features. Signed-off-by: Gagandeep Singh --- MAINTAINERS | 7 ++ doc/guides/nics/enetc.rst | 110 +++++++++++++++++++++++++ doc/guides/nics/features/enetc.ini | 11 +++ doc/guides/nics/index.rst | 1 + doc/guides/rel_notes/release_18_11.rst | 6 ++ 5 files changed, 135 insertions(+) create mode 100644 doc/guides/nics/enetc.rst create mode 100644 doc/guides/nics/features/enetc.ini diff --git a/MAINTAINERS b/MAINTAINERS index 9fd258fad..b67f2afa4 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -643,6 +643,13 @@ F: drivers/net/dpaa2/ F: doc/guides/nics/dpaa2.rst F: doc/guides/nics/features/dpaa2.ini +NXP enetc +M: Gagandeep Singh +M: Pankaj Chauhan +F: drivers/net/enetc/ +F: doc/guides/nics/enetc.rst +F: doc/guides/nics/features/enetc.ini + QLogic bnx2x M: Harish Patil M: Rasesh Mody diff --git a/doc/guides/nics/enetc.rst b/doc/guides/nics/enetc.rst new file mode 100644 index 000000000..8038bf205 --- /dev/null +++ b/doc/guides/nics/enetc.rst @@ -0,0 +1,110 @@ +.. SPDX-License-Identifier: BSD-3-Clause + Copyright 2018 NXP + +ENETC Poll Mode Driver +====================== + +The ENETC NIC PMD (**librte_pmd_enetc**) provides poll mode driver +support for the inbuilt NIC found in the **NXP LS1028** SoC. + +More information can be found at `NXP Official Website +`_. + +ENETC +----- + +This section provides an overview of the NXP ENETC +and how it is integrated into the DPDK. + +Contents summary + +- ENETC overview +- ENETC features +- PCI bus driver +- NIC driver +- Supported ENETC SoCs +- Prerequisites +- Driver compilation and testing + +ENETC Overview +~~~~~~~~~~~~~~ + +ENETC is a PCI Integrated End Point(IEP). IEP implements +peripheral devices in an SoC such that software sees them as PCIe device. +ENETC is an evolution of BDR(Buffer Descriptor Ring) based networking +IPs. + +This infrastructure simplifies adding support for IEP and facilitates in following: + +- Device discovery and location +- Resource requirement discovery and allocation (e.g. interrupt assignment, + device register address) +- Event reporting + +ENETC Features +~~~~~~~~~~~~~~ + +- Link Status +- Packet type information + +NIC Driver (PMD) +~~~~~~~~~~~~~~~~ + +ENETC PMD is traditional DPDK PMD which provides necessary interface between +RTE framework and ENETC internal drivers. + +- Driver registers the device vendor table in PCI subsystem. +- RTE framework scans the PCI bus for connected devices. +- This scanning will invoke the probe function of ENETC driver. +- The probe function will set the basic device registers and also setups BD rings. +- On packet Rx the respective BD Ring status bit is set which is then used for + packet processing. +- Then Tx is done first followed by Rx. + +Supported ENETC SoCs +~~~~~~~~~~~~~~~~~~~~ + +- LS1028 + +Prerequisites +~~~~~~~~~~~~~ + +There are three main pre-requisities for executing ENETC PMD on a ENETC +compatible board: + +1. **ARM 64 Tool Chain** + + For example, the `*aarch64* Linaro Toolchain `_. + +2. **Linux Kernel** + + It can be obtained from `NXP's Github hosting `_. + +3. **Rootfile system** + + Any *aarch64* supporting filesystem can be used. For example, + Ubuntu 16.04 LTS (Xenial) or 18.04 (Bionic) userland which can be obtained + from `here `_. + +The following dependencies are not part of DPDK and must be installed +separately: + +- **NXP Linux LSDK** + + NXP Layerscape software development kit (LSDK) includes support for family + of QorIQ® ARM-Architecture-based system on chip (SoC) processors + and corresponding boards. + + It includes the Linux board support packages (BSPs) for NXP SoCs, + a fully operational tool chain, kernel and board specific modules. + + LSDK and related information can be obtained from: `LSDK `_ + +Driver compilation and testing +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +Follow instructions available in the document +:ref:`compiling and testing a PMD for a NIC ` +to launch **testpmd** + +To compile in performance mode, please set ``CONFIG_RTE_CACHE_LINE_SIZE=64`` diff --git a/doc/guides/nics/features/enetc.ini b/doc/guides/nics/features/enetc.ini new file mode 100644 index 000000000..69476a2a1 --- /dev/null +++ b/doc/guides/nics/features/enetc.ini @@ -0,0 +1,11 @@ +; +; Supported features of the 'enetc' network poll mode driver. +; +; Refer to default.ini for the full list of available PMD features. +; +[Features] +Packet type parsing = Y +Link status = Y +Linux VFIO = Y +ARMv8 = Y +Usage doc = Y diff --git a/doc/guides/nics/index.rst b/doc/guides/nics/index.rst index 59f6063dc..0323035d3 100644 --- a/doc/guides/nics/index.rst +++ b/doc/guides/nics/index.rst @@ -21,6 +21,7 @@ Network Interface Controller Drivers dpaa2 e1000em ena + enetc enic fm10k i40e diff --git a/doc/guides/rel_notes/release_18_11.rst b/doc/guides/rel_notes/release_18_11.rst index 3ae6b3f58..f4a2535f4 100644 --- a/doc/guides/rel_notes/release_18_11.rst +++ b/doc/guides/rel_notes/release_18_11.rst @@ -50,6 +50,11 @@ New Features * Other libs * Apps, Examples, Tools (if significative) + * **Added NXP ENETC PMD.** + + Added the new enetc driver for NXP enetc platform. See the + "ENETC Poll Mode Driver" document for more details on this new driver. + This section is a comment. Do not overwrite or remove it. Also, make sure to start the actual text at the margin. ========================================================= @@ -156,6 +161,7 @@ The libraries prepended with a plus sign were incremented in this version. librte_pmd_ixgbe.so.2 librte_pmd_dpaa2_cmdif.so.1 librte_pmd_dpaa2_qdma.so.1 + + librte_pmd_enetc.so.1 librte_pmd_ring.so.2 librte_pmd_softnic.so.1 librte_pmd_vhost.so.2