From patchwork Fri Dec 15 12:59:33 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: 32328 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 460401B16C; Fri, 15 Dec 2017 13:59:56 +0100 (CET) Received: from NAM03-CO1-obe.outbound.protection.outlook.com (mail-co1nam03on0056.outbound.protection.outlook.com [104.47.40.56]) by dpdk.org (Postfix) with ESMTP id 87D801B021 for ; Fri, 15 Dec 2017 13:59:51 +0100 (CET) Received: from CY4PR03CA0087.namprd03.prod.outlook.com (10.171.242.156) by MWHPR03MB2702.namprd03.prod.outlook.com (10.168.207.136) 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:59:49 +0000 Received: from BL2FFO11FD020.protection.gbl (2a01:111:f400:7c09::187) by CY4PR03CA0087.outlook.office365.com (2603:10b6:910:4d::28) 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:59:49 +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 BL2FFO11FD020.mail.protection.outlook.com (10.173.161.38) with Microsoft SMTP Server (version=TLS1_0, cipher=TLS_RSA_WITH_AES_256_CBC_SHA) id 15.20.282.5 via Frontend Transport; Fri, 15 Dec 2017 12:59:40 +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 vBFCxZpQ020705; Fri, 15 Dec 2017 05:59:47 -0700 From: Sunil Kumar Kori To: CC: , Date: Fri, 15 Dec 2017 18:29:33 +0530 Message-ID: <20171215125933.14302-7-sunil.kori@nxp.com> X-Mailer: git-send-email 2.9.3 In-Reply-To: <20171215125933.14302-1-sunil.kori@nxp.com> References: <20171215125933.14302-1-sunil.kori@nxp.com> MIME-Version: 1.0 X-EOPAttributedMessage: 0 X-Matching-Connectors: 131578163809996149; (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)(346002)(39380400002)(376002)(39860400002)(396003)(2980300002)(1110001)(1109001)(339900001)(189003)(199004)(2906002)(85426001)(47776003)(104016004)(356003)(4326008)(305945005)(2351001)(105606002)(106466001)(6306002)(316002)(54906003)(8676002)(53936002)(81156014)(81166006)(36756003)(50466002)(97736004)(498600001)(76176011)(5660300001)(86362001)(1076002)(68736007)(2870700001)(8656006)(8936002)(50226002)(77096006)(6666003)(2950100002)(6916009); DIR:OUT; SFP:1101; SCL:1; SRVR:MWHPR03MB2702; H:tx30smr01.am.freescale.net; FPR:; SPF:Fail; PTR:InfoDomainNonexistent; MX:1; A:1; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; BL2FFO11FD020; 1:z0otQl9SFyYF2kE2/iiN66uVsIh8lY4eXtUtl86dmbEY2soCk/pRTaMSKMyVGdtr1zV7C31Hp38MpUsY3sJbgI2J4s3sUkdUloWs6A9yGTGzPreOk/hj36EV3rS0gAZL X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 78e1f105-0afe-44dc-cd75-08d543bbb48e X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(5600026)(4604075)(4534020)(4628075)(201703131517081)(2017052603307); SRVR:MWHPR03MB2702; X-Microsoft-Exchange-Diagnostics: 1; MWHPR03MB2702; 3:9nZRQyzbWDGCtTRbvfIssa0aPUlHDAaMFF/jGjjV/R0qJ9pTV1B4PWKuOAlt6N2cvx0XtFiM6555DAzbzQf2frIfAtFqoKX9OqzkIW72OreEDYrCRZjBr6FlfTaL2LTbvguO3zdXLRAaOfYeuBoUu2yZ375nacawCpD62sKx8NI+52DVapSknyN573hHGzwbJwXpRc0Bfj+EeolqWWCp1yBr/azBSZDKRsZzEjNYQKod16NkQE2UJc2PFaUvjRtJ+TShQpZXUK4FYqVb4gxwrimmIBa7VDGYz2mhC68z6Yw9RGjqzb78b2rf7vqHxBHN+N6dvr2zAXz02EMQ+pxIooas2aw28JsLbqStxKDNkfk=; 25:IEnQ8gNvJ5yty2alLNCrSULTbA6nKUTCd5c4NQ999NACs/Rc6qppdhS/XoZmoG9NpBnFOTTo5uoiBJZuLonKxCqNMokfAji+g/L1/9Qi8hwJbZDDdIV1pSzBTr9VHHRjbZqExDvXVjlFMvltWaCLQGo2rxZyT+8AAIzHfMEP/xYa/L3/sISNgMCzEA8G3E8Z5BAfF59V2OT95BV+FO++KrWziNcTvOTtrDQCzL53EaMYj/GNot0UtyQwy/SOiFCs3D+qJfy7WzoRq9AG8rZX8dq5BIVDHgqc1YPTxhvOWP/VowouPQdLKE7x3S2jBAJIjgCOVzgxXxDo7bq7lxdM0mzd95AAmMHec71UQXckKIY= X-MS-TrafficTypeDiagnostic: MWHPR03MB2702: X-Microsoft-Exchange-Diagnostics: 1; MWHPR03MB2702; 31:qpPEdfa+kNCzVfsogEJygGuXPkim2YzIyDaYIqPoF4mlryhdng28uuKZPLkbsFxPUuBX6dH3+6DFYPc4PDEISq0+OBru/4QGAzunwWGvDqxU3Ex7IkgBU/J9ZIIOfnef5q61qrGcAh35JG6A+CY9OXtzRsmyvCk77NEV/RjiLZBMGXj7ebHSpxDaAzGeO/Y3qjuvxzbH8ykgPcl+sKfS6Gq6rwkGrC1rgZID0uF+lgk=; 4:bh8YAO53qCS+JnZgN/TS905JJxGyZGwP2bRiJbafz7+6kbTbZxNtd3IVcCUBYf6Y3WMvWwR49H5duY6yE5Pn8uWbbag8sNUQfUmBGAQYmPA98eLvlBoF1Gl6ZsjItyyI85mRlgc2CShRnyHHRJTRgWPjgxQc4obIGUbrt/Yd3+mPpMBqJIFy9X9MpkmqgGeM/zOSFgyrkf9xyaQZ6Cpd/4oW47gkeKP4JbxEK0VCoWmSXC5X2nHtjeodU8MnVh8k3vCvvtiCiwY3wxzRUmCckC/MQw1zOGzS9pP5Njh3g+x5edVigrPBG2jL9nhrzBi2XEnKrjfR5eXDGAOxjW4OIHUV5kz/ZB2dCDbgRc6BfmCBJOIHOifsiWFuLmRIOW4w 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)(8121501046)(5005006)(3002001)(10201501046)(3231023)(93006095)(93001095)(6055026)(6096035)(201703131430075)(201703131433075)(201703131441075)(201703131448075)(201703161259150)(20161123563025)(20161123556025)(20161123561025)(20161123565025)(20161123559100)(201708071742011); SRVR:MWHPR03MB2702; BCL:0; PCL:0; RULEID:(100000803101)(100110400095)(400006); SRVR:MWHPR03MB2702; X-Forefront-PRVS: 05220145DE X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; MWHPR03MB2702; 23:81XVWA3NENJGamsXaj6Y1TJAsjpVsIgsxmNadrn87?= 6XBQVk83Pq8pccTE3MkK1l5oBq/m7wIIRIpXRgIuLc/gKtO0TH8nrKRNujhzs9W90Kk+BxYPjppI51dKnQwAa+FnB9ucWmauPrP1PseSkja77l+TaOTZOLi2yKMB5utm+C7xH3KIaWudCuErZPzD57ILS7jNzp3WPzM2NQlkAjT/GvRj9mY7hQN6HBMmKC+L/bXdKrEEYBinZXp7OcJo3gdDEvbLahliagvcuKoeY6Nvx7zM+XfqlUnXQtPMykRVtPUE5Cc/28G3k/a4WmZIsGzdKdVX6L3s70AxdvyFfxbL2ewIJYsNXvtCOjT8OEpNRH/x7xnizmfy4a8Mfgk8osVeNmBA/nP7NmN0M5jERs38IyPBO+B+0GBJwz5yvALh45jMODxOKWFwu1X3DRY3XBDubVmfoB9WV2z8RIfRQHsL0tVor5KWbiuV4UFE9JC1cCk9y9ol91aVYGGCv5NXIZfivcTByulUrRS0IwmZODmvAaxH9FvNxtI64+OCQGXav+vJXm+uPXBoI0vJuX3DMkbhgdFxvic/ooFDIFa7/ygEwZW6MBXhyPwQDM5OYxEoLbsY8g9ue0Uff2FoVyNJy5I2oLVjH1BeIyV/+PFkWWn1h268Vo7TltLk4DstjEgCqLiWW1JCSgK9OJGTapeyNqUHvKa/olk8r/3rfS70WkEKhFjd6lSvVr0lP+FwkJdGIkjLFEoB3N+ecvRupQfwzEiaAevTm4QiekEuINfVSy4FRzFOW382nTAsngc7YfO0rQT/AkK1L7zmhIO89hPgoAxoqoJchLWMx3gPSZ/pafCBYmWR2STjHJV+XNFfkkkYUEQLi5s0S1nQwZ7+SxgQsDRX0KtlA5OUUFMiygW5TEkbJMKJ+xEl90mPmH3lf0P7bHB4yW+vAWYPgPFT9aSJ+pUuLZ0mAH7kQdQ28GGwDHA0LtyIXXv1vHAmzm5Hd+HmFIeK3nV02ie85EcemYtcLAEJVsA31JuTOKYcKatEy/vlPol5zEzxSha0Sa3c3j+bFirNKvoJugwZiKxbmRK3fFY4pQyU+2p6aEiUVX9Al6apw== X-Microsoft-Exchange-Diagnostics: 1; MWHPR03MB2702; 6:TeSNBWKQ0UMiqovthk82wgMBOnG2qKozB2s3/6IgAvnutRwjZHj8wvEk/L3uudMTAP2zuwE51yuk+meaCgYdLyIrBJ6u5YtfBFyMpbwAG/kRnwlG27/ei8rSZ2Ih0UK2WVHwsRdWARE1VfMlFo9vfCwE6/0p7w8MBlxH++OYybizchN6Ox+/2hymS+c2GlOfNhGBzIqGx44EisPfKYZeu8mXnf1YLPBCvUenXmaikK+SROB9/LEZYKhx2nY2PiXpvOHc/QI52U/QsWdIqCJOFE+tP5o7/p6iLiEgYW2OEXwRCS15TEvkkCJrNqzDjiyYGkqdAU+NlRJEbetgDQtxWLRgt/c5D+1VXw0XK6s7IhQ=; 5:lCrnpMqZ9trYQ0N6AGiHrxjkmKNXpa4MjwbeBbBGhdUY1FuAhaOAY2EdJ+2+usp7/FanvvdZAWHr5zBoLjjDfRXE/A+I2eTPdd6wfskTYQH8OyIUNmUevNYZ/KpT2NbJ8D+7z7gmV4gCrMbat6maEckc4xT7SY60PxzMqp2jhbA=; 24:prZMJq/Tgsh8vwkaeR00pJdVSbh/1lMl1NpSi9N5KhVAiseC9iWsClA6FsWl25Fe9NjFjmKBCOk1QPZ+7N1itUPNMIT2M7R2NIevxJK1u9A=; 7:H6qRrMUqth5ypVKZ3mX6YWkRjFls5n9vehHL0EJsCLckh50286b6oc00q72+N+wnZRsCuoHUEpacyfyCdIqWXZAV8eHKaq1P77Def3mIljd06VxHm89xHOaXup4bzA5cUP2roGVPNwVnyrCwIx1Tv0Wpt0iDamSRgbLMfT5h94YyLZ41ySax82lwREvsUraTzrAqh/ZR4R4Bwcogq1tKDmky+PGTOCA8h2jeJWG7IoOSeQ4P4raSDrpNQUHqMbty SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Dec 2017 12:59:40.8280 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 78e1f105-0afe-44dc-cd75-08d543bbb48e 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: MWHPR03MB2702 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