From patchwork Thu Dec 22 20:16:53 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Akhil Goyal X-Patchwork-Id: 18440 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 0912F10DA1; Thu, 22 Dec 2016 15:51:52 +0100 (CET) Received: from NAM02-CY1-obe.outbound.protection.outlook.com (mail-cys01nam02on0072.outbound.protection.outlook.com [104.47.37.72]) by dpdk.org (Postfix) with ESMTP id 1371A10D8E for ; Thu, 22 Dec 2016 15:51:41 +0100 (CET) Received: from CY4PR03CA0002.namprd03.prod.outlook.com (10.168.162.12) by BN1PR0301MB0738.namprd03.prod.outlook.com (10.160.78.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.789.14; Thu, 22 Dec 2016 14:51:40 +0000 Received: from BN1BFFO11FD039.protection.gbl (2a01:111:f400:7c10::1:140) by CY4PR03CA0002.outlook.office365.com (2603:10b6:903:33::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.803.11 via Frontend Transport; Thu, 22 Dec 2016 14:51:39 +0000 Authentication-Results: spf=fail (sender IP is 192.88.158.2) smtp.mailfrom=nxp.com; nxp.com; dkim=none (message not signed) header.d=none; nxp.com; dmarc=fail action=none header.from=nxp.com; nxp.com; dkim=none (message not signed) header.d=none; Received-SPF: Fail (protection.outlook.com: domain of nxp.com does not designate 192.88.158.2 as permitted sender) receiver=protection.outlook.com; client-ip=192.88.158.2; helo=az84smr01.freescale.net; Received: from az84smr01.freescale.net (192.88.158.2) by BN1BFFO11FD039.mail.protection.outlook.com (10.58.144.102) with Microsoft SMTP Server (version=TLS1_0, cipher=TLS_RSA_WITH_AES_256_CBC_SHA) id 15.1.789.10 via Frontend Transport; Thu, 22 Dec 2016 14:51:39 +0000 Received: from netperf2.ap.freescale.net ([10.232.133.164]) by az84smr01.freescale.net (8.14.3/8.14.0) with ESMTP id uBMEp6TG013482; Thu, 22 Dec 2016 07:51:35 -0700 From: Akhil Goyal To: CC: , , , , , , Akhil Goyal Date: Fri, 23 Dec 2016 01:46:53 +0530 Message-ID: <20161222201700.20020-5-akhil.goyal@nxp.com> X-Mailer: git-send-email 2.9.3 In-Reply-To: <20161222201700.20020-1-akhil.goyal@nxp.com> References: <20161205125540.6419-1-akhil.goyal@nxp.com> <20161222201700.20020-1-akhil.goyal@nxp.com> MIME-Version: 1.0 X-EOPAttributedMessage: 0 X-Matching-Connectors: 131268918993014675; (91ab9b29-cfa4-454e-5278-08d120cd25b8); () X-Forefront-Antispam-Report: CIP:192.88.158.2; IPV:NLI; CTRY:US; EFV:NLI; SFV:NSPM; SFS:(10009020)(6009001)(336005)(7916002)(39840400002)(39380400002)(39850400002)(39410400002)(39860400002)(39400400002)(39450400003)(2980300002)(1110001)(1109001)(339900001)(189002)(199003)(6666003)(36756003)(81166006)(8936002)(23676002)(50226002)(5660300001)(110136003)(305945005)(189998001)(81156014)(50466002)(356003)(2870700001)(92566002)(85426001)(86362001)(8656002)(8676002)(6916009)(2950100002)(626004)(4326007)(106466001)(104016004)(105606002)(2351001)(1076002)(76176999)(5820100001)(97736004)(50986999)(68736007)(77096006)(2906002)(69596002)(47776003)(38730400001)(33646002)(7059030); DIR:OUT; SFP:1101; SCL:1; SRVR:BN1PR0301MB0738; H:az84smr01.freescale.net; FPR:; SPF:Fail; PTR:InfoDomainNonexistent; MX:1; A:1; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; BN1BFFO11FD039; 1:VtO9uxHfeBtJhXLKT9ryOS3+u3GDhtGy8R7qkDDCufSGmUhPtk3PC/LpymITWZSVlcLk1aCQyOKBvSSpGuLnOhYssEy8UmpWNQg6GK4p9AL85bdU8UvsqieSTdCGF3XrXrakhMHNNexxv6DMmtGFqk2WhD624ZYvj2FEfn3HW/CVFy3xSpLArwvWNO8BNZq7q1oBQoXTL2CYXlTlPBqqL0CTLvsV248vT/ngXoWTkF8/De1ECHyWr0oZg79lJfm8/tl2mqVY0loIgxvqsz3yUENX0bzd6jx4EZYJnpHHM75R8ICiyz7ZOzaEPKlk0eDLlmK2u5W+DSTNR1/Oop6ithtpMTmolfsviK3qsx1YaBrWEoDlLY3jrTqU1ckbWaV3OsM8jZ7wbhh0exLFCEv0knzJCoQpoiLlvMu+0TC7o8SVFyheabE+daIc03/NQMKDFIdEA8RfYIP5C1fmbvyVKsQEya3NrWQ9XU9HKCFMT9hAsip6PHnoAh5W4cOsPXx1SeBWtYUA6ZhhLOpOqJMkc4eNUSo3dZgEUn4IhJpFktEP502sjy7W7OqTu4XzqhYtreSnlzxjY8bnKQR0S2rEtfqcs+nuIRaIY53J6YIBF2RWjc9l9/BuHkrHLp53qLOCuS3ARl+yjRKFTOnji8JmaPVFfBvDrywC37bojU3Xhy571i0Khs9ljtlLO2omLAn5BZ5CGhSD292m1+58r27lcJPL1kgHPgOOyHDRC/QO3OReCA6vq7pTACJnHiQjmE0TRi4XGbcn32n9R+guON+ZUQ== X-MS-Office365-Filtering-Correlation-Id: a7434c95-209f-4330-6e33-08d42a7a0915 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001); SRVR:BN1PR0301MB0738; X-Microsoft-Exchange-Diagnostics: 1; BN1PR0301MB0738; 3:aAo/ZzXG2Qd/dY1H2cwWx+OK0LH2aK8ESrhF5L6IZJ7KavVu21YUH45+cYizgxFoWQzgYTtOqyTM8XchXBoTwgvyhNx28FA9135KqYnwtm0l6UAB4W2f73Vo69C884tbf43MXjsa6qKxWeMbaz4pXb1406HJ+Pt8wb4cOz4TCrnNRX0ZctGNS69Lw5YtjRkxjnd1apAyV3UiC0TrPtF1K8gjOFux6dcaOMVAJDmPsI8oUPb3K/Pksdx5k1WyFxnZ1Vl+O03C4NERiv/Tn0eomNIFFq2VlDSboNc3Lbq2xC/Dm0LtSRlOzrAncN1K05KhnTAFYjCluvhFy8zX15C0yq8Q7tQgahINfX45DhIwiUg= X-Microsoft-Exchange-Diagnostics: 1; BN1PR0301MB0738; 25:Q4Qrw7eY0cL8bdZgZy3LedeaaMVk8ld7NHBchklIteVF1fFBtznYFf6WxYXzauxryASlFtsB9zxvlrqDuCRbB7EXzIfjiVrELgg9M81yh4Lx/BXTKB+TNbpFhqLw8/4wEcSm0u5/ptDNd3N/YbWn2kZmifzuPCHpSTO/sMuJTXAqpJMB8K4jmyrL43m8iBgVAoj7rGXlNql1yPh2AEPLUT5Vs1emeNM4GbhsTtKi1T+YY3OqTxf9eo015AkJr4pwhPl04R8y62zohnkVSF7tIP0hUZ5Qd7KC9CORKY00ECZiNRCQtGnhRXy4GF+ZwM0ING7zr9G0qg865nwlen/Fp1K+I+DK6l4yVHx6eIGv23wwdWsQiRz7/qipzfZNmciYZv3BPmMaToDrCdKIRP3zDbvZu6bOXXHxIYsdiJPsiOf28wBH9Lm8KMzHk+hOFiYjpPZnbiI2LtpFShgyYp34WFmXd6qEhDVqcRJxbzozmg6tsVYOH1sTMsTp/UYyWAqAnwNJqhNMuGlS7NnfUHkrSLF/toOIGud1lBoY/c/u6MZjyyZTk6neEqpRMoICkiVCxtEuBiQi0BPhWc30S1PX/BD50BXrSxOerzCQOP8s/FxQkGVlKhLLORw7DUdvME8PWS9EPImYVqo7nEBErd+POqEFXHHpJm9vvOWskaqxZbvCAqpFuyLAIDD3yizI9BqP3+dJbFK2kngz5ZQEfeBcsEf6KXE34bwF7SfjrAGAOtWvbkHzadQz/w+0pDnUr2bY/pgOf4R575dLiVdlbGJ+nFmUytrpRei7kd4BZ0HjSZ5K1bBxZWRuZnrYVWqqU0zPAyztP7Sgrmmh2athgcy9W2dUNt56oNOw7fCMYBJSGVyiHC2ckNdf8JW52mUQScptnJTDXNOyOcGG4HJWcLKIcw== X-Microsoft-Exchange-Diagnostics: 1; BN1PR0301MB0738; 31:8kwP7hEOZJtopJ7ch4TWwVRI3cvl86Ceo8tFa4WGyjEXwhVUqY0f0ZMv4b/YgQ17LSSjFTn/fnw5hinOJ4/fNR7GDOa5j9QEjwMRKrPxPTFuo85oAAeDsOSrh6/KPdutekbbnQEW7BwTIBBNnE+uhzeIFLpJ2c5J/2zWvsGW3+W4FM/+CEJSRjT+bJVpewTFEY/NdVYL7jvP+ULqGWfQztYv6YaLj2hdnXBOM2gmASr8Z5IOorkhSn81AWyBuJAIpxCQIBMuo6p3Zx8ZxzKEVQpFMfV8fl0LBxxKudGqDOU= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(166708455590820)(192374486261705)(185117386973197)(227817650892897)(21532816269658)(264314650089876); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6095060)(601004)(2401047)(5005006)(13024025)(13015025)(13023025)(13017025)(8121501046)(13018025)(10201501046)(3002001)(6055026)(6096035)(20161123559025)(20161123565025)(20161123563025)(20161123556025)(20161123561025); SRVR:BN1PR0301MB0738; BCL:0; PCL:0; RULEID:(400006); SRVR:BN1PR0301MB0738; X-Microsoft-Exchange-Diagnostics: 1; BN1PR0301MB0738; 4:+jxmL57j+HmJJXDyOIK+3FC0Ph8TZVsjcXtYv/1uJg72NnevJKiwlNb97msLcAM8jie2lkfQ7HvH9qk5bswp/xEnghzHcNC1Q+TglXtIbcN+y/bMBwSE3aUx17p613RPFA+knEwODZ9H21+C5XMOaLNOE6rKq6kKFAg1TCXWqWzA9klkppucyL9lKt1nLxyNTRIlkmNLaHislMfpzaWrgorysB1aGnilL/IhFk29ww6MtEK8AdYSQyfwOLs+fUNDKaeanQBeuMFk0ytjQmE6GlIljXuRNwrRUxFeXOWY3Kq24LXLfCxU2/Ej4WXxsDDScPEQWFj5VRUcZWZqxTdTUQ+xy+/6gazXTgijeEDNqtamKcieiFzqfhrjWC4a5B+6jIfbDBFykZxazaVRAEvz+V9ZwrmjSPqMtpoVbxxfh2C2AtNpXr6KVN52Mhvi/GuXKM8lOKi8ysbv8dMXDbgv70yfTH4n+DnWRKCyhkFtG13KfK2ipCJT46oT9IoCnkqsNbClXsW+lQSfW71vMJenQ4xHBhH2E/MbUy6d5rgAmDr/XxpQuiOpAJfgPBZdcMUr7SClW/SMkPAjcMUCY6Dw+8XHYYBoO0T/3cd111pN34v87pz5p8825M1HOKZ7So1pC9XaSv22yXrhKZx+DY5CE6RgwWk8PW9CfQgOOko4+rYWwdRZTywkzlSbvimQO5JVo8Sw9TP3dfaPtnBwvyIfJFKCBAaPl2E6nSxWZSRQZV37e3AdsSOGO0buHXuU4uYNGl0llvSdim+PCHCQS/SI8im/Mlhl1fXC/0PNQuey8ozX37BgvpKR/+Cs0PH5ebA3IdHdJUxhM/QaLht2zGv2DvNXJg9fKl2zGgjsbu38W2kIbSzHxxl/BjTJ84oI+JE3WL1YWh2RFhbT+e3QRvNNAWcCv11qt6Zm+XX+p3hxbG8= X-Forefront-PRVS: 01644DCF4A X-Microsoft-Exchange-Diagnostics: =?utf-8?q?1=3BBN1PR0301MB0738=3B23=3Aet?= =?utf-8?q?cZfVM/tSPfknkFKD4Y7VO8qGByPuOIX85mI5cT18e4aiUhwKkkV9YOuE?= =?utf-8?q?MeqNBNk/TSNA19FgBb3plBvQH7AVk5usCjWLoo7/xEc+4HTZM1g4xkEu?= =?utf-8?q?q8BP+6JTNzVtTwxI5O/iL4YZ87nqjPbj8gEdOSD7Husz1Te3pxpsTXWi?= =?utf-8?q?LD1MRfPC0j9X7tnhSmbaulAs2KpEFQ/JrEAO0bwyU4RC3rt/Kl7kVz9e?= =?utf-8?q?1VD+8lwnf6iK0lPVPo0YT8BbIiNQrsArtwFn4P3pRpa8Z0yZVQdbXHTr?= =?utf-8?q?JWeEbhVVGdA6RPi4wxeDFNDyHh81lNyVA89woMmGcp/r6Nr5wTDO9kBU?= =?utf-8?q?svrmmvm0GJmPzT/2MjNgAjEOiVK2IzLWDRwIhkP8NdEW7KrBUuCwrmy5?= =?utf-8?q?mhNjCpIOxcB+9VHM6+g/IzZVNFo80T5AFJvvNcNXueLeTA4MNeYydKln?= =?utf-8?q?0C+H7OfVm1ahGN4uWB0M8cupkG3BqS8620JQksTi/jipjEws6m55mdyu?= =?utf-8?q?Lg2a8lx36Csy1p7ofqrlZhVo80dZ1LZfGEzaZ68mzOxIjC8VsmGQcptY?= =?utf-8?q?nuO5e4xPECu5gFK/IO4lmQ44vHaiaGS4omPwWPb+kNInWlrSvdEZkw9R?= =?utf-8?q?WWk2uoNqEsF8a5YPK/TN5dtoixoAVhVSbByPJyLBSJnw0SPG+iNjXxed?= =?utf-8?q?w0GMNRdIlQfnlbU0W9ji4VozXZkaeNXOquNbhNLhMTmyzSxxvVZt4Hfn?= =?utf-8?q?XTeeG0X7GuotAqjnJ07ETqshR4cMv3KVCldI2tUqNvV7hmKTRNpnog07?= =?utf-8?q?oz5sp1hfbYp/NUBJHHpNJobrlDoH9x25hV8JVaIvwF58Q7lcJOlNlWBn?= =?utf-8?q?inlpFkftx7xU+/1TipPdNLG0uKZWuvFZs0CfZ350SU4p9a5jtHrAiYIw?= =?utf-8?q?bFsyb56hCC+xkkisITlyYf5OHYmVVv7IykKpBrQTcAt6+K0+6N3yzsDA?= =?utf-8?q?8c5wyPcYbatyPxULA/6frI8u/weOTftXz3Sx5hPcAyhov0a7OzdOBuMy?= =?utf-8?q?atXigm9hGR7l0NOLujEwiMi4ikEfLscS9PBLDvM6+5XGlQGqYe00jLaZ?= =?utf-8?q?SBLbL2gAMxcQ3cd/9ZhrDeizBkea6CBbvIe6BY7sBcqUnqXsVtO0aE3O?= =?utf-8?q?F1bknajRv+vRiCAQby2C9jyyovc6FFH42gMuK0y+6cslksnwtdpGI+2D?= =?utf-8?q?kOrkFShespjfbpNuqsz5J6XWBXBQSNCxE2Iqap+xlJW6zcrZe/af2g6+?= =?utf-8?q?asqkADuKnKq7My55mr7SLwWUlpBEENrTqFZMKxUrbvZeoIw5SXoI8aF6?= =?utf-8?q?h28Qd07EytVArCNgXIOM5R4uLk9/LB1/4vF0h/Aw64tcb66kFS5ZNg?= X-Microsoft-Exchange-Diagnostics: 1; BN1PR0301MB0738; 6:xFC8qsgwgI5pnlbLRv7eepJgs01/TaUw87LlEIEZw7V7SdSrAN0MN0FWDAE2pMCw0LukSu2JSctm+g+TlFHPp/ZYL+azy3mR4lOQfOkRmkP/INV0WMb83ile3WrWNu1jpQ7fSmL5Upvn5RhCN2/qjbqcxRpiQv/QA2vwR8wU6aeQ7dVGGkGUVxejlNV4KRJChBiTrMeDVJOa5jcECzU+bxP5dhxasHGO0felLFVjZaCs8By1Qh1cfEffNEDD3nx2szAWOLiOinmKHFI1IOeJRY0c+7iohKlbJmXslBvFbg22JMVgf6Vd7VmR0TLWWZM42RaajC7Kfxnl03HYV5CrpUmxY5/sITO8uRLazmxlg90NTG4fngdy7bjYxpVigkZDVYgo2JFFoMbOS2FBg5AHiRZnta5KbM44LnshColXSN/rSJp+DruqEEosuA+DLQnY; 5:FjSbQ39V7FURTCjmIrwQtQovmdztAUG/IOlXR11K+4qTHDCI2OO6kFRNUGU9IqdPcn4aWmKXIYSxfQn5CFuVXfnwB0vEYLhgSU5NEmIQJkX1NClp8lGjGU8Ty9LpbeBocCKt6qSMQ+vh5C2+oDp702ngRCUtMVkak0xxD0f2P04mq2QFn2CLFRKt/sKZdVOy; 24:2MZ4O3I3rfBdhDSfocckQCAotmxpTqxKgLjrbmgvdrw6SnfqzGeel4Xg8YMAZdCVBzS0iMHvmOHgH4vgnjXg8H8PWJjN0neuQMsdvrq/5Fw= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; BN1PR0301MB0738; 7:bcafxFWzrx/8xxTXXLkOQWLhukuCnUh5Mm9TYhoz/JCSuFBaGbpqCLQJNysfIYBxMVGnMOzBeQwlyzgEKoHjNUmjVM7dua1QJvh85QsgBrjjWuikXgLH1U+P81BOXWNIMzDZX5FX2om8yYWuhTLxYomZKAVfmHvQJLt7E2p4/434IJgpqIgTZIePDweqr8tnIcBUwOpF2FyIkxUPl7HUpDiylvkZVDOZJEWOGjZWkNc+SmdWr3PUQGr21sRnm/HwubP52OoJmDUb4rvRKi/A3mEB05rdiCkAjMiT4N1p89Zp8Y4OS/K2VC0eBbwSCU8WgLxiVCxxB0GyyFSbg2Dy93HrmrXsDjBddkZQSDYmIkER5ZuO5qCdzit0TJZ63Idpyszc9vrnJYfMwXZ2gXSoWqAtNTnqdpeB/ogUnCF4eKrXoKbngyZYxfu3uR18P6cHdLTzqPQn+706Vs0kgsZ/vw== X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Dec 2016 14:51:39.0206 (UTC) X-MS-Exchange-CrossTenant-Id: 5afe0b00-7697-4969-b663-5eab37d5f47e X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=5afe0b00-7697-4969-b663-5eab37d5f47e; Ip=[192.88.158.2]; Helo=[az84smr01.freescale.net] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN1PR0301MB0738 Subject: [dpdk-dev] [PATCH v2 04/11] doc: Adding NXP DPAA2_SEC in cryptodev 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: Akhil Goyal Reviewed-by: Hemant Agrawal --- doc/guides/cryptodevs/dpaa2_sec.rst | 233 ++++++++++++++++++++++++++++++++++++ doc/guides/cryptodevs/index.rst | 1 + 2 files changed, 234 insertions(+) create mode 100644 doc/guides/cryptodevs/dpaa2_sec.rst diff --git a/doc/guides/cryptodevs/dpaa2_sec.rst b/doc/guides/cryptodevs/dpaa2_sec.rst new file mode 100644 index 0000000..e72cdfd --- /dev/null +++ b/doc/guides/cryptodevs/dpaa2_sec.rst @@ -0,0 +1,233 @@ +.. BSD LICENSE + Copyright(c) 2016 NXP. All rights reserved. + + 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 NXP 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. + + +NXP(R) DPAA2 CAAM Accelerator Based (DPAA2_SEC) Crypto Poll Mode Driver +======================================================================== + +The DPAA2_SEC PMD provides poll mode crypto driver support for NXP DPAA2 CAAM +hardware accelerator. + +Architecture +------------ + +SEC is the SOC's security engine, which serves as NXP's latest cryptographic +acceleration and offloading hardware. It combines functions previously +implemented in separate modules to create a modular and scalable acceleration +and assurance engine. It also implements block encryption algorithms, stream +cipher algorithms, hashing algorithms, public key algorithms, run-time +integrity checking, and a hardware random number generator. SEC performs +higher-level cryptographic operations than previous NXP cryptographic +accelerators. This provides significant improvement to system level performance. + +DPAA2_SEC is one of the hardware resource in DPAA2 Architecture. More information +on DPAA2 Architecture is described in docs/guides/nics/dpaa2.rst + +DPAA2_SEC PMD is one of DPAA2 drivers which interacts with Management Complex (MC) +portal to access the hardware object - DPSECI. The MC provides access to create, +discover, connect, configure and destroy dpseci object in DPAA2_SEC PMD. + +DPAA2_SEC PMD also uses some of the other hardware resources like buffer pools, +queues, queue portals to store and to enqueue/dequeue data to the hardware SEC. + +DPSECI objects are detected by PMD using a resource container called DPRC(like in +docs/guides/nics/dpaa2.rst). + +For example: + +.. code-block:: console + + DPRC.1 (bus) + | + +--+--------+-------+-------+-------+---------+ + | | | | | | + DPMCP.1 DPIO.1 DPBP.1 DPNI.1 DPMAC.1 DPSECI.1 + DPMCP.2 DPIO.2 DPNI.2 DPMAC.2 DPSECI.2 + DPMCP.3 + +Implementation +-------------- + +SEC provides platform assurance by working with SecMon, which is a companion +logic block that tracks the security state of the SOC. SEC is programmed by +means of descriptors (not to be confused with frame descriptors (FDs)) that +indicate the operations to be performed and link to the message and +associated data. SEC incorporates two DMA engines to fetch the descriptors, +read the message data, and write the results of the operations. The DMA +engine provides a scatter/gather capability so that SEC can read and write +data scattered in memory. SEC may be configured by means of software for +dynamic changes in byte ordering. The default configuration for this version +of SEC is little-endian mode. + +A block diagram similar to dpaa2 NIC is shown below to show where DPAA2_SEC +fits in the DPAA2 Bus model + +.. code-block:: console + + + +----------------+ + | DPDK DPAA2_SEC | + | PMD | + +----------------+ +------------+ + | MC SEC object |.......| Mempool | + . . . . . . . . . | (DPSECI) | | (DPBP) | + . +---+---+--------+ +-----+------+ + . ^ | . + . | | . + . | | . + . +---+---V----+ . + . . . . . . . . . . .| DPIO driver| . + . . | (DPIO) | . + . . +-----+------+ . + . . | QBMAN | . + . . | Driver | . + +----+------+-------+ +-----+----- | . + | dpaa2 bus | | . + | VFIO fslmc-bus |....................|......................... + | | | + | /bus/fslmc | | + +-------------------+ | + | + ========================== HARDWARE =====|======================= + DPIO + | + DPSECI---DPBP + =========================================|======================== + + + +Features +-------- + +The DPAA2 PMD has support for: + +Cipher algorithms: + +* ``RTE_CRYPTO_CIPHER_3DES_CBC`` +* ``RTE_CRYPTO_CIPHER_AES128_CBC`` +* ``RTE_CRYPTO_CIPHER_AES192_CBC`` +* ``RTE_CRYPTO_CIPHER_AES256_CBC`` + +Hash algorithms: + +* ``RTE_CRYPTO_AUTH_SHA1_HMAC`` +* ``RTE_CRYPTO_AUTH_SHA224_HMAC`` +* ``RTE_CRYPTO_AUTH_SHA256_HMAC`` +* ``RTE_CRYPTO_AUTH_SHA384_HMAC`` +* ``RTE_CRYPTO_AUTH_SHA512_HMAC`` +* ``RTE_CRYPTO_AUTH_MD5_HMAC`` + +Supported DPAA2 SoCs +-------------------- + +- LS2080A/LS2040A +- LS2084A/LS2044A +- LS2088A/LS2048A +- LS1088A/LS1048A + +Limitations +----------- + +* Chained mbufs are not supported. +* Hash followed by Cipher mode is not supported +* Only supports the session-oriented API implementation (session-less APIs are not supported). + +Prerequisites +------------- + +This driver relies on external libraries and kernel drivers for resources +allocations and initialization. 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 Helper Scripts** + + DPAA2 based resources can be configured easily with the help of ready scripts + as provided in the DPDK helper repository. + + `DPDK Helper 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. + +Pre-Installation Configuration +------------------------------ + +Config File Options +~~~~~~~~~~~~~~~~~~~ + +Basic DPAA2 config file options are described in doc/guides/nics/dpaa2.rst. +In Additiont to those following options can be modified in the ``config`` file +to enable DPAA2_SEC PMD. + +Please note that enabling debugging options may affect system performance. + +- ``CONFIG_RTE_LIBRTE_PMD_DPAA2_SEC`` (default ``n``) + By default it is only enabled in defconfig_arm64-dpaa2-* config. + Toggle compilation of the ``librte_pmd_dpaa2_sec`` driver. + +- ``CONFIG_RTE_LIBRTE_DPAA2_SEC_DEBUG_INIT`` (default ``n``) + Toggle display of initialization related driver messages + +- ``CONFIG_RTE_LIBRTE_DPAA2_SEC_DEBUG_DRIVER`` (default ``n``) + Toggle display of driver runtime messages + +- ``CONFIG_RTE_LIBRTE_DPAA2_SEC_DEBUG_RX`` (default ``n``) + Toggle display of receive fast path run-time message + +- ``CONFIG_RTE_DPAA2_SEC_PMD_MAX_NB_SESSIONS`` + By default it is set as 2048 in defconfig_arm64-dpaa2-* config. + It indicates Number of sessions to create in the session memory pool + on a single DPAA2 SEC device. + +Installations +------------- +To compile the DPAA2_SEC PMD for Linux arm64 gcc target, run the +following ``make`` command: + +.. code-block:: console + + cd + make config T=arm64-dpaa2-linuxapp-gcc install diff --git a/doc/guides/cryptodevs/index.rst b/doc/guides/cryptodevs/index.rst index a6a9f23..a88234d 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 + dpaa2_sec kasumi openssl null