From patchwork Mon Apr 10 12:31:05 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Akhil Goyal X-Patchwork-Id: 23421 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 4F60CCFFE; Mon, 10 Apr 2017 14:32:03 +0200 (CEST) Received: from NAM01-BN3-obe.outbound.protection.outlook.com (mail-bn3nam01on0046.outbound.protection.outlook.com [104.47.33.46]) by dpdk.org (Postfix) with ESMTP id 17BA8567E for ; Mon, 10 Apr 2017 14:31:59 +0200 (CEST) Received: from BN3PR0301CA0006.namprd03.prod.outlook.com (10.160.180.144) by BLUPR03MB391.namprd03.prod.outlook.com (10.141.78.21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1019.17; Mon, 10 Apr 2017 12:31:58 +0000 Received: from BL2FFO11OLC010.protection.gbl (2a01:111:f400:7c09::149) by BN3PR0301CA0006.outlook.office365.com (2a01:111:e400:4000::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1019.17 via Frontend Transport; Mon, 10 Apr 2017 12:31:57 +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; 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 BL2FFO11OLC010.mail.protection.outlook.com (10.173.160.154) with Microsoft SMTP Server (version=TLS1_0, cipher=TLS_RSA_WITH_AES_256_CBC_SHA) id 15.1.1019.14 via Frontend Transport; Mon, 10 Apr 2017 12:31:57 +0000 Received: from netperf2.ap.freescale.net ([10.232.133.164]) by az84smr01.freescale.net (8.14.3/8.14.0) with ESMTP id v3ACVCIV014402; Mon, 10 Apr 2017 05:31:53 -0700 From: To: CC: , , , , , , Akhil Goyal Date: Mon, 10 Apr 2017 18:01:05 +0530 Message-ID: <20170410123108.26305-11-akhil.goyal@nxp.com> X-Mailer: git-send-email 2.9.3 In-Reply-To: <20170410123108.26305-1-akhil.goyal@nxp.com> References: <20170324215754.21751-1-akhil.goyal@nxp.com> <20170410123108.26305-1-akhil.goyal@nxp.com> MIME-Version: 1.0 X-EOPAttributedMessage: 0 X-Matching-Connectors: 131363011177441356; (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)(39450400003)(39410400002)(39860400002)(39400400002)(39850400002)(39840400002)(39380400002)(2980300002)(1109001)(1110001)(339900001)(199003)(189002)(9170700003)(2906002)(77096006)(5820100001)(2870700001)(104016004)(33646002)(47776003)(2876002)(85426001)(6666003)(8656002)(54906002)(86152003)(4326008)(575784001)(5660300001)(86362001)(305945005)(356003)(50466002)(8936002)(23676002)(2351001)(6306002)(105606002)(6916009)(106466001)(50226002)(53936002)(69596002)(2950100002)(81156014)(81166006)(189998001)(36756003)(8676002)(1076002)(110136004)(38730400002)(50986999)(76176999); DIR:OUT; SFP:1101; SCL:1; SRVR:BLUPR03MB391; H:az84smr01.freescale.net; FPR:; SPF:Fail; MLV:ovrnspm; A:1; MX:1; PTR:InfoDomainNonexistent; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; BL2FFO11OLC010; 1:CAUu9LIFwjBuaRgTXqNw8xy9XuARXZ14xOwXu9O7Eq+td6I3SuEDv/w8r7IH8ysVaw3B3/f3pb2MlChxAGP8yp9cziqt+nY0aK9HE1WspzQXgi2VG0WOCqnUlUcHO1jm7zJf9uqHT510W5UU0mWwCp6CbtDj8Z4C6GY/CDSgE7XWteJDwGJxAgIZDbv3BeMNa9mZua2zIhKOFCKNV7a9M3SKbxSsDuUTuPyh2ITNcQYywSte1SiKNlUeaxvzAiVHvHoPzxN82UGjoJqQiphnkZZxs7BUPLpx95mgGifpleFHOum+ZJfbHDauXknmx5ozc9K2OL6kgFXk5vM9vJNpipcLO195OdmEnHRW0R3+l6yZ82U30A3/G71lMbvG9tmbQo6wn6++28lvXK7Na5j5nOYPDZPTJnO0iu6j1V/cU40PZrDo7NO0jJoCNVGieco3GPd36saz5L/v5Boa72qcdEVNvF1TYAFykG/4SZ8coTePsTp+sBwvHfSs6ADs48HhfwZyhaiDN3nGV+nYxEAuu/l+9S9WjOGGHYRSVr6famb1DeGGJkyHoy9onovpQYGz8nWIdH2+Ri2uQRdljMtrtCx23KWG0JF5ergJ4hsVEwjXUNI9wXM/ejnAn2dP3Q94kahkVRmNHI8b3JSpoSV5s6y+aycOPpPfM+8pJXOkJxd5dWuwKs5Noi29OQQJYHWjuyFzIvxcb/Xzogk2oD57V63ELeSWSG69OxWI45LFPls2cjRkCy19fv9GGYfrsNi95mCT9MZ3ebtL0+sY4irRfA== X-MS-Office365-Filtering-Correlation-Id: c9c86345-7309-47fd-06ee-08d4800d9450 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001)(201703131430075)(201703131517081); SRVR:BLUPR03MB391; X-Microsoft-Exchange-Diagnostics: 1; BLUPR03MB391; 3:l5QxhKo72I/qDoc3iQiWCz0+dKqM9kmdRQ0s6GaxTSLaOji8cKhC+ApWY339+K51RU122Ul6OVy+fnD8Ae9fUdkI4Ikw7mZkHIqEsXEb0FZU3EdImDqolXheaCXfRIvNm8NKcMYnBPlCpqchqPqQdMmzSfkIlQAOwRgD10FXW9o/fl2WNWdfdjGGInpp6f6lI5/fYJP457qG/VNQLcVedbQ5QS4PjGl/Io+C1OtJW9eLSQWH3MbY61Nk/mU7hLVPcYUy/FtBW18MG6UJMku64Ku1GrngAR942RWeoFOlDpRO04YNhJl18nXuZz5wc3zeczzKKvzhgHUB6oTbPX9daM2H9jiX5uNiyDKF9hQmmxhVnYD+jiBr21BcuPEDtmLuq1nGSnAJZJ9UIfC2ZpcK8ocsC+zIKHMpiyhSVrLjyOsXJjoM3fF2anTmnOAgB2IN; 25:X8miHO27PXyblG8RK/IKWv1fCSl/O9sLDPfYuU5JOpcunWaTeyhx6k3gsIx3uzMVIX3EjZENGqeJGQ1Ee9+Yj9zmR55Z7U7/1IdYSLmRG2molH2zBeMlDy58jf/lEgpucnoJzMOYabzNg6g8Blc3XNS9Rx8Ghhg5ZeLhGl3qmRRFWl17gHzIEOuEU13qQFXopvC+hpVwwt8Hsji//BxzB4t//YMlXOD5sGCxalcgI/Ykr2OMee2uwP3QQFQcLlV/MjWT0BVCQTkDCkVpp9Hd5wGaUvWi9qrYq65m1ouZGQlX33ZY9FRcM5VkJ1cM5ACWrxkPgcAa8dw1gHaw+D57t55aPU3v/04NVcudDuYzY5by8CKKHFpxjlmct8LrJ4qbRHO09TwNrJqZsNBWUhxReqRMF2FVLWs1zxQmUdeDi4OxBepEs9qviBCm36zewKl+YgMDYdvIJEK1sZsiUkoCJg== X-Microsoft-Exchange-Diagnostics: 1; BLUPR03MB391; 31:rKK4mYhxEZVpKwU0QXwicYaWczygzF5CT88rnCk7khysfXBDOrqtJ125A7JFI9JfNCsjDevBNTMzQSyb+26RjnWIYR9GDMWlbIcQvZm5KUro8AV26bOCNNvgmkVjITxVfa6EjLckMVtywPv21tbZssKVOu8gaH+C0a9SorR4wdk6Bt7Mcb9vc6m71qufay0Yyqq5R/Xck0ZpfzOvsnX3a0ffXGknXvNIhPaK7Zuscl5WWr7r97/1rkrzoiZBAoSdQvn/ddb5Bl8OjsCEMt3yNA== 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:(6095135)(601004)(2401047)(13015025)(8121501046)(5005006)(13018025)(13017025)(13024025)(13023025)(93006095)(93001095)(10201501046)(3002001)(6055026)(6096035)(20161123563025)(20161123565025)(20161123561025)(201703131430075)(201703131448075)(201703131433075)(201703161259075)(20161123556025); SRVR:BLUPR03MB391; BCL:0; PCL:0; RULEID:(400006); SRVR:BLUPR03MB391; X-Microsoft-Exchange-Diagnostics: =?utf-8?q?1=3BBLUPR03MB391=3B4=3Ax+YYMp?= =?utf-8?q?3Pwq2AY3bpVf+HVh1aWRjYuweqS39xYIlPfYZZ3vz8t6IGAxUllgJIM8?= =?utf-8?q?R9bxxxlds7Nw3taXp8DkK3t/jSq43wuU194vBCUwvb69gWKOlKHzHvA+?= =?utf-8?q?wgpCxgnleLzGduIW6D2/pRhSNjP8w6jS1vW9f+fVnHxT4/fdmRdAr8l9?= =?utf-8?q?54uLyLaOAKnbGG6B06xQu0jZyUIyA639qItuPhxvcxUw2hI/zJRVRD3/?= =?utf-8?q?UDFlAkeVij19S7xBNpreWqpbKlq4df947r/kuBC9W+l0xXAt3SPKiRkj?= =?utf-8?q?yn3kk/djmyWgkltOITnHNQkVgn2czf3KDgY9X7Gw2nUNnXgZrcCZlDsH?= =?utf-8?q?Q9/YCknGZ9FDBi1meG9AQMuJoEtwAEvLGX4f5LEHR7wSuQb2GsTZwFjE?= =?utf-8?q?HEbqJTYEfXL3M2MeE7F1MzsKmeUrw5v8/u4Suqm7/0r6NVaBabVcA86m?= =?utf-8?q?YQ2+5TFdopNWDoXtYuaB91t6qdGQTQIvnBX/00KYXhAJkADo59HFqDUF?= =?utf-8?q?8A6p0C02oEVWI9paNDmQKuA1RhFSIc28jKOzuYCF9IR/3Axc5HYyU4LA?= =?utf-8?q?xouVATOTVe/Fe8PfQiEKBd8LYmbO0wy457uHZrKhZ4yY+hm5nqRFVAyg?= =?utf-8?q?+lIKF5y5FneCnykBpx9R+dSoar6xtYyYmknsfPniTYpPT36hSofdd7/g?= =?utf-8?q?eaRVovkEIWW6WbPtnpVL/z6IsJ+sjXQgsTRfUL1EOBxF7gGl//3Ly5qG?= =?utf-8?q?0qQuy5BO5bAtbfbzFfhjiJv5dkG/ZDU4ayA3AYQo7VihjMy0I2wjSOU4?= =?utf-8?q?B5WgK9vkpvHjUNeZt3/nYkk45jZDwRKOSv2eDAzkcuz86+QIwP+bToQB?= =?utf-8?q?BLmytSUMYQtqsH4TPr7W6LKGlnnZVbmDWQuYMOEB3A9D/D2hvCoopS1P?= =?utf-8?q?GI1H+3T/W/OO4y1SIbEPZxOtyKTuZfVcHRpIhNxHXw2C6IgWSw2AxlhX?= =?utf-8?q?o1ZLvGRgTG86lWIMhnSO/x4YEB5Vm7gsa1/y1ZrxDZKcGPXsJIz2LbYB?= =?utf-8?q?sDVsEe/q481oky8Vg6qSF71ineoNOfQlhW1SYLw/kEMQrmJebLvArUdG?= =?utf-8?q?KJSNTYR3zkU57xtzmM?= X-Forefront-PRVS: 027367F73D X-Microsoft-Exchange-Diagnostics: =?utf-8?q?1=3BBLUPR03MB391=3B23=3AuZ37Y?= =?utf-8?q?i9JSnCS7FwfScTsJRVM8ozeM6vZJxiSigy+6aHaOL7uiOUZ7cs1Phj6/?= =?utf-8?q?gm4T+vEqtcpMdsnTo6MJp1/MW+pe7cLSzt/GAR6UZYTi9FqMRCFw2Bt9?= =?utf-8?q?xvRbY/qCinbxTcCAXmKYZz7JptjCUBKAvTylkWve6bK0NGMCoE7OIPwY?= =?utf-8?q?wHT+ILATsPb9eLg/SJJT8aJcwex3wQlOvVjzmPHE/r4mioXYs4gD6/U7?= =?utf-8?q?/MpijLZgsK2fgfreuL5iWukon/wfbK4KylvMS6FCR/V6paGoD/ccrh2x?= =?utf-8?q?sQ+CkT+x3Qo/WcZPuOC4D6BaOHBpN6zAzVbneSxFlhhkhx5Us1Z4VnF2?= =?utf-8?q?XqIjxMjce27uesSyP7W35JrW00I4Xv/ePizs5fIiLAFRgSw3ijK75SRr?= =?utf-8?q?+gk0GCU4h6v3802vykIarbRiOen+f/e30bn2fVr2ZIXJKLb5v8EU5eeD?= =?utf-8?q?rbzuKPGoIlfYh4y+SMPIbr2M3ByWQZGfNCgIFIMsfVfV8GDCAG5nnRte?= =?utf-8?q?S+A3zUbLlPfwFO7phXXaHezpVQ0/XNy8swLjJynnyODU5q9AC7WFu7ve?= =?utf-8?q?q67p+0ttA/dQ8sPDzDD81H3WpahdIQM64UFWHQED9NFg9l+IiJzU7+/S?= =?utf-8?q?zuSIehpgmkX3RlPF9DdAmSqt7fLX9nHE/er8xaIQ7x4Lcd+uPGszQx7w?= =?utf-8?q?WmExSuYRmPpekQ/UJIHJfMRgEQ+IvSHNnj3CF8BFtDrqpqxLPwQhv8z/?= =?utf-8?q?ZNA3aAsMhh/TjXXDB8I4Q3vclqsxUybVSddI8iSO551FdI5Mc07HA8AQ?= =?utf-8?q?xG/bNlwuBh0sMqJwur5G/uZRgtAQSYm65YPIhNhUdjXXw5mSLMOq65/w?= =?utf-8?q?IpmW71t3IdCZ3LvM8lVUan3AXLrUG9+UuvOc4md351f80lCRTRsqDIyo?= =?utf-8?q?L4cpSETBFw8/MKemqTE5HENoosdfo79uMY/L1vgUtOBhPsDLAwquaKaz?= =?utf-8?q?gC+uNztmNk1r4uyzXnaUvX7LpN/dAi3M/0L/8EL7pBuvjdTTHjEAe17R?= =?utf-8?q?X3JJUj+d7ANJJfqL6bb68h+eYzWMy2Ah5HanyYH6qoAgehOd3p3amQfN?= =?utf-8?q?hdCqHMyl5OLDg5cuZueAtNtFiXkzmzR/luGfhZh4CZQcpGHiqSuyLwPg?= =?utf-8?q?ccxHomxxQeerhP0cJLms6OxHuqrjKWVecIbmVjZ4Qym0rchypvP+HhEn?= =?utf-8?q?KUUHXjktrcvRAWdKlkChKPScXnPsUZEPRgYGZLUZVjOZYqzZ6KBo8UVW?= =?utf-8?q?WMPcD4alv5fhzM2HLtfE6eLq8PA9MFboeqFNQzK0neaP61wlIpUY8mVT?= =?utf-8?q?ZA0oL9UYAx7ne0FQyucJkt/+m6O13eDNXYhgdOwVGElXFcRzS4HyNxxh?= =?utf-8?q?mOyr8UB1YKCVx3UTSOTnSBTxf2UaNcINVUkbKY=3D?= X-Microsoft-Exchange-Diagnostics: 1; BLUPR03MB391; 6:nUZ6d6MmLORoy96w5esj857isD2jSQTwsQJeZwc9OzU5HymFNAriPtx+1w9tPi5q11LcmV8V3dEkZS9XLOJqmazikA4aiw7bkBkM2xQ5mDasD/XYwII0wILfXfPhOakLf+NVDI4hhkR5TVTcHUNvCfnGbdWVB0eAU0fiqTMievKk6a2goJSIoNCbhUFgXdPA9Q5cVToTO9rjkVFPEJ8Xxvwzkph6XuRUk1pfzVlrmCzrM8DBAEbBAdVIAqGRozzS2tAyexXoPRmBiKEsWDzzk/6pAyE7fUYsQ7zP+uCCN1Q4x0jF0fhiSWMbNOkm9g0ViwRZrJz4TEfTEqNgxVgBB11RlSVy0ioUqM2ehlQluhwx/DjGyjYvNMDfRWZGgS/3ti3jrUDS58IMZRj/YJnIm7b5b81I8kMj3gipDOnh+F893tMdIhSapEA0y+oSrZ8BWNTnJe6BPX5ArF8/+PpTxQ==; 5:qsNtIw6Adq+eNYzcKDhYtfkUccPdVgvWciLON+XgO1s9/IAisFyBheAw6pvgGeILYbQgFfoN559r5oYtXPWDXmAVD62IOD1ksQ72t/Z2OAFfcy7GYpGYMthRO8fu5zjyuEXVTlrJtPYzkm/cGpnTOJbpcvi2oUJZRMUwr/JZjuV6cNdp+xLsUvuSbm9502X5; 24:rFZTb+wBbH6aqnA6Vui+oYQnRgMrfT/0mDusiMLmGVqIDCvkeJ4/mM2hhLj5CJ8EIqaecZxqTVpoo0RE123vfoPQEvip/5cDZHRSnYNwBfY= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; BLUPR03MB391; 7:A5m01G/5peWBnTuxmJeT93F5NnxmN0PuthwDMQcFmIKNtqJhg5oEzMlscM44aE4l5ajgKt52588F7YdJ14aXk+kzsU1UgTTUkFDF6YrnEzKuf2Uv6NuOA/WNRdKprp15vWxlkyUDRCu/GFN3g4MCFaPO4nVluv6suF4/lFocfr2S+sAaeqP09A+L+oXFV7FKrnnvvnsqMpkTUDWTg7izVUi3fvfHiwkzUpC8Kl96fBEErKQS9bxbXE3roHyOb4dmN1FRpYhXeL40BiAYFDNur6fSNgWnyUI4krYHO9nG+8mJvgbmdt81r5zjUyf/RfxdeJe/kwQAJawhiltqMtyRvA== X-MS-Exchange-CrossTenant-OriginalArrivalTime: 10 Apr 2017 12:31:57.5101 (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: BLUPR03MB391 Subject: [dpdk-dev] [PATCH v7 10/13] doc: add 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" From: Akhil Goyal Signed-off-by: Akhil Goyal Reviewed-by: Hemant Agrawal Acked-by: John McNamara --- doc/guides/cryptodevs/dpaa2_sec.rst | 232 +++++++++++++++++++++++++++ doc/guides/cryptodevs/features/dpaa2_sec.ini | 34 ++++ doc/guides/cryptodevs/index.rst | 1 + doc/guides/nics/dpaa2.rst | 2 + 4 files changed, 269 insertions(+) create mode 100644 doc/guides/cryptodevs/dpaa2_sec.rst create mode 100644 doc/guides/cryptodevs/features/dpaa2_sec.ini diff --git a/doc/guides/cryptodevs/dpaa2_sec.rst b/doc/guides/cryptodevs/dpaa2_sec.rst new file mode 100644 index 0000000..becb910 --- /dev/null +++ b/doc/guides/cryptodevs/dpaa2_sec.rst @@ -0,0 +1,232 @@ +.. 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 DPAA2 CAAM (DPAA2_SEC) +========================== + +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 :ref:`dpaa2_overview`. + +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 objects 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 :ref:`dpaa2_overview`). + +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 +------------- + +DPAA2_SEC driver has similar pre-requisites as described in :ref:`dpaa2_overview`. +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 the 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 :ref:`dpaa2_overview`. +In addition to those, the 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/features/dpaa2_sec.ini b/doc/guides/cryptodevs/features/dpaa2_sec.ini new file mode 100644 index 0000000..db0ea4f --- /dev/null +++ b/doc/guides/cryptodevs/features/dpaa2_sec.ini @@ -0,0 +1,34 @@ +; +; Supported features of the 'dpaa2_sec' crypto driver. +; +; Refer to default.ini for the full list of available PMD features. +; +[Features] +Symmetric crypto = Y +Sym operation chaining = Y +HW Accelerated = Y + +; +; Supported crypto algorithms of the 'dpaa2_sec' crypto driver. +; +[Cipher] +AES CBC (128) = Y +AES CBC (192) = Y +AES CBC (256) = Y +3DES CBC = Y + +; +; Supported authentication algorithms of the 'dpaa2_sec' crypto driver. +; +[Auth] +MD5 HMAC = Y +SHA1 HMAC = Y +SHA224 HMAC = Y +SHA256 HMAC = Y +SHA384 HMAC = Y +SHA512 HMAC = Y + +; +; Supported AEAD algorithms of the 'openssl' crypto driver. +; +[AEAD] diff --git a/doc/guides/cryptodevs/index.rst b/doc/guides/cryptodevs/index.rst index 0b50600..361b82d 100644 --- a/doc/guides/cryptodevs/index.rst +++ b/doc/guides/cryptodevs/index.rst @@ -39,6 +39,7 @@ Crypto Device Drivers aesni_mb aesni_gcm armv8 + dpaa2_sec kasumi openssl null diff --git a/doc/guides/nics/dpaa2.rst b/doc/guides/nics/dpaa2.rst index 7d7a6c5..45a0bc7 100644 --- a/doc/guides/nics/dpaa2.rst +++ b/doc/guides/nics/dpaa2.rst @@ -49,6 +49,8 @@ Contents summary - Overview of DPAA2 objects - DPAA2 driver architecture overview +.. _dpaa2_overview: + DPAA2 Overview ~~~~~~~~~~~~~~