From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id A4BF7A04DB; Thu, 15 Oct 2020 20:05:22 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 21B1D1DDD8; Thu, 15 Oct 2020 20:05:21 +0200 (CEST) Received: from mga12.intel.com (mga12.intel.com [192.55.52.136]) by dpdk.org (Postfix) with ESMTP id 2A5C51DDD3 for ; Thu, 15 Oct 2020 20:05:18 +0200 (CEST) IronPort-SDR: loBUn9Z6zNZgT6vTrN2XXF/AjDWm3fr4tGDCvjTMfnrdHE0gbg5Ko93nwBriOXhvbnYC9R/Ic2 62nlIZLwpRDw== X-IronPort-AV: E=McAfee;i="6000,8403,9775"; a="145727006" X-IronPort-AV: E=Sophos;i="5.77,379,1596524400"; d="scan'208";a="145727006" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga005.jf.intel.com ([10.7.209.41]) by fmsmga106.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 15 Oct 2020 11:05:17 -0700 IronPort-SDR: 4Iuy8wLeu7jj5JPzZY8LBv3kU4qViQYVHuf2R1OXh8jztdt3UfpaL9qasGj/FyccZDGFJeRRKc KKp1Fle7GDCQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.77,379,1596524400"; d="scan'208";a="531356047" Received: from txasoft-yocto.an.intel.com ([10.123.72.192]) by orsmga005.jf.intel.com with ESMTP; 15 Oct 2020 11:05:15 -0700 From: Timothy McDaniel To: Cc: jerinj@marvell.com, mattias.ronnblom@ericsson.com, liang.j.ma@intel.com, peter.mccarthy@intel.com, nipun.gupta@nxp.com, pbhagavatula@marvell.com, dev@dpdk.org, erik.g.carrillo@intel.com, gage.eads@intel.com, harry.van.haaren@intel.com, hemant.agrawal@nxp.com, bruce.richardson@intel.com Date: Thu, 15 Oct 2020 13:07:14 -0500 Message-Id: <1602785237-21843-1-git-send-email-timothy.mcdaniel@intel.com> X-Mailer: git-send-email 1.7.10 In-Reply-To: <1599843507-19970-2-git-send-email-timothy.mcdaniel@intel.com> References: <1599843507-19970-2-git-send-email-timothy.mcdaniel@intel.com> Subject: [dpdk-dev] [PATCH 0/3] Eventdev ABI changes for DLB/DLB2 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" This series implements the eventdev ABI changes required by the DLB and DLB2 PMDs. This ABI change was announced in the 20.08 release notes [1]. This patch was initially part of the V1 DLB PMD patchset. The DLB hardware does not conform exactly to the eventdev interface. 1) It has a limit on the number of queues that may be linked to a port. 2) Some ports are further restricted to a maximum of 1 linked queue. 3) It does not (currently) have the ability to carry the flow_id as part of the event (QE) payload. Due to the above, we would like to propose the following enhancements. 1) Add new fields to the rte_event_dev_info struct. These fields allow the device to advertize its capabilities so that applications can take the appropriate actions based on those capabilities. 2) Add a new field to the rte_event_dev_config struct. This field allows the application to specify how many of its ports are limited to a single link, or will be used in single link mode. 3) Replace the dedicated implicit_release_disabled field with a bit field of explicit port capabilities. The implicit_release_disable functionality is assigned to one bit, and a port-is-single-link-only attribute is assigned to another, with the remaining bits available for future assignment. Major changes since V1: Reworded commit message, as requested Fixed errors reported by clang Added blub to relnotes announcing the changes contained in this patch Removed ABI deprecation announcement Resolved patch apply issues when applying to eventdev-next Combined ABI patch and app/examples patch to remove dependencies Testing showed no performance impact due to the flow_id template code added to test app. [1] http://mails.dpdk.org/archives/dev/2020-August/177261.html Timothy McDaniel (3): eventdev: eventdev: express DLB/DLB2 PMD constraints doc: remove eventdev ABI change announcement doc: announce new eventdev ABI changes app/test-eventdev/evt_common.h | 11 ++++ app/test-eventdev/test_order_atq.c | 28 +++++++--- app/test-eventdev/test_order_common.c | 1 + app/test-eventdev/test_order_queue.c | 29 +++++++--- app/test/test_eventdev.c | 4 +- doc/guides/rel_notes/deprecation.rst | 13 ----- doc/guides/rel_notes/release_20_11.rst | 8 +++ drivers/event/dpaa/dpaa_eventdev.c | 3 +- drivers/event/dpaa2/dpaa2_eventdev.c | 5 +- drivers/event/dsw/dsw_evdev.c | 3 +- drivers/event/octeontx/ssovf_evdev.c | 5 +- drivers/event/octeontx2/otx2_evdev.c | 3 +- drivers/event/opdl/opdl_evdev.c | 3 +- drivers/event/skeleton/skeleton_eventdev.c | 5 +- drivers/event/sw/sw_evdev.c | 8 ++- drivers/event/sw/sw_evdev_selftest.c | 6 +- .../eventdev_pipeline/pipeline_worker_generic.c | 6 +- examples/eventdev_pipeline/pipeline_worker_tx.c | 1 + examples/l2fwd-event/l2fwd_event_generic.c | 7 ++- examples/l2fwd-event/l2fwd_event_internal_port.c | 6 +- examples/l3fwd/l3fwd_event_generic.c | 7 ++- examples/l3fwd/l3fwd_event_internal_port.c | 6 +- lib/librte_eventdev/rte_event_eth_tx_adapter.c | 2 +- lib/librte_eventdev/rte_eventdev.c | 65 +++++++++++++++++++--- lib/librte_eventdev/rte_eventdev.h | 51 ++++++++++++++--- lib/librte_eventdev/rte_eventdev_pmd_pci.h | 1 - lib/librte_eventdev/rte_eventdev_trace.h | 7 ++- lib/librte_eventdev/rte_eventdev_version.map | 4 +- 28 files changed, 221 insertions(+), 77 deletions(-) -- 2.6.4