From patchwork Wed Jan 18 14:27:27 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: 19728 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 54F8DFAB7; Wed, 18 Jan 2017 15:28:39 +0100 (CET) Received: from NAM02-SN1-obe.outbound.protection.outlook.com (mail-sn1nam02on0066.outbound.protection.outlook.com [104.47.36.66]) by dpdk.org (Postfix) with ESMTP id C3D76FA60 for ; Wed, 18 Jan 2017 15:27:57 +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=uu6Ktn2tfy6kcBRQXWNSL9qBIbjmnj89+1Wm5rJvIAU=; b=Z0vrEOzxDrlsdQkIpUBl4MaQCJTw+eWhtl28pFljPqxfdATwm6iSU9PcWf9kx7z/7X9xO/O9mr70dt+PcWYspxHsunZKHIYJ8gG4+m+PZMQGKdQu8yrQmm1j/udr3TKtsSK9inpg/Cm0MlEc6KcJ/luBF8LOKsmNLJVTJbvlVTY= 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; Wed, 18 Jan 2017 14:27:55 +0000 From: To: CC: , , , , , Zbigniew Bodek Date: Wed, 18 Jan 2017 15:27:27 +0100 Message-ID: <1484749650-24867-5-git-send-email-zbigniew.bodek@caviumnetworks.com> X-Mailer: git-send-email 1.9.1 In-Reply-To: <1484749650-24867-1-git-send-email-zbigniew.bodek@caviumnetworks.com> References: <1484668143-32522-3-git-send-email-zbigniew.bodek@caviumnetworks.com> <1484749650-24867-1-git-send-email-zbigniew.bodek@caviumnetworks.com> MIME-Version: 1.0 X-Originating-IP: [31.172.191.173] X-ClientProxiedBy: AM5PR0901CA0003.eurprd09.prod.outlook.com (10.164.186.141) To DM2PR07MB559.namprd07.prod.outlook.com (10.141.158.24) X-MS-Office365-Filtering-Correlation-Id: ad063cc5-9f2f-4bf8-6121-08d43fae3228 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001); SRVR:DM2PR07MB559; X-Microsoft-Exchange-Diagnostics: 1; DM2PR07MB559; 3:INBx6fxF3t7do9/FsCyitrJ7qkxkMrKEAUAs8mESYSXk3hLJMovM4msMNqIDhJeHFTEflsclEs6wYeYdBIaXW5anIpBm2wOkjN9xpBDhZ+F0KUBsjAbmrlvfIS6XPLj94eBX6DAaLugLYtHgunZxYtxcvAtpYP+zWbJcxomDpI0UxEtcIgkuX/KUx+ab7VNXI8dmUUxcj5TJ7eWIkqRhn9lNpMS9lpqkMTqXI+7nseATXjiKQqscnmNLqgeyFwJGp/+/xiocVXry9mlX1zC61A== X-Microsoft-Exchange-Diagnostics: 1; DM2PR07MB559; 25:SAb8wXewX5B1kOdo6SMs1hRAB7nAmEu5TsFSBXzM0QU8plYyRxIdOOSZMZ6Qb4DPDQTzFjzPBizT81rZhDVI9X+3ngm6FHYdEp1zdGlRMqHJfHYtx85d/fjF+9z/VWI9+wsHOy6a5kZBH9RJCEh0Bzh668xiXondeF5thid1g27sPxblx/EXiQg3+dSzWZ648pHQkCsLGtn5+CEw+M4ouglEDfK2jyGy6cWFcbtGXaCla50l45CIx17gsSnMqEPC8T4DuBruhFM+MF+LwBHLvPQ1GMZ7eN+G2Wcg2IFMGgoDJM3oHHu/SZfZsxtaRqN+SsiXuv6Hh/VJGY/nH4M8c2FTrYdAy6Hs4Op9ADCmuI1QBqs8VHaXtCA2kpkudFJ8jJTdfnNb9n0xBOwW1qRT15mDsANBKOC0rfN7gKBIoWMt3qaPDIEdJSmBR2e1/0fNfGsG/JmeyxFQuMObqzyCCZd5b4JTWT2xqqY169duQ91nJbzavoLP9FJP0l6FBxpfcPjLCuZ4hKfPLL7Uf5xaO2Wx8Fokq0oEyFmW3xnvokcVz1KZRNtsgL7mSs6fP0Hkd0Ujhi14/GxA2/kWOMzGT0AYYybThT1Sud1M6YhaV2n7trBEsTEyyjvaYq3OTExMD0Z1ihQRy+m8FgEIgxcStxRwwVEkSniXEJxYD2VFSimI6Za5+OBNca0f1+TVSQ1eDApkp9qGr691PjYQmXzV5j9TU320+u5cXw3abxhm1GDs22Di8SOTizivOUNJ2QL4YnODpreOi8/G/HpROUzU3AgoYsdW0fwcXzXDC3xhG5pwKGmQ/27jn7XXrEnSJ28nos2SwBctKxx/pubhoAtCpeHkPng26nBN4mUClFVUMqW+hAvLZMA391oHqho1VUY5V6V/uTdWk/OiqqwLhpHosVOx5svj7aY5JSdpcbGxTCc= X-Microsoft-Exchange-Diagnostics: 1; DM2PR07MB559; 31:RMAEN5bXZgVA0mqZWyIvDYMUM/mBZf/YkY/Te/OMKV8wKwILo+PYTMjYB/V/opQnJfo1C1v+xWAfjrr7XVWPKxpVMRX/AG71ZwD9EsNFtAw6snnLCQr85ibWH5lFeF1d/OLU1pH9UPwiOq//BK3ABzEdnsYt4V7H8WBJk/MCnO1iapcQjNE+G13N40T1RHcJi99nSRhRZXb4JNlAUcaolI6QEfp+LxMfVDohDrv5elU4lTqzulCK5BQAqLkdOh3IGsXMql15Tnnsp4ZPCgxevQ==; 20:l7I3rMtZV96z4YT7HbyiBDEgX/wRHwixjmEXNTLiaWUmkz39sU5a5CLi/AiG1qBjNgG8+/5GbsxFsQR214a6L6G9sKzj4z5Wmf9mPVuC2pUtjVvw2GvrbfbgrddYo97ONWGA52OMR/PkmgTaRMIP4u08e73KXUikxUkS693uDW9YqutowDJ9jqJx7SU3eAl0jG4OIf3Swe91vvYpAO2yTk7MU0WfpN8WcznPGB6pVlEsRbJYShzUUs0cQ1w9xOiVd64x49bPAm3JHhFRVGvsnsPYreEVtcIXTOZzRuBCP8HeEvxVMtq0kMiSq0i+dqwrS0nBUOc6reIFrHIiNbtw2/j/p0LjnK85PBNfKIcrWuvi0EbNaGhvpAgg3GzQ//NOUx1IG75lQsBEq4CN72YEACbnu0QWB/gxupCTb8sKWU97umFcEAj+5U8AI419M/bIQFPjV0nKT3sqrs30xGW1RXrYthIQU4jDCJjuDjO3Xr386uN759zzsx0htE6tFSFp5AAimoIKIs/6aLfSdOe8hW/iDXb8924+mnBr4N5zeYxB4fiLaUu/oKi8UYB5nrGBy1P/Oy1WyK54cVsMj0FFGImZvrb4+8gAqRQAJM8/pBQ= 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)(8121501046)(5005006)(10201501046)(3002001)(6041248)(20161123555025)(20161123564025)(20161123562025)(20161123560025)(6072148); SRVR:DM2PR07MB559; BCL:0; PCL:0; RULEID:; SRVR:DM2PR07MB559; X-Microsoft-Exchange-Diagnostics: 1; DM2PR07MB559; 4:Is1t58EjsXX+ox2RsgAYy5VetzCaNu/rxNBmFRvNf652MtQ8AdSVA0MoZvvCOWyZBhP15BUHBVfJwsrdBTAubAwjcBYDRcnwa1vpSn/EGxSxmpdXUUdmonhXkOe42HjPzsqS+PX6ZWXLa996/1Y6R+HalHI9Y7fyFeLrJl4rb5HnSCi4E4jzbidfr3aU93Jfpabx+iYBpln/tZfypfHzf+55O1K5hZGXLaC7GG9ovbk4kWrutvPeXEVwHvO6gINmUF9zs2Ik5JRZ69Eqarewc1cRIT2oFr56ITNdmabTYuALlIpWjb1EMZg9h9c/FLpQTmzbOC/Zv/facrLWuannQC51kXNzyz2rpg7XlZhYn71MLAMWG28qWDXroY64GyhlkxbYTGdyX96bUy2SOpP0ZNBYM+efp2SCcqEu7kGRzk8tEegMkSMxNM93OJbFh5BMddcuGTdXTLJL2ZPSWYSMP17RehxjTNrjj99rPxMdJM8zwDh/zznp683FSNw7JkN+PfPptxX03Tju91Y9XDNa6EV+k5WZQiPQR4AEBGg+O3Yrt731GHHoOnXA9I3pjMGyHW4obr+x3PA2vcNwILcOt8n7dAZddVPOcnqH25LFSvJuW1Eyh8v2dPMfvTu6UDqr X-Forefront-PRVS: 01917B1794 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(4630300001)(6069001)(6009001)(7916002)(39450400003)(189002)(199003)(6916009)(6116002)(2950100002)(2906002)(42882006)(4326007)(110136003)(2876002)(5660300001)(50466002)(6666003)(92566002)(3846002)(47776003)(66066001)(97736004)(5003940100001)(33646002)(48376002)(6512007)(81166006)(107886002)(189998001)(305945005)(8676002)(50986999)(7736002)(105586002)(25786008)(42186005)(6486002)(6306002)(53936002)(15650500001)(38730400001)(36756003)(50226002)(101416001)(2351001)(81156014)(86152003)(68736007)(8656002)(106356001)(54906002)(4001430100002)(76176999)(6506006); DIR:OUT; SFP:1101; SCL:1; SRVR:DM2PR07MB559; H:localhost.localdomain; FPR:; SPF:None; PTR:InfoNoRecords; MX:1; A: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:rlJdzK1uuFeOqPVn4leHPP+CFnuU98lhp/fdkaHMnN?= E6kO/LAeM6xR3lkEn0BSvYyMhaO6G/ZUS8s9et3EmRj1ZkxCeE8GoEbT/2m2NT186E9rt6sqJNSZFdTcI4yVne91/pLbgIRare3oWHIuiorYzGj7+zCM2m97MZiMXAdwQBxz0lSm8JWYc5riQEyBB9O2DlbSLfpucL7OkPI5n5m+aEFGSXTlNOHAxU71ibjHpqUs0onpbc5u6q/gUkX52TZmoQP0sytwJ7S8yppJKzwPat4tMsFnPBDXm+72NQKMpKOe/oS3M6jCv4uE3chXGRu+tIeWAh5pN2ZHxtdXIr9JBbPKCSQ7BE8X2o40RXJmt9VhS0F0+OD02SJ21j+vtwhkbJB9DS4DEGD4bhyWHOgWS1zaaaqPbR7oGmAOmZnT270fauS31Nr5zh6QzRSSaxQg76Vkh/mqnwZR0kddwpsm9uu1gZE6rzOHfBiPkGNvABA5NE1tyntpREICJAgYNII7s581nFUGoHJ3laYs6+ItrOQzLrBKObX46Ey/HbMY+VxjNwgWzBxbvPJz1dpqkbktzHEu7RdKnX6DhNBzDZkwchcxidiJqNpfIVGLuXq9o05qI2VGmgzOg4Q99Dejjj4Omp5UfBEpEpIcDZzw0xum5vEeE5FQNLSXKetgy+cnCYu3mmzr6S4NW3LiVW8p8iWNW+HoqOto4qEYuFsxBotMLbxjL1mkQJtMuJRRw9XwS7QXgFKU0tQ0T+ZPAVtkSXoc4nUhNDZrFZ2HLNYexP9yy0Hjv0PsTzpu8m0dxy04/oedDnxFceeFOgio1aZydlmEA258bUm+rrNG/jY4s0Yorj+VX+T5Us7i2962ijiRCK/Jeq+MaOjrYHTH9N+egQiYOJb4hHJYndyaAikByF17rXhyvWGAZoAyDOQcKs3cOiEAJBmlLcb0t4tC/PWZWkgT4YM6fxl0jhF6li0otKtDpcx911fjVnhE8ySciTAdmfaBHSNrfpTwTnWbrLzM67kuCSI8y6xRJn9MPkv/gpIrU3siiGybvXPqKt2hIUFcp+6ZKtohKLIIVwun4yC3q2FNeDhRR63gre5Jauo1q3x2BlKXpyo053TJrJz7XtYuj5WVtxBhoqoqkagbpiPDS7yAaXNkQszesdM2DhgDwEIP2uPfD0P/u30JmsvS4I53e/dgRfn0FQFiJDsMB2bHDxSKWA2aHlvdnb+7jZGFylneielO9PXQ7JwGIXwcNOlm+H7ycrxGjY0ZdG3U14kCyHu6TmIwZbhxqXEf0jJ/sfH3RnjWnmUmIxsqSrwulwgXM= X-Microsoft-Exchange-Diagnostics: 1; DM2PR07MB559; 6:z3MFXK6SZwuIsnuO1OUDDx9P7eWp5xxmDvF4z1UFce02Abvgfmv8LpR5bzrAUnNXv2xb7RNFBwE3Px9ajmfa+TSCtr27ojSl26/zfgAPKiQkqH4kbNJB65IRJMk7cMid0xdSxpnAeVtIglluLPjBA6s8dnZEn52HfgZauHPKPv1pJvjnf5GkNADOARFn7gx3ISk7x4DRmZYANnlDfqy21Jz+2VA553fSclDakraerLsnh9/yrPtrfhvQCtOiSzmm9oq5ZliITpoeaWqeK+OkFG8mJF1aq0GWvhJbC92u1E8eUf0O+C3sjO9dsDz8yHQKtLsZIfvrP6J5hddSa/jXEYOHitrkR4aEoWa5OnOXwOFDgP3Y4P6pQxKoVDRruZrTh0vKy+9hag1uaXb+THg3c6nh724IjtWQ+IUss/Cfx/c=; 5:ec39cgU+vGhx/p9kGTgMXKTcRkONmPTu4Ag1ID3gmXLuL5kUPMpTGwHZe3sE4+5bI0LN29Au5JaLZ3UYzhzfrP6AFEO4lV1xqlc/X1Se+GsreWuLXALImoFmS54lzonNMXkyclNmF1IEWT7Dtj5WJQ==; 24:P4O7GwWwNezBfg6/3XmsyR4oAB03odLBHDqYdPMaWs5stpZN6OEqKhw1kyjvaTcJ64s0XraO72js5dBph3OTgSvih3hj6AgiHnXTU8mD6Vk= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; DM2PR07MB559; 7:NElai9s853zO0tR9BKlOf8IsPIfzNs02EyL0auhED3uu8iAERajTV2qQ9TPiNVVEdLKRQ0/N0ki2PJRMQviBbjmtKCGrTuASqbMtURJC0ewoTgP4qwItRb0LlBOd2TOT8hO2sG3iuogAsrV+nnV+Upne9CpnUh0uosYHrEMOARMfucLzyRXYDlzim5IzxeRQyR6RzC3RG6ziN97PsnBOO/TAqBxGQ2NOe6AO0Jx+t1pYRygPwr37OGupOnEOM0x418DnFCz7trTYg322q4tIVwGKvv9Jd71Y1Q7yGc/GPwLuSc0BuZCLuTqt9l8PeIS0SaFw0rCfgugtaZCfEVjjypJub1a+Bvnsr1mngfNOjosoHSrMeg13IC9CtlPmvbhXoxRu54Gj1UgIwitM8cGjY1p92UPT8MNKdR1iUTl9cJgg6na+DYXamx/TI44VkTVybxGPLV7iE3BEIOQ3S9pkQg== X-OriginatorOrg: caviumnetworks.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Jan 2017 14:27:55.1167 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM2PR07MB559 Subject: [dpdk-dev] [PATCH v5 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 d59e386..e9c6c00 100644 --- a/doc/guides/rel_notes/release_17_02.rst +++ b/doc/guides/rel_notes/release_17_02.rst @@ -111,6 +111,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 ---------------