[dpdk-dev] [PATCH 00/39] Cavium OCTEONTX ssovf eventdev PMD
Jerin Jacob
jerin.jacob at caviumnetworks.com
Fri Mar 3 18:19:50 CET 2017
The following patch set adds Cavium OCTEONTX HW based eventdev
implementation to the next-eventdev tree.
Introduction to OCTEON-TX ARM processors can be found
here: http://www.cavium.com/OCTEON-TX_ARM_Processors.html
The first two patches in the series make changes to the eventdev
API and common test.
The Third patch in the series is to fix intra drivers dependencies
for the shared build(Posted by Shreyansh)
4-21 patches implement eventdev API with OCTEONTX SSOVF HW.
22-38 patches implement OCTEONTX specific test cases to validate
the driver. The test cases are usecase driven and it does not really depend on
OCTEONTX SSOVF PMD nor it doesn't invoke any PMD specific APIs.
I have created this unit test cases to validate the different use case with
eventdev.Probably, We can coverage all the PMD specific test cases under
common tests as a next step.
Performance and latency test case are missing in this patch set,
probably we need to add those in next step as the common test case.
Finally, The 39th patch adds the SSOVF documentation for build and
run instructions on OCTEONTX board.I have added only octeontx specific documentation.
We need to add the top-level overview page like(ethdev and cryptodev subsystem).
I think it will be only possible at least two drivers have documentation and
once we come up with the feature lists like ethdev and crypto devs.
I have enumerated a few of them in OCTEONTX PMD documentation.Looking forward
to seeing other vendor documentation to converge and create the overview page.
The patchset is Git log is clean, while check patch issues:
1) 1 Error on Complex Macro (which I believe it cannot be fixed) # Patch 17
2) 1 Error on spacing while using gcc inline assembly(it is false positive) # patch 17
Jerin Jacob (38):
eventdev: update PMD dequeue timeout conversion callback
app/test: fix eventdev reconfigure test
event/octeontx: add build and log infrastructure
event/octeontx: probe ssovf pcie devices
event/octeontx: probe ssowvf pcie devices
event/octeontx: add vdev interface functions
event/octeontx: add mailbox support
event/octeontx: add octeontx eventdev driver
event/octeontx: add device capabilities function
event/octeontx: add configure function
event/octeontx: add support for event queues
event/octeontx: add support for event ports
event/octeontx: add support for linking queues to ports
event/octeontx: add support dequeue timeout tick conversion
event/octeontx: add dump function for easier debugging
event/octeontx: add SSO HW device operations
event/octeontx: add support worker enqueue function
event/octeontx: add support worker dequeue function
event/octeontx: add start function
event/octeontx: add stop and close function
app/test: octeontx eventdev unit test infrastructure
app/test: octeontx unit test case setup and teardown
app/test: octeontx unit test case helper functions
app/test: octeontx simple event enqueue and dequeue test
app/test: octeontx multi queue enqueue and dequeue test
app/test: octeontx eventdev priority test
app/test: add infrastructure for multicore octeontx tests
app/test: octeontx multi queue and multi core/port tests
app/test: octeontx single link establishment test
app/test: octeontx multi link establishment test
app/test: octeontx flow based two stage sched type test
app/test: octeontx queue based two stage sched type test
app/test: octeontx flow based maximum stage pipeline
app/test: octeontx queue based maximum stage pipeline
app/test: octeontx queue and flow based max stage pipeline
app/test: octeontx producer-consumer based order test
app/test: add remaining tests based on existing helpers
doc: add OCTEONTX ssovf details
Shreyansh Jain (1):
mk: handle intra drivers dependencies for shared build
MAINTAINERS | 9 +
app/test/Makefile | 5 +-
app/test/test_eventdev.c | 4 +-
app/test/test_eventdev_octeontx.c | 1398 ++++++++++++++++++++
config/common_base | 6 +
config/defconfig_arm64-thunderx-linuxapp-gcc | 6 +
doc/guides/eventdevs/index.rst | 38 +
doc/guides/eventdevs/octeontx.rst | 131 ++
doc/guides/index.rst | 1 +
drivers/event/Makefile | 1 +
drivers/event/octeontx/Makefile | 65 +
drivers/event/octeontx/rte_pmd_octeontx_ssovf.h | 61 +
.../octeontx/rte_pmd_octeontx_ssovf_version.map | 9 +
drivers/event/octeontx/ssovf_evdev.c | 567 ++++++++
drivers/event/octeontx/ssovf_evdev.h | 203 +++
drivers/event/octeontx/ssovf_mbox.c | 232 ++++
drivers/event/octeontx/ssovf_probe.c | 285 ++++
drivers/event/octeontx/ssovf_worker.c | 358 +++++
drivers/event/skeleton/skeleton_eventdev.c | 4 +-
lib/librte_eventdev/rte_eventdev.c | 3 +-
lib/librte_eventdev/rte_eventdev_pmd.h | 5 +-
mk/rte.app.mk | 1 +
mk/rte.lib.mk | 2 +-
23 files changed, 3386 insertions(+), 8 deletions(-)
create mode 100644 app/test/test_eventdev_octeontx.c
create mode 100644 doc/guides/eventdevs/index.rst
create mode 100644 doc/guides/eventdevs/octeontx.rst
create mode 100644 drivers/event/octeontx/Makefile
create mode 100644 drivers/event/octeontx/rte_pmd_octeontx_ssovf.h
create mode 100644 drivers/event/octeontx/rte_pmd_octeontx_ssovf_version.map
create mode 100644 drivers/event/octeontx/ssovf_evdev.c
create mode 100644 drivers/event/octeontx/ssovf_evdev.h
create mode 100644 drivers/event/octeontx/ssovf_mbox.c
create mode 100644 drivers/event/octeontx/ssovf_probe.c
create mode 100644 drivers/event/octeontx/ssovf_worker.c
--
2.5.5
More information about the dev
mailing list