From patchwork Sat Apr 7 14:34:04 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Nipun Gupta X-Patchwork-Id: 37495 X-Patchwork-Delegate: thomas@monjalon.net 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 063F31BAB2; Sat, 7 Apr 2018 21:37:23 +0200 (CEST) Received: from EUR01-DB5-obe.outbound.protection.outlook.com (mail-db5eur01on0040.outbound.protection.outlook.com [104.47.2.40]) by dpdk.org (Postfix) with ESMTP id 4E3C71BB22 for ; Sat, 7 Apr 2018 16:35:06 +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; bh=rPrZSnUi15/kKPnjw1cQ33R3BdjAikhEePZXJuDIwSI=; b=XEqYLbdq+gc930eufJgLwpIxyXV1MEzx+vFWabbjddv9GKuYOYtQ+JcXa4XgMZ8fj4nDkQUQLOI2su0EO1dJHc7DnM5dkB3uP/95kP0J549Oky1kfzURElCVmRJH0dhY2tzANnb66v54rC+7A2vV8xoeqPvaSgENPkEyUnnbOag= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=nipun.gupta@nxp.com; Received: from b27504-OptiPlex-790.ap.freescale.net (14.142.187.166) by DB6PR0401MB2424.eurprd04.prod.outlook.com (2603:10a6:4:4a::27) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.653.12; Sat, 7 Apr 2018 14:35:04 +0000 From: Nipun Gupta To: thomas@monjalon.net, hemant.agrawal@nxp.com, shreyansh.jain@nxp.com Cc: dev@dpdk.org, Nipun Gupta Date: Sat, 7 Apr 2018 20:04:04 +0530 Message-Id: <1523111645-8076-9-git-send-email-nipun.gupta@nxp.com> X-Mailer: git-send-email 1.9.1 In-Reply-To: <1523111645-8076-1-git-send-email-nipun.gupta@nxp.com> References: <1519292089-13851-1-git-send-email-nipun.gupta@nxp.com> <1523111645-8076-1-git-send-email-nipun.gupta@nxp.com> MIME-Version: 1.0 X-Originating-IP: [14.142.187.166] X-ClientProxiedBy: PN1PR0101CA0017.INDPRD01.PROD.OUTLOOK.COM (2603:1096:c00:e::27) To DB6PR0401MB2424.eurprd04.prod.outlook.com (2603:10a6:4:4a::27) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 28b40cc1-7188-46de-0316-08d59c94c148 X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652020)(5600026)(4604075)(48565401081)(4534165)(7168020)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060)(7193020); SRVR:DB6PR0401MB2424; X-Microsoft-Exchange-Diagnostics: 1; DB6PR0401MB2424; 3:73MvzoHGJbm3W2yvxFYbQQdqwfXoGPW+LJa2qrlH6D6yMxadWuGdxMfgzQafEMUDOnOWbRFwnswCfjCdNH87ei3OwkyW7wiNlHvI8ynDBIDqil1u3rcpYeiEAgMLJHBmtNYrPyDKlv+X0yhFiVya+AFtyQBjv2Sb+7eUoOAjoV5uwFKmT9VH0E36LVPznWXmNQln2iYvHAVITrTejWO+xNRIFfUY75irTqL/EJGEOkKcitVE72tOJcnqgZoYd0ed; 25:2xZphpC5o/aDYMTNjXUc0cgvJMD2ThFHYVkAdLN9IkG3x9IfjxGaxKDaasNpptb8uP+cwEYtPuBmfe4Bd/D4KdzccIMBJicA6U8sNAdprMK9wXP9M0A5+9/wMCrj4LHaO3PcJ+tV3QrERv08eqmi4TkE0JtKYraxJWI0OeswPXwC0z3K1DYtwkOvcaKtPJmXEYyas0EXB9e6Josfvgo3v3HcJ6fum+lyEhYvQh80pkaB/to+M0WvpFrl8y1i9jIrdIIQ1leMCzxdWaTapNgjFLalMSSy8Gz+LMD1/5x9WzuWjpIb4ZycC35OodNE/aVtncZDjtACyCXM1IWeMITgMg==; 31:39R20XODmFJ1PCn1enJofbIfuqRqL6lD6X/1PD5zOFbHSFTGBlPdtAi9d/h2LWzzi/1DOEOBHxRBEmec3GQj3JaZYGVZIiEl8H1Eo6tDI6ywq3ijveW2sR8cuQdqmg3j/jYRSZuFTnRAUklqcXOgdyhJjjea4D3LfL87iixfjqaRhbxcyBXA7FeCGIJ/eEXBRroXRwagRN6O2lp/HftHTEIsC86EB3uc7Yb9QRXN7v4= X-MS-TrafficTypeDiagnostic: DB6PR0401MB2424: X-Microsoft-Exchange-Diagnostics: 1; DB6PR0401MB2424; 20:xGIbtmIrOF8qSfhknTHSrtjx2zNunuBqpSKh4T6Y8vmtPTEXw0UszlkP0F51iKb0h0T9HKUJDzf0g2h9EzVHh7i008kmQjfMt9kIvxkiL+mBxSxpmTlm396uj/DmqTxOSiC8G2IIJ7zXN7svTRdS5BvYP43PL/gQ5eeOO0+nhl2c2Pfc6TMChMYYGiNY5aXTk/GQaVsqj8m5fR4lsk/+3eaHRBOQlLF3WR0MW0c/j9YrVNemQ4rYW8hZXa0e7HNDOZ2epj2Os+BltHAWzeOVWMk3ZsIGKQKjVamOLWrcOB4vRpZjDH941G7yNBuakLs8GcLt6LX0R6DWFBuA6BvTZavJuTAfjzkib7ipP5hdvueFJgeHV2oqaKDax7YRavHJdbT38SdSDcn2jiups1zkiqGfF6GJhb2euQgvrDPOTK5jhfJ2Fhu407H/2aktaJTdLZrRrfCDy0PlH/Xm8mMQX6ry/rk3eEssqytz9/tBuDF4PmPt9ozGiISxDG4HVtNG; 4:FjVc+E4XUQdjofh2YjJu4epA7c7A8STAM5Y+ZERHSKrqICkm3V/gcfmEyom4EMd6FECA4UsmA678DgaSXz2sTVNC6nblxLkvp7X+BzzpErtzOZJqwtyHttCkc4BEkfkP7wj5TpLJ3N71qeFhA+LX80mZe9MWq+mmTuZrIrYeVBzVxqH+LzdhOu2nDh3H/l3Jxq2zm5ML9ubATBq5x+sfrRsaoGM53B8GMaRiw3ULXrypA5xMGIHAfDJGqOYI8fLBBJluKcD/cMnElh1bznJUiTiXDzxfC+TM+sZRA+MEOkuo/swx3toBNxcIXXC11rBkY1oVvNYnZmnNUsxXKNaEemm/sx3NHOjWPqI7xj17ba3a3z3sr/9BB9GnjQjD3e7i X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(166708455590820)(185117386973197)(264314650089876); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(3002001)(3231221)(944501327)(52105095)(10201501046)(93006095)(93001095)(6055026)(6041310)(20161123558120)(20161123562045)(20161123564045)(20161123560045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(6072148)(201708071742011); SRVR:DB6PR0401MB2424; BCL:0; PCL:0; RULEID:; SRVR:DB6PR0401MB2424; X-Forefront-PRVS: 0635D5275E X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(396003)(39380400002)(366004)(376002)(346002)(39860400002)(189003)(199004)(105586002)(26005)(446003)(5009440100003)(50226002)(186003)(16526019)(53936002)(6306002)(47776003)(50466002)(52116002)(476003)(6486002)(36756003)(76176011)(305945005)(23676004)(575784001)(2870700001)(86362001)(66066001)(6512007)(6116002)(2616005)(956004)(2906002)(3846002)(4326008)(7736002)(8936002)(478600001)(81156014)(81166006)(486006)(11346002)(5660300001)(97736004)(316002)(6636002)(55236004)(8676002)(25786009)(386003)(106356001)(6506007)(68736007)(110426004); DIR:OUT; SFP:1101; SCL:1; SRVR:DB6PR0401MB2424; H:b27504-OptiPlex-790.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=3BDB6PR0401MB2424=3B23=3ANz?= =?utf-8?q?/J1XSAQnbBBIU/3Rg2YMSwoWkzrhVOpbqnZQGOvm1ko5cBYrHYCC+R6p?= =?utf-8?q?QAe8r3+LNFD4PWvrJPdg+w2rfuOccuGKKyoOMYDVwng1ihGE0m5+uVXO?= =?utf-8?q?oTBsvYpA4W6ooZSmke/wGAw4NeKVOFly+fpcYdjaYfxleCyiUO7JCOy2?= =?utf-8?q?Wlwt83hfijT2fow0P0xSYV5dEE9AWf3rw1gu0gomNsWhb72WtLA1KvGt?= =?utf-8?q?1SWcq4zWC/TZyGDovhe7PVtrjcsLOvka3dv4IBHksVE8Jo0iR6S8AKZh?= =?utf-8?q?vli3uz2fbik9zOCSLmDQfCTAKPWw2e0cBbQd2vsB7om5PWlp2Sk3xY+U?= =?utf-8?q?Uq59qx79VU0dsVgf4FslVtHJkirDaZesGsEGgJqdfI7dToYoL1fyPUev?= =?utf-8?q?FPGyUL8YHspnuRFxucqvNRYr82Wnz7VdgILpFBhDXyH0/YoMm4Qkfw4H?= =?utf-8?q?5HSVDBSu8CZ3Db003No6G2dl3b5T1EstErgCjt3liPVCpLR7rDoV6rY/?= =?utf-8?q?DDLIY3olARsBNeDWpW2n8kLwmTFPyx508zDWd0DLsTjZ3Sa9fBI8or5I?= =?utf-8?q?j8jQjd8SYTB2cmXyANEdo1WoG9Z1A/f1R00J+cHA91ouhEuRHzobenz7?= =?utf-8?q?XurPRlMdATjt6msklZ7GJXCFMqRklAUJR4tkA09WCQ1GDclKLoDN1NwV?= =?utf-8?q?g7/nw5YMb/s3Xf9ckrvGIcLeaiOJ5imtg6m09HxcG/q4GzynNxS0tDaE?= =?utf-8?q?n5oL8Av5Q0QJ3D/F3cjIrz9vnABTp0onP7mrgp5fc5CYYFhJptxaHvBM?= =?utf-8?q?egL7r1kMsKgp5ew7vz6co9wWZHO9kHPsxQtlY9B76IDv2r+QFaoMi+lr?= =?utf-8?q?Fboor7gDa6HfDLalRKn6imxHW+EXtP6UN1BqzGLzoNtGsCBhfZEakIWP?= =?utf-8?q?d6ubabZaJWuDJwai82L3uWE8rI6uy/oX0LFosnfuxqVCm5O3NlxmRBwB?= =?utf-8?q?pqiuCd8CDSUpp6/KxiHiYWAhUv/g2MRl0xdVMPRhJNM1PcczOXckET0Z?= =?utf-8?q?eufF4ODbz4oCvbzO++uPNEwhahxyz9Sbz3ORXQcy/VIHeCM3vp2AJZS3?= =?utf-8?q?Fl7PY0WPmopOCrxqdFuveBPI0Wv3ViVD+losfDGXJnoOV+8J3XuENkUr?= =?utf-8?q?075VdEr+jo/lIw6QOpJY4n3VKJaDaW/Gdhop3veUv6sbzz0dBZL5mg87?= =?utf-8?q?MKNvD4o6ubIm6534erdPbkAJMdezRymlYC3CTRckByQrVqs1lerETCIF?= =?utf-8?q?lAb3FFcmi8XdNpwaIWAfhlgRczaUcXv5tTKHVpMAQ+AhiK?= X-Microsoft-Antispam-Message-Info: OxwrbBw47EzaoKOG1sMRCAoLx/mD1Qyk/JpBkHLRCXzE0OCGbeYUhfqprSrhUxWQHKjEUWq3g/SZhME6oaaZ1zE53zRgUAwJXSC2ZjWQtx5Qk6q+S/D1cLf1ZQ2Cy0a9h8kwoopAmAFaYCfVCDOKexP0avVNVYdtKPe87XSe6X7tAknWMEFSOiVV559okESo X-Microsoft-Exchange-Diagnostics: 1; DB6PR0401MB2424; 6:cxdVahjo/LKFLRvnDxOG3/5oKkL4I95hDOamt2IO4gJRN0fkDhTVJwK95KGs2CaD/NmsUi4Cx0H3M0LY0871rnqoJDfD/EsSoKnQdybwSsXvPtWDN3CbK94YIhCyXA04gBg0KBUxjd1COuOTM/HJd5CpKs+NQBzpYKZ/qORh8Qyv80PrRfeAC0y+zH/b/no7t4BQZG/Bn/oaX1cTtIsvbDnM9IDQa+L7CcPfzE+AHJ/SxFpYu9RMkxntV1LeY3nYYG5ZR+FUTmOzlqZcz6jpWaXQqE6ptoKNEQ9VV+kuGb5A7Y72xlRVlsLR8C2Brg4pQ35I6iTSU+cyOHoqZRnR68im9AHQGWREvuj75uI34P71pl+qY/JRsmRmba8OCd3A2RL0ZSjZnsAL1efrrHhLasIcNVaunPrm0yUF3ByjHwYhSqa3w1auLxj+3s3HsXcXl0a0fZE8inT2zJEIh2/JTQ==; 5:oP4nORwoQBijEH7zaF39xUrGpU1W0F1vXXMlKsbhC4MJh7YjeRZzRxJjy/tN6fn8OJ4X5bDKkW3ib/LqoPiH4yZP4eyur7uSdXmofRStKKVVSerg4s9/yKMTrvNx83qgHAlqASkXZ0xg222EuhXD0fVQ8CFvnlH32sMX2C/zi7w=; 24:2J8Q+RbFMFiQdJNenVvRa2PiW1sEOhMuVHA5lpsMLPMYpwansjz5cghJf81IyCCFmaxlDe/Jddhtl/5WCf5LHYWIm+agOAgOHdbaelZIoRU= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; DB6PR0401MB2424; 7:fdO726s4G2kHj7zbWjN7OtM2wQvR6CrrOaUwPm1bpZ4rQnAaD+9C33lET3Qxp6tWBbjKKLsfqOGwa1L3MvbCTqDsJcA8+J4PbF2YLwtJN2ehIg9sL0C8mZ/d57hW4Rrp0CDaRBk4dBIvLA7oFc474vuc3GpXNFfZFt0cHP/X060ovb3HjCcXVHjDCpNcSUH4BbkGeL6QOb7YmuvAhCJ7mES7a6KRQUMvja7shqv//cnRk/W+J1Sjlf1B6NCfq+lH X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Apr 2018 14:35:04.1014 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 28b40cc1-7188-46de-0316-08d59c94c148 X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB6PR0401MB2424 Subject: [dpdk-dev] [PATCH v2 8/9] doc: add DPAA2 CMDIF rawdev 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: Nipun Gupta --- MAINTAINERS | 1 + doc/guides/rawdevs/dpaa2_cmdif.rst | 132 +++++++++++++++++++++++++++++++++++++ 2 files changed, 133 insertions(+) create mode 100644 doc/guides/rawdevs/dpaa2_cmdif.rst diff --git a/MAINTAINERS b/MAINTAINERS index e97da7f..9ef5902 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -732,6 +732,7 @@ Rawdev Drivers DPAA2 CMDIF M: Nipun Gupta F: drivers/raw/dpaa2_cmdif/ +F: doc/guides/rawdevs/dpaa2_cmdif.rst Eventdev Drivers diff --git a/doc/guides/rawdevs/dpaa2_cmdif.rst b/doc/guides/rawdevs/dpaa2_cmdif.rst new file mode 100644 index 0000000..b0aec2a --- /dev/null +++ b/doc/guides/rawdevs/dpaa2_cmdif.rst @@ -0,0 +1,132 @@ +.. SPDX-License-Identifier: BSD-3-Clause + Copyright 2018 NXP + +NXP DPAA2 CMDIF Driver +====================== + +The DPAA2 CMDIF is an implementation of the rawdev API, that provides +communication between the GPP and AIOP (Firmware). This is achieved +via using the DPCI devices exposed by MC for GPP <--> AIOP interaction. + +More information can be found at `NXP Official Website +`_. + +Features +-------- + +The DPAA2 CMDIF implements following features in the rawdev API; + +- Getting the object ID of the device (DPCI) using attributes +- I/O to and from the AIOP device using DPCI + +Supported DPAA2 SoCs +-------------------- + +- LS2084A/LS2044A +- LS2088A/LS2048A +- LS1088A/LS1048A + +Prerequisites +------------- + +There are three main pre-requisities for executing DPAA2 CMDIF on a DPAA2 +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 15.10 (Wily) or 16.04 LTS (Xenial) userland which can be obtained + from `here `_. + +As an alternative method, DPAA2 CMDIF 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 DPAA2 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** + + DPAA2 based resources can be configured easily with the help of ready scripts + as provided in the DPDK Extra repository. + + `DPDK Extras Scripts `_. + +Currently supported by DPDK: + +- NXP SDK **2.0+**. +- MC Firmware version **10.0.0** and higher. +- Supported architectures: **arm64 LE**. + +- Follow the DPDK :ref:`Getting Started Guide for Linux ` to setup the basic DPDK environment. + +.. note:: + + Some part of fslmc bus code (mc flib - object library) routines are + dual licensed (BSD & GPLv2). + +Pre-Installation Configuration +------------------------------ + +Config File Options +~~~~~~~~~~~~~~~~~~~ + +The following options can be modified in the ``config`` file. + +- ``CONFIG_RTE_LIBRTE_PMD_DPAA2_CMDIF`` (default ``y``) + + Toggle compilation of the ``lrte_pmd_dpaa2_cmdif`` driver. + +Driver Compilation +~~~~~~~~~~~~~~~~~~ + +To compile the DPAA2 CMDIF PMD for Linux arm64 gcc target, run the +following ``make`` command: + +.. code-block:: console + + cd + make config T=arm64-dpaa2-linuxapp-gcc install + +Initialization +-------------- + +The DPAA2 CMDIF is exposed as a vdev device which consists of dpci devices. +On EAL initialization, dpci devices will be probed and then vdev device +can be created from the application code by + +* Invoking ``rte_vdev_init("dpaa2_dpci")`` from the application + +* Using ``--vdev="dpaa2_dpci"`` in the EAL options, which will call + rte_vdev_init() internally + +Example: + +.. code-block:: console + + ./your_cmdif_application --vdev="dpaa2_dpci" + +Platform Requirement +~~~~~~~~~~~~~~~~~~~~ + +DPAA2 drivers for DPDK can only work on NXP SoCs as listed in the +``Supported DPAA2 SoCs``.