The event timer adapter provides APIs to configure an event timer device that allows an application to arm timers which on expiry push events to an event device such as OcteonTx SSO. The OcteonTx TIM is a co-processor that can be configured as an event timer adapter which can be used by an application to manage event timers.
The TIM co-processor processes the event timers registered and pushes expired event timers to SSO based on the event queue, schedule type, flow id etc. provided as rte_event while arming the event timer. It maintains event timers with high precision and time granularity of 1us (microsecond).  http://dpdk.org/dev/patchwork/patch/33525/ v4 Changes: - fix 32bit compilation errors. - remove dead code. - make stats configurable through vdev args. - rebased to dpdk-next-eventdev - move probe to event/octeontx from mempool/octeontx. - rename register/unregister to arm/cancel to be inline with eventdev API. - update clk src enum to be inline with eventdev clk src. Note: check-git-log.sh complains Wrong headline lowercase: event/octeontx: add multiproducer timer arm and cancel which is a false positive as it expects 'arm' to be upper case. v3 Changes: - change datapath function return from int to uint16_t. - Add missing state checks while arm/cancel. - add stats. v2 Changes: - Move common code changes to separate patches. - Reduce ifdef clutter. - fix improper return value (erik). - remove redundent ops assignment (erik). - update octeontx documentation. Pavan Nikhilesh (11): usertools: add Cavium TIM as an event device event/octeontx: add support to probe timvf PCIe devices event/octeontx: add support to create and free timer adapter event/octeontx: add support to start and stop timer device event/octeontx: add event timer stats get and reset event/octeontx: add multiproducer timer arm and cancel event/octeontx: add single producer timer arm variant event/octeontx: add burst mode for timer arm event/octeontx: optimize timer adapter resolution parameters event/octeontx: add option to use fpavf as chunk pool doc: update eventdev OcteonTx documentation MAINTAINERS | 4 + doc/guides/eventdevs/octeontx.rst | 19 ++ drivers/event/octeontx/Makefile | 8 + drivers/event/octeontx/meson.build | 6 +- drivers/event/octeontx/ssovf_evdev.c | 22 ++ drivers/event/octeontx/timvf_evdev.c | 407 +++++++++++++++++++++++ drivers/event/octeontx/timvf_evdev.h | 226 +++++++++++++ drivers/event/octeontx/timvf_probe.c | 148 +++++++++ drivers/event/octeontx/timvf_worker.c | 200 ++++++++++++ drivers/event/octeontx/timvf_worker.h | 443 ++++++++++++++++++++++++++ usertools/dpdk-devbind.py | 4 +- 11 files changed, 1485 insertions(+), 2 deletions(-) create mode 100644 drivers/event/octeontx/timvf_evdev.c create mode 100644 drivers/event/octeontx/timvf_evdev.h create mode 100644 drivers/event/octeontx/timvf_probe.c create mode 100644 drivers/event/octeontx/timvf_worker.c create mode 100644 drivers/event/octeontx/timvf_worker.h -- 2.17.0