From patchwork Tue Sep 4 03:58:47 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Anoob Joseph X-Patchwork-Id: 44175 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 B427429CB; Tue, 4 Sep 2018 06:01:45 +0200 (CEST) Received: from NAM02-CY1-obe.outbound.protection.outlook.com (mail-cys01nam02on0055.outbound.protection.outlook.com [104.47.37.55]) by dpdk.org (Postfix) with ESMTP id 6DB3A1BE0 for ; Tue, 4 Sep 2018 06:01:44 +0200 (CEST) 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:X-MS-Exchange-SenderADCheck; bh=rrseHzXRqY7tmo+hsu1J3mNxqRBwb0Ha4ifVanBYAgY=; b=QP4v5xKONpq50PP+oyrKC4y9vJTZHJVL0lLMeEIpikJyf8sGQpVfyF4H0mnMb1P9qfT481uG0hXW6dDLTAzK7F5U1/bk4Q+5aTuu1/YeF1hezldphXDDdkysHcBAFXJs9l8afnoP/JqJkh18C5rAKljLNiUecCWiABex77ttCXo= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Anoob.Joseph@cavium.com; Received: from ajoseph83.caveonetworks.com.com (115.113.156.2) by BYAPR07MB4902.namprd07.prod.outlook.com (2603:10b6:a02:ef::25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1101.15; Tue, 4 Sep 2018 04:01:38 +0000 From: Anoob Joseph To: Akhil Goyal , Pablo de Lara , Thomas Monjalon Cc: Anoob Joseph , Jerin Jacob , Narayana Prasad , Ankur Dwivedi , Anoob Joseph , Murthy NSSR , Nithin Dabilpuram , Ragothaman Jayaraman , Srisivasubramanian S , Tejasree Kondoj , dev@dpdk.org Date: Tue, 4 Sep 2018 09:28:47 +0530 Message-Id: <1536033560-21541-1-git-send-email-ajoseph@caviumnetworks.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1528476325-15585-1-git-send-email-anoob.joseph@caviumnetworks.com> References: <1528476325-15585-1-git-send-email-anoob.joseph@caviumnetworks.com> MIME-Version: 1.0 X-Originating-IP: [115.113.156.2] X-ClientProxiedBy: BMXPR01CA0023.INDPRD01.PROD.OUTLOOK.COM (2603:1096:b00:d::33) To BYAPR07MB4902.namprd07.prod.outlook.com (2603:10b6:a02:ef::25) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 4fac11a1-49b7-4ebf-321c-08d6121b1fc6 X-Microsoft-Antispam: BCL:0; PCL:0; RULEID:(7020095)(4652040)(8989137)(4534165)(4627221)(201703031133081)(201702281549075)(8990107)(5600074)(711020)(2017052603328)(7153060)(7193020); SRVR:BYAPR07MB4902; X-Microsoft-Exchange-Diagnostics: 1; BYAPR07MB4902; 3:AqqCj+U8+Z803Qe2DeXPGyumLMxYlMom1g5xsJZvcniXCr6zTDJvaxZOzmCiYDU5fN9WJuLaeIed1yZA/01rWfmiOrpOq5kMj1VVbkSmxfy/Jd6jUsJjWHZWYoQwDZmA+PBjFl6Cyj0s6KUQR6YpBuXCbGkj5G6NcT7KQp5zQFTFdA/f7ZP3/JEUyDz0FgfLEfUXgsq1PG9Li5TuxN2Coq/vvo6z2e0szDf5WiOnTcwgZYAzWU6yVVtEWDVZSYkc; 25:w3PoQZ0+YpYbAeChl91sPXQk5RC1tWeO23YghOSd4jNb7JEhvsdeVjud81JWdSxcOXfjUZoZ9L1B57fX+jJPHpo91FCT3TNV6g9We0l9XTKs6v6cnxQhJ+MIeLRHh/zVHy6mGTLEys5oa5E2d+BNIIvMet1ZXPkqJO1cenOnQXwne9E3bwoFYd1mKYHxtS3qtaF9NCiIZ8HeqyJZMarwJSvvl/va00sl4nQRoouaxeAKfOJd1ZE+7SS+BhTo8SloCdIWccPQkwgOfzsIjVvJGO84gEdZ1ugHfp6ct1wfRSiwgcDFPmNcaPHuoWBWiT2+O7woaiMdsUCyW8+bbqWZSg==; 31:8zB+7sb+LDxRLjtE0c/9pczVdPDs27vCT3xrEf3Nu+fyEDAZY4G5Gnw0JxR/NuIeqTAXLSL0d4Okkhb2Mx8844GkwwSR7epDKXcDGB4UlM85IaWXQK/A2yAI94ZfdhMJfCk1qx/jSY7pvcL1mONnPu109c/mO58uXsqQQYQJyoV2923UnUbLKrSe2wbFUEHJojcJ6ezvjVMIkng+f9G3dTFHoI0vKhlk0ylqJIKrjtw= X-MS-TrafficTypeDiagnostic: BYAPR07MB4902: X-Microsoft-Exchange-Diagnostics: 1; BYAPR07MB4902; 20:YMo9H/DuHwOlK7EGaIPlEciR72pKKuvMy75p+f0fEpIbRhERl4zqrEG/9A6NDwXiiLId581c7EIF5agndcAQI+Q1gYOxgNLpqWWWQv4HuzGZvMAaZlnDUEID6o737qcUR5qJkIGPopP58opsi+nnkq4ps9ZOZNqwoerlE+sBHeB2T251TjDuKKalTIL0nJ1BPJcRFY4jBjZCg6Zd2Ekv3FodbYU0C3IsctcAWB2jKDRRAX86F88thb49xmEVfbunxa4Pzp3NA0cvsW5Q7IJilPF+RchD5W2rBUcPcRmL7WCgpzvMjyJ76TaOh3zdOaRvh4bJ/oVRIplFh+cDmHBXlBGZdUEwGit1+Z63Y6gGQJlnRtE2OjrGEe5mwYVmZ4UHWd9cVjraWWrm0vEo7CCo2K2CMN2kZJfiyt3SesF39Xy/J7oNXGn4XTofrHOx+2n5tTu/4B8SlYCV5/+eUBmZ4BGP/5Up+/O5MSpAmGeqdcQclYWhkRVu8PVEZ1zECJcb+CDdqEg7N+N15WHK4xRz/xIGzalv5YldLE52fNOeQZXVaSg6o3H6TnEPK05MgBaVjXHFOSWarjD5b3XO/0xbxwOdTDuOfq5ZktmahczUXAQ=; 4:963wIu94SOKHX9IjbNsqKQYj4VivOFz/ebIy8yal9JIRRyCeBBIpfqpw1TvA2P0oAxvZNGX4H6yF6SxTdqpZVYkdr0d3NLGiNyP20UIkxU3m5vylaHo7x2AXPS8k8imY1QiytHoW/6tEQIEu//yqbyPisBjDpmt45fqWh8Ivpmx0L1WmnZu9q86KLlX/hrNN+VdZZ5F+cNi0ELRmFvwzteGunE2dsuTB5EdEiE+D1zjexfgNPtonarO9lnZkBErlA5aYy3EI6sTCsM0VDQeqFA== X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-MS-Exchange-SenderADCheck: 1 X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(10201501046)(93006095)(3231311)(944501410)(52105095)(3002001)(149027)(150027)(6041310)(20161123562045)(20161123564045)(20161123560045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123558120)(201708071742011)(7699016); SRVR:BYAPR07MB4902; BCL:0; PCL:0; RULEID:; SRVR:BYAPR07MB4902; X-Forefront-PRVS: 0785459C39 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(366004)(396003)(136003)(346002)(376002)(39860400002)(199004)(189003)(26005)(51416003)(52116002)(76176011)(81166006)(305945005)(81156014)(7736002)(105586002)(316002)(6506007)(106356001)(6512007)(8936002)(446003)(54906003)(25786009)(6666003)(68736007)(50226002)(110136005)(53936002)(16586007)(42882007)(386003)(5660300001)(2906002)(72206003)(50466002)(6486002)(36756003)(6116002)(2616005)(14444005)(186003)(3846002)(478600001)(66066001)(476003)(8676002)(47776003)(486006)(956004)(48376002)(11346002)(4326008)(97736004)(16526019); DIR:OUT; SFP:1101; SCL:1; SRVR:BYAPR07MB4902; H:ajoseph83.caveonetworks.com.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; A:1; MX:1; Received-SPF: None (protection.outlook.com: cavium.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; BYAPR07MB4902; 23:jaK73hEAL+/JDL4kwyFjKWvmkjyGVkj4vV+KT9D1o?= hwQf5q3ba/cdEf1cL+YI+evK8bEmfvVvwWgUuFJxUaziQWPS8+msWKlhKl5Ct7wPnYvINv/MAhvexA/rOKTXiZIx6XJaW7H6PlAm/3psvMxS8auDfX+L1ZpINDErKzxm6J7CoMrBK91uTOYyV+nWVCTjODIStebss/S1JnVoGkgqNc9D8cAlCHq/8I89lYc/+cnRcVGT9T2YEUYeJmhxEr392l15x4EGYqPM/9YV9Coa4fpWDCYQ3nqbMdrxczvVbauoxlYU/C4v0Dmbv2qhFdVHBRDcpTsBXGHM3h9Ho+pcCKublNWOR0wR4rJfN7Osvg90dC93AHFGQQMbh7jX1mI9RtSzgNSGTElA9rxu/GbTRM8EEvDQBY8OOGUJcj0j2Mnex5igXz+Eoxj4GMVtYuAEg3T7gZTF4Sn6aUsc3WyZVe1hfEdokKY/NYdpJQMewWnl5M3d84VpcNdmRFrIiC5dT04rX69Hy7+19rze+7UUj2hm14OrEFoEbWuGtfBLfheAOrxgcDy1Y9ZiHfec0lRxMYTddXVNf0LAK2dtvahV9zhKc9hsiHfNAFbtsVCd89+9RkdG8ovNLBrXB/R4yqjIjIK2YA9WEWlyITKUAf8suEz0bwr5B2HxlWYfelKXEUv6L2miUNgXbBqYng61wqH/+pn4k6nSFHdMZJ3gs5aQCKlfzic8LUD/9ca5gY0YDKOIIDFvmKQp2mw0RFvKvmxeeTOtFFhvctWCeAmVS9019KwTbXpNb/asXFWy5ZYlUQuUqkwj4ps1I0r0vpqkz+UdHjKXqiUYl8seXJjuDpWDjXpaffAVDgHXt89sYGqKmMb2IUUqtEDMa00DzXtJ1tuKJw49AJInucttgx9FB773eYbhLNyXBqVYcmmscaAp0ggri6ZlV3Tg3ig123H2hHYESmyepc3cD9C7WpInZ+1GuzO9YyDUsHE2GKCPFTs9mofORQ9wNXNJrJXHpihLVsK05rjBdHS9gvCxjMaX/sXIG+GdhYkh/wWxdnI+srLJW7rk9a+zqCKJAYsunraQqfG13vl4Cv6Io92+WSht45WCyVRyzNN+tQ+CCijIu8tLl0G9E54iuf9L5vTtANNgEskAHxX9d6/rCQw6LDxWemlZfxl62Ef7ovPlWw1HV0SbqxIbREhDKt2xIhOeqHZWbK71jhnarlahY0e8fBI8N4oqw== X-Microsoft-Antispam-Message-Info: +BiJx0mp8KK+hTYi2uuXF7AhpZmJm9f8yTQ5xRza6KWrlZh8pq1mDyt6n2WPGknlFfUA6V4P803EKYN/vkJgpbj4xandeoJZxYTtsU75iudZ49KxUJyrj+PaR3E3AisAD4VAz8FdpaoxRQ2HVKLHB+FJWNDcGnOEO7ot3QsXm0uMnz2HTkKg8Nrlp4AAXK84YPHGA2T1uNtot3rltlPS2lWNqOxRWW/rtmUf6uFYoMjep+C9UDYyt3soaEmQXvewYl4Gm8GYA2GDCOZPMSKulkVuRo3PlyVun0tR83gJ/Cx8GFpqTkfp3BYiDHFg84L7CPoeQutKTOjXNwypy5o9SQJY1yQ1EjtwdF3aMd/58fI= X-Microsoft-Exchange-Diagnostics: 1; BYAPR07MB4902; 6:93lvAmSDDG2eg51y+e2WGFshsLrP+KkieK/GDP9/pyUEM1pBMuc9Z2xkrYCPKSqZcZvikbEbgeoC6pOhfpplxR70UpK2sFH3Gek9vymraojidTIGH7e8MxAjQQpki7B1GPQs4mKWM1sRP75BVtZ8J0HQ9Gbn7mAh1Ex+3G/fq7YORE2uZcjEgxRMqF2Y9w3OgIZ/XSqCF23zUGTI1zMOclwV/p0lJmtzE4RafOY0NFMIrzANSsYthNtx0nbXtHI7A0MY1wGJrRPSBsM4K2LHw3QVfHz9SWCQuZIuLr5d4ipq8MZHJTBVk2mLW/GHQ1Uxhj6wL2yv6aQEhYObUHal3+gykLbMFfkWW0ba9fpkTANtOOS2MnVaAY7B1zAPeL0KtnE3GDKURkkNyvp3pHO0QGwOTJ+nl/MF8imGcN4+zEl9MY7nfXEN2zR70Ugla4kSNzbDM+9voiezuepLVpE1sQ==; 5:qe0dBJTbk6Wr/D6/9QLRHtBPlR9eWI9YKTEPSzdDZlz5JdHGcLsoj/UbIDGxiA9H2hT5t3Qw1SU/DFMdE3hLskhxGdOs8PmA9E99MRYkfUw7VhxK/gijBkFnstAERXJlQVQwh31yjnGXbb9FhAnUW0rZ1DPu750M9v/5A4FnnUE=; 7:361WPe6PRndTjEJ4Xl/zvDsgTwtVA2Wtmmsc02MuKo19ze+0uNL9RK4fbgtH6oubt0Al7//AH8PQUlQ1KnwlrEU84FOKA5iQxNNgyPuZ/5zMIeP2M9bJ8+vMGsMofolXVp449QaOESvEug6++XYKgSmua6E7s5FVa7fWyeRdqWUKBibiEr4QYj4QOJNXDO6HSo6znfDu2WXeXZ8x9S5dXWP4wuxrLDvpCqf//2ZPwTrHJfsM283S/XTt5aKHUAao SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: caviumnetworks.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Sep 2018 04:01:38.4753 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 4fac11a1-49b7-4ebf-321c-08d6121b1fc6 X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 711e4ccf-2e9b-4bcf-a551-4094005b6194 X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR07MB4902 Subject: [dpdk-dev] [PATCH v2 00/33] Adding Cavium's OcteonTX 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" Ankur Dwivedi (5): config: add Cavium OcteonTX crypto PMD skeleton common/cpt: add common logging support crypto/octeontx: add PCI probe and remove crypto/octeontx: add register addresses test: adds validation test Anoob Joseph (5): common/cpt: add common code for init routine crypto/octeontx: add hardware init routine common/cpt: add hardware register defines crypto/octeontx: add hardware register access for misc poll doc: adds doc file Murthy NSSR (5): crypto/octeontx: adds symmetric capabilities common/cpt: add PMD ops helper functions crypto/octeontx: add global resource init crypto/octeontx: add mailbox routines crypto/octeontx: add basic dev ops Nithin Dabilpuram (5): common/cpt: add common macros for queue pair ops crypto/octeontx: add queue pair functions common/cpt: add common code required for session management crypto/octeontx: add session management ops common/cpt: add common code for fill session data Ragothaman Jayaraman (5): crypto/octeontx: add supported sessions common/cpt: add common defines for microcode common/cpt: add microcode interface for encryption common/cpt: add microcode interface for decryption common/cpt: add crypo op enqueue request manager framework Srisivasubramanian S (5): common/cpt: add support for zuc and snow3g common/cpt: add support for kasumi common/cpt: add support for hash crypto/octeontx: add routines to prepare instructions common/cpt: add common code for enqueuing cpt instruction Tejasree Kondoj (3): crypto/octeontx: add enqueue burst op common/cpt: add common code for cpt dequeue crypto/octeontx: add dequeue burst op MAINTAINERS | 7 + config/common_base | 5 + doc/guides/cryptodevs/features/octeontx.ini | 60 + doc/guides/cryptodevs/octeontx.rst | 121 + drivers/common/Makefile | 4 + drivers/common/cpt/Makefile | 25 + drivers/common/cpt/cpt_common.h | 103 + drivers/common/cpt/cpt_hw_types.h | 521 +++ drivers/common/cpt/cpt_mcode_defines.h | 378 ++ drivers/common/cpt/cpt_pmd_logs.h | 52 + drivers/common/cpt/cpt_pmd_ops_helper.c | 41 + drivers/common/cpt/cpt_pmd_ops_helper.h | 34 + drivers/common/cpt/cpt_request_mgr.h | 189 + drivers/common/cpt/cpt_ucode.h | 3646 ++++++++++++++++++++ drivers/common/cpt/meson.build | 8 + drivers/common/cpt/rte_common_cpt_version.map | 6 + drivers/common/meson.build | 2 +- drivers/crypto/Makefile | 1 + drivers/crypto/meson.build | 2 +- drivers/crypto/octeontx/Makefile | 45 + drivers/crypto/octeontx/meson.build | 17 + drivers/crypto/octeontx/otx_cryptodev.c | 135 + drivers/crypto/octeontx/otx_cryptodev.h | 20 + .../crypto/octeontx/otx_cryptodev_capabilities.h | 595 ++++ drivers/crypto/octeontx/otx_cryptodev_hw_access.c | 609 ++++ drivers/crypto/octeontx/otx_cryptodev_hw_access.h | 320 ++ drivers/crypto/octeontx/otx_cryptodev_mbox.c | 180 + drivers/crypto/octeontx/otx_cryptodev_mbox.h | 92 + drivers/crypto/octeontx/otx_cryptodev_ops.c | 532 +++ drivers/crypto/octeontx/otx_cryptodev_ops.h | 18 + .../octeontx/rte_pmd_octeontx_crypto_version.map | 4 + mk/rte.app.mk | 5 + test/test/meson.build | 1 + test/test/test_cryptodev.c | 308 ++ test/test/test_cryptodev.h | 1 + test/test/test_cryptodev_aes_test_vectors.h | 96 +- test/test/test_cryptodev_blockcipher.c | 9 +- test/test/test_cryptodev_blockcipher.h | 1 + test/test/test_cryptodev_des_test_vectors.h | 12 +- test/test/test_cryptodev_hash_test_vectors.h | 72 +- 40 files changed, 8214 insertions(+), 63 deletions(-) create mode 100644 doc/guides/cryptodevs/features/octeontx.ini create mode 100644 doc/guides/cryptodevs/octeontx.rst create mode 100644 drivers/common/cpt/Makefile create mode 100644 drivers/common/cpt/cpt_common.h create mode 100644 drivers/common/cpt/cpt_hw_types.h create mode 100644 drivers/common/cpt/cpt_mcode_defines.h create mode 100644 drivers/common/cpt/cpt_pmd_logs.h create mode 100644 drivers/common/cpt/cpt_pmd_ops_helper.c create mode 100644 drivers/common/cpt/cpt_pmd_ops_helper.h create mode 100644 drivers/common/cpt/cpt_request_mgr.h create mode 100644 drivers/common/cpt/cpt_ucode.h create mode 100644 drivers/common/cpt/meson.build create mode 100644 drivers/common/cpt/rte_common_cpt_version.map create mode 100644 drivers/crypto/octeontx/Makefile create mode 100644 drivers/crypto/octeontx/meson.build create mode 100644 drivers/crypto/octeontx/otx_cryptodev.c create mode 100644 drivers/crypto/octeontx/otx_cryptodev.h create mode 100644 drivers/crypto/octeontx/otx_cryptodev_capabilities.h create mode 100644 drivers/crypto/octeontx/otx_cryptodev_hw_access.c create mode 100644 drivers/crypto/octeontx/otx_cryptodev_hw_access.h create mode 100644 drivers/crypto/octeontx/otx_cryptodev_mbox.c create mode 100644 drivers/crypto/octeontx/otx_cryptodev_mbox.h create mode 100644 drivers/crypto/octeontx/otx_cryptodev_ops.c create mode 100644 drivers/crypto/octeontx/otx_cryptodev_ops.h create mode 100644 drivers/crypto/octeontx/rte_pmd_octeontx_crypto_version.map