From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by dpdk.org (Postfix) with ESMTP id 4D80B237 for ; Tue, 28 Nov 2017 18:40:36 +0100 (CET) Received: from orsmga002.jf.intel.com ([10.7.209.21]) by fmsmga102.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 28 Nov 2017 09:40:35 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.44,468,1505804400"; d="scan'208";a="12992679" Received: from txasoft-yocto.an.intel.com (HELO txasoft-yocto.an.intel.com.) ([10.123.72.111]) by orsmga002.jf.intel.com with ESMTP; 28 Nov 2017 09:40:34 -0800 From: Erik Gabriel Carrillo To: pbhagavatula@caviumnetworks.com Cc: dev@dpdk.org, jerin.jacob@caviumnetworks.com, nipun.gupta@nxp.com, hemant.agrawal@nxp.com, nikhil.rao@intel.com Date: Tue, 28 Nov 2017 11:40:04 -0600 Message-Id: <1511890808-6072-1-git-send-email-erik.g.carrillo@intel.com> X-Mailer: git-send-email 1.7.10 In-Reply-To: <1511217333-142455-1-git-send-email-erik.g.carrillo@intel.com> References: <1511217333-142455-1-git-send-email-erik.g.carrillo@intel.com> Subject: [dpdk-dev] [RFC PATCH v4 0/4] eventtimer: introduce event timer 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: Tue, 28 Nov 2017 17:40:37 -0000 This set of RFC patches contains the same changes as the previous version, but they are now broken up into multiple patches for easier review. This patch set produces the same checkpatch warnings as the previous version: "macro with flow control" and "avoid externs". I have left the macros in since such usage seems common in DPDK, and left the extern in the .c because it is the only file that uses that symbol, and it seems better than creating a new header file that only contains the extern var. v4 - Split changes into multiple patches for easier review v3 - Reworked allocation and ops organization in common code based on feedback received from Jerin and Pavan. This will allow fast-path function pointers to be dereferenced with one level of indirection with pointers valid in primary and secondary processes. - Moved default software implementation from sw_evdev directory to eventdev library directory, which will allow it to be used by any eventdev PMD as an alternative to providing its own definitions. - Reverted occurrences of id back to pointer to adapter struct in library API - Added rte_event_timer_adapter_lookup() function back in v2 - Added ops structure and stubbed out plugin for SW impl - Added unit test stubs - Replaced occurrences of "wheel" in API with "adapter" - Replaced occurrences of pointer to struct rte_event_timer_adapter with ids - Removed rte_event_timer_adapter_lookup() function - Replaced RTE_EVENT_TIMER_SUCCESS_{ARM,CANCEL} states with RTE_EVENT_TIMER_ARMED Erik Gabriel Carrillo (4): eventtimer: introduce event timer adapter eventtimer: add common code eventtimer: add default software implementation stub test: add event timer adapter auto-test doc/api/doxy-api-index.md | 1 + drivers/event/sw/sw_evdev.c | 16 + lib/librte_eventdev/Makefile | 4 + lib/librte_eventdev/rte_event_timer_adapter.c | 428 +++++++++++++++++++++ lib/librte_eventdev/rte_event_timer_adapter.h | 427 ++++++++++++++++++++ .../rte_event_timer_adapter_driver.h | 159 ++++++++ lib/librte_eventdev/rte_eventdev.h | 7 +- lib/librte_eventdev/rte_eventdev_pmd.h | 7 + lib/librte_eventdev/rte_eventdev_version.map | 15 +- lib/librte_eventdev/sw_event_timer_adapter.c | 123 ++++++ test/test/Makefile | 1 + test/test/test_event_timer_adapter.c | 249 ++++++++++++ 12 files changed, 1434 insertions(+), 3 deletions(-) create mode 100644 lib/librte_eventdev/rte_event_timer_adapter.c create mode 100644 lib/librte_eventdev/rte_event_timer_adapter.h create mode 100644 lib/librte_eventdev/rte_event_timer_adapter_driver.h create mode 100644 lib/librte_eventdev/sw_event_timer_adapter.c create mode 100644 test/test/test_event_timer_adapter.c -- 2.6.4