From patchwork Tue Jan 17 15:49:00 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: zbigniew.bodek@caviumnetworks.com X-Patchwork-Id: 19625 X-Patchwork-Delegate: pablo.de.lara.guarch@intel.com Return-Path: X-Original-To: patchwork@dpdk.org Delivered-To: patchwork@dpdk.org Received: from [92.243.14.124] (localhost [IPv6:::1]) by dpdk.org (Postfix) with ESMTP id 60CB95424; Tue, 17 Jan 2017 16:49:58 +0100 (CET) Received: from NAM02-CY1-obe.outbound.protection.outlook.com (mail-cys01nam02on0049.outbound.protection.outlook.com [104.47.37.49]) by dpdk.org (Postfix) with ESMTP id CC2442B83 for ; Tue, 17 Jan 2017 16:49:36 +0100 (CET) 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=n88K/qXMeNPlhuf8U1sN+BeUjZY/rc6hyCTetUrjxe4=; b=YhAr+TMYmtWWAfSfNG8Ot1zQuA782+TMzIlCJZjdMOED/x7CKB9pcU9XXDyabK1NFufO3UyWGRIcqQeX7gkECqfjK/LB3/XXzQjNkWFRhiQYeLOTMC3gFM2qu5xt5NVSIINcvaQ7jTadTJDlwRMuS68V1DpGk71T4/qhDJGftOk= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Zbigniew.Bodek@cavium.com; Received: from localhost.localdomain (31.172.191.173) by DM2PR07MB559.namprd07.prod.outlook.com (10.141.158.24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.845.12; Tue, 17 Jan 2017 15:49:33 +0000 From: To: CC: , , , , , Zbigniew Bodek Date: Tue, 17 Jan 2017 16:49:00 +0100 Message-ID: <1484668143-32522-5-git-send-email-zbigniew.bodek@caviumnetworks.com> X-Mailer: git-send-email 1.9.1 In-Reply-To: <1484668143-32522-1-git-send-email-zbigniew.bodek@caviumnetworks.com> References: <1483551207-18236-4-git-send-email-zbigniew.bodek@caviumnetworks.com> <1484668143-32522-1-git-send-email-zbigniew.bodek@caviumnetworks.com> MIME-Version: 1.0 X-Originating-IP: [31.172.191.173] X-ClientProxiedBy: HE1PR09CA0087.eurprd09.prod.outlook.com (10.174.50.159) To DM2PR07MB559.namprd07.prod.outlook.com (10.141.158.24) X-MS-Office365-Filtering-Correlation-Id: cb92d3a9-d9aa-4900-036b-08d43ef06f9f X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001); SRVR:DM2PR07MB559; X-Microsoft-Exchange-Diagnostics: 1; DM2PR07MB559; 3:XVdcwqNwEaPPw9gG+grVK9Gf35GNCzu1ys2jO40pUPwDDNgc3elTZvPb58JuC2+4UlxfGwKnf9TSUnY021xuPc8ZDbDhXnFivb/TfOMzx5rxGgappQmvnRHFJ1VIjE1RMi0GqrvC4Mopaz8fwerfXpKgH/wKkbdbPoYX0s530WqI4b6fWaRwTrb8F2rDlnGdRTw9k+E+muNBEhPFUFsIR/1kASHscewqMufFA3frick/N0W0Ns/TZPWVo2H9T9L2Whn+pF3xwIFrYRQTlRwX6Q== X-Microsoft-Exchange-Diagnostics: 1; DM2PR07MB559; 25:v2U7fBqqjgG/aB2wc3B9SAwrdUTrZG05zoiIr8ifOzUxGpuZIw1rsbYG46yvmvVabtiMgiElZTeF8e5FQ2SKngXsIWcyGNmAUeu8CdX0kopHBDtuL43H9VCNlk0Uf02brh+a9nxgpp9mGB5JvZWorT5r3OHc2A82B2OGAWCVHoThy97rMRPfJ+ShkO5lW5areOM+4Zx1rbdC3gZ8gmrGZmkQKVcnaFV4kVLD4PdspSqBWKZ4MEt4tVrPx64VDOc2qHtqyhq8eOt5/qDMHibpP9VTFUm2A7fEFT8gZ4uG6YXDpRjLiwGRjUdjWc/ThqXnKRWtdXtwr3lhyjcw3KNybidsPpeLUB1LJKYO3BkASUEYCnva99zvqmRER9aG0ejMed3UIfrqTPlwi0eoR4yHFpSUUzRz1XLlSF7oVwkOWkObefWcQkKhHjwRNhUzOvgK3H7/qpyOc8BjVpuKYilfVQdkubkuCZOl1wI8v7SXZUrRHF9UqcP9gyALxYDCBGfxvUQz/q8FSCcVSj1CP7iA4MCBp1CMZ2vPsFj7oW/9+2ucjw0f7/0pCl8dn/8GovlKmFfSnLKysP5QppYgJeVqoANQ6NaDIBDoTKOvHsdNLVLs3qlZByVjnw4ThGLxTSC+MwkaISyudbntKoM2H5vTHGWglvZ7CaLWcgKVTbVxaP6fHNc5LBfGJuchAWJWokIIBfL8kEArJCGeT9htg542PfAVpn22crNLHvMWBa2CDLNgI56PtDK2G9PME62FKjPplTUlXIH+9E8vjZiXk9O4WB57BEh6Jrsr+ZPjz/BWXUAYn2BM+3b34Ezbi3drrt58awyKb98zESzSt4RjEXoqTkNZLT+vSBmeSXGhQ3Pv0PNJjwTVJpip19MXtCIPTUooEPu8ekO7eNOYahwf7IpNM7qq7E5wbhnMnDqcBtLoaMs= X-Microsoft-Exchange-Diagnostics: 1; DM2PR07MB559; 31:VIz39kyCEatF805Qc9nYH41+K1HwruGYGa9Qh4JfJts0ztmm8yuEm2rLAjFYwjpe5s36QYGomzfWVpKFDDiJEd1m3Wso0/+JZ4TgskFuXTKq74FQkqfWhc85COfGzVhMsbmrsHu270nDC7bB/4pnWDjonr5PRKe5oUYXzev0HmHWUJUYqE7rg1/6UGMAcZpqcmj8Hla/PPks1ByX6JrG2lItQMPu83AZDQmsWl3ay4xeTrhUTQAehhI23HGKikx/ZUCW42cSnoHPKrdlZ7Cbdg==; 20:WXlftAakYIDavi8fOBfZ16ZxxzMDAJhhd5m8l2FHuDO06MzHWglDzRQQ1nYjtRTr3wXOa4ZtQJT4GstXia6PnAHAZzfFaATSR9gJWPaReKaI6uowvWIHWoYDv+V4lT8VLgH8QHxbLdQPw89SXGbCg5gHYJCaSE69xBQKJ/RRi74YOdxFrw73q5Sdn3P0PylFS7JzI2Xu+dGGVmZrZMYNaTy8zbr8bd2rB2bjSH/C9QADLFOx0DuG6OGRpat+78ifRoX6/L0Dltfuxd1BYzBx017wIuzULnwTh8mo/sng1PSeaWC5AMZgZRkjYiPCk1oOuIxllvwXYfuZir8sSPMRZeMnWsTpwiuz8airMwZd+k8NAXmt3cAnNWBP+ehwTZoeveTXQl2k53vMohjdQmyuydthewSSOCRI0h2w5DZpD3fF3eENVYtfMguOpK9UwOeYOkkFnqzt5elJBsYVUuqb9Fn909LEd4joFBOzqq+9vL7tTmTUAhxfVlnl3Dm8bCKmosqKXp8pO08bR7Skgkl+j5/IP1TK69IUEQeHjr1IJ2/pFHuaa+uP4CP1ffxGO/k+mEEYE7alXJTYIgEEOP/u3VES4D4upMPyp3gXSnJ3dzQ= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(166708455590820); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040375)(601004)(2401047)(5005006)(8121501046)(10201501046)(3002001)(6041248)(20161123555025)(20161123560025)(20161123564025)(20161123562025)(6072148); SRVR:DM2PR07MB559; BCL:0; PCL:0; RULEID:; SRVR:DM2PR07MB559; X-Microsoft-Exchange-Diagnostics: 1; DM2PR07MB559; 4:x/dLKTLl7lVv9NP4lXMWgb14n9RZpNF1abFaosxoB8nopEmazQBnZTwtIrXJmd9sB5hv0e5ur3tjaC+G8XZE1Xm+INE1+tg3BLldcaoM9ReCPdSL8KiX95cVWev68jyggrO2npfVTgCDidDzejdwObmFAR/xb0SfehJv7nW2UMjlP7qmFmEANV8VTH7zKD7DAkEcWWZzV9OnuOhP4BK8SLgBxPdKl/Z5ZLKxXGz+aTxtOT499nu0QLzEPQgCjGCRbVBklXPpQvQ6NbOj0+YFTKugI93Ht+UPcDci1QJUv4GcYvqrzqJj/8F8uPL2QxcLhDPOM8Zy3JlU1goR72jKUbqIzd2RD3N3InOiWn5ij5MEuQItqEKK5BezvjvKXDY+jr6DTQJX4DvXndDxaZAuH/H3GRkKv3Vog50LaH/gB6j8vBLUi3ykH0VaxZ6qoGPfR2hpC0fJdl+y9p/XtMq/UT/XzMohljIjvPgvg1YX3yKQL6zgGe8JLf9JjaN9gU6ZVdXRcUabzrFMGFmmSCtRA09KY3BWts4f3UC65vPIxS7vQH2qfUPs8rzIBKX45H2hFCVmaanTNSUbIIll5HSxukNIEYcSgrvC1JsoEtlEci7sAGxf51S9Wl9YaqvKxIa1 X-Forefront-PRVS: 01901B3451 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(4630300001)(6009001)(6069001)(7916002)(39450400003)(199003)(189002)(105586002)(7736002)(6306002)(50986999)(25786008)(305945005)(42186005)(107886002)(81166006)(6512007)(189998001)(8676002)(6486002)(36756003)(2351001)(101416001)(81156014)(106356001)(8656002)(54906002)(4001430100002)(6506006)(68736007)(76176999)(50226002)(38730400001)(86152003)(15650500001)(110136003)(2876002)(6916009)(6116002)(2906002)(2950100002)(4326007)(42882006)(47776003)(5660300001)(97736004)(6666003)(92566002)(66066001)(33646002)(5003940100001)(50466002)(30001)(3846002)(48376002); DIR:OUT; SFP:1101; SCL:1; SRVR:DM2PR07MB559; H:localhost.localdomain; 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; DM2PR07MB559; 23:vD0oaMFfYsOI2k9rxHwJ2mYzMLsFoz1KKc72+DLIjg?= x7CCFEpCmvy6ZNi4FYUkAhFFT+SpEo0Ltjkn64lYDeGvJSkB80rHkRkZKpH4yANNgaxKqvB/LYprFJFGTqevyzDZp8z2GMjpQzg1jZ5YWJW8oOknoFnbMa04iDdLRIpb/PQeCu6QpcMMyfpGdwFnGPC0cUdYnhe4smiSMJA19vJcYypaMH/DoNZ9LQkc8Js02P8/O7avFWaZaqlUmK2ndxgF8oy1a7+cgEVbOgYcTqotRLjG6mOKs9bbfs+XuA1xcOeyq4yz1YYjkuXSQAJPdg7dOqWrWzjykx4Y6iFjjpRntDMDXWXGKjBV/8grOoXCNqFR245yVx4p2M+Y6OzqfCEpYnAUMEpEn9vV2vRUnyF/mrecCV20P/PyDGI6/7ohv+/w72aT3vp1TcpVEiQVwJfqHlWEsMiKK6IFEh3v6HXVUfGsDVKi2VzxZETrmysUljG/54nrX1nnshXLfr2uwnoKKqHiSh/rLlDyLsSARMh2jMDPJLeE2r0LBuokrntxfqIg2Yji+DFuQ/VtPX9VPRtUWAL0bPxYSmCnQ7wDHrp+qDIRbuwyRbgItTwt62NB9B1tmplIrZQlVcLCfy3BdsXtsL7EPb3nJHo8Qs4Wi7AGnRjFS4K83MLBQBe0qH1z88zOFGDeoNDxSQcerSdWGUkdM0o1sHTOJOAK9Klr7td2+GaOkQVJ8xBxgm/FrT+12gUY4RShZTRJIHyaFLGSlLXlHXM9V5upJhMavtoWwZRcbWNSjXdvJd/Pt+zxr/dh0nKbZbO4LsTubr+eh4k59cRbYIQs6Y8uoERlyIFAJ68h/LS8AsibMTFpgInYnv7/HVUER3BI5U/wrj1O6cj1qXVxvXqOaA8b4w5a2WZJGoA4nUi0UGflEqHUAEeo9bZD+lO5CauglXBQ9N5Hsq+QSPSwGZ+3+GvFeFpS8HnSih0XEhlagdgVPAD8BSaaIi3Quvigz8G1Ge5SIGP/PKZYytu8Jxv825L9redChNpANuPLVyJn9Ho1ZU5q5WYcohfMy7aI6XB5AwiM5kA2684ZIQz5oRh6Tx9xsb3nPMtnRjSPwiRECSKaOhuFe+JRIvYtEFdsH3h/wQSvLuPr5ttnMjJsRvGQ2exZi1zx6gYXGOHeSpHi1J+2jnyMA4hVDJ7r0DcsIeSWnKNnIqmYON1karc+LFc3CMIGwzNufR8ivndZrcn7Jb0Fi/m3aZzgyKlp0NEsuYpRN2OfYnws6owTqwdfe4b1DnfFYxWPQarLrYORDdFLn5ikK4lEFfZa52Sfg= X-Microsoft-Exchange-Diagnostics: 1; DM2PR07MB559; 6:U3TRPsBPE5O6gwSZ9Nc/q5saujunUEiUJbEH9eHZS1I2xuxmrFsQwzZ+wiJlcYtmdOgQDMgcNj29oumy0hhwUNky1Dme+J1Lsb8XG+hdDZ1twxTB1mmAclx5OyMEiMhqcvO6JTIw0g9WQsYQrfQy0I7wNZex/ORRVb9uL35xJ2yTz5cnkBoDFEhL6JecpW7iIxeOQR2ujkqbuml60FHYbrLKB0O6HdAZ0g3BM9J6UcyhwA3o4Fxt5CnIi09aKv9czglUGQwGSG/GE7xifkNtAFmBKYTAU6dusxPZFXtdKWfSurB1Q0+76WXMVgiJ/tlsOhw6XFiXdVXJTq7V8Ji67PpTIglIwSTUUQxG6bBy9FOjiZwWTm6frwff2RVxb2ZaQi5Jn0zXyLz3kypcViQ0v0zq1WOXKGpb5wtVOt3z9qk=; 5:g7/VM3HuGiL+BBbLK/0g847HMYdE6WkC6swtzayp+rllWEwqQ4tT1+XrcbfPL3B3SLMtuK3lQPl819fWSUG44HqaMilweRb+ONMcwaoHARfiu3MdbIN169biEzGT+fuveORfbIv4tqYYiH4XWeA6u3dlK9Rl9TRHE3iGjv4Rz3k=; 24:1FT5GvZcXY/utYfhPsU4N6FIIMGZ9Q9xEx+FKHZ4ycvBw2sLUkA3pxspjgCIVltkS4keJTHIt/91lCXhAgsPM0mmmAGrs5d7518qHoAW8iw= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; DM2PR07MB559; 7:/4Ykqe3tYBrg+RGCgbxblOLsshLUnvoT9FTuJFi8qnOfQH9y0jRIPcSni8+6uaD9A6mRYPkuEPmcyRfqlUqSTJDbPwZnKxVuY5YITMlmI9LU7v8dHCA7ojEoVjVeYal9Ba8mkGXWimopkOWYSj7MRkQoQRuScwW4SgdSr26FPe+9x88Hi01QsE6gU3v9gAcGe+vJT38I/gtCbXwMmeLzG1qemGpwoMBW2f+Cx4aOpBJcqZ9Fmk//gkvLXjT9rVdyoH1QV8OxxDoVoMn8u+1nQRjrsAKrGYfikDsM/U4gDfTTKBUpCYJyT1f35fHzEPT5TXlr3ge1TPeWdC9vIAxUiGi/z4OLkwpaIQ2UgHIh18GG2IvwSGRBVAbw9Opo6Jnx0zSMfTtPfcUTR3TYmXYYtmsECgPRAAC3R7yKIi5TarnpFIh0YfiAUfPa7xqcCseUS2tx7C0gu/pE9+vfGrxYQQ== X-OriginatorOrg: caviumnetworks.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Jan 2017 15:49:33.5128 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM2PR07MB559 Subject: [dpdk-dev] [PATCH v4 4/7] doc: update documentation about ARMv8 crypto 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" From: Zbigniew Bodek Add documentation about the driver and update release notes. Signed-off-by: Zbigniew Bodek Reviewed-by: Jerin Jacob --- doc/guides/cryptodevs/armv8.rst | 96 ++++++++++++++++++++++++++++++++++ doc/guides/cryptodevs/index.rst | 1 + doc/guides/rel_notes/release_17_02.rst | 5 ++ 3 files changed, 102 insertions(+) create mode 100644 doc/guides/cryptodevs/armv8.rst diff --git a/doc/guides/cryptodevs/armv8.rst b/doc/guides/cryptodevs/armv8.rst new file mode 100644 index 0000000..ca8781e --- /dev/null +++ b/doc/guides/cryptodevs/armv8.rst @@ -0,0 +1,96 @@ +.. BSD LICENSE + Copyright (C) Cavium networks Ltd. 2017. + + 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 networks 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. + + +ARMv8 Crypto Poll Mode Driver +================================ + +This code provides the initial implementation of the ARMv8 crypto PMD. +The driver uses ARMv8 cryptographic extensions to process chained crypto +operations in an optimized way. The core functionality is provided by +a low-level library, written in the assembly code. + +Features +-------- + +ARMv8 Crypto PMD has support for the following algorithm pairs: + +Supported cipher algorithms: +* ``RTE_CRYPTO_CIPHER_AES_CBC`` + +Supported authentication algorithms: +* ``RTE_CRYPTO_AUTH_SHA1_HMAC`` +* ``RTE_CRYPTO_AUTH_SHA256_HMAC`` + +Installation +------------ + +In order to enable this virtual crypto PMD, user must: + +* Download ARMv8 crypto library source code from + `here `_ + +* Export the environmental variable ARMV8_CRYPTO_LIB_PATH with + the path where the ``armv8_crypto`` library was downloaded + or cloned. + +* Build the library by invoking: + +.. code-block:: console + + make -C $ARMV8_CRYPTO_LIB_PATH/ + +* Set CONFIG_RTE_LIBRTE_PMD_ARMV8_CRYPTO=y in + config/defconfig_arm64-armv8a-linuxapp-gcc + +The corresponding device can be created only if the following features +are supported by the CPU: + +* ``RTE_CPUFLAG_AES`` +* ``RTE_CPUFLAG_SHA1`` +* ``RTE_CPUFLAG_SHA2`` +* ``RTE_CPUFLAG_NEON`` + +Initialization +-------------- + +User can use app/test application to check how to use this PMD and to verify +crypto processing. + +Test name is cryptodev_sw_armv8_autotest. +For performance test cryptodev_sw_armv8_perftest can be used. + +Limitations +----------- + +* Maximum number of sessions is 2048. +* Only chained operations are supported. +* AES-128-CBC is the only supported cipher variant. +* Cipher input data has to be a multiple of 16 bytes. +* Digest input data has to be a multiple of 8 bytes. diff --git a/doc/guides/cryptodevs/index.rst b/doc/guides/cryptodevs/index.rst index a6a9f23..06c3f6e 100644 --- a/doc/guides/cryptodevs/index.rst +++ b/doc/guides/cryptodevs/index.rst @@ -38,6 +38,7 @@ Crypto Device Drivers overview aesni_mb aesni_gcm + armv8 kasumi openssl null diff --git a/doc/guides/rel_notes/release_17_02.rst b/doc/guides/rel_notes/release_17_02.rst index 5ab7019..872b288 100644 --- a/doc/guides/rel_notes/release_17_02.rst +++ b/doc/guides/rel_notes/release_17_02.rst @@ -67,6 +67,11 @@ New Features * Support for single operations (cipher only and authentication only). +* **Added armv8 crypto PMD.** + + A new crypto PMD has been added, which provides combined mode cryptografic + operations optimized for ARMv8 processors. The driver can be used to enhance + performance in processing chained operations such as cipher + HMAC. Resolved Issues ---------------