From patchwork Fri Dec 15 13:08:28 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Sunil Kumar Kori X-Patchwork-Id: 32322 X-Patchwork-Delegate: jerinj@marvell.com 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 2DF771B16B; Fri, 15 Dec 2017 13:40:45 +0100 (CET) Received: from NAM01-SN1-obe.outbound.protection.outlook.com (mail-sn1nam01on0082.outbound.protection.outlook.com [104.47.32.82]) by dpdk.org (Postfix) with ESMTP id 146DC1B16A for ; Fri, 15 Dec 2017 13:40:40 +0100 (CET) Received: from BN6PR03CA0014.namprd03.prod.outlook.com (10.168.230.152) by CO2PR03MB2360.namprd03.prod.outlook.com (10.166.93.20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.302.9; Fri, 15 Dec 2017 12:40:38 +0000 Received: from BL2FFO11FD023.protection.gbl (2a01:111:f400:7c09::140) by BN6PR03CA0014.outlook.office365.com (2603:10b6:404:23::24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.302.9 via Frontend Transport; Fri, 15 Dec 2017 12:40:38 +0000 Authentication-Results: spf=fail (sender IP is 192.88.168.50) smtp.mailfrom=nxp.com; nxp.com; dkim=none (message not signed) header.d=none;nxp.com; dmarc=fail action=none header.from=nxp.com; Received-SPF: Fail (protection.outlook.com: domain of nxp.com does not designate 192.88.168.50 as permitted sender) receiver=protection.outlook.com; client-ip=192.88.168.50; helo=tx30smr01.am.freescale.net; Received: from tx30smr01.am.freescale.net (192.88.168.50) by BL2FFO11FD023.mail.protection.outlook.com (10.173.161.102) with Microsoft SMTP Server (version=TLS1_0, cipher=TLS_RSA_WITH_AES_256_CBC_SHA) id 15.20.302.6 via Frontend Transport; Fri, 15 Dec 2017 12:40:29 +0000 Received: from sunil-OptiPlex-790.ap.freescale.net (sunil-OptiPlex-790.ap.freescale.net [10.232.132.53]) by tx30smr01.am.freescale.net (8.14.3/8.14.0) with ESMTP id vBFCeOG3004484; Fri, 15 Dec 2017 05:40:36 -0700 From: Sunil Kumar Kori To: CC: , Date: Fri, 15 Dec 2017 18:38:28 +0530 Message-ID: <20171215130828.14218-7-sunil.kori@nxp.com> X-Mailer: git-send-email 2.9.3 In-Reply-To: <20171215130828.14218-1-sunil.kori@nxp.com> References: <20171215130828.14218-1-sunil.kori@nxp.com> MIME-Version: 1.0 X-EOPAttributedMessage: 0 X-Matching-Connectors: 131578152296519722; (91ab9b29-cfa4-454e-5278-08d120cd25b8); () X-Forefront-Antispam-Report: CIP:192.88.168.50; IPV:NLI; CTRY:US; EFV:NLI; SFV:NSPM; SFS:(10009020)(7966004)(336005)(39380400002)(346002)(396003)(376002)(39860400002)(2980300002)(1110001)(1109001)(339900001)(189003)(199004)(105606002)(498600001)(77096006)(86362001)(85426001)(97736004)(81156014)(81166006)(8676002)(2870700001)(36756003)(1076002)(53936002)(54906003)(47776003)(106466001)(8656006)(2351001)(76176011)(316002)(2906002)(5660300001)(6666003)(4326008)(6916009)(6306002)(2950100002)(68736007)(305945005)(104016004)(356003)(50466002)(50226002)(8936002); DIR:OUT; SFP:1101; SCL:1; SRVR:CO2PR03MB2360; H:tx30smr01.am.freescale.net; FPR:; SPF:Fail; PTR:InfoDomainNonexistent; MX:1; A:1; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; BL2FFO11FD023; 1:mfQaG0Uw69a1QG/8TPz5gTOU7QTe42EI6Z4T9KGAjuMKsOdt5E2ai3LUqRpivfNXRMN1FsQvWDxncR2xbZ/DGYyDE05NxfM02lRGWU04ZAE3sh6rAlS15notsKxg9Jxl X-MS-Office365-Filtering-Correlation-Id: 825c1ae8-a450-47be-182a-08d543b9064d X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(5600026)(4604075)(4534020)(4628075)(201703131517081)(2017052603307); SRVR:CO2PR03MB2360; X-Microsoft-Exchange-Diagnostics: 1; CO2PR03MB2360; 3:Y/bPdepx39zMbs5aWMUUW6OPn9nhixZfFL9zcpHVgiqfeaYqFoJkFxqovPae+5phtz1HAg7bVT32mrEqRzYw8AI6iKq6AJcGgip9pVdHjrmkL8uw+YvOiAPGlNsdS5F89nHrumWLZfDF7DE9g1XvZGRrMllfyJSKE1zkf6HCTrPv425Kbj0h29U4lqXA/PfQgZ9zlIV9bM1m59y3TBIeDf1xbvK9+6y1ZdMm3Isy5xY5tdvEehh/nGVwi5LdcTyhfi8+3esHsPp1U9ldfwo5S2XnfbX/hnyY9OuNXaqYcun+0nifb0N7RsLjNFtCV91E1evtapg+fu3RDVpIgbnDW5SLjcoBmQCp7tWY4Spcmlg=; 25:zmAIyD/LoniowJAsh/JdcObBUMJZrXkFX/VZN2s6yb5LUsEH9eAg6vl/okXCnAoLH/OvH0DxxWlx5NEnY2j914MV9iPH2Svmri6JqQD7iOLUSjQUEY8p3Xpc/IE1STZkOJ37oFsFRUgc/JjSTkvKd0pEEJNJdNOWDe2ebhhX5FBWSx1380XU6dcdfl8TTRyqSZ+hlBc42zEPjqT4Vb2bQXh/b3beKGUHsZRq0h+b1UacNuz4D/qtfLzRvt1tJtzw2J7AkwEak8Ar2SpXMW1rC9zhJSU/0duIjbNDQpDA61kYb8o9XZ5dE1j/rF04SjFZHGK7AMBNXe5Zy5YFDoBxFVW0P269R+/cyl99lIV4G9s= X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO2PR03MB2360: X-Microsoft-Exchange-Diagnostics: 1; CO2PR03MB2360; 31:uKmNzskIfDvwq4O+Y4VOXgK9tUpeK7D4jgw6kks3RxZvRnVYRiqxVpWfvnHzB3ITot/3omJnp7y79GmqPAudRjVDROZPN4WUQ1LBWb3x6cA7HA5HY/m8fcz1Y2PxUxJz9Q9mq16eMQQ0I1XSZhm+JZxJVaWRfOARNwkt6hsLQ1YKnrV192c82T1BPlieO5aIr8kki5h4/DMY/Bvufz5oaijTXNKEajnI98+4ee5qHX8=; 4:111JMBYxfmxfeAeiQG/Vx0trXrsYnXVuWlYsM2YelKukJK851DWaNmeT5GgWh1aeh1WKyTWwdKnDCK/rWGE3++IgOQamxTzkAkaCfFpRRzhlNxWNJ0d6sOnjswqUnPLuk7FYHwMtnFZzP4GaaxQcLvb6j7CFsM1FSIGWsF9mh+Yz5GDZgaAFsTJwBTdrasSjKehKUGkk3l5/blXk7hi5UJ0rAI/Wh9dSJBbUhH5UCCuGk8oHD0ImZf4YU+PGap1tSCRD49UZCULYNxHMzJzHro3JEHSo4P49W2Cx/jGPM+CKWtgKsYUM1VgyxmqmSI8Q+z4J78iVxlNnkSvH97P5atiw7jUL8yM5j9m/cWgpZ4/yBvwG2Ta2G45tlL+psz2j X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(166708455590820)(185117386973197)(264314650089876); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6095135)(2401047)(5005006)(8121501046)(93006095)(93001095)(3231023)(3002001)(10201501046)(6055026)(6096035)(20161123565025)(20161123563025)(201703131430075)(201703131441075)(201703131448075)(201703131433075)(201703161259150)(20161123559100)(20161123556025)(20161123561025)(201708071742011); SRVR:CO2PR03MB2360; BCL:0; PCL:0; RULEID:(100000803101)(100110400095)(400006); SRVR:CO2PR03MB2360; X-Forefront-PRVS: 05220145DE X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; CO2PR03MB2360; 23:9UMq5ldb+VZmRJTGio8Inof/C7OgfjcDW1pPpc8jS?= +nMLpxrqmD5UbILWP2ABqOAwWTn7JpLQeS8wiv9UgL5qsbwKXSr6aK5RTuVsh7N9wev7LK6+hQuc1EfmGZ0+rN2WsJM+UIyitRd4h+EbuaeTGqVfGQAjObjaqydPeXSIPn7jp66/iGQaV11XXx6n+S0k9e1CC3tjAk0sXw4InwgjFbmSgVr3pOCoLBgytTz/N3XwB8Ptp4BZML/co34se2G81BdJsKwyLy2xcxUyZAjzokyB72MmXyM6AYQ3gKn3/FRBLwHrH4D9g9Mr9mUGjMFRS34+m08qsLRvVC1vT3RF8xR5OQQipaTdLQXtVT0QgM5dVxLQ8RQjKspyt/6jGV3SkCCURD7DZ65EwG6cedAVkgk5Kp1EA31nv0VyQLUUACyWU6dk81eOpVwNNOsSwbFTOySNXgL3Z3aWQmdgHcDJqBf+Ks8x54OuORqOI/LNuBKPu0EpBSr995C8B6I9Z4QxWmfJ8MIa+BLCIg1e9GlyAYDRUIG6d6bZtlO5bv8AHPoxbiqb6gsujq3tc2jextpIO/L2gBoDWe0c76U0LvKGy1n+AMUYyiTrO6AilJf7RCNGNFIKDb6ngJ5TSjs1lEaNKhO4SVuBfvlnMhyKnB1Kp5L8htzFWz204NzrZ7PcpcI6ydrbnvUe08bwRQE5vMM5gZJTu3hKNzQoM2LfRZZXVIi9+GlWFWogZb+mHd341VSgF8enHoIbFT2yP2NH2xk0T6ta+Vwv0I8svxWNFyBBsCHuOGb/9GZZNYL9ippNilJPnkSjpvdIza4sIS4YuPwyyIjQMQdeh2gyDzGY1lrd22h29ILt5dOVBIhOp9gC11FU+3h/y+xV3BF+HqBgH9nNRuHqOhOhAYQe09oprr6qZ1VYezm5d5FOpBiWJMuXQvzkkqmM6TBM97RkFoAO2DejLldDrLhCs5I28XWJPL47SvIiYEN859kuY4ltvMXxmzgSVJAp4oiiaDS/JUSCEQB3ytRYoPHxLMXUfzERrwjkAG8YKHC+BdtEwYBRY2MJOPA1QE8Rl6/dmdLimq7kaPfydtVmNuU3AI9XE1aPLrSkA== X-Microsoft-Exchange-Diagnostics: 1; CO2PR03MB2360; 6:wlfIk2LAIQihhs9y45eYr9vuGEvrr77xwDGKSR5qIN27eEvwbcsKjVuyBtPuA0OZTzyPRW3qYTxLrvWYsLjJ2Oz5X82p5vpsLywIA9yG21HBrw+CD1YtxlPseJrTo/rKtGkrEUVJuUN4Qq4R15lx7gKhnjprM3C7vDi0Y68OwtGuWK+Mhi6mRRSd+H9eBksA5rqz+wy/mwRteIdbAO8igYMFAQJ4OCx/nI9Y155culjYJYMRmb6mn9Kr/SxGub+IVwlL0QiWHUNzm1onsEYHmD/yzGtbYwoYCGnrLx1Wfvc50MDgU8bsCa1n7CR4wMGGZJSGgB09+mEmz92rgUL2zaNn+G2pNpeNcb9K1RpYuEs=; 5:p6/41nSCjFPAsTadZEEWO3s41gqhxf5NPNUupe/lya+O5in+XTle+8ElfOk/9tKSIltxXZHnTQK7jDecg/oMrNfK2t6FD1uc62jE5Q1gO7Xg2iAItOfktb4Jp/5BZoM3+LqAiY6shEbBld+PDtJJ3wRXhQGuPmW7rKdn5YAQBn0=; 24:ODQal7JSbdrSMco5hGlqcxtxaYZQnPLVZY/aYEkBeKnK9eoOnNkZm9H7rvBL2YYpX/1ZJ0q+B9Q9sBtcAMjNKouHuUCvipRcCklWX8RFy0Q=; 7:guzgTqeAHtlPDxxBLTsG74sQswDnZNckT+ygms4ivjy2UvOLwN1APDzWCJz+foLHwbV6J3qPauWngKC7nL4En3slPGPY8qEM7aVBCO6kpmxpJ/9XPN4lBKbhx8mP02K7D7wsx3GG09l18NMqFP0+mbYnZBKaoMo7/6YkJ4ZLoGV5kPnBwfBSRI+PbQF8ViMMZcD5Gt4MW7uNq2FCytuueqABdWu6FF0dK9jeu2Wd73jRbP44lsQ+IdGyBcwmccnN SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Dec 2017 12:40:29.4959 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 825c1ae8-a450-47be-182a-08d543b9064d X-MS-Exchange-CrossTenant-Id: 5afe0b00-7697-4969-b663-5eab37d5f47e X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=5afe0b00-7697-4969-b663-5eab37d5f47e; Ip=[192.88.168.50]; Helo=[tx30smr01.am.freescale.net] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: CO2PR03MB2360 Subject: [dpdk-dev] [PATCH 6/6] doc: add DPAA eventdev guide 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" Signed-off-by: Sunil Kumar Kori --- doc/guides/eventdevs/dpaa.rst | 144 +++++++++++++++++++++++++++++++++++++++++ doc/guides/eventdevs/index.rst | 1 + 2 files changed, 145 insertions(+) create mode 100644 doc/guides/eventdevs/dpaa.rst diff --git a/doc/guides/eventdevs/dpaa.rst b/doc/guides/eventdevs/dpaa.rst new file mode 100644 index 0000000..9224ebc --- /dev/null +++ b/doc/guides/eventdevs/dpaa.rst @@ -0,0 +1,144 @@ +.. SPDX-License-Identifier: BSD-3-Clause + Copyright 2017 NXP + +NXP DPAA Eventdev Driver +========================= + +The dpaa eventdev is an implementation of the eventdev API, that provides a +wide range of the eventdev features. The eventdev relies on a dpaa based +platform to perform event scheduling. + +More information can be found at `NXP Official Website +`_. + +Features +-------- + +The DPAA EVENTDEV implements many features in the eventdev API; + +- Hardware based event scheduler +- 4 event ports +- 4 event queues +- Parallel flows +- Atomic flows + +Supported DPAA SoCs +-------------------- + +- LS1046A +- LS1043A + +Prerequisites +------------- + +There are following pre-requisities for executing EVENTDEV on a DPAA compatible +platform: + +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 15.10 (Wily) or 16.04 LTS (Xenial) userland which can be obtained + from `here `_. + +As an alternative method, DPAA EVENTDEV can also be executed using images provided +as part of SDK from NXP. The SDK includes all the above prerequisites necessary +to bring up a DPAA board. + +The following dependencies are not part of DPDK and must be installed +separately: + +- **NXP Linux SDK** + + NXP Linux software development kit (SDK) 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. + + SDK and related information can be obtained from: `NXP QorIQ SDK `_. + +- **DPDK Extra Scripts** + + DPAA based resources can be configured easily with the help of ready to use + xml files as provided in the DPDK Extra repository. + + `DPDK Extras Scripts `_. + +Currently supported by DPDK: + +- NXP SDK **2.0+** or LSDK **17.09+** +- Supported architectures: **arm64 LE**. + +- 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_PMD_DPAA_EVENTDEV`` (default ``y``) + + Toggle compilation of the ``librte_pmd_dpaa_event`` driver. + +- ``CONFIG_RTE_LIBRTE_PMD_DPAA_EVENTDEV_DEBUG`` (default ``n``) + + Toggle display of generic debugging messages + +Driver Compilation +~~~~~~~~~~~~~~~~~~ + +To compile the DPAA EVENTDEV PMD for Linux arm64 gcc target, run the +following ``make`` command: + +.. code-block:: console + + cd + make config T=arm64-dpaa-linuxapp-gcc install + +Initialization +-------------- + +The dpaa eventdev is exposed as a vdev device which consists of a set of channels +and queues. On EAL initialization, dpaa components will be +probed and then vdev device can be created from the application code by + +* Invoking ``rte_vdev_init("event_dpaa")`` from the application + +* Using ``--vdev="event_dpaa"`` in the EAL options, which will call + rte_vdev_init() internally + +Example: + +.. code-block:: console + + ./your_eventdev_application --vdev="event_dpaa" + +Limitations +----------- + +1. DPAA eventdev can not work with DPAA PUSH mode queues configured for ethdev. + Please configure export DPAA_NUM_PUSH_QUEUES=0 + +Platform Requirement +~~~~~~~~~~~~~~~~~~~~ + +DPAA drivers for DPDK can only work on NXP SoCs as listed in the +``Supported DPAA SoCs``. + +Port-core binding +~~~~~~~~~~~~~~~~~ + +DPAA EVENTDEV driver requires event port 'x' to be used on core 'x'. diff --git a/doc/guides/eventdevs/index.rst b/doc/guides/eventdevs/index.rst index ba2048c..22f6480 100644 --- a/doc/guides/eventdevs/index.rst +++ b/doc/guides/eventdevs/index.rst @@ -38,5 +38,6 @@ application trough the eventdev API. :numbered: dpaa2 + dpaa sw octeontx