From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR01-DB5-obe.outbound.protection.outlook.com (mail-db5eur01on0078.outbound.protection.outlook.com [104.47.2.78]) by dpdk.org (Postfix) with ESMTP id CB7792BAE for ; Mon, 7 May 2018 14:32:41 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=vKdsws/qvZ94QylYtmIyjXv3zzGmXg5nTf0s+RxhFOc=; b=xzZ3dU9La9Y6VzwtjEv3XvLwgcnNJdqryONQMVJZIelEnEDG635nVkbGOFAp8Br+rAIWdv5MAcMhJ6I3LV4x0jFUuKnPbjFDhEqSrLzV6mbRYcponCWzjh2xmKusDtefCgXQIwqnY1arENtmY7Phx7gSXZ7J1Ohc/4tFPHXCOwA= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=akhil.goyal@nxp.com; Received: from [10.232.134.49] (14.142.187.166) by HE1PR04MB1386.eurprd04.prod.outlook.com (2a01:111:e400:535b::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.735.16; Mon, 7 May 2018 12:32:38 +0000 To: Jerin Jacob , Abhinandan Gujjar References: <1525546030-11204-1-git-send-email-abhinandan.gujjar@intel.com> <1525546030-11204-2-git-send-email-abhinandan.gujjar@intel.com> <20180507093516.GA8052@jerin> Cc: hemant.agrawal@nxp.com, akhil.goyal@nxp.com, dev@dpdk.org, narender.vangati@intel.com, nikhil.rao@intel.com, gage.eads@intel.com From: Akhil Goyal Organization: NXP Message-ID: Date: Mon, 7 May 2018 18:02:04 +0530 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.8.0 MIME-Version: 1.0 In-Reply-To: <20180507093516.GA8052@jerin> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit X-Originating-IP: [14.142.187.166] X-ClientProxiedBy: PN1PR0101CA0071.INDPRD01.PROD.OUTLOOK.COM (2603:1096:c00:d::33) To HE1PR04MB1386.eurprd04.prod.outlook.com (2a01:111:e400:535b::16) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652020)(5600026)(4534165)(7168020)(4627221)(201703031133081)(201702281549075)(48565401081)(2017052603328)(7153060)(7193020); SRVR:HE1PR04MB1386; X-Microsoft-Exchange-Diagnostics: 1; HE1PR04MB1386; 3:pWKX73nG8Qf+oZ5f8MIDjnKZewD6o1CF4rV6bL0RWU8kbs3grlvXN9x/Rr26XMA+cdXsvZJ1eC+betZuOZLKSetPILfMrOvMqfYKuLkFI4r+1yLNwZj3tPaWnValwFzFWVAVDyTEQlSvBhnj7I2a7Eb408h0L0lGDZ2TopeWSOunvmLlk4LnTeopHmMxtLTZQBqsa1fsYDPIwyckP8hcM3htkYJutTBaf2aJmTGGBF/XMCzd25P1yb8xYhfcUoib; 25:vJKJb1V++kQ68/GuLTcqlNiVUW4qWkLtBhCCbJ6uCWaSBthDrsPULXHn7TH8yGiw6+3rP9zql/HEZinINk/54NYfEp8DlcThYS+WxgApv5C2FfzG97P4GY6KC/1GvMGV4p53Ko5rXKreQ8tBczhmz77jOtjHlFwrnaCq9VvwgD9/aonzPL1yI7s0cHRVZOfJAy971ObYPNoM2CWnvgZEpt0SiIgLRs5VNQjHoC5rJqtKU7L0U89EzBnfZaWzUEns5JpOd33tUSy2SZ4TNedHMfGeyqq+cfy6ZRYOTOg2sluRjQMtisS/moFs/UmKoXhTKd2CWwnU2ajdtqjHINmI2Q==; 31:DafftDHDHYcfkxvojnndndOA45cjpRVRXwkf/kmqEWypBoGfN8vJfhZ+2q5kBW7cmq/tRgOPHS6EFyAgFmgnDat8+OhstyFA+CF1mnyRDIVhvusVVlDx3z9/LefSpZfMzygD+vtpDf7l/Sk3jymzpqJze3gjLvO2lKljCJ9mitDUHUSrbwSAabiFUS5N6jyUsCeQxEIrrPFNewLYPPVyzPw7Z4zOUPI+xHkyKnRSg+w= X-MS-TrafficTypeDiagnostic: HE1PR04MB1386: X-Microsoft-Exchange-Diagnostics: 1; HE1PR04MB1386; 20:TudLUwlypXQ1KqBOIG60aNREmTw37L4r5KKS5sn98wTFLsTVtjK83qGVGy+0wSUCl2u5ED0ULDjnPrjllxWfzfBElEGbbC2EzDLEGWg9kds0FAKD+vvjju/wpTi/7aF4Ru6KVcIOuLVhKGFLiglYW6CeQm3tuDgsk6Gp0HB++uMlLFo93UnppTar80t4Vow61OwOCxgtog8ZM/zSUc8C37Zl0Wkt8xpgLlBkfne0XuUkweMc2JGx5f66r5mMjMc9Zu7EKkGaWq+zfJ6IEpsgAkPgzAOp1f0tCrSDA7Pe2GZv/S1I4ICZSN510lhr/4IzPANUl51p3B7agMbA9K2uw266I0OF2NvJSzV9GzWh5c8CS4ZBlWzZo8AwqHvd1dWrPOmkhM3I9KJmvLqxg6PV/JxTewI5D3V6zXxiK/nBEZl+9JLGa2JIliEVqdYys9W/BudfYuLo6/f64K29pfeZnStI8QT5hNjOb5feZ5FyXKRAqikWREMRCgPuzFtetyDv; 4:znJZ/p93W2dCRpHCHZvI1FG6uYTyIC9QeHk7QYVAxw66qrc08w8E5IVRFWJU13POQACH8ox5JKYkMEUhMystI49iEvoE5mcGDLclkgM7IWYkZbSb8uX7G6p7RS1gRQHOs81ixxDuM85Zhygrvopbjz3ACm6t4RZUHdRfzQHYb7147q7Nfe+sA+2ffjisxFyOebj3JfvhvzuVI6oj9jjMMvdGGJ4uIxeVMNdL5dF2ojVgAZKmWRpjtTlmv1M3Eaz6OevyrTBQgDlfngLwiPBghfWex8RQJ7cQQ/2uDE/aX+4QzS7cFfcWP5p2s5Xkgy6XAfUF9vlXWD6WqGRZHYpxJQddAJBkaABgLG3lz+UDl00= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(185117386973197)(228905959029699); X-MS-Exchange-SenderADCheck: 1 X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(3002001)(3231254)(944501410)(52105095)(10201501046)(93006095)(93001095)(6055026)(149027)(150027)(6041310)(20161123562045)(20161123558120)(20161123564045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123560045)(6072148)(201708071742011); SRVR:HE1PR04MB1386; BCL:0; PCL:0; RULEID:; SRVR:HE1PR04MB1386; X-Forefront-PRVS: 066517B35B X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(6049001)(396003)(39860400002)(346002)(376002)(39380400002)(366004)(199004)(189003)(13464003)(31696002)(66066001)(65956001)(36756003)(7736002)(31686004)(86362001)(110136005)(4326008)(2906002)(2870700001)(67846002)(76176011)(58126008)(25786009)(3260700006)(55236004)(966005)(478600001)(16576012)(316002)(2486003)(36916002)(305945005)(52146003)(6246003)(23676004)(52116002)(6306002)(59450400001)(386003)(106356001)(53546011)(105586002)(65806001)(47776003)(2616005)(26005)(53936002)(81166006)(81156014)(8676002)(486006)(97736004)(6666003)(8936002)(6116002)(229853002)(50466002)(5009440100003)(3846002)(44832011)(64126003)(68736007)(5660300001)(476003)(6486002)(65826007)(956004)(186003)(446003)(11346002)(16526019)(77096007)(110426005); DIR:OUT; SFP:1101; SCL:1; SRVR:HE1PR04MB1386; H:[10.232.134.49]; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; A:1; MX:1; Received-SPF: None (protection.outlook.com: nxp.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtIRTFQUjA0TUIxMzg2OzIzOklMWmlRZ2NKNzNHU2tGWHI5SGlMdWp4anJk?= =?utf-8?B?T0hxcVZjSVZ6c3pWVXRGdXA3SE10T2tyU2pSL1F2SDB0SGs2QmxvL1ZJKzNj?= =?utf-8?B?YjhzUFZnQ0Z6NzBONjIvQjNFSWFybkQyc0IvemQ1WDhYU1dhYlVKelNsbkll?= =?utf-8?B?d29OR0NtL1B4RGM0L2Z4UG1JNE84NmNUR0R4dmJOWXczSnFxc0hxeUxLemRV?= =?utf-8?B?RHA4ZkZnT0t5K0pUSkJ0ZE9icWtxVHd2WmRkSGh0bzI2Z3FPZ3Vrenlsek50?= =?utf-8?B?NDJ6alg4M2gwaE9BdStQZUtNcVc1RndTdFE3V3ZFcXlPVDEwSTlsVmNSdVZy?= =?utf-8?B?Z2h4cDg3VHZ4dUZRbjErT3loZzJzcisyTWFnZys3Ym9wdjBJcklQTHZab3Zv?= =?utf-8?B?a1I4bDJBOWJCaTFsS1Z3SFh1WVRSdjk5ZjJQak5oMDkxWDFSdjR5VTlNSlhF?= =?utf-8?B?SnFuejNESkZPbTVkTEZKZkd6M2w5YVZ4Q3pxOE9raXgzM2VCV3lyTHZLemdR?= =?utf-8?B?RUlGdTJobEZXSTlFem12a1dzMnpXUCt6VnA0MVJFWC9KbEdHSlVwU09BZkNB?= =?utf-8?B?SVhqYlViUHhTVWJhRCtONmpTZVBPc0xxcUloeUFYN01oYkVDa2M4OEhxakRM?= =?utf-8?B?NVVpZlpuRUVSOE8vaWMxWTdpcGZER1FWTmdLOEVoMGYzakJuSEFpb3BqYWdt?= =?utf-8?B?VDdwUnlTUkduNDJncDI0MXovei9aOFB1dW8xRXE3bGdMZld6aDZEZHp0aUwr?= =?utf-8?B?ZzRyeUlZWm9DbndBNzVYVGk4RlNCc2dFWStEUi9FcnlCQUsxTzV2cDAvNjBH?= =?utf-8?B?VkFUN083emZUMHMxQnlKWUg2d01Ba0VWbTl3QzBLVk1xUEhrT0F0NStULzNo?= =?utf-8?B?L2ZyZ1N4MjFFdVgwbnlKbEtDakpSaTNjYW5aaUNML0M4Nk9PTlF1VDVlaHlq?= =?utf-8?B?QmZ4NUNUdVhZblAvaW9tWnlUeGpBOG5xM3hOK0w1YXdmSFhYL2g4YmN6ZXpV?= =?utf-8?B?L2h2MVJhMWNXYjgwL3Y4bWtyeWJJdHVhaC9EQ01sSS9yUlFiQnVwdVduZ1JO?= =?utf-8?B?T3ZBczhBTFBDZUFWclZnSi9nTzEyYllVeFRrN3BhMVcrbjFBbXRQMHdaNWlU?= =?utf-8?B?M3B6YTI2UmQrVjFtUUx5LzFWV2pkUlUvMWVjRmc3RTdwa1NlMnQ4d1JwMlM3?= =?utf-8?B?WG9HWGpoQURIWktOcHJVYlNnT2ZXVjgwd2tWREVnV25pTnpJemt4S1pVbmIz?= =?utf-8?B?UWlUajFIL0owN2lxWkF2UU9TM2RiNzVGcWRGZyt2Q1RQbk13bVR1WGQ2eGFB?= =?utf-8?B?VjNxcnI2T0tvc2xKQWhZZlRwZy9JcGxkTG9EbFVjYk12c2VNZDNxakV0NmFw?= =?utf-8?B?bCtqMmhpSTB1SkVFeDNHZ3Zka1R5MytQaVZHSzNTUVM2NG45bXIwUVdEdFU2?= =?utf-8?B?ankxWUkzblRheHd5N2FUUlB4U1hBcmdVQjhvR2hndWpyeDZPeGNRZ0cxdElr?= =?utf-8?B?UTI4SnJ2TUdwQ1NvVU5nbVJWVFRhdG16NGJZdGxMa2M1VWJIN1pyWExoSEl6?= =?utf-8?B?N0xDbWJFRFNvUVNySVZpV3JpM3N5OGZiM01Gb0p2amJYQW10cmYvZlB2VGJV?= =?utf-8?B?cTNuUHU1LzBwNVpFNWdPc3JLRXB5SHkyQXpsVHBjd1BwS0VxSnp4SXEyNVkx?= =?utf-8?B?b2dFdloraVlUUEoySHg1bU95SS95YWY4alBadzRDeW5QdWRFc0FFWko3aVc3?= =?utf-8?B?K29jQjVvZTlreHVDSlprUEdjUUVmMCttbGFSOUF1R3NlUm9wbEx5eG52YmxO?= =?utf-8?B?dFhZM0RpcDY4T2hEUU51MUpIMEtuVGVSMzRMajM0RDZJNDM3ajM1c202T1ZG?= =?utf-8?B?R3dEK1dia0ZBdlkwcHp5UkNTNXROZSswbE4yNnlzMkZpZ01Xb2U2VDdtbERI?= =?utf-8?B?OERJK3RsdFQ5Q3ZXa1hiSFVsU0VQbnVvWGR2NzNLSythNk1TRnBNZElFY3Jj?= =?utf-8?B?Z2tFa2duNU40bDNSUGprN21UZmszNmY3UWJmTWp4SUlBVHk0K0FUT3hHdEZr?= =?utf-8?B?MWJLN2krQWR5bUE3dU1JczZ2UHB5aTQvQ29uT0FETytNOXpWdEJycXZxQWVz?= =?utf-8?B?VDlzak1mLzc1dW5FT0dnWG8rbVdBV0twVmpmSHp4b05rUHpoYWloZlpPZVBX?= =?utf-8?B?U2hJMTRTOWdIMVFGYVJZR3owM24ydy8zM3UyK2tOZHpIVEVWTUtRM05DN2lW?= =?utf-8?Q?ke6gMGgLZtY4HcyjBZ?= X-Microsoft-Antispam-Message-Info: FQpjCuduNa9h6bmSQGsxN0RLmsWSmbRwzewxiJcjoN1lhMMG+z3TLhC/n9iH9/mr1NCGhF/uocEfB6c3FghNEP/ImJ2FxsrUTneYGzCHG3VUbrmdB7eSsjCR0DpEzSvZV1J4ZOSfypTx7ayML2HSQtTe+j/cEBySBFmDuuKu3lhBfekuYkTZ4tUODCvym0pb X-Microsoft-Exchange-Diagnostics: 1; HE1PR04MB1386; 6:nepEFxVmmX4IdbvBQolCXOBMbz3sXu3MfD3HYyvudqAxONNKxolniqKUxofNt3ZHKS/0wCzCD+mTk2mZCOyWa2GWT4oEmyExl2tBo48Dc6AHToKL87ngwKlhnRpr6NFmB2G9MKo13rP9tRSQfaAG01KQ00h99nfgDpBrjHKw2fvrbhmuKE3mDYSwaGm6X+txubOSNU5nKq++uWB6YedsAR4ZRGY1n8sR0LjnUc3muYMvuCs7HoQthbfucbr0fNMa1baPRtBhKaScrneaS4SYZl2tfUSMAeUyoiDdD4lcBueOOrTC+CDYuH1C6JLpsznWeX9eQa1k1caFQ5R50eWTCLethdrBNH9NYEmCGbVggyMc1N86sgM7SxP5cPcqdq8XfSzFEWhD5IW3LlbFN0d9KopKeXiV4qBhaWDmrL/rmyIl0k9CenMVpbalMWyOR3L0gl7AquX0pvCq5M3/YQbnig==; 5:k9NZQKF+1GWeDaK7KpKFSJ4OMQC+YtKTr93q6hMDfgfeko9rQ5pc5Vb3W/wtZF9vcRj3cG1EnigJDueauZV+JZZPd9KS94KmhictQTCWs5Mxrow5E+1W2DVP3e7yIlOJDdyj1VuVuINGQS9vjwOeV6kb6jAWdDB5EYPyySrv2UI=; 24:4gz6GXnBwY53f9zbDSJyzKBj30CVAjEAcn8HoXcITcwjOT4b8qmqhhL+MW28OUZZGEvRRY8gFCd7Jl+SU8l8PDhq0hxdS4fZW6dnKB14lBs= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; HE1PR04MB1386; 7:tviPvXujRq5M8bqArZrUSRIZGU2E2XyKrF2mICUVkvMdWY2VhwhEhZoLnjrNi2eYpGxMFAp5dtDXnzoAo4w6bnDJvC8tKD7dFz6I7fUFGnJkJW+V2Vok4ivOJJAm0JLQO/XS3hPN7OF4JGmKzr/wjaEMjJXqJD670932ga8A9gZUOMg6KfXZovBTB4Dsop38RC3oUwrzsw0jWGkmmZTpiL/ifasyPXm2GyoeGanAxgYgLVfQ9qbr9kiVWaY8dC54 X-MS-Office365-Filtering-Correlation-Id: 352a0d91-b5fa-4ac8-3da3-08d5b4169f56 X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 May 2018 12:32:38.0333 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 352a0d91-b5fa-4ac8-3da3-08d5b4169f56 X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR04MB1386 Subject: Re: [dpdk-dev] [v3,1/5] eventdev: introduce event crypto adapter 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: , X-List-Received-Date: Mon, 07 May 2018 12:32:42 -0000 Hi Jerin, Abhinandan, Overall the patch looks good. But one comment on block diagram for OP_NEW mode functioning. The comment was also made on previous version but it looks the intent was misunderstood. On 5/7/2018 3:05 PM, Jerin Jacob wrote: > -----Original Message----- >> Date: Sun, 6 May 2018 00:17:06 +0530 >> From: Abhinandan Gujjar >> To: jerin.jacob@caviumnetworks.com, hemant.agrawal@nxp.com, >> akhil.goyal@nxp.com, dev@dpdk.org >> CC: narender.vangati@intel.com, abhinandan.gujjar@intel.com, >> nikhil.rao@intel.com, gage.eads@intel.com >> Subject: [v3,1/5] eventdev: introduce event crypto adapter >> X-Mailer: git-send-email 1.9.1 >> >> Signed-off-by: Abhinandan Gujjar >> Signed-off-by: Nikhil Rao >> Signed-off-by: Gage Eads >> --- >> MAINTAINERS | 5 + >> lib/librte_eventdev/rte_event_crypto_adapter.h | 554 +++++++++++++++++++++++++ >> 2 files changed, 559 insertions(+) >> create mode 100644 lib/librte_eventdev/rte_event_crypto_adapter.h >> > > Overall it looks good. > > #1) > > Please fix the following ./devtools/checkpatches.sh warning. > ➜ [master]laptop [dpdk.org] $ ./devtools/checkpatches.sh > > ### eventdev: add crypto adapter implementation > > WARNING:SPDX_LICENSE_TAG: Missing or malformed SPDX-License-Identifier > tag in line 1 > #106: FILE: lib/librte_eventdev/rte_event_crypto_adapter.c:1: > +/* SPDX-License-Identifier: BSD-3-Clause > > ### test: add event crypto adapter auto-test > > WARNING:SPDX_LICENSE_TAG: Missing or malformed SPDX-License-Identifier > tag in line 1 > #38: FILE: test/test/test_event_crypto_adapter.c:1: > +/* SPDX-License-Identifier: BSD-3-Clause > > total: 0 errors, 1 warnings, 927 lines checked > > ### doc: add event crypto adapter documentation > > WARNING:SPDX_LICENSE_TAG: Missing or malformed SPDX-License-Identifier > tag in line 1 > #41: FILE: doc/guides/prog_guide/event_crypto_adapter.rst:1: > +.. SPDX-License-Identifier: BSD-3-Clause > > * In the RTE_EVENT_CRYPTO_ADAPTER_OP_FORWARD mode, if HW supports > * RTE_EVENT_CRYPTO_ADAPTER_CAP_INTERNAL_PORT_OP_FWD capability the > * application > * can directly submit the crypto operations to the cryptodev. > * If not, > > > #2) I have added minor changes in description, Wherever it makes sense > to you then please pull it for next revision. Else we can discuss more. > > a) I have uploaded the diff at https://ufile.io/247t9 for > you convince. > b) Please update the similar change in programmers guide too. > > > diff --git a/lib/librte_eventdev/rte_event_crypto_adapter.h b/lib/librte_eventdev/rte_event_crypto_adapter.h > index 2c1f54f76..55fbdc55e 100644 > --- a/lib/librte_eventdev/rte_event_crypto_adapter.h > +++ b/lib/librte_eventdev/rte_event_crypto_adapter.h > @@ -23,14 +23,17 @@ > * between the crypto device and the event device. > * > * The application can choose to submit a crypto operation directly to > - * crypto device or send it to the crypto adapter via eventdev, the crypto > - * adapter then submits the crypto operation to the crypto device. > - * The first mode is known as the event new (OP_NEW) mode and the > - * second as the event forward (OP_FORWARD) mode. The choice of mode can > - * be specified while creating the adapter. > + * crypto device or send it to the crypto adapter via eventdev based on > + * RTE_EVENT_CRYPTO_ADAPTER_CAP_INTERNAL_PORT_OP_FWD capability. > + * The first mode is known as the event new(RTE_EVENT_CRYPTO_ADAPTER_OP_NEW) > + * mode and the second as the event forward(RTE_EVENT_CRYPTO_ADAPTER_OP_FORWARD) > + * mode. The choice of mode can be specified while creating the adapter. > + * In the former mode, it is an application responsibility to enable ingress packet > + * ordering. In the latter mode, it is the adapter responsibility to enable > + * the ingress packet ordering. > * > * > - * Working model of OP_NEW mode: > + * Working model of RTE_EVENT_CRYPTO_ADAPTER_OP_NEW mode: > * > * +--------------+ +--------------+ > * --[1]-->| | | Crypto stage | > @@ -47,25 +50,27 @@ > * | | | | > * +--------------+ +--------------+ > * > - * [1] Events from the previous stage. > + * [1] Events from the previous stage and enqueue to crypto/atomic stage > * [2] Application in atomic stage dequeues events from eventdev. > - * [3] Crypto operations are submitted to cryptodev. > + * [3] Crypto operations are submitted to cryptodev by application. > * [4] Crypto adapter dequeues crypto completions from cryptodev. > * [5] Crypto adapter enqueues events to the eventdev. > * [6] Events to the next stage. I think the sequence should be as follows: [1] Application dequeues from the previous stage. [2] Application prepare for enqueue to cryptodev [3] Application enqueues to cryptodev [4] Crypto adapter dequeues crypto completions from cryptodev. [5] Crypto adapter enqueues events to the eventdev. [6] Application dequeues from eventdev and prepare for further processing. So the Block diagram should be something like + * +--------------+ +--------------+ + * | | | Crypto stage | + * | Application |---[2]-->| + enqueue to | + * | | | cryptodev | + * +--------------+ +--------------+ + * ^ ^ | + * | | [3] + * [6] [1] | + * | | | + * +--------------+ | + * | | | + * | Event device | | + * | | | + * +--------------+ | + * ^ | + * | | + * [5] | + * | v + * +--------------+ +--------------+ + * | | | | + * |Crypto adapter|<--[4]---| Cryptodev | + * | | | | + * +--------------+ +--------------+ Please let me know if my understanding is not correct. > * > - * In the OP_NEW mode, application submits crypto operations directly to > - * crypto device. The adapter then dequeues crypto completions from crypto > + * In the RTE_EVENT_CRYPTO_ADAPTER_OP_NEW mode, application submits crypto > + * operations directly to crypto device. > + * The adapter then dequeues crypto completions from crypto > * device and enqueue events to the event device. > - * This mode does not ensure ingress ordering. The application is expected > - * to be in atomic stage. Events dequeued from the adapter will be treated > - * as new events. > + * This mode does not ensure ingress ordering if the application directly > + * enqueues to cryptodev without going through crypto/atomic stage. i.e removing > + * item [1] and [2]. > + * Events dequeued from the adapter will be treated as new events. > * In this mode, application needs to specify event information (response > * information) which is needed to enqueue an event after the crypto operation > * is completed. > * > * > - * Working model of OP_FORWARD mode: > + * Working model of RTE_EVENT_CRYPTO_ADAPTER_OP_FORWARD mode: > * > * +--------------+ +--------------+ > * --[1]-->| |---[2]-->| | > @@ -93,8 +98,9 @@ > * [7] Crypto adapter enqueues events to the eventdev > * [8] Events to the next stage > * > - * In the OP_FORWARD mode, if HW supports *_OP_FORWARD capability the > - * application can directly submit the crypto operations to the cryptodev. > + * In the RTE_EVENT_CRYPTO_ADAPTER_OP_FORWARD mode, if HW supports > + * RTE_EVENT_CRYPTO_ADAPTER_CAP_INTERNAL_PORT_OP_FWD capability the application > + * can directly submit the crypto operations to the cryptodev. > * If not, application retrieves crypto adapter's event port using > * rte_event_crypto_adapter_event_port_get() API. Then, links its event > * queue to this port and starts enqueuing crypto operations as events > @@ -121,7 +127,7 @@ > * - rte_event_crypto_adapter_stop() > * - rte_event_crypto_adapter_stats_get() > * - rte_event_crypto_adapter_stats_reset() > - > + * > * The application creates an instance using rte_event_crypto_adapter_create() > * or rte_event_crypto_adapter_create_ext(). > * > @@ -173,8 +179,10 @@ enum rte_event_crypto_adapter_mode { > /**< Start the crypto adapter in event forward mode. > * @see RTE_EVENT_OP_FORWARD. > * Application submits crypto requests as events to the crypto > - * adapter. Adapter submits crypto requests to the cryptodev > - * and crypto completions are enqueued back to the eventdev. > + * adapter or crypto device based on > + * RTE_EVENT_CRYPTO_ADAPTER_CAP_INTERNAL_PORT_OP_FWD capability. > + * crypto completions are enqueued back to the eventdev by > + * crypto adapter. > */ > }; > > @@ -215,11 +223,12 @@ struct rte_event_crypto_request { > union rte_event_crypto_metadata { > struct rte_event_crypto_request request_info; > /**< Request information to be filled in by application > - * for OP_FORWARD mode. > + * for RTE_EVENT_CRYPTO_ADAPTER_OP_NEW mode. > */ > struct rte_event response_info; > /**< Response information to be filled in by application > - * for OP_NEW and OP_FORWARD mode. > + * for RTE_EVENT_CRYPTO_ADAPTER_OP_NEW and > + * RTE_EVENT_CRYPTO_ADAPTER_OP_FORWARD mode. > */ > }; > > @@ -234,7 +243,8 @@ union rte_event_crypto_metadata { > struct rte_event_crypto_adapter_conf { > uint8_t event_port_id; > /**< Event port identifier, the adapter enqueues events to this > - * port and dequeues crypto request events in OP_FORWARD mode. > + * port and dequeues crypto request events in > + * RTE_EVENT_CRYPTO_ADAPTER_OP_FORWARD mode. > */ > uint32_t max_nb; > /**< The adapter can return early if it has processed at least >