DPDK patches and discussions
 help / color / mirror / Atom feed
* [dpdk-dev] [PATCH 1/3] doc: add skeleton for eventdevs feature metrices
@ 2019-11-07 11:12 Sunil Kumar Kori
  2019-11-07 11:12 ` [dpdk-dev] [PATCH 2/3] doc: update eventdev feature matrix for octeontx2 Sunil Kumar Kori
                   ` (3 more replies)
  0 siblings, 4 replies; 87+ messages in thread
From: Sunil Kumar Kori @ 2019-11-07 11:12 UTC (permalink / raw)
  To: jerinj, nikhil.rao, pbhagavatula, hemant.agrawal, nipun.gupta,
	harry.van.haaren, mattias.ronnblom, liang.j.ma, John McNamara,
	Marko Kovacevic
  Cc: dev, Sunil Kumar Kori

Patch adds skeleton for feature metrices for event dev
and Rx/Tx adapters.

Signed-off-by: Sunil Kumar Kori <skori@marvell.com>
---
 doc/guides/eventdevs/index.rst                |  1 +
 doc/guides/eventdevs/overview.rst             | 19 +++++
 .../overview_adptr_feature_table.txt          | 76 +++++++++++++++++
 .../eventdevs/overview_feature_table.txt      | 82 +++++++++++++++++++
 4 files changed, 178 insertions(+)
 create mode 100644 doc/guides/eventdevs/overview.rst
 create mode 100644 doc/guides/eventdevs/overview_adptr_feature_table.txt
 create mode 100644 doc/guides/eventdevs/overview_feature_table.txt

diff --git a/doc/guides/eventdevs/index.rst b/doc/guides/eventdevs/index.rst
index 570905b81..540ac762c 100644
--- a/doc/guides/eventdevs/index.rst
+++ b/doc/guides/eventdevs/index.rst
@@ -11,6 +11,7 @@ application trough the eventdev API.
     :maxdepth: 2
     :numbered:
 
+    overview
     dpaa
     dpaa2
     dsw
diff --git a/doc/guides/eventdevs/overview.rst b/doc/guides/eventdevs/overview.rst
new file mode 100644
index 000000000..6825b9007
--- /dev/null
+++ b/doc/guides/eventdevs/overview.rst
@@ -0,0 +1,19 @@
+..  SPDX-License-Identifier: BSD-3-Clause
+    Copyright(C) 2019 Marvell International Ltd.
+
+Event Device Supported Functionality Matrices
+=============================================
+
+Event Device Supported Feature Flags
+------------------------------------
+
+.. _table_eventdev_pmd_features:
+
+.. include:: overview_feature_table.txt
+
+Adapter Supported Feature Flags
+-------------------------------
+
+.. _table_adapter_features:
+
+.. include:: overview_adptr_feature_table.txt
diff --git a/doc/guides/eventdevs/overview_adptr_feature_table.txt b/doc/guides/eventdevs/overview_adptr_feature_table.txt
new file mode 100644
index 000000000..4f4887ea8
--- /dev/null
+++ b/doc/guides/eventdevs/overview_adptr_feature_table.txt
@@ -0,0 +1,76 @@
+
+.. raw:: html
+
+   <style>
+      .wy-nav-content {
+         opacity: .99;
+      }
+      table#id1 {
+         cursor: default;
+         overflow: hidden;
+      }
+      table#id1 th, table#id1 td {
+         text-align: center;
+      }
+      table#id1 th {
+         font-size: 72%;
+         white-space: pre-wrap;
+         vertical-align: top;
+         padding: 0.5em 0;
+         min-width: 0.9em;
+         width: 2em;
+      }
+      table#id1 col:first-child {
+         width: 0;
+      }
+      table#id1 th:first-child {
+         vertical-align: bottom;
+      }
+      table#id1 td {
+         font-size: 70%;
+         padding: 1px;
+      }
+      table#id1 td:first-child {
+         padding-left: 1em;
+         text-align: left;
+      }
+      table#id1 tr:nth-child(2n-1) td {
+         background-color: rgba(210, 210, 210, 0.2);
+      }
+      table#id1 th:not(:first-child):hover,
+      table#id1 td:not(:first-child):hover {
+         position: relative;
+      }
+      table#id1 th:not(:first-child):hover::after,
+      table#id1 td:not(:first-child):hover::after {
+         content: '';
+         height: 6000px;
+         top: -3000px;
+         width: 100%;
+         left: 0;
+         position: absolute;
+         z-index: -1;
+         background-color: #ffb;
+      }
+      table#id1 tr:hover td {
+         background-color: #ffb;
+      }
+   </style>
+
+.. table:: Features availability for adapters
+
+   ================================ = = = = = = =
+   Feature                          d d d o o o s
+                                    p p s c c p w
+                                    a a w t t d
+                                    a a   e e l
+                                      2   o o
+                                          n n
+                                          t t
+                                          x x
+                                            2
+   ================================ = = = = = = =
+   Rx/Tx on internal port
+   Multiple event queues per ethdev
+   Override flow ID
+   ================================ = = = = = = =
diff --git a/doc/guides/eventdevs/overview_feature_table.txt b/doc/guides/eventdevs/overview_feature_table.txt
new file mode 100644
index 000000000..c2e9bd289
--- /dev/null
+++ b/doc/guides/eventdevs/overview_feature_table.txt
@@ -0,0 +1,82 @@
+
+.. raw:: html
+
+   <style>
+      .wy-nav-content {
+         opacity: .99;
+      }
+      table#id1 {
+         cursor: default;
+         overflow: hidden;
+      }
+      table#id1 th, table#id1 td {
+         text-align: center;
+      }
+      table#id1 th {
+         font-size: 72%;
+         white-space: pre-wrap;
+         vertical-align: top;
+         padding: 0.5em 0;
+         min-width: 0.9em;
+         width: 2em;
+      }
+      table#id1 col:first-child {
+         width: 0;
+      }
+      table#id1 th:first-child {
+         vertical-align: bottom;
+      }
+      table#id1 td {
+         font-size: 70%;
+         padding: 1px;
+      }
+      table#id1 td:first-child {
+         padding-left: 1em;
+         text-align: left;
+      }
+      table#id1 tr:nth-child(2n-1) td {
+         background-color: rgba(210, 210, 210, 0.2);
+      }
+      table#id1 th:not(:first-child):hover,
+      table#id1 td:not(:first-child):hover {
+         position: relative;
+      }
+      table#id1 th:not(:first-child):hover::after,
+      table#id1 td:not(:first-child):hover::after {
+         content: '';
+         height: 6000px;
+         top: -3000px;
+         width: 100%;
+         left: 0;
+         position: absolute;
+         z-index: -1;
+         background-color: #ffb;
+      }
+      table#id1 tr:hover td {
+         background-color: #ffb;
+      }
+   </style>
+
+.. table:: Features availability in eventdev drivers
+
+   ===================================== = = = = = = =
+   Feature                               d d d o o o s
+                                         p p s c c p w
+                                         a a w t t d
+                                         a a   e e l
+                                           2   o o
+                                               n n
+                                               t t
+                                               x x
+                                                 2
+   ===================================== = = = = = = =
+   Event queue priority based scheduling
+   Event priority based scheduling
+   Event device distributed scheduling
+   Event device non sequential mode
+   Event queue all types
+   Burst mode enqueue/dequeue
+   Event port implicit release disable
+   Runtime event queue/port linking
+   Multi queue linking per port
+   ===================================== = = = = = = =
-- 
2.17.1


^ permalink raw reply	[flat|nested] 87+ messages in thread

* [dpdk-dev] [PATCH 2/3] doc: update eventdev feature matrix for octeontx2
  2019-11-07 11:12 [dpdk-dev] [PATCH 1/3] doc: add skeleton for eventdevs feature metrices Sunil Kumar Kori
@ 2019-11-07 11:12 ` Sunil Kumar Kori
  2019-11-07 11:12 ` [dpdk-dev] [PATCH 3/3] doc: update eventdev feature matrix for octeontx Sunil Kumar Kori
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 87+ messages in thread
From: Sunil Kumar Kori @ 2019-11-07 11:12 UTC (permalink / raw)
  To: jerinj, nikhil.rao, pbhagavatula, hemant.agrawal, nipun.gupta,
	harry.van.haaren, mattias.ronnblom, liang.j.ma, John McNamara,
	Marko Kovacevic
  Cc: dev, Sunil Kumar Kori

Patch updates eventdev and adapters feature metrices for octeontx2
platform.

Signed-off-by: Sunil Kumar Kori <skori@marvell.com>
---
 doc/guides/eventdevs/features/octeontx2.ini      | 16 ++++++++++++++++
 .../eventdevs/overview_adptr_feature_table.txt   |  4 ++--
 doc/guides/eventdevs/overview_feature_table.txt  | 12 ++++++------
 3 files changed, 24 insertions(+), 8 deletions(-)
 create mode 100644 doc/guides/eventdevs/features/octeontx2.ini

diff --git a/doc/guides/eventdevs/features/octeontx2.ini b/doc/guides/eventdevs/features/octeontx2.ini
new file mode 100644
index 000000000..05718e4ac
--- /dev/null
+++ b/doc/guides/eventdevs/features/octeontx2.ini
@@ -0,0 +1,16 @@
+;
+; Supported features of the 'octeontx2' eventdev driver.
+;
+; Refer to default.ini for the full list of available PMD features.
+;
+[Features]
+Event queue priority based scheduling = Y
+Event device distributed scheduling   = Y
+Event device non sequential mode      = Y
+Event queue all types                 = Y
+Runtime event queue/port linking      = Y
+Multi queue linking per port          = Y
+
+[Adapter Features]
+Rx/Tx on internal port           = Y
+Multiple event queues per ethdev = Y
diff --git a/doc/guides/eventdevs/overview_adptr_feature_table.txt b/doc/guides/eventdevs/overview_adptr_feature_table.txt
index 4f4887ea8..11c66eb49 100644
--- a/doc/guides/eventdevs/overview_adptr_feature_table.txt
+++ b/doc/guides/eventdevs/overview_adptr_feature_table.txt
@@ -70,7 +70,7 @@
                                           x x
                                             2
    ================================ = = = = = = =
-   Rx/Tx on internal port
-   Multiple event queues per ethdev
+   Rx/Tx on internal port                   Y
+   Multiple event queues per ethdev         Y
    Override flow ID
    ================================ = = = = = = =
diff --git a/doc/guides/eventdevs/overview_feature_table.txt b/doc/guides/eventdevs/overview_feature_table.txt
index c2e9bd289..c4d3bd6d4 100644
--- a/doc/guides/eventdevs/overview_feature_table.txt
+++ b/doc/guides/eventdevs/overview_feature_table.txt
@@ -70,13 +70,13 @@
                                                x x
                                                  2
    ===================================== = = = = = = =
-   Event queue priority based scheduling
+   Event queue priority based scheduling         Y
    Event priority based scheduling
-   Event device distributed scheduling
-   Event device non sequential mode
-   Event queue all types
+   Event device distributed scheduling           Y
+   Event device non sequential mode              Y
+   Event queue all types                         Y
    Burst mode enqueue/dequeue
    Event port implicit release disable
-   Runtime event queue/port linking
-   Multi queue linking per port
+   Runtime event queue/port linking              Y
+   Multi queue linking per port                  Y
    ===================================== = = = = = = =
-- 
2.17.1


^ permalink raw reply	[flat|nested] 87+ messages in thread

* [dpdk-dev] [PATCH 3/3] doc: update eventdev feature matrix for octeontx
  2019-11-07 11:12 [dpdk-dev] [PATCH 1/3] doc: add skeleton for eventdevs feature metrices Sunil Kumar Kori
  2019-11-07 11:12 ` [dpdk-dev] [PATCH 2/3] doc: update eventdev feature matrix for octeontx2 Sunil Kumar Kori
@ 2019-11-07 11:12 ` Sunil Kumar Kori
  2019-11-15  7:38 ` [dpdk-dev] [PATCH 1/3] doc: add skeleton for eventdevs feature metrices Jerin Jacob
  2019-11-21  7:44 ` [dpdk-dev] [PATCH v2 1/3] doc: add skeleton for eventdevs feature matrices Sunil Kumar Kori
  3 siblings, 0 replies; 87+ messages in thread
From: Sunil Kumar Kori @ 2019-11-07 11:12 UTC (permalink / raw)
  To: jerinj, nikhil.rao, pbhagavatula, hemant.agrawal, nipun.gupta,
	harry.van.haaren, mattias.ronnblom, liang.j.ma, John McNamara,
	Marko Kovacevic
  Cc: dev, Sunil Kumar Kori

Patch updates eventdev and adapters feature metrices for octeontx2
platform.

Signed-off-by: Sunil Kumar Kori <skori@marvell.com>
---
 doc/guides/eventdevs/features/octeontx.ini        | 15 +++++++++++++++
 .../eventdevs/overview_adptr_feature_table.txt    |  2 +-
 doc/guides/eventdevs/overview_feature_table.txt   | 12 ++++++------
 3 files changed, 22 insertions(+), 7 deletions(-)
 create mode 100644 doc/guides/eventdevs/features/octeontx.ini

diff --git a/doc/guides/eventdevs/features/octeontx.ini b/doc/guides/eventdevs/features/octeontx.ini
new file mode 100644
index 000000000..af6700711
--- /dev/null
+++ b/doc/guides/eventdevs/features/octeontx.ini
@@ -0,0 +1,15 @@
+;
+; Supported features of the 'octeontx2' eventdev driver.
+;
+; Refer to default.ini for the full list of available PMD features.
+;
+[Features]
+Event queue priority based scheduling = Y
+Event device distributed scheduling   = Y
+Event device non sequential mode      = Y
+Event queue all types                 = Y
+Runtime event queue/port linking      = Y
+Multi queue linking per port          = Y
+
+[Adapter Features]
+Rx/Tx on internal port           = Y
diff --git a/doc/guides/eventdevs/overview_adptr_feature_table.txt b/doc/guides/eventdevs/overview_adptr_feature_table.txt
index 11c66eb49..b5715713f 100644
--- a/doc/guides/eventdevs/overview_adptr_feature_table.txt
+++ b/doc/guides/eventdevs/overview_adptr_feature_table.txt
@@ -70,7 +70,7 @@
                                           x x
                                             2
    ================================ = = = = = = =
-   Rx/Tx on internal port                   Y
+   Rx/Tx on internal port                 Y Y
    Multiple event queues per ethdev         Y
    Override flow ID
    ================================ = = = = = = =
diff --git a/doc/guides/eventdevs/overview_feature_table.txt b/doc/guides/eventdevs/overview_feature_table.txt
index c4d3bd6d4..e48893378 100644
--- a/doc/guides/eventdevs/overview_feature_table.txt
+++ b/doc/guides/eventdevs/overview_feature_table.txt
@@ -70,13 +70,13 @@
                                                x x
                                                  2
    ===================================== = = = = = = =
-   Event queue priority based scheduling         Y
+   Event queue priority based scheduling       Y Y
    Event priority based scheduling
-   Event device distributed scheduling           Y
-   Event device non sequential mode              Y
-   Event queue all types                         Y
+   Event device distributed scheduling         Y Y
+   Event device non sequential mode            Y Y
+   Event queue all types                       Y Y
    Burst mode enqueue/dequeue
    Event port implicit release disable
-   Runtime event queue/port linking              Y
-   Multi queue linking per port                  Y
+   Runtime event queue/port linking            Y Y
+   Multi queue linking per port                Y Y
    ===================================== = = = = = = =
-- 
2.17.1


^ permalink raw reply	[flat|nested] 87+ messages in thread

* Re: [dpdk-dev] [PATCH 1/3] doc: add skeleton for eventdevs feature metrices
  2019-11-07 11:12 [dpdk-dev] [PATCH 1/3] doc: add skeleton for eventdevs feature metrices Sunil Kumar Kori
  2019-11-07 11:12 ` [dpdk-dev] [PATCH 2/3] doc: update eventdev feature matrix for octeontx2 Sunil Kumar Kori
  2019-11-07 11:12 ` [dpdk-dev] [PATCH 3/3] doc: update eventdev feature matrix for octeontx Sunil Kumar Kori
@ 2019-11-15  7:38 ` Jerin Jacob
  2019-11-21  7:44 ` [dpdk-dev] [PATCH v2 1/3] doc: add skeleton for eventdevs feature matrices Sunil Kumar Kori
  3 siblings, 0 replies; 87+ messages in thread
From: Jerin Jacob @ 2019-11-15  7:38 UTC (permalink / raw)
  To: Sunil Kumar Kori
  Cc: Jerin Jacob, Rao, Nikhil, Pavan Nikhilesh, Hemant Agrawal,
	Nipun Gupta, Van Haaren, Harry, mattias.ronnblom, liang.j.ma,
	John McNamara, Marko Kovacevic, dpdk-dev

On Thu, Nov 7, 2019 at 4:42 PM Sunil Kumar Kori <skori@marvell.com> wrote:
>
> Patch adds skeleton for feature metrices for event dev

s/metrices/matrices

> and Rx/Tx adapters.
>
> Signed-off-by: Sunil Kumar Kori <skori@marvell.com>

> +
> +   ================================ = = = = = = =
> +   Feature                          d d d o o o s
> +                                    p p s c c p w
> +                                    a a w t t d
> +                                    a a   e e l
> +                                      2   o o
> +                                          n n
> +                                          t t
> +                                          x x
> +                                            2
> +   ================================ = = = = = = =
> +   Rx/Tx on internal port
> +   Multiple event queues per ethdev
> +   Override flow ID
> +   ================================ = = = = = = =

I think we can have additional rows for the  Crypto Adapter, and Timer adapter.


> +   ===================================== = = = = = = =
> +   Feature                               d d d o o o s
> +                                         p p s c c p w
> +                                         a a w t t d
> +                                         a a   e e l
> +                                           2   o o
> +                                               n n
> +                                               t t
> +                                               x x
> +                                                 2
> +   ===================================== = = = = = = =
> +   Event queue priority based scheduling
> +   Event priority based scheduling
> +   Event device distributed scheduling
> +   Event device non sequential mode
> +   Event queue all types
> +   Burst mode enqueue/dequeue
> +   Event port implicit release disable
> +   Runtime event queue/port linking
> +   Multi queue linking per port
> +   ===================================== = = = = = = =

@ All eventdev PMD maintainers.

Do you like to have any more features in the eventdev and adapter list?


> --
> 2.17.1
>

^ permalink raw reply	[flat|nested] 87+ messages in thread

* [dpdk-dev] [PATCH v2 1/3] doc: add skeleton for eventdevs feature matrices
  2019-11-07 11:12 [dpdk-dev] [PATCH 1/3] doc: add skeleton for eventdevs feature metrices Sunil Kumar Kori
                   ` (2 preceding siblings ...)
  2019-11-15  7:38 ` [dpdk-dev] [PATCH 1/3] doc: add skeleton for eventdevs feature metrices Jerin Jacob
@ 2019-11-21  7:44 ` Sunil Kumar Kori
  2019-11-21  7:44   ` [dpdk-dev] [PATCH v2 2/3] doc: update eventdev feature matrix for octeontx2 Sunil Kumar Kori
                     ` (3 more replies)
  3 siblings, 4 replies; 87+ messages in thread
From: Sunil Kumar Kori @ 2019-11-21  7:44 UTC (permalink / raw)
  To: jerinj, nikhil.rao, pbhagavatula, hemant.agrawal, nipun.gupta,
	harry.van.haaren, mattias.ronnblom, liang.j.ma, John McNamara,
	Marko Kovacevic
  Cc: dev, Sunil Kumar Kori

Patch adds skeleton for feature matrices for event dev
and Rx/Tx adapters.

Signed-off-by: Sunil Kumar Kori <skori@marvell.com>
---
v2:
 - Review comments incorporated

 doc/guides/eventdevs/index.rst                |  1 +
 doc/guides/eventdevs/overview.rst             | 19 +++++
 .../overview_adptr_feature_table.txt          | 81 ++++++++++++++++++
 .../eventdevs/overview_feature_table.txt      | 82 +++++++++++++++++++
 4 files changed, 183 insertions(+)
 create mode 100644 doc/guides/eventdevs/overview.rst
 create mode 100644 doc/guides/eventdevs/overview_adptr_feature_table.txt
 create mode 100644 doc/guides/eventdevs/overview_feature_table.txt

diff --git a/doc/guides/eventdevs/index.rst b/doc/guides/eventdevs/index.rst
index 570905b81..540ac762c 100644
--- a/doc/guides/eventdevs/index.rst
+++ b/doc/guides/eventdevs/index.rst
@@ -11,6 +11,7 @@ application trough the eventdev API.
     :maxdepth: 2
     :numbered:
 
+    overview
     dpaa
     dpaa2
     dsw
diff --git a/doc/guides/eventdevs/overview.rst b/doc/guides/eventdevs/overview.rst
new file mode 100644
index 000000000..6825b9007
--- /dev/null
+++ b/doc/guides/eventdevs/overview.rst
@@ -0,0 +1,19 @@
+..  SPDX-License-Identifier: BSD-3-Clause
+    Copyright(C) 2019 Marvell International Ltd.
+
+Event Device Supported Functionality Matrices
+=============================================
+
+Event Device Supported Feature Flags
+------------------------------------
+
+.. _table_eventdev_pmd_features:
+
+.. include:: overview_feature_table.txt
+
+Adapter Supported Feature Flags
+-------------------------------
+
+.. _table_adapter_features:
+
+.. include:: overview_adptr_feature_table.txt
diff --git a/doc/guides/eventdevs/overview_adptr_feature_table.txt b/doc/guides/eventdevs/overview_adptr_feature_table.txt
new file mode 100644
index 000000000..a2e2c0ab3
--- /dev/null
+++ b/doc/guides/eventdevs/overview_adptr_feature_table.txt
@@ -0,0 +1,81 @@
+
+.. raw:: html
+
+   <style>
+      .wy-nav-content {
+         opacity: .99;
+      }
+      table#id1 {
+         cursor: default;
+         overflow: hidden;
+      }
+      table#id1 th, table#id1 td {
+         text-align: center;
+      }
+      table#id1 th {
+         font-size: 72%;
+         white-space: pre-wrap;
+         vertical-align: top;
+         padding: 0.5em 0;
+         min-width: 0.9em;
+         width: 2em;
+      }
+      table#id1 col:first-child {
+         width: 0;
+      }
+      table#id1 th:first-child {
+         vertical-align: bottom;
+      }
+      table#id1 td {
+         font-size: 70%;
+         padding: 1px;
+      }
+      table#id1 td:first-child {
+         padding-left: 1em;
+         text-align: left;
+      }
+      table#id1 tr:nth-child(2n-1) td {
+         background-color: rgba(210, 210, 210, 0.2);
+      }
+      table#id1 th:not(:first-child):hover,
+      table#id1 td:not(:first-child):hover {
+         position: relative;
+      }
+      table#id1 th:not(:first-child):hover::after,
+      table#id1 td:not(:first-child):hover::after {
+         content: '';
+         height: 6000px;
+         top: -3000px;
+         width: 100%;
+         left: 0;
+         position: absolute;
+         z-index: -1;
+         background-color: #ffb;
+      }
+      table#id1 tr:hover td {
+         background-color: #ffb;
+      }
+   </style>
+
+.. table:: Features availability for adapters
+
+   ========================================== = = = = = = =
+   Feature                                    d d d o o o s
+                                              p p s c c p w
+                                              a a w t t d
+                                              a a   e e l
+                                                2   o o
+                                                    n n
+                                                    t t
+                                                    x x
+                                                      2
+   ========================================== = = = = = = =
+   Eth Rx/Tx adapter on internal port
+   Multiple event queues per ethdev
+   Override flow ID
+   Crypto adapter new event enqueue
+   Crypto adapter forwarded event enqueue
+   Crypto queue pair mapping to event queue
+   Crypto adapter session data store/retrieve
+   Timer adapter support in H/W
+   ========================================== = = = = = = =
diff --git a/doc/guides/eventdevs/overview_feature_table.txt b/doc/guides/eventdevs/overview_feature_table.txt
new file mode 100644
index 000000000..c2e9bd289
--- /dev/null
+++ b/doc/guides/eventdevs/overview_feature_table.txt
@@ -0,0 +1,82 @@
+
+.. raw:: html
+
+   <style>
+      .wy-nav-content {
+         opacity: .99;
+      }
+      table#id1 {
+         cursor: default;
+         overflow: hidden;
+      }
+      table#id1 th, table#id1 td {
+         text-align: center;
+      }
+      table#id1 th {
+         font-size: 72%;
+         white-space: pre-wrap;
+         vertical-align: top;
+         padding: 0.5em 0;
+         min-width: 0.9em;
+         width: 2em;
+      }
+      table#id1 col:first-child {
+         width: 0;
+      }
+      table#id1 th:first-child {
+         vertical-align: bottom;
+      }
+      table#id1 td {
+         font-size: 70%;
+         padding: 1px;
+      }
+      table#id1 td:first-child {
+         padding-left: 1em;
+         text-align: left;
+      }
+      table#id1 tr:nth-child(2n-1) td {
+         background-color: rgba(210, 210, 210, 0.2);
+      }
+      table#id1 th:not(:first-child):hover,
+      table#id1 td:not(:first-child):hover {
+         position: relative;
+      }
+      table#id1 th:not(:first-child):hover::after,
+      table#id1 td:not(:first-child):hover::after {
+         content: '';
+         height: 6000px;
+         top: -3000px;
+         width: 100%;
+         left: 0;
+         position: absolute;
+         z-index: -1;
+         background-color: #ffb;
+      }
+      table#id1 tr:hover td {
+         background-color: #ffb;
+      }
+   </style>
+
+.. table:: Features availability in eventdev drivers
+
+   ===================================== = = = = = = =
+   Feature                               d d d o o o s
+                                         p p s c c p w
+                                         a a w t t d
+                                         a a   e e l
+                                           2   o o
+                                               n n
+                                               t t
+                                               x x
+                                                 2
+   ===================================== = = = = = = =
+   Event queue priority based scheduling
+   Event priority based scheduling
+   Event device distributed scheduling
+   Event device non sequential mode
+   Event queue all types
+   Burst mode enqueue/dequeue
+   Event port implicit release disable
+   Runtime event queue/port linking
+   Multi queue linking per port
+   ===================================== = = = = = = =
-- 
2.17.1


^ permalink raw reply	[flat|nested] 87+ messages in thread

* [dpdk-dev] [PATCH v2 2/3] doc: update eventdev feature matrix for octeontx2
  2019-11-21  7:44 ` [dpdk-dev] [PATCH v2 1/3] doc: add skeleton for eventdevs feature matrices Sunil Kumar Kori
@ 2019-11-21  7:44   ` Sunil Kumar Kori
  2019-11-21  7:44   ` [dpdk-dev] [PATCH v2 3/3] doc: update eventdev feature matrix for octeontx Sunil Kumar Kori
                     ` (2 subsequent siblings)
  3 siblings, 0 replies; 87+ messages in thread
From: Sunil Kumar Kori @ 2019-11-21  7:44 UTC (permalink / raw)
  To: jerinj, nikhil.rao, pbhagavatula, hemant.agrawal, nipun.gupta,
	harry.van.haaren, mattias.ronnblom, liang.j.ma, John McNamara,
	Marko Kovacevic
  Cc: dev, Sunil Kumar Kori

Patch updates eventdev and adapters feature matrices for octeontx2
platform.

Signed-off-by: Sunil Kumar Kori <skori@marvell.com>
---
v2:
 - Review comments incorporated

 doc/guides/eventdevs/features/octeontx2.ini     | 17 +++++++++++++++++
 .../eventdevs/overview_adptr_feature_table.txt  |  6 +++---
 doc/guides/eventdevs/overview_feature_table.txt | 12 ++++++------
 3 files changed, 26 insertions(+), 9 deletions(-)
 create mode 100644 doc/guides/eventdevs/features/octeontx2.ini

diff --git a/doc/guides/eventdevs/features/octeontx2.ini b/doc/guides/eventdevs/features/octeontx2.ini
new file mode 100644
index 000000000..4c50b2125
--- /dev/null
+++ b/doc/guides/eventdevs/features/octeontx2.ini
@@ -0,0 +1,17 @@
+;
+; Supported features of the 'octeontx2' eventdev driver.
+;
+; Refer to default.ini for the full list of available PMD features.
+;
+[Features]
+Event queue priority based scheduling = Y
+Event device distributed scheduling   = Y
+Event device non sequential mode      = Y
+Event queue all types                 = Y
+Runtime event queue/port linking      = Y
+Multi queue linking per port          = Y
+
+[Adapter Features]
+Eth Rx/Tx adapter on internal port = Y
+Multiple event queues per ethdev   = Y
+Timer adapter support in H/W       = Y
diff --git a/doc/guides/eventdevs/overview_adptr_feature_table.txt b/doc/guides/eventdevs/overview_adptr_feature_table.txt
index a2e2c0ab3..9aac52069 100644
--- a/doc/guides/eventdevs/overview_adptr_feature_table.txt
+++ b/doc/guides/eventdevs/overview_adptr_feature_table.txt
@@ -70,12 +70,12 @@
                                                     x x
                                                       2
    ========================================== = = = = = = =
-   Eth Rx/Tx adapter on internal port
-   Multiple event queues per ethdev
+   Eth Rx/Tx adapter on internal port                 Y
+   Multiple event queues per ethdev                   Y
    Override flow ID
    Crypto adapter new event enqueue
    Crypto adapter forwarded event enqueue
    Crypto queue pair mapping to event queue
    Crypto adapter session data store/retrieve
-   Timer adapter support in H/W
+   Timer adapter support in H/W                       Y
    ========================================== = = = = = = =
diff --git a/doc/guides/eventdevs/overview_feature_table.txt b/doc/guides/eventdevs/overview_feature_table.txt
index c2e9bd289..c4d3bd6d4 100644
--- a/doc/guides/eventdevs/overview_feature_table.txt
+++ b/doc/guides/eventdevs/overview_feature_table.txt
@@ -70,13 +70,13 @@
                                                x x
                                                  2
    ===================================== = = = = = = =
-   Event queue priority based scheduling
+   Event queue priority based scheduling         Y
    Event priority based scheduling
-   Event device distributed scheduling
-   Event device non sequential mode
-   Event queue all types
+   Event device distributed scheduling           Y
+   Event device non sequential mode              Y
+   Event queue all types                         Y
    Burst mode enqueue/dequeue
    Event port implicit release disable
-   Runtime event queue/port linking
-   Multi queue linking per port
+   Runtime event queue/port linking              Y
+   Multi queue linking per port                  Y
    ===================================== = = = = = = =
-- 
2.17.1


^ permalink raw reply	[flat|nested] 87+ messages in thread

* [dpdk-dev] [PATCH v2 3/3] doc: update eventdev feature matrix for octeontx
  2019-11-21  7:44 ` [dpdk-dev] [PATCH v2 1/3] doc: add skeleton for eventdevs feature matrices Sunil Kumar Kori
  2019-11-21  7:44   ` [dpdk-dev] [PATCH v2 2/3] doc: update eventdev feature matrix for octeontx2 Sunil Kumar Kori
@ 2019-11-21  7:44   ` Sunil Kumar Kori
  2019-11-28 15:49   ` [dpdk-dev] [PATCH v2 1/3] doc: add skeleton for eventdevs feature matrices Thomas Monjalon
  2019-12-03  6:27   ` [dpdk-dev] [PATCH v3 " Sunil Kumar Kori
  3 siblings, 0 replies; 87+ messages in thread
From: Sunil Kumar Kori @ 2019-11-21  7:44 UTC (permalink / raw)
  To: jerinj, nikhil.rao, pbhagavatula, hemant.agrawal, nipun.gupta,
	harry.van.haaren, mattias.ronnblom, liang.j.ma, John McNamara,
	Marko Kovacevic
  Cc: dev, Sunil Kumar Kori

Patch updates eventdev and adapters feature matrices for octeontx
platform.

Signed-off-by: Sunil Kumar Kori <skori@marvell.com>
---
v2:
 - Review comments incorporated

 doc/guides/eventdevs/features/octeontx.ini       | 16 ++++++++++++++++
 .../eventdevs/overview_adptr_feature_table.txt   |  4 ++--
 doc/guides/eventdevs/overview_feature_table.txt  | 12 ++++++------
 3 files changed, 24 insertions(+), 8 deletions(-)
 create mode 100644 doc/guides/eventdevs/features/octeontx.ini

diff --git a/doc/guides/eventdevs/features/octeontx.ini b/doc/guides/eventdevs/features/octeontx.ini
new file mode 100644
index 000000000..27cde77cd
--- /dev/null
+++ b/doc/guides/eventdevs/features/octeontx.ini
@@ -0,0 +1,16 @@
+;
+; Supported features of the 'octeontx2' eventdev driver.
+;
+; Refer to default.ini for the full list of available PMD features.
+;
+[Features]
+Event queue priority based scheduling = Y
+Event device distributed scheduling   = Y
+Event device non sequential mode      = Y
+Event queue all types                 = Y
+Runtime event queue/port linking      = Y
+Multi queue linking per port          = Y
+
+[Adapter Features]
+Eth Rx/Tx adapter on internal port    = Y
+Timer adapter support in H/W          = Y
diff --git a/doc/guides/eventdevs/overview_adptr_feature_table.txt b/doc/guides/eventdevs/overview_adptr_feature_table.txt
index 9aac52069..6ebdc098f 100644
--- a/doc/guides/eventdevs/overview_adptr_feature_table.txt
+++ b/doc/guides/eventdevs/overview_adptr_feature_table.txt
@@ -70,12 +70,12 @@
                                                     x x
                                                       2
    ========================================== = = = = = = =
-   Eth Rx/Tx adapter on internal port                 Y
+   Eth Rx/Tx adapter on internal port               Y Y
    Multiple event queues per ethdev                   Y
    Override flow ID
    Crypto adapter new event enqueue
    Crypto adapter forwarded event enqueue
    Crypto queue pair mapping to event queue
    Crypto adapter session data store/retrieve
-   Timer adapter support in H/W                       Y
+   Timer adapter support in H/W                     Y Y
    ========================================== = = = = = = =
diff --git a/doc/guides/eventdevs/overview_feature_table.txt b/doc/guides/eventdevs/overview_feature_table.txt
index c4d3bd6d4..e48893378 100644
--- a/doc/guides/eventdevs/overview_feature_table.txt
+++ b/doc/guides/eventdevs/overview_feature_table.txt
@@ -70,13 +70,13 @@
                                                x x
                                                  2
    ===================================== = = = = = = =
-   Event queue priority based scheduling         Y
+   Event queue priority based scheduling       Y Y
    Event priority based scheduling
-   Event device distributed scheduling           Y
-   Event device non sequential mode              Y
-   Event queue all types                         Y
+   Event device distributed scheduling         Y Y
+   Event device non sequential mode            Y Y
+   Event queue all types                       Y Y
    Burst mode enqueue/dequeue
    Event port implicit release disable
-   Runtime event queue/port linking              Y
-   Multi queue linking per port                  Y
+   Runtime event queue/port linking            Y Y
+   Multi queue linking per port                Y Y
    ===================================== = = = = = = =
-- 
2.17.1


^ permalink raw reply	[flat|nested] 87+ messages in thread

* Re: [dpdk-dev] [PATCH v2 1/3] doc: add skeleton for eventdevs feature matrices
  2019-11-21  7:44 ` [dpdk-dev] [PATCH v2 1/3] doc: add skeleton for eventdevs feature matrices Sunil Kumar Kori
  2019-11-21  7:44   ` [dpdk-dev] [PATCH v2 2/3] doc: update eventdev feature matrix for octeontx2 Sunil Kumar Kori
  2019-11-21  7:44   ` [dpdk-dev] [PATCH v2 3/3] doc: update eventdev feature matrix for octeontx Sunil Kumar Kori
@ 2019-11-28 15:49   ` Thomas Monjalon
  2019-12-03  6:27   ` [dpdk-dev] [PATCH v3 " Sunil Kumar Kori
  3 siblings, 0 replies; 87+ messages in thread
From: Thomas Monjalon @ 2019-11-28 15:49 UTC (permalink / raw)
  To: Sunil Kumar Kori
  Cc: dev, jerinj, nikhil.rao, pbhagavatula, hemant.agrawal,
	nipun.gupta, harry.van.haaren, mattias.ronnblom, liang.j.ma,
	John McNamara, Marko Kovacevic

21/11/2019 08:44, Sunil Kumar Kori:
> Patch adds skeleton for feature matrices for event dev
> and Rx/Tx adapters.
[...]
> +.. table:: Features availability in eventdev drivers
> +
> +   ===================================== = = = = = = =
> +   Feature                               d d d o o o s
> +                                         p p s c c p w
> +                                         a a w t t d
> +                                         a a   e e l
> +                                           2   o o
> +                                               n n
> +                                               t t
> +                                               x x
> +                                                 2
> +   ===================================== = = = = = = =
> +   Event queue priority based scheduling
> +   Event priority based scheduling
> +   Event device distributed scheduling
> +   Event device non sequential mode
> +   Event queue all types
> +   Burst mode enqueue/dequeue
> +   Event port implicit release disable
> +   Runtime event queue/port linking
> +   Multi queue linking per port
> +   ===================================== = = = = = = =

This table should be automatically generated from conf.py.

(Ideally we should have a custom sphinx class for it)

Please rework and do not commit such .txt file, thanks



^ permalink raw reply	[flat|nested] 87+ messages in thread

* [dpdk-dev] [PATCH v3 1/3] doc: add skeleton for eventdevs feature matrices
  2019-11-21  7:44 ` [dpdk-dev] [PATCH v2 1/3] doc: add skeleton for eventdevs feature matrices Sunil Kumar Kori
                     ` (2 preceding siblings ...)
  2019-11-28 15:49   ` [dpdk-dev] [PATCH v2 1/3] doc: add skeleton for eventdevs feature matrices Thomas Monjalon
@ 2019-12-03  6:27   ` Sunil Kumar Kori
  2019-12-03  6:27     ` [dpdk-dev] [PATCH v3 2/3] doc: update eventdev feature matrix for octeontx2 Sunil Kumar Kori
                       ` (2 more replies)
  3 siblings, 3 replies; 87+ messages in thread
From: Sunil Kumar Kori @ 2019-12-03  6:27 UTC (permalink / raw)
  To: jerinj, nikhil.rao, pbhagavatula, hemant.agrawal, nipun.gupta,
	harry.van.haaren, mattias.ronnblom, liang.j.ma, John McNamara,
	Marko Kovacevic
  Cc: dev, Sunil Kumar Kori

Patch adds skeleton for feature matrices for event dev
and Rx/Tx adapters.

Along with, .ini files are added for all supported PMDs.

Signed-off-by: Sunil Kumar Kori <skori@marvell.com>
---
v3:
 - Removed .txt files to generate tables.
 - Use conf.py script to generate tables.
 - Add .ini file for all supported PMDs.
v2:
 - Review comments incorporated

 .gitignore                                  |  2 ++
 doc/guides/conf.py                          | 12 ++++++++-
 doc/guides/eventdevs/features/default.ini   | 30 +++++++++++++++++++++
 doc/guides/eventdevs/features/dpaa.ini      |  8 ++++++
 doc/guides/eventdevs/features/dpaa2.ini     |  8 ++++++
 doc/guides/eventdevs/features/dsw.ini       |  8 ++++++
 doc/guides/eventdevs/features/octeontx.ini  |  8 ++++++
 doc/guides/eventdevs/features/octeontx2.ini |  8 ++++++
 doc/guides/eventdevs/features/opdl.ini      |  8 ++++++
 doc/guides/eventdevs/features/sw.ini        |  8 ++++++
 doc/guides/eventdevs/index.rst              |  1 +
 doc/guides/eventdevs/overview.rst           | 19 +++++++++++++
 12 files changed, 119 insertions(+), 1 deletion(-)
 create mode 100644 doc/guides/eventdevs/features/default.ini
 create mode 100644 doc/guides/eventdevs/features/dpaa.ini
 create mode 100644 doc/guides/eventdevs/features/dpaa2.ini
 create mode 100644 doc/guides/eventdevs/features/dsw.ini
 create mode 100644 doc/guides/eventdevs/features/octeontx.ini
 create mode 100644 doc/guides/eventdevs/features/octeontx2.ini
 create mode 100644 doc/guides/eventdevs/features/opdl.ini
 create mode 100644 doc/guides/eventdevs/features/sw.ini
 create mode 100644 doc/guides/eventdevs/overview.rst

diff --git a/.gitignore b/.gitignore
index 9741ba076..e0299a2e1 100644
--- a/.gitignore
+++ b/.gitignore
@@ -9,6 +9,8 @@ doc/guides/cryptodevs/overview_auth_table.txt
 doc/guides/cryptodevs/overview_aead_table.txt
 doc/guides/cryptodevs/overview_asym_table.txt
 doc/guides/compressdevs/overview_feature_table.txt
+doc/guides/eventdevs/overview_feature_table.txt
+doc/guides/eventdevs/overview_adptr_feature_table.txt
 
 # ignore generated ctags/cscope files
 cscope.out.po
diff --git a/doc/guides/conf.py b/doc/guides/conf.py
index e2b52e2df..ba2833d03 100644
--- a/doc/guides/conf.py
+++ b/doc/guides/conf.py
@@ -47,7 +47,7 @@
 master_doc = 'index'
 
 # Maximum feature description string length
-feature_str_len = 25
+feature_str_len = 45
 
 # Figures, tables and code-blocks automatically numbered if they have caption
 numfig = True
@@ -401,6 +401,16 @@ def setup(app):
                             'Features',
                             'Features availability in compression drivers',
                             'Feature')
+    table_file = dirname(__file__) + '/eventdevs/overview_feature_table.txt'
+    generate_overview_table(table_file, 1,
+                            'Features',
+                            'Features availability in eventdev drivers',
+                            'Feature')
+    table_file = dirname(__file__) + '/eventdevs/overview_adptr_feature_table.txt'
+    generate_overview_table(table_file, 2,
+                            'Adapter Features',
+                            'Features availability for adapters',
+                            'Feature')
 
     if LooseVersion(sphinx_version) < LooseVersion('1.3.1'):
         print('Upgrade sphinx to version >= 1.3.1 for '
diff --git a/doc/guides/eventdevs/features/default.ini b/doc/guides/eventdevs/features/default.ini
new file mode 100644
index 000000000..d007d7a69
--- /dev/null
+++ b/doc/guides/eventdevs/features/default.ini
@@ -0,0 +1,30 @@
+;
+; Features of a default eventdev driver.
+;
+; This file defines the features that are valid for inclusion in
+; the other driver files and also the order that they appear in
+; the features table in the documentation.
+;
+[Features]
+Event queue priority based scheduling =
+Event priority based scheduling       =
+Event device distributed scheduling   =
+Event device non sequential mode      =
+Event queue all types                 =
+Burst mode enqueue/dequeue            =
+Event port implicit release disable   =
+Runtime event queue/port linking      =
+Multi queue linking per port          =
+
+;
+; Features of a default adapter.
+;
+[Adapter Features]
+Eth Rx/Tx adapter on internal port         =
+Multiple event queues per ethdev           =
+Override flow ID                           =
+Crypto adapter new event enqueue           =
+Crypto adapter forwarded event enqueue     =
+Crypto queue pair mapping to event queue   =
+Crypto adapter session data store/retrieve =
+Timer adapter support in H/W               =
diff --git a/doc/guides/eventdevs/features/dpaa.ini b/doc/guides/eventdevs/features/dpaa.ini
new file mode 100644
index 000000000..3cf172f40
--- /dev/null
+++ b/doc/guides/eventdevs/features/dpaa.ini
@@ -0,0 +1,8 @@
+;
+; Supported features of the 'dpaa' eventdev driver.
+;
+; Refer to default.ini for the full list of available PMD features.
+;
+[Features]
+
+[Adapter Features]
diff --git a/doc/guides/eventdevs/features/dpaa2.ini b/doc/guides/eventdevs/features/dpaa2.ini
new file mode 100644
index 000000000..822a82ef3
--- /dev/null
+++ b/doc/guides/eventdevs/features/dpaa2.ini
@@ -0,0 +1,8 @@
+;
+; Supported features of the 'dpaa2' eventdev driver.
+;
+; Refer to default.ini for the full list of available PMD features.
+;
+[Features]
+
+[Adapter Features]
diff --git a/doc/guides/eventdevs/features/dsw.ini b/doc/guides/eventdevs/features/dsw.ini
new file mode 100644
index 000000000..230737045
--- /dev/null
+++ b/doc/guides/eventdevs/features/dsw.ini
@@ -0,0 +1,8 @@
+;
+; Supported features of the 'distributed software' eventdev driver.
+;
+; Refer to default.ini for the full list of available PMD features.
+;
+[Features]
+
+[Adapter Features]
diff --git a/doc/guides/eventdevs/features/octeontx.ini b/doc/guides/eventdevs/features/octeontx.ini
new file mode 100644
index 000000000..d1b1fe6d6
--- /dev/null
+++ b/doc/guides/eventdevs/features/octeontx.ini
@@ -0,0 +1,8 @@
+;
+; Supported features of the 'octeontx' eventdev driver.
+;
+; Refer to default.ini for the full list of available PMD features.
+;
+[Features]
+
+[Adapter Features]
diff --git a/doc/guides/eventdevs/features/octeontx2.ini b/doc/guides/eventdevs/features/octeontx2.ini
new file mode 100644
index 000000000..96f1af0dc
--- /dev/null
+++ b/doc/guides/eventdevs/features/octeontx2.ini
@@ -0,0 +1,8 @@
+;
+; Supported features of the 'octeontx2' eventdev driver.
+;
+; Refer to default.ini for the full list of available PMD features.
+;
+[Features]
+
+[Adapter Features]
diff --git a/doc/guides/eventdevs/features/opdl.ini b/doc/guides/eventdevs/features/opdl.ini
new file mode 100644
index 000000000..020808fce
--- /dev/null
+++ b/doc/guides/eventdevs/features/opdl.ini
@@ -0,0 +1,8 @@
+;
+; Supported features of 'Ordered Packet Distribution Library' eventdev driver.
+;
+; Refer to default.ini for the full list of available PMD features.
+;
+[Features]
+
+[Adapter Features]
diff --git a/doc/guides/eventdevs/features/sw.ini b/doc/guides/eventdevs/features/sw.ini
new file mode 100644
index 000000000..a5789f56d
--- /dev/null
+++ b/doc/guides/eventdevs/features/sw.ini
@@ -0,0 +1,8 @@
+;
+; Supported features of the 'software' eventdev driver.
+;
+; Refer to default.ini for the full list of available PMD features.
+;
+[Features]
+
+[Adapter Features]
diff --git a/doc/guides/eventdevs/index.rst b/doc/guides/eventdevs/index.rst
index 570905b81..540ac762c 100644
--- a/doc/guides/eventdevs/index.rst
+++ b/doc/guides/eventdevs/index.rst
@@ -11,6 +11,7 @@ application trough the eventdev API.
     :maxdepth: 2
     :numbered:
 
+    overview
     dpaa
     dpaa2
     dsw
diff --git a/doc/guides/eventdevs/overview.rst b/doc/guides/eventdevs/overview.rst
new file mode 100644
index 000000000..6825b9007
--- /dev/null
+++ b/doc/guides/eventdevs/overview.rst
@@ -0,0 +1,19 @@
+..  SPDX-License-Identifier: BSD-3-Clause
+    Copyright(C) 2019 Marvell International Ltd.
+
+Event Device Supported Functionality Matrices
+=============================================
+
+Event Device Supported Feature Flags
+------------------------------------
+
+.. _table_eventdev_pmd_features:
+
+.. include:: overview_feature_table.txt
+
+Adapter Supported Feature Flags
+-------------------------------
+
+.. _table_adapter_features:
+
+.. include:: overview_adptr_feature_table.txt
-- 
2.17.1


^ permalink raw reply	[flat|nested] 87+ messages in thread

* [dpdk-dev] [PATCH v3 2/3] doc: update eventdev feature matrix for octeontx2
  2019-12-03  6:27   ` [dpdk-dev] [PATCH v3 " Sunil Kumar Kori
@ 2019-12-03  6:27     ` Sunil Kumar Kori
  2019-12-03  6:27     ` [dpdk-dev] [PATCH v3 3/3] doc: update eventdev feature matrix for octeontx Sunil Kumar Kori
  2020-02-27  7:02     ` [dpdk-dev] [PATCH v4 1/3] doc: add skeleton for eventdevs feature matrices Sunil Kumar Kori
  2 siblings, 0 replies; 87+ messages in thread
From: Sunil Kumar Kori @ 2019-12-03  6:27 UTC (permalink / raw)
  To: jerinj, nikhil.rao, pbhagavatula, hemant.agrawal, nipun.gupta,
	harry.van.haaren, mattias.ronnblom, liang.j.ma, John McNamara,
	Marko Kovacevic
  Cc: dev, Sunil Kumar Kori

Patch updates eventdev and adapters feature matrices for octeontx2
platform.

Signed-off-by: Sunil Kumar Kori <skori@marvell.com>
---
v3:
 - Removed .txt files to generate tables.
v2:
 - Review comments incorporated

 doc/guides/eventdevs/features/octeontx2.ini | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/doc/guides/eventdevs/features/octeontx2.ini b/doc/guides/eventdevs/features/octeontx2.ini
index 96f1af0dc..4c50b2125 100644
--- a/doc/guides/eventdevs/features/octeontx2.ini
+++ b/doc/guides/eventdevs/features/octeontx2.ini
@@ -4,5 +4,14 @@
 ; Refer to default.ini for the full list of available PMD features.
 ;
 [Features]
+Event queue priority based scheduling = Y
+Event device distributed scheduling   = Y
+Event device non sequential mode      = Y
+Event queue all types                 = Y
+Runtime event queue/port linking      = Y
+Multi queue linking per port          = Y
 
 [Adapter Features]
+Eth Rx/Tx adapter on internal port = Y
+Multiple event queues per ethdev   = Y
+Timer adapter support in H/W       = Y
-- 
2.17.1


^ permalink raw reply	[flat|nested] 87+ messages in thread

* [dpdk-dev] [PATCH v3 3/3] doc: update eventdev feature matrix for octeontx
  2019-12-03  6:27   ` [dpdk-dev] [PATCH v3 " Sunil Kumar Kori
  2019-12-03  6:27     ` [dpdk-dev] [PATCH v3 2/3] doc: update eventdev feature matrix for octeontx2 Sunil Kumar Kori
@ 2019-12-03  6:27     ` Sunil Kumar Kori
  2020-02-27  7:02     ` [dpdk-dev] [PATCH v4 1/3] doc: add skeleton for eventdevs feature matrices Sunil Kumar Kori
  2 siblings, 0 replies; 87+ messages in thread
From: Sunil Kumar Kori @ 2019-12-03  6:27 UTC (permalink / raw)
  To: jerinj, nikhil.rao, pbhagavatula, hemant.agrawal, nipun.gupta,
	harry.van.haaren, mattias.ronnblom, liang.j.ma, John McNamara,
	Marko Kovacevic
  Cc: dev, Sunil Kumar Kori

Patch updates eventdev and adapters feature matrices for octeontx
platform.

Signed-off-by: Sunil Kumar Kori <skori@marvell.com>
---
v3:
 - Removed .txt files to generate tables.
v2:
 - Review comments incorporated

 doc/guides/eventdevs/features/octeontx.ini | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/doc/guides/eventdevs/features/octeontx.ini b/doc/guides/eventdevs/features/octeontx.ini
index d1b1fe6d6..a116e7998 100644
--- a/doc/guides/eventdevs/features/octeontx.ini
+++ b/doc/guides/eventdevs/features/octeontx.ini
@@ -4,5 +4,13 @@
 ; Refer to default.ini for the full list of available PMD features.
 ;
 [Features]
+Event queue priority based scheduling = Y
+Event device distributed scheduling   = Y
+Event device non sequential mode      = Y
+Event queue all types                 = Y
+Runtime event queue/port linking      = Y
+Multi queue linking per port          = Y
 
 [Adapter Features]
+Eth Rx/Tx adapter on internal port    = Y
+Timer adapter support in H/W          = Y
-- 
2.17.1


^ permalink raw reply	[flat|nested] 87+ messages in thread

* [dpdk-dev] [PATCH v4 1/3] doc: add skeleton for eventdevs feature matrices
  2019-12-03  6:27   ` [dpdk-dev] [PATCH v3 " Sunil Kumar Kori
  2019-12-03  6:27     ` [dpdk-dev] [PATCH v3 2/3] doc: update eventdev feature matrix for octeontx2 Sunil Kumar Kori
  2019-12-03  6:27     ` [dpdk-dev] [PATCH v3 3/3] doc: update eventdev feature matrix for octeontx Sunil Kumar Kori
@ 2020-02-27  7:02     ` Sunil Kumar Kori
  2020-02-27  7:03       ` [dpdk-dev] [PATCH v4 2/3] doc: update eventdev feature matrix for octeontx2 Sunil Kumar Kori
                         ` (2 more replies)
  2 siblings, 3 replies; 87+ messages in thread
From: Sunil Kumar Kori @ 2020-02-27  7:02 UTC (permalink / raw)
  To: jerinj, nikhil.rao, pbhagavatula, hemant.agrawal, nipun.gupta,
	harry.van.haaren, mattias.ronnblom, liang.j.ma, John McNamara,
	Marko Kovacevic
  Cc: dev, Sunil Kumar Kori

Patch adds skeleton for feature matrices for event dev
and Rx/Tx adapters.

Along with, .ini files are added for all supported PMDs.

Signed-off-by: Sunil Kumar Kori <skori@marvell.com>
---
v4:
 - Rebased to 20.02
v3:
 - Removed .txt files to generate tables.
 - Use conf.py script to generate tables.
 - Add .ini file for all supported PMDs.
v2:
 - Review comments incorporated

 .gitignore                                  |  2 ++
 doc/guides/conf.py                          | 12 ++++++++-
 doc/guides/eventdevs/features/default.ini   | 30 +++++++++++++++++++++
 doc/guides/eventdevs/features/dpaa.ini      |  8 ++++++
 doc/guides/eventdevs/features/dpaa2.ini     |  8 ++++++
 doc/guides/eventdevs/features/dsw.ini       |  8 ++++++
 doc/guides/eventdevs/features/octeontx.ini  |  8 ++++++
 doc/guides/eventdevs/features/octeontx2.ini |  8 ++++++
 doc/guides/eventdevs/features/opdl.ini      |  8 ++++++
 doc/guides/eventdevs/features/sw.ini        |  8 ++++++
 doc/guides/eventdevs/index.rst              |  1 +
 doc/guides/eventdevs/overview.rst           | 19 +++++++++++++
 12 files changed, 119 insertions(+), 1 deletion(-)
 create mode 100644 doc/guides/eventdevs/features/default.ini
 create mode 100644 doc/guides/eventdevs/features/dpaa.ini
 create mode 100644 doc/guides/eventdevs/features/dpaa2.ini
 create mode 100644 doc/guides/eventdevs/features/dsw.ini
 create mode 100644 doc/guides/eventdevs/features/octeontx.ini
 create mode 100644 doc/guides/eventdevs/features/octeontx2.ini
 create mode 100644 doc/guides/eventdevs/features/opdl.ini
 create mode 100644 doc/guides/eventdevs/features/sw.ini
 create mode 100644 doc/guides/eventdevs/overview.rst

diff --git a/.gitignore b/.gitignore
index 2acb45975..5f20b8716 100644
--- a/.gitignore
+++ b/.gitignore
@@ -10,6 +10,8 @@ doc/guides/cryptodevs/overview_aead_table.txt
 doc/guides/cryptodevs/overview_asym_table.txt
 doc/guides/compressdevs/overview_feature_table.txt
 doc/guides/vdpadevs/overview_feature_table.txt
+doc/guides/eventdevs/overview_feature_table.txt
+doc/guides/eventdevs/overview_adptr_feature_table.txt
 
 # ignore generated ctags/cscope files
 cscope.out.po
diff --git a/doc/guides/conf.py b/doc/guides/conf.py
index c368fa51d..a49402b64 100644
--- a/doc/guides/conf.py
+++ b/doc/guides/conf.py
@@ -47,7 +47,7 @@
 master_doc = 'index'
 
 # Maximum feature description string length
-feature_str_len = 25
+feature_str_len = 45
 
 # Figures, tables and code-blocks automatically numbered if they have caption
 numfig = True
@@ -406,6 +406,16 @@ def setup(app):
                             'Features',
                             'Features availability in vDPA drivers',
                             'Feature')
+    table_file = dirname(__file__) + '/eventdevs/overview_feature_table.txt'
+    generate_overview_table(table_file, 1,
+                            'Features',
+                            'Features availability in eventdev drivers',
+                            'Feature')
+    table_file = dirname(__file__) + '/eventdevs/overview_adptr_feature_table.txt'
+    generate_overview_table(table_file, 2,
+                            'Adapter Features',
+                            'Features availability for adapters',
+                            'Feature')
 
     if LooseVersion(sphinx_version) < LooseVersion('1.3.1'):
         print('Upgrade sphinx to version >= 1.3.1 for '
diff --git a/doc/guides/eventdevs/features/default.ini b/doc/guides/eventdevs/features/default.ini
new file mode 100644
index 000000000..d007d7a69
--- /dev/null
+++ b/doc/guides/eventdevs/features/default.ini
@@ -0,0 +1,30 @@
+;
+; Features of a default eventdev driver.
+;
+; This file defines the features that are valid for inclusion in
+; the other driver files and also the order that they appear in
+; the features table in the documentation.
+;
+[Features]
+Event queue priority based scheduling =
+Event priority based scheduling       =
+Event device distributed scheduling   =
+Event device non sequential mode      =
+Event queue all types                 =
+Burst mode enqueue/dequeue            =
+Event port implicit release disable   =
+Runtime event queue/port linking      =
+Multi queue linking per port          =
+
+;
+; Features of a default adapter.
+;
+[Adapter Features]
+Eth Rx/Tx adapter on internal port         =
+Multiple event queues per ethdev           =
+Override flow ID                           =
+Crypto adapter new event enqueue           =
+Crypto adapter forwarded event enqueue     =
+Crypto queue pair mapping to event queue   =
+Crypto adapter session data store/retrieve =
+Timer adapter support in H/W               =
diff --git a/doc/guides/eventdevs/features/dpaa.ini b/doc/guides/eventdevs/features/dpaa.ini
new file mode 100644
index 000000000..3cf172f40
--- /dev/null
+++ b/doc/guides/eventdevs/features/dpaa.ini
@@ -0,0 +1,8 @@
+;
+; Supported features of the 'dpaa' eventdev driver.
+;
+; Refer to default.ini for the full list of available PMD features.
+;
+[Features]
+
+[Adapter Features]
diff --git a/doc/guides/eventdevs/features/dpaa2.ini b/doc/guides/eventdevs/features/dpaa2.ini
new file mode 100644
index 000000000..822a82ef3
--- /dev/null
+++ b/doc/guides/eventdevs/features/dpaa2.ini
@@ -0,0 +1,8 @@
+;
+; Supported features of the 'dpaa2' eventdev driver.
+;
+; Refer to default.ini for the full list of available PMD features.
+;
+[Features]
+
+[Adapter Features]
diff --git a/doc/guides/eventdevs/features/dsw.ini b/doc/guides/eventdevs/features/dsw.ini
new file mode 100644
index 000000000..230737045
--- /dev/null
+++ b/doc/guides/eventdevs/features/dsw.ini
@@ -0,0 +1,8 @@
+;
+; Supported features of the 'distributed software' eventdev driver.
+;
+; Refer to default.ini for the full list of available PMD features.
+;
+[Features]
+
+[Adapter Features]
diff --git a/doc/guides/eventdevs/features/octeontx.ini b/doc/guides/eventdevs/features/octeontx.ini
new file mode 100644
index 000000000..d1b1fe6d6
--- /dev/null
+++ b/doc/guides/eventdevs/features/octeontx.ini
@@ -0,0 +1,8 @@
+;
+; Supported features of the 'octeontx' eventdev driver.
+;
+; Refer to default.ini for the full list of available PMD features.
+;
+[Features]
+
+[Adapter Features]
diff --git a/doc/guides/eventdevs/features/octeontx2.ini b/doc/guides/eventdevs/features/octeontx2.ini
new file mode 100644
index 000000000..96f1af0dc
--- /dev/null
+++ b/doc/guides/eventdevs/features/octeontx2.ini
@@ -0,0 +1,8 @@
+;
+; Supported features of the 'octeontx2' eventdev driver.
+;
+; Refer to default.ini for the full list of available PMD features.
+;
+[Features]
+
+[Adapter Features]
diff --git a/doc/guides/eventdevs/features/opdl.ini b/doc/guides/eventdevs/features/opdl.ini
new file mode 100644
index 000000000..020808fce
--- /dev/null
+++ b/doc/guides/eventdevs/features/opdl.ini
@@ -0,0 +1,8 @@
+;
+; Supported features of 'Ordered Packet Distribution Library' eventdev driver.
+;
+; Refer to default.ini for the full list of available PMD features.
+;
+[Features]
+
+[Adapter Features]
diff --git a/doc/guides/eventdevs/features/sw.ini b/doc/guides/eventdevs/features/sw.ini
new file mode 100644
index 000000000..a5789f56d
--- /dev/null
+++ b/doc/guides/eventdevs/features/sw.ini
@@ -0,0 +1,8 @@
+;
+; Supported features of the 'software' eventdev driver.
+;
+; Refer to default.ini for the full list of available PMD features.
+;
+[Features]
+
+[Adapter Features]
diff --git a/doc/guides/eventdevs/index.rst b/doc/guides/eventdevs/index.rst
index 570905b81..540ac762c 100644
--- a/doc/guides/eventdevs/index.rst
+++ b/doc/guides/eventdevs/index.rst
@@ -11,6 +11,7 @@ application trough the eventdev API.
     :maxdepth: 2
     :numbered:
 
+    overview
     dpaa
     dpaa2
     dsw
diff --git a/doc/guides/eventdevs/overview.rst b/doc/guides/eventdevs/overview.rst
new file mode 100644
index 000000000..6825b9007
--- /dev/null
+++ b/doc/guides/eventdevs/overview.rst
@@ -0,0 +1,19 @@
+..  SPDX-License-Identifier: BSD-3-Clause
+    Copyright(C) 2019 Marvell International Ltd.
+
+Event Device Supported Functionality Matrices
+=============================================
+
+Event Device Supported Feature Flags
+------------------------------------
+
+.. _table_eventdev_pmd_features:
+
+.. include:: overview_feature_table.txt
+
+Adapter Supported Feature Flags
+-------------------------------
+
+.. _table_adapter_features:
+
+.. include:: overview_adptr_feature_table.txt
-- 
2.17.1


^ permalink raw reply	[flat|nested] 87+ messages in thread

* [dpdk-dev] [PATCH v4 2/3] doc: update eventdev feature matrix for octeontx2
  2020-02-27  7:02     ` [dpdk-dev] [PATCH v4 1/3] doc: add skeleton for eventdevs feature matrices Sunil Kumar Kori
@ 2020-02-27  7:03       ` Sunil Kumar Kori
  2020-02-27  7:03       ` [dpdk-dev] [PATCH v4 3/3] doc: update eventdev feature matrix for octeontx Sunil Kumar Kori
  2021-10-22  7:48       ` [dpdk-dev] [PATCH v5 1/4] doc: add skeleton for eventdevs feature matrices skori
  2 siblings, 0 replies; 87+ messages in thread
From: Sunil Kumar Kori @ 2020-02-27  7:03 UTC (permalink / raw)
  To: jerinj, nikhil.rao, pbhagavatula, hemant.agrawal, nipun.gupta,
	harry.van.haaren, mattias.ronnblom, liang.j.ma, John McNamara,
	Marko Kovacevic
  Cc: dev, Sunil Kumar Kori

Patch updates eventdev and adapters feature matrices for octeontx2
platform.

Signed-off-by: Sunil Kumar Kori <skori@marvell.com>
---
v4:
 - Rebased to 20.02
v3:
 - Removed .txt files to generate tables.
v2:
 - Review comments incorporated

 doc/guides/eventdevs/features/octeontx2.ini | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/doc/guides/eventdevs/features/octeontx2.ini b/doc/guides/eventdevs/features/octeontx2.ini
index 96f1af0dc..4c50b2125 100644
--- a/doc/guides/eventdevs/features/octeontx2.ini
+++ b/doc/guides/eventdevs/features/octeontx2.ini
@@ -4,5 +4,14 @@
 ; Refer to default.ini for the full list of available PMD features.
 ;
 [Features]
+Event queue priority based scheduling = Y
+Event device distributed scheduling   = Y
+Event device non sequential mode      = Y
+Event queue all types                 = Y
+Runtime event queue/port linking      = Y
+Multi queue linking per port          = Y
 
 [Adapter Features]
+Eth Rx/Tx adapter on internal port = Y
+Multiple event queues per ethdev   = Y
+Timer adapter support in H/W       = Y
-- 
2.17.1


^ permalink raw reply	[flat|nested] 87+ messages in thread

* [dpdk-dev] [PATCH v4 3/3] doc: update eventdev feature matrix for octeontx
  2020-02-27  7:02     ` [dpdk-dev] [PATCH v4 1/3] doc: add skeleton for eventdevs feature matrices Sunil Kumar Kori
  2020-02-27  7:03       ` [dpdk-dev] [PATCH v4 2/3] doc: update eventdev feature matrix for octeontx2 Sunil Kumar Kori
@ 2020-02-27  7:03       ` Sunil Kumar Kori
  2021-10-22  7:48       ` [dpdk-dev] [PATCH v5 1/4] doc: add skeleton for eventdevs feature matrices skori
  2 siblings, 0 replies; 87+ messages in thread
From: Sunil Kumar Kori @ 2020-02-27  7:03 UTC (permalink / raw)
  To: jerinj, nikhil.rao, pbhagavatula, hemant.agrawal, nipun.gupta,
	harry.van.haaren, mattias.ronnblom, liang.j.ma, John McNamara,
	Marko Kovacevic
  Cc: dev, Sunil Kumar Kori

Patch updates eventdev and adapters feature matrices for octeontx
platform.

Signed-off-by: Sunil Kumar Kori <skori@marvell.com>
---
v4:
 - Rebased to 20.02
v3:
 - Removed .txt files to generate tables.
v2:
 - Review comments incorporated

 doc/guides/eventdevs/features/octeontx.ini | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/doc/guides/eventdevs/features/octeontx.ini b/doc/guides/eventdevs/features/octeontx.ini
index d1b1fe6d6..a116e7998 100644
--- a/doc/guides/eventdevs/features/octeontx.ini
+++ b/doc/guides/eventdevs/features/octeontx.ini
@@ -4,5 +4,13 @@
 ; Refer to default.ini for the full list of available PMD features.
 ;
 [Features]
+Event queue priority based scheduling = Y
+Event device distributed scheduling   = Y
+Event device non sequential mode      = Y
+Event queue all types                 = Y
+Runtime event queue/port linking      = Y
+Multi queue linking per port          = Y
 
 [Adapter Features]
+Eth Rx/Tx adapter on internal port    = Y
+Timer adapter support in H/W          = Y
-- 
2.17.1


^ permalink raw reply	[flat|nested] 87+ messages in thread

* [dpdk-dev] [PATCH v5 1/4] doc: add skeleton for eventdevs feature matrices
  2020-02-27  7:02     ` [dpdk-dev] [PATCH v4 1/3] doc: add skeleton for eventdevs feature matrices Sunil Kumar Kori
  2020-02-27  7:03       ` [dpdk-dev] [PATCH v4 2/3] doc: update eventdev feature matrix for octeontx2 Sunil Kumar Kori
  2020-02-27  7:03       ` [dpdk-dev] [PATCH v4 3/3] doc: update eventdev feature matrix for octeontx Sunil Kumar Kori
@ 2021-10-22  7:48       ` skori
  2021-10-22  7:48         ` [dpdk-dev] [PATCH v5 2/4] doc: update eventdev feature matrix for octeontx2 skori
                           ` (6 more replies)
  2 siblings, 7 replies; 87+ messages in thread
From: skori @ 2021-10-22  7:48 UTC (permalink / raw)
  To: jerinj, nikhil.rao, pbhagavatula, hemant.agrawal, nipun.gupta,
	harry.van.haaren, mattias.ronnblom, liang.j.ma
  Cc: dev, Sunil Kumar Kori

From: Sunil Kumar Kori <skori@marvell.com>

Patch adds skeleton for feature matrices for event dev
and Rx/Tx adapters.

Along with, .ini files are added for all supported PMDs.

Signed-off-by: Sunil Kumar Kori <skori@marvell.com>
---
v5:
 - Rebased to 21.11
 - Added feature matrix for cnxk.
v4:
 - Rebased to 20.02
v3:
 - Removed .txt files to generate tables.
 - Use conf.py script to generate tables.
 - Add .ini file for all supported PMDs.
v2:
 - Review comments incorporated

 .gitignore                                  |  2 ++
 doc/guides/conf.py                          | 12 ++++++++-
 doc/guides/eventdevs/features/cnxk.ini      |  8 ++++++
 doc/guides/eventdevs/features/default.ini   | 30 +++++++++++++++++++++
 doc/guides/eventdevs/features/dpaa.ini      |  8 ++++++
 doc/guides/eventdevs/features/dpaa2.ini     |  8 ++++++
 doc/guides/eventdevs/features/dsw.ini       |  8 ++++++
 doc/guides/eventdevs/features/octeontx.ini  |  8 ++++++
 doc/guides/eventdevs/features/octeontx2.ini |  8 ++++++
 doc/guides/eventdevs/features/opdl.ini      |  8 ++++++
 doc/guides/eventdevs/features/sw.ini        |  8 ++++++
 doc/guides/eventdevs/index.rst              |  1 +
 doc/guides/eventdevs/overview.rst           | 19 +++++++++++++
 13 files changed, 127 insertions(+), 1 deletion(-)
 create mode 100644 doc/guides/eventdevs/features/cnxk.ini
 create mode 100644 doc/guides/eventdevs/features/default.ini
 create mode 100644 doc/guides/eventdevs/features/dpaa.ini
 create mode 100644 doc/guides/eventdevs/features/dpaa2.ini
 create mode 100644 doc/guides/eventdevs/features/dsw.ini
 create mode 100644 doc/guides/eventdevs/features/octeontx.ini
 create mode 100644 doc/guides/eventdevs/features/octeontx2.ini
 create mode 100644 doc/guides/eventdevs/features/opdl.ini
 create mode 100644 doc/guides/eventdevs/features/sw.ini
 create mode 100644 doc/guides/eventdevs/overview.rst

diff --git a/.gitignore b/.gitignore
index b19c0717e6..b3fc783945 100644
--- a/.gitignore
+++ b/.gitignore
@@ -14,6 +14,8 @@ doc/guides/compressdevs/overview_feature_table.txt
 doc/guides/regexdevs/overview_feature_table.txt
 doc/guides/vdpadevs/overview_feature_table.txt
 doc/guides/bbdevs/overview_feature_table.txt
+doc/guides/eventdevs/overview_feature_table.txt
+doc/guides/eventdevs/overview_adptr_feature_table.txt
 
 # ignore generated ctags/cscope files
 cscope.out.po
diff --git a/doc/guides/conf.py b/doc/guides/conf.py
index 67d2dd62c7..9d8e20e5fc 100644
--- a/doc/guides/conf.py
+++ b/doc/guides/conf.py
@@ -41,7 +41,7 @@
 master_doc = 'index'
 
 # Maximum feature description string length
-feature_str_len = 30
+feature_str_len = 45
 
 # Figures, tables and code-blocks automatically numbered if they have caption
 numfig = True
@@ -388,6 +388,16 @@ def setup(app):
                             'Features',
                             'Features availability in bbdev drivers',
                             'Feature')
+    table_file = dirname(__file__) + '/eventdevs/overview_feature_table.txt'
+    generate_overview_table(table_file, 1,
+                            'Features',
+                            'Features availability in eventdev drivers',
+                            'Feature')
+    table_file = dirname(__file__) + '/eventdevs/overview_adptr_feature_table.txt'
+    generate_overview_table(table_file, 2,
+                            'Adapter Features',
+                            'Features availability for adapters',
+                            'Feature')
 
     if LooseVersion(sphinx_version) < LooseVersion('1.3.1'):
         print('Upgrade sphinx to version >= 1.3.1 for '
diff --git a/doc/guides/eventdevs/features/cnxk.ini b/doc/guides/eventdevs/features/cnxk.ini
new file mode 100644
index 0000000000..a461966d69
--- /dev/null
+++ b/doc/guides/eventdevs/features/cnxk.ini
@@ -0,0 +1,8 @@
+;
+; Supported features of the 'cnxk' eventdev driver.
+;
+; Refer to default.ini for the full list of available PMD features.
+;
+[Features]
+
+[Adapter Features]
diff --git a/doc/guides/eventdevs/features/default.ini b/doc/guides/eventdevs/features/default.ini
new file mode 100644
index 0000000000..d007d7a69e
--- /dev/null
+++ b/doc/guides/eventdevs/features/default.ini
@@ -0,0 +1,30 @@
+;
+; Features of a default eventdev driver.
+;
+; This file defines the features that are valid for inclusion in
+; the other driver files and also the order that they appear in
+; the features table in the documentation.
+;
+[Features]
+Event queue priority based scheduling =
+Event priority based scheduling       =
+Event device distributed scheduling   =
+Event device non sequential mode      =
+Event queue all types                 =
+Burst mode enqueue/dequeue            =
+Event port implicit release disable   =
+Runtime event queue/port linking      =
+Multi queue linking per port          =
+
+;
+; Features of a default adapter.
+;
+[Adapter Features]
+Eth Rx/Tx adapter on internal port         =
+Multiple event queues per ethdev           =
+Override flow ID                           =
+Crypto adapter new event enqueue           =
+Crypto adapter forwarded event enqueue     =
+Crypto queue pair mapping to event queue   =
+Crypto adapter session data store/retrieve =
+Timer adapter support in H/W               =
diff --git a/doc/guides/eventdevs/features/dpaa.ini b/doc/guides/eventdevs/features/dpaa.ini
new file mode 100644
index 0000000000..3cf172f408
--- /dev/null
+++ b/doc/guides/eventdevs/features/dpaa.ini
@@ -0,0 +1,8 @@
+;
+; Supported features of the 'dpaa' eventdev driver.
+;
+; Refer to default.ini for the full list of available PMD features.
+;
+[Features]
+
+[Adapter Features]
diff --git a/doc/guides/eventdevs/features/dpaa2.ini b/doc/guides/eventdevs/features/dpaa2.ini
new file mode 100644
index 0000000000..822a82ef3e
--- /dev/null
+++ b/doc/guides/eventdevs/features/dpaa2.ini
@@ -0,0 +1,8 @@
+;
+; Supported features of the 'dpaa2' eventdev driver.
+;
+; Refer to default.ini for the full list of available PMD features.
+;
+[Features]
+
+[Adapter Features]
diff --git a/doc/guides/eventdevs/features/dsw.ini b/doc/guides/eventdevs/features/dsw.ini
new file mode 100644
index 0000000000..230737045b
--- /dev/null
+++ b/doc/guides/eventdevs/features/dsw.ini
@@ -0,0 +1,8 @@
+;
+; Supported features of the 'distributed software' eventdev driver.
+;
+; Refer to default.ini for the full list of available PMD features.
+;
+[Features]
+
+[Adapter Features]
diff --git a/doc/guides/eventdevs/features/octeontx.ini b/doc/guides/eventdevs/features/octeontx.ini
new file mode 100644
index 0000000000..d1b1fe6d62
--- /dev/null
+++ b/doc/guides/eventdevs/features/octeontx.ini
@@ -0,0 +1,8 @@
+;
+; Supported features of the 'octeontx' eventdev driver.
+;
+; Refer to default.ini for the full list of available PMD features.
+;
+[Features]
+
+[Adapter Features]
diff --git a/doc/guides/eventdevs/features/octeontx2.ini b/doc/guides/eventdevs/features/octeontx2.ini
new file mode 100644
index 0000000000..96f1af0dca
--- /dev/null
+++ b/doc/guides/eventdevs/features/octeontx2.ini
@@ -0,0 +1,8 @@
+;
+; Supported features of the 'octeontx2' eventdev driver.
+;
+; Refer to default.ini for the full list of available PMD features.
+;
+[Features]
+
+[Adapter Features]
diff --git a/doc/guides/eventdevs/features/opdl.ini b/doc/guides/eventdevs/features/opdl.ini
new file mode 100644
index 0000000000..020808fced
--- /dev/null
+++ b/doc/guides/eventdevs/features/opdl.ini
@@ -0,0 +1,8 @@
+;
+; Supported features of 'Ordered Packet Distribution Library' eventdev driver.
+;
+; Refer to default.ini for the full list of available PMD features.
+;
+[Features]
+
+[Adapter Features]
diff --git a/doc/guides/eventdevs/features/sw.ini b/doc/guides/eventdevs/features/sw.ini
new file mode 100644
index 0000000000..a5789f56d4
--- /dev/null
+++ b/doc/guides/eventdevs/features/sw.ini
@@ -0,0 +1,8 @@
+;
+; Supported features of the 'software' eventdev driver.
+;
+; Refer to default.ini for the full list of available PMD features.
+;
+[Features]
+
+[Adapter Features]
diff --git a/doc/guides/eventdevs/index.rst b/doc/guides/eventdevs/index.rst
index 2143025390..b11657f7ae 100644
--- a/doc/guides/eventdevs/index.rst
+++ b/doc/guides/eventdevs/index.rst
@@ -11,6 +11,7 @@ application through the eventdev API.
     :maxdepth: 2
     :numbered:
 
+    overview
     cnxk
     dlb2
     dpaa
diff --git a/doc/guides/eventdevs/overview.rst b/doc/guides/eventdevs/overview.rst
new file mode 100644
index 0000000000..5d34d2c57b
--- /dev/null
+++ b/doc/guides/eventdevs/overview.rst
@@ -0,0 +1,19 @@
+..  SPDX-License-Identifier: BSD-3-Clause
+    Copyright(C) 2021 Marvell.
+
+Event Device Supported Functionality Matrices
+=============================================
+
+Event Device Supported Feature Flags
+------------------------------------
+
+.. _table_eventdev_pmd_features:
+
+.. include:: overview_feature_table.txt
+
+Adapter Supported Feature Flags
+-------------------------------
+
+.. _table_adapter_features:
+
+.. include:: overview_adptr_feature_table.txt
-- 
2.25.1


^ permalink raw reply	[flat|nested] 87+ messages in thread

* [dpdk-dev] [PATCH v5 2/4] doc: update eventdev feature matrix for octeontx2
  2021-10-22  7:48       ` [dpdk-dev] [PATCH v5 1/4] doc: add skeleton for eventdevs feature matrices skori
@ 2021-10-22  7:48         ` skori
  2021-10-22  7:48         ` [dpdk-dev] [PATCH v5 3/4] doc: update eventdev feature matrix for octeontx skori
                           ` (5 subsequent siblings)
  6 siblings, 0 replies; 87+ messages in thread
From: skori @ 2021-10-22  7:48 UTC (permalink / raw)
  To: jerinj, nikhil.rao, pbhagavatula, hemant.agrawal, nipun.gupta,
	harry.van.haaren, mattias.ronnblom, liang.j.ma
  Cc: dev, Sunil Kumar Kori

From: Sunil Kumar Kori <skori@marvell.com>

Patch updates eventdev and adapters feature matrices for octeontx2
platform.

Signed-off-by: Sunil Kumar Kori <skori@marvell.com>
---
v5:
 - Rebased to 21.11
 - Added feature matrix for cnxk.
v4:
 - Rebased to 20.02
v3:
 - Removed .txt files to generate tables.
 - Use conf.py script to generate tables.
 - Add .ini file for all supported PMDs.
v2:
 - Review comments incorporated

 doc/guides/eventdevs/features/octeontx2.ini | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/doc/guides/eventdevs/features/octeontx2.ini b/doc/guides/eventdevs/features/octeontx2.ini
index 96f1af0dca..4c50b2125f 100644
--- a/doc/guides/eventdevs/features/octeontx2.ini
+++ b/doc/guides/eventdevs/features/octeontx2.ini
@@ -4,5 +4,14 @@
 ; Refer to default.ini for the full list of available PMD features.
 ;
 [Features]
+Event queue priority based scheduling = Y
+Event device distributed scheduling   = Y
+Event device non sequential mode      = Y
+Event queue all types                 = Y
+Runtime event queue/port linking      = Y
+Multi queue linking per port          = Y
 
 [Adapter Features]
+Eth Rx/Tx adapter on internal port = Y
+Multiple event queues per ethdev   = Y
+Timer adapter support in H/W       = Y
-- 
2.25.1


^ permalink raw reply	[flat|nested] 87+ messages in thread

* [dpdk-dev] [PATCH v5 3/4] doc: update eventdev feature matrix for octeontx
  2021-10-22  7:48       ` [dpdk-dev] [PATCH v5 1/4] doc: add skeleton for eventdevs feature matrices skori
  2021-10-22  7:48         ` [dpdk-dev] [PATCH v5 2/4] doc: update eventdev feature matrix for octeontx2 skori
@ 2021-10-22  7:48         ` skori
  2021-10-22  7:48         ` [dpdk-dev] [PATCH v5 4/4] doc: update eventdev feature matrix for cnxk skori
                           ` (4 subsequent siblings)
  6 siblings, 0 replies; 87+ messages in thread
From: skori @ 2021-10-22  7:48 UTC (permalink / raw)
  To: jerinj, nikhil.rao, pbhagavatula, hemant.agrawal, nipun.gupta,
	harry.van.haaren, mattias.ronnblom, liang.j.ma
  Cc: dev, Sunil Kumar Kori

From: Sunil Kumar Kori <skori@marvell.com>

Patch updates eventdev and adapters feature matrices for octeontx
platform.

Signed-off-by: Sunil Kumar Kori <skori@marvell.com>
---
v5:
 - Rebased to 21.11
 - Added feature matrix for cnxk.
v4:
 - Rebased to 20.02
v3:
 - Removed .txt files to generate tables.
 - Use conf.py script to generate tables.
 - Add .ini file for all supported PMDs.
v2:
 - Review comments incorporated

 doc/guides/eventdevs/features/octeontx.ini | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/doc/guides/eventdevs/features/octeontx.ini b/doc/guides/eventdevs/features/octeontx.ini
index d1b1fe6d62..a116e79980 100644
--- a/doc/guides/eventdevs/features/octeontx.ini
+++ b/doc/guides/eventdevs/features/octeontx.ini
@@ -4,5 +4,13 @@
 ; Refer to default.ini for the full list of available PMD features.
 ;
 [Features]
+Event queue priority based scheduling = Y
+Event device distributed scheduling   = Y
+Event device non sequential mode      = Y
+Event queue all types                 = Y
+Runtime event queue/port linking      = Y
+Multi queue linking per port          = Y
 
 [Adapter Features]
+Eth Rx/Tx adapter on internal port    = Y
+Timer adapter support in H/W          = Y
-- 
2.25.1


^ permalink raw reply	[flat|nested] 87+ messages in thread

* [dpdk-dev] [PATCH v5 4/4] doc: update eventdev feature matrix for cnxk
  2021-10-22  7:48       ` [dpdk-dev] [PATCH v5 1/4] doc: add skeleton for eventdevs feature matrices skori
  2021-10-22  7:48         ` [dpdk-dev] [PATCH v5 2/4] doc: update eventdev feature matrix for octeontx2 skori
  2021-10-22  7:48         ` [dpdk-dev] [PATCH v5 3/4] doc: update eventdev feature matrix for octeontx skori
@ 2021-10-22  7:48         ` skori
  2021-11-09 10:11         ` [dpdk-dev] [PATCH v5 1/4] doc: add skeleton for eventdevs feature matrices Jerin Jacob
                           ` (3 subsequent siblings)
  6 siblings, 0 replies; 87+ messages in thread
From: skori @ 2021-10-22  7:48 UTC (permalink / raw)
  To: jerinj, nikhil.rao, pbhagavatula, hemant.agrawal, nipun.gupta,
	harry.van.haaren, mattias.ronnblom, liang.j.ma
  Cc: dev, Sunil Kumar Kori

From: Sunil Kumar Kori <skori@marvell.com>

Patch updates eventdev and adapters feature matrices for cnxk
platform.

Signed-off-by: Sunil Kumar Kori <skori@marvell.com>
---
v5:
 - Rebased to 21.11
 - Added feature matrix for cnxk.
v4:
 - Rebased to 20.02
v3:
 - Removed .txt files to generate tables.
 - Use conf.py script to generate tables.
 - Add .ini file for all supported PMDs.
v2:
 - Review comments incorporated

 doc/guides/eventdevs/features/cnxk.ini | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/doc/guides/eventdevs/features/cnxk.ini b/doc/guides/eventdevs/features/cnxk.ini
index a461966d69..76ade8fce8 100644
--- a/doc/guides/eventdevs/features/cnxk.ini
+++ b/doc/guides/eventdevs/features/cnxk.ini
@@ -4,5 +4,14 @@
 ; Refer to default.ini for the full list of available PMD features.
 ;
 [Features]
+Event queue priority based scheduling = Y
+Event device distributed scheduling   = Y
+Event device non sequential mode      = Y
+Event queue all types                 = Y
+Runtime event queue/port linking      = Y
+Multi queue linking per port          = Y
 
 [Adapter Features]
+Eth Rx/Tx adapter on internal port = Y
+Multiple event queues per ethdev   = Y
+Timer adapter support in H/W       = Y
-- 
2.25.1


^ permalink raw reply	[flat|nested] 87+ messages in thread

* Re: [dpdk-dev] [PATCH v5 1/4] doc: add skeleton for eventdevs feature matrices
  2021-10-22  7:48       ` [dpdk-dev] [PATCH v5 1/4] doc: add skeleton for eventdevs feature matrices skori
                           ` (2 preceding siblings ...)
  2021-10-22  7:48         ` [dpdk-dev] [PATCH v5 4/4] doc: update eventdev feature matrix for cnxk skori
@ 2021-11-09 10:11         ` Jerin Jacob
  2021-11-09 11:34           ` Thomas Monjalon
  2021-11-10  8:42           ` Mattias Rönnblom
  2021-11-15 13:15         ` [PATCH v6 01/11] doc: add skeleton for eventdevs feature matrices skori
                           ` (2 subsequent siblings)
  6 siblings, 2 replies; 87+ messages in thread
From: Jerin Jacob @ 2021-11-09 10:11 UTC (permalink / raw)
  To: Sunil Kumar Kori
  Cc: Jerin Jacob, Nikhil Rao, Pavan Nikhilesh, Hemant Agrawal,
	Nipun Gupta, Van Haaren, Harry, Mattias Rönnblom, Liang Ma,
	dpdk-dev, Thomas Monjalon, David Marchand, Gujjar, Abhinandan S,
	Erik Gabriel Carrillo, Jayatheerthan, Jay, Ferruh Yigit,
	Akhil Goyal

On Fri, Oct 22, 2021 at 1:18 PM <skori@marvell.com> wrote:
>
> From: Sunil Kumar Kori <skori@marvell.com>
>
> Patch adds skeleton for feature matrices for event dev
> and Rx/Tx adapters.
>
> Along with, .ini files are added for all supported PMDs.
>
> Signed-off-by: Sunil Kumar Kori <skori@marvell.com>


+  Tree maintainers and eventdev adapter maintainers

1) Please rebase to dpdk-next-eventdev
2) Please update devtools/check-doc-vs-code.sh
You can use search _CAP_ and != CAP_REQUIRES_ to detect the capability
change or so.
3) Update the .ini for all the eventdev drivers, not just Marvell ones.

>
>  # Maximum feature description string length
> -feature_str_len = 30
> +feature_str_len = 45

I hope this OK. I understand that without this it gives errors and
feature-length is not enough

> diff --git a/doc/guides/eventdevs/features/default.ini b/doc/guides/eventdevs/features/default.ini
> new file mode 100644
> index 0000000000..d007d7a69e
> --- /dev/null
> +++ b/doc/guides/eventdevs/features/default.ini
> @@ -0,0 +1,30 @@
> +;
> +; Features of a default eventdev driver.
> +;
> +; This file defines the features that are valid for inclusion in
> +; the other driver files and also the order that they appear in
> +; the features table in the documentation.
> +;
> +[Features]
> +Event queue priority based scheduling =
> +Event priority based scheduling       =
> +Event device distributed scheduling   =
> +Event device non sequential mode      =
> +Event queue all types                 =
> +Burst mode enqueue/dequeue            =
> +Event port implicit release disable   =
> +Runtime event queue/port linking      =
> +Multi queue linking per port          =

1) Please sync the doc order with flag definition order in header file[1]
2) You can remove RTE_EVENT_DEV_CAP_REQUIRES_MAINT from the
list(*CAP_REQUIRES*) as this
is limitation.


[1]
RTE_EVENT_DEV_CAP_QUEUE_QOS
RTE_EVENT_DEV_CAP_EVENT_QOS
RTE_EVENT_DEV_CAP_DISTRIBUTED_SCHED
RTE_EVENT_DEV_CAP_QUEUE_ALL_TYPES
RTE_EVENT_DEV_CAP_BURST_MODE
RTE_EVENT_DEV_CAP_IMPLICIT_RELEASE_DISABLE
RTE_EVENT_DEV_CAP_NONSEQ_MODE
RTE_EVENT_DEV_CAP_RUNTIME_PORT_LINK
RTE_EVENT_DEV_CAP_MULTIPLE_QUEUE_PORT
RTE_EVENT_DEV_CAP_CARRY_FLOW_ID



> +
> +;
> +; Features of a default adapter.
> +;
> +[Adapter Features]

Please make this as [Eth Rx adapter Features]

> +Eth Rx/Tx adapter on internal port         =
You can remove Eth Rx/Tx adapter as new subject has [Eth Rx adapter]

> +Multiple event queues per ethdev           =
> +Override flow ID                           =

Missing RTE_EVENT_ETH_RX_ADAPTER_CAP_EVENT_VECTOR


Add new section for Tx adapter
and add
RTE_EVENT_ETH_TX_ADAPTER_CAP_INTERNAL_PORT
RTE_EVENT_ETH_TX_ADAPTER_CAP_EVENT_VECTOR


Add new section for Crypto adapter

> +Crypto adapter new event enqueue           =
> +Crypto adapter forwarded event enqueue     =
> +Crypto queue pair mapping to event queue   =
> +Crypto adapter session data store/retrieve =


Add new section for timer adapter

> +Timer adapter support in H/W               =

Missing RTE_EVENT_TIMER_ADAPTER_CAP_PERIODIC

^ permalink raw reply	[flat|nested] 87+ messages in thread

* Re: [dpdk-dev] [PATCH v5 1/4] doc: add skeleton for eventdevs feature matrices
  2021-11-09 10:11         ` [dpdk-dev] [PATCH v5 1/4] doc: add skeleton for eventdevs feature matrices Jerin Jacob
@ 2021-11-09 11:34           ` Thomas Monjalon
  2021-11-11  6:40             ` [EXT] " Sunil Kumar Kori
  2021-11-10  8:42           ` Mattias Rönnblom
  1 sibling, 1 reply; 87+ messages in thread
From: Thomas Monjalon @ 2021-11-09 11:34 UTC (permalink / raw)
  To: Sunil Kumar Kori, Jerin Jacob
  Cc: Jerin Jacob, Nikhil Rao, Pavan Nikhilesh, Hemant Agrawal,
	Nipun Gupta, Van Haaren, Harry, Mattias Rönnblom, Liang Ma,
	dpdk-dev, David Marchand, Gujjar, Abhinandan S,
	Erik Gabriel Carrillo, Jayatheerthan, Jay, Ferruh Yigit,
	Akhil Goyal

09/11/2021 11:11, Jerin Jacob:
> On Fri, Oct 22, 2021 at 1:18 PM <skori@marvell.com> wrote:
> >  # Maximum feature description string length
> > -feature_str_len = 30
> > +feature_str_len = 45
> 
> I hope this OK. I understand that without this it gives errors and
> feature-length is not enough

I don't think this is OK, because it would enlarge the size of all tables.
Please confirm (especially for NICs table).
Is there a way to make the feature names smaller?



^ permalink raw reply	[flat|nested] 87+ messages in thread

* Re: [dpdk-dev] [PATCH v5 1/4] doc: add skeleton for eventdevs feature matrices
  2021-11-09 10:11         ` [dpdk-dev] [PATCH v5 1/4] doc: add skeleton for eventdevs feature matrices Jerin Jacob
  2021-11-09 11:34           ` Thomas Monjalon
@ 2021-11-10  8:42           ` Mattias Rönnblom
  2021-11-10  8:50             ` [dpdk-dev] [EXT] " Jerin Jacob Kollanukkaran
  1 sibling, 1 reply; 87+ messages in thread
From: Mattias Rönnblom @ 2021-11-10  8:42 UTC (permalink / raw)
  To: Jerin Jacob, Sunil Kumar Kori
  Cc: Jerin Jacob, Nikhil Rao, Pavan Nikhilesh, Hemant Agrawal,
	Nipun Gupta, Van Haaren, Harry, Liang Ma, dpdk-dev,
	Thomas Monjalon, David Marchand, Gujjar, Abhinandan S,
	Erik Gabriel Carrillo, Jayatheerthan, Jay, Ferruh Yigit,
	Akhil Goyal

On 2021-11-09 11:11, Jerin Jacob wrote:
> On Fri, Oct 22, 2021 at 1:18 PM <skori@marvell.com> wrote:
>>
>> From: Sunil Kumar Kori <skori@marvell.com>
>>
>> Patch adds skeleton for feature matrices for event dev
>> and Rx/Tx adapters.
>>
>> Along with, .ini files are added for all supported PMDs.
>>
>> Signed-off-by: Sunil Kumar Kori <skori@marvell.com>
> 
> 
> +  Tree maintainers and eventdev adapter maintainers
> 
> 1) Please rebase to dpdk-next-eventdev
> 2) Please update devtools/check-doc-vs-code.sh
> You can use search _CAP_ and != CAP_REQUIRES_ to detect the capability
> change or so.
> 3) Update the .ini for all the eventdev drivers, not just Marvell ones.
> 
>>
>>   # Maximum feature description string length
>> -feature_str_len = 30
>> +feature_str_len = 45
> 
> I hope this OK. I understand that without this it gives errors and
> feature-length is not enough
> 
>> diff --git a/doc/guides/eventdevs/features/default.ini b/doc/guides/eventdevs/features/default.ini
>> new file mode 100644
>> index 0000000000..d007d7a69e
>> --- /dev/null
>> +++ b/doc/guides/eventdevs/features/default.ini
>> @@ -0,0 +1,30 @@
>> +;
>> +; Features of a default eventdev driver.
>> +;
>> +; This file defines the features that are valid for inclusion in
>> +; the other driver files and also the order that they appear in
>> +; the features table in the documentation.
>> +;
>> +[Features]
>> +Event queue priority based scheduling =
>> +Event priority based scheduling       =
>> +Event device distributed scheduling   =
>> +Event device non sequential mode      =
>> +Event queue all types                 =
>> +Burst mode enqueue/dequeue            =
>> +Event port implicit release disable   =
>> +Runtime event queue/port linking      =
>> +Multi queue linking per port          =
> 
> 1) Please sync the doc order with flag definition order in header file[1]
> 2) You can remove RTE_EVENT_DEV_CAP_REQUIRES_MAINT from the
> list(*CAP_REQUIRES*) as this
> is limitation.
> 
> 

Maybe we should negate RTE_EVENT_DEV_CAP_REQUIRES_MAINT to make it fit 
better with the other capabilities? To be more in line with how the API 
has been adapted to cope with various eventdev hardware limitations 
(e.g., RTE_EVENT_DEV_CAP_CARRY_FLOW_ID).

RTE_EVENT_DEV_CAP_MAINTENANCE_FREE

All event devices/drivers would set this except DSW.

If this make sense and it's not too late to tweak the API, I can create 
a patch.

> [1]
> RTE_EVENT_DEV_CAP_QUEUE_QOS
> RTE_EVENT_DEV_CAP_EVENT_QOS
> RTE_EVENT_DEV_CAP_DISTRIBUTED_SCHED
> RTE_EVENT_DEV_CAP_QUEUE_ALL_TYPES
> RTE_EVENT_DEV_CAP_BURST_MODE
> RTE_EVENT_DEV_CAP_IMPLICIT_RELEASE_DISABLE
> RTE_EVENT_DEV_CAP_NONSEQ_MODE
> RTE_EVENT_DEV_CAP_RUNTIME_PORT_LINK
> RTE_EVENT_DEV_CAP_MULTIPLE_QUEUE_PORT
> RTE_EVENT_DEV_CAP_CARRY_FLOW_ID
> 
> 
> 
>> +
>> +;
>> +; Features of a default adapter.
>> +;
>> +[Adapter Features]
> 
> Please make this as [Eth Rx adapter Features]
> 
>> +Eth Rx/Tx adapter on internal port         =
> You can remove Eth Rx/Tx adapter as new subject has [Eth Rx adapter]
> 
>> +Multiple event queues per ethdev           =
>> +Override flow ID                           =
> 
> Missing RTE_EVENT_ETH_RX_ADAPTER_CAP_EVENT_VECTOR
> 
> 
> Add new section for Tx adapter
> and add
> RTE_EVENT_ETH_TX_ADAPTER_CAP_INTERNAL_PORT
> RTE_EVENT_ETH_TX_ADAPTER_CAP_EVENT_VECTOR
> 
> 
> Add new section for Crypto adapter
> 
>> +Crypto adapter new event enqueue           =
>> +Crypto adapter forwarded event enqueue     =
>> +Crypto queue pair mapping to event queue   =
>> +Crypto adapter session data store/retrieve =
> 
> 
> Add new section for timer adapter
> 
>> +Timer adapter support in H/W               =
> 
> Missing RTE_EVENT_TIMER_ADAPTER_CAP_PERIODIC
> 

^ permalink raw reply	[flat|nested] 87+ messages in thread

* Re: [dpdk-dev] [EXT] Re: [PATCH v5 1/4] doc: add skeleton for eventdevs feature matrices
  2021-11-10  8:42           ` Mattias Rönnblom
@ 2021-11-10  8:50             ` Jerin Jacob Kollanukkaran
  2021-11-10  9:29               ` [dpdk-dev] [PATCH] eventdev: negate maintenance capability flag Mattias Rönnblom
  0 siblings, 1 reply; 87+ messages in thread
From: Jerin Jacob Kollanukkaran @ 2021-11-10  8:50 UTC (permalink / raw)
  To: Mattias Rönnblom, Jerin Jacob, Sunil Kumar Kori
  Cc: Nikhil Rao, Pavan Nikhilesh Bhagavatula, Hemant Agrawal,
	Nipun Gupta, Van Haaren, Harry, Liang Ma, dpdk-dev,
	Thomas Monjalon, David Marchand, Gujjar, Abhinandan S,
	Erik Gabriel Carrillo, Jayatheerthan, Jay, Ferruh Yigit,
	Akhil Goyal

> > 1) Please sync the doc order with flag definition order in header file[1]
> > 2) You can remove RTE_EVENT_DEV_CAP_REQUIRES_MAINT from the
> > list(*CAP_REQUIRES*) as this
> > is limitation.
> >
> >
> 
> Maybe we should negate RTE_EVENT_DEV_CAP_REQUIRES_MAINT to make it
> fit
> better with the other capabilities? To be more in line with how the API
> has been adapted to cope with various eventdev hardware limitations
> (e.g., RTE_EVENT_DEV_CAP_CARRY_FLOW_ID).
> 
> RTE_EVENT_DEV_CAP_MAINTENANCE_FREE
> 
> All event devices/drivers would set this except DSW.
> 
> If this make sense and it's not too late to tweak the API, I can create
> a patch.


Makes sense. Just add those cap in !dsw drivers.
Please send it now, I will merge it soon. 

> 
> > [1]
> > RTE_EVENT_DEV_CAP_QUEUE_QOS
> > RTE_EVENT_DEV_CAP_EVENT_QOS
> > RTE_EVENT_DEV_CAP_DISTRIBUTED_SCHED
> > RTE_EVENT_DEV_CAP_QUEUE_ALL_TYPES
> > RTE_EVENT_DEV_CAP_BURST_MODE
> > RTE_EVENT_DEV_CAP_IMPLICIT_RELEASE_DISABLE
> > RTE_EVENT_DEV_CAP_NONSEQ_MODE
> > RTE_EVENT_DEV_CAP_RUNTIME_PORT_LINK
> > RTE_EVENT_DEV_CAP_MULTIPLE_QUEUE_PORT
> > RTE_EVENT_DEV_CAP_CARRY_FLOW_ID
> >
> >
> >
> >> +
> >> +;
> >> +; Features of a default adapter.
> >> +;
> >> +[Adapter Features]
> >
> > Please make this as [Eth Rx adapter Features]
> >
> >> +Eth Rx/Tx adapter on internal port         =
> > You can remove Eth Rx/Tx adapter as new subject has [Eth Rx adapter]
> >
> >> +Multiple event queues per ethdev           =
> >> +Override flow ID                           =
> >
> > Missing RTE_EVENT_ETH_RX_ADAPTER_CAP_EVENT_VECTOR
> >
> >
> > Add new section for Tx adapter
> > and add
> > RTE_EVENT_ETH_TX_ADAPTER_CAP_INTERNAL_PORT
> > RTE_EVENT_ETH_TX_ADAPTER_CAP_EVENT_VECTOR
> >
> >
> > Add new section for Crypto adapter
> >
> >> +Crypto adapter new event enqueue           =
> >> +Crypto adapter forwarded event enqueue     =
> >> +Crypto queue pair mapping to event queue   =
> >> +Crypto adapter session data store/retrieve =
> >
> >
> > Add new section for timer adapter
> >
> >> +Timer adapter support in H/W               =
> >
> > Missing RTE_EVENT_TIMER_ADAPTER_CAP_PERIODIC
> >

^ permalink raw reply	[flat|nested] 87+ messages in thread

* [dpdk-dev] [PATCH] eventdev: negate maintenance capability flag
  2021-11-10  8:50             ` [dpdk-dev] [EXT] " Jerin Jacob Kollanukkaran
@ 2021-11-10  9:29               ` Mattias Rönnblom
  2021-11-10  9:55                 ` Van Haaren, Harry
  0 siblings, 1 reply; 87+ messages in thread
From: Mattias Rönnblom @ 2021-11-10  9:29 UTC (permalink / raw)
  To: jerinj, Jerin Jacob, Sunil Kumar Kori
  Cc: dev, Pavan Nikhilesh Bhagavatula, Hemant Agrawal, Nipun Gupta,
	harry.van.haaren, Thomas Monjalon, David Marchand,
	abhinandan.gujjar, Erik Gabriel Carrillo, jay.jayatheerthan,
	Ferruh Yigit, Akhil Goyal, Mattias Rönnblom

Replace RTE_EVENT_DEV_CAP_REQUIRES_MAINT, which signaled the need
for the application to call rte_event_maintain(), with
RTE_EVENT_DEV_CAP_MAINTENANCE_FREE, which does the opposite (i.e.,
signifies that the event device does not require maintenance).

This approach is more in line with how other eventdev hardware and/or
software limitations are handled in the Eventdev API.

Signed-off-by: Mattias Rönnblom <mattias.ronnblom@ericsson.com>
---
 doc/guides/eventdevs/dsw.rst               |  4 ++--
 drivers/event/cnxk/cnxk_eventdev.c         |  3 ++-
 drivers/event/dlb2/dlb2.c                  |  3 ++-
 drivers/event/dpaa/dpaa_eventdev.c         |  3 ++-
 drivers/event/dpaa2/dpaa2_eventdev.c       |  3 ++-
 drivers/event/dsw/dsw_evdev.c              |  3 +--
 drivers/event/octeontx/ssovf_evdev.c       |  3 ++-
 drivers/event/octeontx2/otx2_evdev.c       |  3 ++-
 drivers/event/opdl/opdl_evdev.c            |  1 +
 drivers/event/skeleton/skeleton_eventdev.c |  3 ++-
 drivers/event/sw/sw_evdev.c                |  3 ++-
 lib/eventdev/rte_eventdev.h                | 19 ++++++++++---------
 12 files changed, 30 insertions(+), 21 deletions(-)

diff --git a/doc/guides/eventdevs/dsw.rst b/doc/guides/eventdevs/dsw.rst
index 18f7e9588f..5c6b51f65f 100644
--- a/doc/guides/eventdevs/dsw.rst
+++ b/doc/guides/eventdevs/dsw.rst
@@ -44,8 +44,8 @@ Port Maintenance
 ~~~~~~~~~~~~~~~~
 
 The distributed software eventdev uses an internal signaling scheme
-between the ports to achieve load balancing. Therefore, it sets the
-``RTE_EVENT_DEV_CAP_REQUIRES_MAINT`` flag.
+between the ports to achieve load balancing. Therefore, it does not
+set the ``RTE_EVENT_DEV_CAP_MAINTENANCE_FREE`` flag.
 
 During periods when the application thread using a particular port is
 neither attempting to enqueue nor to dequeue events, it must
diff --git a/drivers/event/cnxk/cnxk_eventdev.c b/drivers/event/cnxk/cnxk_eventdev.c
index 50d5c351bc..f7a5026250 100644
--- a/drivers/event/cnxk/cnxk_eventdev.c
+++ b/drivers/event/cnxk/cnxk_eventdev.c
@@ -119,7 +119,8 @@ cnxk_sso_info_get(struct cnxk_sso_evdev *dev,
 				  RTE_EVENT_DEV_CAP_RUNTIME_PORT_LINK |
 				  RTE_EVENT_DEV_CAP_MULTIPLE_QUEUE_PORT |
 				  RTE_EVENT_DEV_CAP_NONSEQ_MODE |
-				  RTE_EVENT_DEV_CAP_CARRY_FLOW_ID;
+				  RTE_EVENT_DEV_CAP_CARRY_FLOW_ID |
+				  RTE_EVENT_DEV_CAP_MAINTENANCE_FREE;
 }
 
 int
diff --git a/drivers/event/dlb2/dlb2.c b/drivers/event/dlb2/dlb2.c
index 0dbe85762c..16e9764dbf 100644
--- a/drivers/event/dlb2/dlb2.c
+++ b/drivers/event/dlb2/dlb2.c
@@ -66,7 +66,8 @@ static struct rte_event_dev_info evdev_dlb2_default_info = {
 			  RTE_EVENT_DEV_CAP_BURST_MODE |
 			  RTE_EVENT_DEV_CAP_DISTRIBUTED_SCHED |
 			  RTE_EVENT_DEV_CAP_IMPLICIT_RELEASE_DISABLE |
-			  RTE_EVENT_DEV_CAP_QUEUE_ALL_TYPES),
+			  RTE_EVENT_DEV_CAP_QUEUE_ALL_TYPES |
+			  RTE_EVENT_DEV_CAP_MAINTENANCE_FREE),
 };
 
 struct process_local_port_data
diff --git a/drivers/event/dpaa/dpaa_eventdev.c b/drivers/event/dpaa/dpaa_eventdev.c
index eec4bc62b7..ff6cc0be18 100644
--- a/drivers/event/dpaa/dpaa_eventdev.c
+++ b/drivers/event/dpaa/dpaa_eventdev.c
@@ -356,7 +356,8 @@ dpaa_event_dev_info_get(struct rte_eventdev *dev,
 		RTE_EVENT_DEV_CAP_BURST_MODE |
 		RTE_EVENT_DEV_CAP_MULTIPLE_QUEUE_PORT |
 		RTE_EVENT_DEV_CAP_NONSEQ_MODE |
-		RTE_EVENT_DEV_CAP_CARRY_FLOW_ID;
+		RTE_EVENT_DEV_CAP_CARRY_FLOW_ID |
+		RTE_EVENT_DEV_CAP_MAINTENANCE_FREE;
 }
 
 static int
diff --git a/drivers/event/dpaa2/dpaa2_eventdev.c b/drivers/event/dpaa2/dpaa2_eventdev.c
index 710156ad14..4d94c315d2 100644
--- a/drivers/event/dpaa2/dpaa2_eventdev.c
+++ b/drivers/event/dpaa2/dpaa2_eventdev.c
@@ -408,7 +408,8 @@ dpaa2_eventdev_info_get(struct rte_eventdev *dev,
 		RTE_EVENT_DEV_CAP_MULTIPLE_QUEUE_PORT |
 		RTE_EVENT_DEV_CAP_NONSEQ_MODE |
 		RTE_EVENT_DEV_CAP_QUEUE_ALL_TYPES |
-		RTE_EVENT_DEV_CAP_CARRY_FLOW_ID;
+		RTE_EVENT_DEV_CAP_CARRY_FLOW_ID |
+		RTE_EVENT_DEV_CAP_MAINTENANCE_FREE;
 
 }
 
diff --git a/drivers/event/dsw/dsw_evdev.c b/drivers/event/dsw/dsw_evdev.c
index 5ff8fcc6a9..ffabf0d23d 100644
--- a/drivers/event/dsw/dsw_evdev.c
+++ b/drivers/event/dsw/dsw_evdev.c
@@ -222,8 +222,7 @@ dsw_info_get(struct rte_eventdev *dev __rte_unused,
 		RTE_EVENT_DEV_CAP_DISTRIBUTED_SCHED|
 		RTE_EVENT_DEV_CAP_NONSEQ_MODE|
 		RTE_EVENT_DEV_CAP_MULTIPLE_QUEUE_PORT|
-		RTE_EVENT_DEV_CAP_CARRY_FLOW_ID|
-		RTE_EVENT_DEV_CAP_REQUIRES_MAINT
+		RTE_EVENT_DEV_CAP_CARRY_FLOW_ID
 	};
 }
 
diff --git a/drivers/event/octeontx/ssovf_evdev.c b/drivers/event/octeontx/ssovf_evdev.c
index 366b6d356b..9e14e35d10 100644
--- a/drivers/event/octeontx/ssovf_evdev.c
+++ b/drivers/event/octeontx/ssovf_evdev.c
@@ -155,7 +155,8 @@ ssovf_info_get(struct rte_eventdev *dev, struct rte_event_dev_info *dev_info)
 					RTE_EVENT_DEV_CAP_RUNTIME_PORT_LINK |
 					RTE_EVENT_DEV_CAP_MULTIPLE_QUEUE_PORT |
 					RTE_EVENT_DEV_CAP_NONSEQ_MODE |
-					RTE_EVENT_DEV_CAP_CARRY_FLOW_ID;
+					RTE_EVENT_DEV_CAP_CARRY_FLOW_ID |
+					RTE_EVENT_DEV_CAP_MAINTENANCE_FREE;
 
 }
 
diff --git a/drivers/event/octeontx2/otx2_evdev.c b/drivers/event/octeontx2/otx2_evdev.c
index f26bed334f..ccf28b678b 100644
--- a/drivers/event/octeontx2/otx2_evdev.c
+++ b/drivers/event/octeontx2/otx2_evdev.c
@@ -505,7 +505,8 @@ otx2_sso_info_get(struct rte_eventdev *event_dev,
 					RTE_EVENT_DEV_CAP_RUNTIME_PORT_LINK |
 					RTE_EVENT_DEV_CAP_MULTIPLE_QUEUE_PORT |
 					RTE_EVENT_DEV_CAP_NONSEQ_MODE |
-					RTE_EVENT_DEV_CAP_CARRY_FLOW_ID;
+					RTE_EVENT_DEV_CAP_CARRY_FLOW_ID |
+					RTE_EVENT_DEV_CAP_MAINTENANCE_FREE;
 }
 
 static void
diff --git a/drivers/event/opdl/opdl_evdev.c b/drivers/event/opdl/opdl_evdev.c
index 5007e9a7bf..787ee4713d 100644
--- a/drivers/event/opdl/opdl_evdev.c
+++ b/drivers/event/opdl/opdl_evdev.c
@@ -376,6 +376,7 @@ opdl_info_get(struct rte_eventdev *dev, struct rte_event_dev_info *info)
 		.max_num_events = OPDL_INFLIGHT_EVENTS_TOTAL,
 		.event_dev_cap = RTE_EVENT_DEV_CAP_BURST_MODE |
 				 RTE_EVENT_DEV_CAP_CARRY_FLOW_ID,
+				 RTE_EVENT_DEV_CAP_MAINTENANCE_FREE,
 	};
 
 	*info = evdev_opdl_info;
diff --git a/drivers/event/skeleton/skeleton_eventdev.c b/drivers/event/skeleton/skeleton_eventdev.c
index af0efb3302..bf3b01ebc8 100644
--- a/drivers/event/skeleton/skeleton_eventdev.c
+++ b/drivers/event/skeleton/skeleton_eventdev.c
@@ -102,7 +102,8 @@ skeleton_eventdev_info_get(struct rte_eventdev *dev,
 	dev_info->event_dev_cap = RTE_EVENT_DEV_CAP_QUEUE_QOS |
 					RTE_EVENT_DEV_CAP_BURST_MODE |
 					RTE_EVENT_DEV_CAP_EVENT_QOS |
-					RTE_EVENT_DEV_CAP_CARRY_FLOW_ID;
+					RTE_EVENT_DEV_CAP_CARRY_FLOW_ID |
+					RTE_EVENT_DEV_CAP_MAINTENANCE_FREE;
 }
 
 static int
diff --git a/drivers/event/sw/sw_evdev.c b/drivers/event/sw/sw_evdev.c
index 070a4802e9..808f59d1e5 100644
--- a/drivers/event/sw/sw_evdev.c
+++ b/drivers/event/sw/sw_evdev.c
@@ -609,7 +609,8 @@ sw_info_get(struct rte_eventdev *dev, struct rte_event_dev_info *info)
 				RTE_EVENT_DEV_CAP_RUNTIME_PORT_LINK |
 				RTE_EVENT_DEV_CAP_MULTIPLE_QUEUE_PORT |
 				RTE_EVENT_DEV_CAP_NONSEQ_MODE |
-				RTE_EVENT_DEV_CAP_CARRY_FLOW_ID),
+				RTE_EVENT_DEV_CAP_CARRY_FLOW_ID |
+				RTE_EVENT_DEV_CAP_MAINTENANCE_FREE),
 	};
 
 	*info = evdev_sw_info;
diff --git a/lib/eventdev/rte_eventdev.h b/lib/eventdev/rte_eventdev.h
index e026486ca5..4119f51fa0 100644
--- a/lib/eventdev/rte_eventdev.h
+++ b/lib/eventdev/rte_eventdev.h
@@ -299,13 +299,14 @@ struct rte_event;
  * the content of this field is implementation dependent.
  */
 
-#define RTE_EVENT_DEV_CAP_REQUIRES_MAINT (1ULL << 10)
-/**< Event device requires calls to rte_event_maintain() during
- * periods when neither rte_event_dequeue_burst() nor
- * rte_event_enqueue_burst() are called on a port. This will allow the
- * event device to perform internal processing, such as flushing
- * buffered events, return credits to a global pool, or process
- * signaling related to load balancing.
+#define RTE_EVENT_DEV_CAP_MAINTENANCE_FREE (1ULL << 10)
+/**< Event device *does not* require calls to rte_event_maintain().
+ * An event device that does not set this flag requires calls to
+ * rte_event_maintain() during periods when neither
+ * rte_event_dequeue_burst() nor rte_event_enqueue_burst() are called
+ * on a port. This will allow the event device to perform internal
+ * processing, such as flushing buffered events, return credits to a
+ * global pool, or process signaling related to load balancing.
  */
 
 /* Event device priority levels */
@@ -2082,8 +2083,8 @@ rte_event_dequeue_burst(uint8_t dev_id, uint8_t port_id, struct rte_event ev[],
 /**
  * Maintain an event device.
  *
- * This function is only relevant for event devices which have the
- * @ref RTE_EVENT_DEV_CAP_REQUIRES_MAINT flag set. Such devices
+ * This function is only relevant for event devices which do not have
+ * the @ref RTE_EVENT_DEV_CAP_MAINTENANCE_FREE flag set. Such devices
  * require an application thread using a particular port to
  * periodically call rte_event_maintain() on that port during periods
  * which it is neither attempting to enqueue events to nor dequeue
-- 
2.25.1


^ permalink raw reply	[flat|nested] 87+ messages in thread

* Re: [dpdk-dev] [PATCH] eventdev: negate maintenance capability flag
  2021-11-10  9:29               ` [dpdk-dev] [PATCH] eventdev: negate maintenance capability flag Mattias Rönnblom
@ 2021-11-10  9:55                 ` Van Haaren, Harry
  2021-11-10 10:06                   ` [dpdk-dev] [PATCH v2] " Mattias Rönnblom
                                     ` (2 more replies)
  0 siblings, 3 replies; 87+ messages in thread
From: Van Haaren, Harry @ 2021-11-10  9:55 UTC (permalink / raw)
  To: mattias.ronnblom, jerinj, Jerin Jacob, Sunil Kumar Kori
  Cc: dev, Pavan Nikhilesh Bhagavatula, Hemant Agrawal, Nipun Gupta,
	Thomas Monjalon, David Marchand, Gujjar, Abhinandan S, Carrillo,
	Erik G, Jayatheerthan, Jay, Yigit, Ferruh, Akhil Goyal,
	mattias.ronnblom

> -----Original Message-----
> From: Mattias Rönnblom <mattias.ronnblom@ericsson.com>
> Sent: Wednesday, November 10, 2021 9:29 AM
> To: jerinj@marvell.com; Jerin Jacob <jerinjacobk@gmail.com>; Sunil Kumar Kori
> <skori@marvell.com>
> Cc: dev@dpdk.org; Pavan Nikhilesh Bhagavatula <pbhagavatula@marvell.com>;
> Hemant Agrawal <hemant.agrawal@nxp.com>; Nipun Gupta
> <nipun.gupta@nxp.com>; Van Haaren, Harry <harry.van.haaren@intel.com>;
> Thomas Monjalon <thomas@monjalon.net>; David Marchand
> <david.marchand@redhat.com>; Gujjar, Abhinandan S
> <abhinandan.gujjar@intel.com>; Carrillo, Erik G <erik.g.carrillo@intel.com>;
> Jayatheerthan, Jay <jay.jayatheerthan@intel.com>; Yigit, Ferruh
> <ferruh.yigit@intel.com>; Akhil Goyal <gakhil@marvell.com>; mattias.ronnblom
> <mattias.ronnblom@ericsson.com>
> Subject: [PATCH] eventdev: negate maintenance capability flag
> 
> Replace RTE_EVENT_DEV_CAP_REQUIRES_MAINT, which signaled the need
> for the application to call rte_event_maintain(), with
> RTE_EVENT_DEV_CAP_MAINTENANCE_FREE, which does the opposite (i.e.,
> signifies that the event device does not require maintenance).
> 
> This approach is more in line with how other eventdev hardware and/or
> software limitations are handled in the Eventdev API.
> 
> Signed-off-by: Mattias Rönnblom <mattias.ronnblom@ericsson.com>

Generally patch looks fine to me, but on testing I got a strange warning from the
compiler on the OPDL driver:

In file included from ../drivers/event/opdl/opdl_evdev.h:8,
                 from ../drivers/event/opdl/opdl_evdev.c:15:
../drivers/event/opdl/opdl_evdev.c: In function ‘opdl_info_get’:
../lib/eventdev/rte_eventdev.h:302:44: warning: conversion from ‘long long unsigned int’ to ‘un
signed char’ changes value from ‘1024’ to ‘0’ [-Woverflow]
  302 | #define RTE_EVENT_DEV_CAP_MAINTENANCE_FREE (1ULL << 10)
      |                                            ^
../drivers/event/opdl/opdl_evdev.c:379:34: note: in expansion of macro ‘RTE_EVENT_DEV_CAP_MAINT
ENANCE_FREE’
  379 |                                  RTE_EVENT_DEV_CAP_MAINTENANCE_FREE,
      |                                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Investigating, RTE_EVENT_DEV_CAP_* are assigned to struct rte_event_dev_info::event_dev_cap,
which is a uint32_t. The error suggests that the variable being assigned to is a "unsigned char"? 

<snip>

>  static void
> diff --git a/drivers/event/opdl/opdl_evdev.c b/drivers/event/opdl/opdl_evdev.c
> index 5007e9a7bf..787ee4713d 100644
> --- a/drivers/event/opdl/opdl_evdev.c
> +++ b/drivers/event/opdl/opdl_evdev.c
> @@ -376,6 +376,7 @@ opdl_info_get(struct rte_eventdev *dev, struct
> rte_event_dev_info *info)
>  		.max_num_events = OPDL_INFLIGHT_EVENTS_TOTAL,
>  		.event_dev_cap = RTE_EVENT_DEV_CAP_BURST_MODE |
>  				 RTE_EVENT_DEV_CAP_CARRY_FLOW_ID,
> +				 RTE_EVENT_DEV_CAP_MAINTENANCE_FREE,
>  	};

Aha! Replace:
>  				 RTE_EVENT_DEV_CAP_CARRY_FLOW_ID,
with:
>  				 RTE_EVENT_DEV_CAP_CARRY_FLOW_ID | 

The "," character was causing the _FREE flag to not be combined with the previous
flags field, instead being its own (unnamed?) assignment to the struct rte_event_dev_info.

With that , to | change, all looks good to me. -Harry



^ permalink raw reply	[flat|nested] 87+ messages in thread

* [dpdk-dev] [PATCH v2] eventdev: negate maintenance capability flag
  2021-11-10  9:55                 ` Van Haaren, Harry
@ 2021-11-10 10:06                   ` Mattias Rönnblom
  2021-11-10 10:07                   ` [dpdk-dev] [PATCH] " Mattias Rönnblom
  2021-11-10 11:14                   ` [dpdk-dev] [PATCH v2] eventdev: fix Rx adapter stalls on event device backpressure Mattias Rönnblom
  2 siblings, 0 replies; 87+ messages in thread
From: Mattias Rönnblom @ 2021-11-10 10:06 UTC (permalink / raw)
  To: jerinj, Jerin Jacob, Sunil Kumar Kori
  Cc: dev, Pavan Nikhilesh Bhagavatula, Hemant Agrawal, Nipun Gupta,
	harry.van.haaren, Thomas Monjalon, David Marchand,
	abhinandan.gujjar, Erik Gabriel Carrillo, jay.jayatheerthan,
	Ferruh Yigit, Akhil Goyal, Mattias Rönnblom

Replace RTE_EVENT_DEV_CAP_REQUIRES_MAINT, which signaled the need
for the application to call rte_event_maintain(), with
RTE_EVENT_DEV_CAP_MAINTENANCE_FREE, which does the opposite (i.e.,
signifies that the event device does not require maintenance).

This approach is more in line with how other eventdev hardware and/or
software limitations are handled in the Eventdev API.

v2: New flag was not properly set in opdl_evdev.c

Signed-off-by: Mattias Rönnblom <mattias.ronnblom@ericsson.com>
---
 doc/guides/eventdevs/dsw.rst               |  4 ++--
 drivers/event/cnxk/cnxk_eventdev.c         |  3 ++-
 drivers/event/dlb2/dlb2.c                  |  3 ++-
 drivers/event/dpaa/dpaa_eventdev.c         |  3 ++-
 drivers/event/dpaa2/dpaa2_eventdev.c       |  3 ++-
 drivers/event/dsw/dsw_evdev.c              |  3 +--
 drivers/event/octeontx/ssovf_evdev.c       |  3 ++-
 drivers/event/octeontx2/otx2_evdev.c       |  3 ++-
 drivers/event/opdl/opdl_evdev.c            |  3 ++-
 drivers/event/skeleton/skeleton_eventdev.c |  3 ++-
 drivers/event/sw/sw_evdev.c                |  3 ++-
 lib/eventdev/rte_eventdev.h                | 19 ++++++++++---------
 12 files changed, 31 insertions(+), 22 deletions(-)

diff --git a/doc/guides/eventdevs/dsw.rst b/doc/guides/eventdevs/dsw.rst
index 18f7e9588f..5c6b51f65f 100644
--- a/doc/guides/eventdevs/dsw.rst
+++ b/doc/guides/eventdevs/dsw.rst
@@ -44,8 +44,8 @@ Port Maintenance
 ~~~~~~~~~~~~~~~~
 
 The distributed software eventdev uses an internal signaling scheme
-between the ports to achieve load balancing. Therefore, it sets the
-``RTE_EVENT_DEV_CAP_REQUIRES_MAINT`` flag.
+between the ports to achieve load balancing. Therefore, it does not
+set the ``RTE_EVENT_DEV_CAP_MAINTENANCE_FREE`` flag.
 
 During periods when the application thread using a particular port is
 neither attempting to enqueue nor to dequeue events, it must
diff --git a/drivers/event/cnxk/cnxk_eventdev.c b/drivers/event/cnxk/cnxk_eventdev.c
index 50d5c351bc..f7a5026250 100644
--- a/drivers/event/cnxk/cnxk_eventdev.c
+++ b/drivers/event/cnxk/cnxk_eventdev.c
@@ -119,7 +119,8 @@ cnxk_sso_info_get(struct cnxk_sso_evdev *dev,
 				  RTE_EVENT_DEV_CAP_RUNTIME_PORT_LINK |
 				  RTE_EVENT_DEV_CAP_MULTIPLE_QUEUE_PORT |
 				  RTE_EVENT_DEV_CAP_NONSEQ_MODE |
-				  RTE_EVENT_DEV_CAP_CARRY_FLOW_ID;
+				  RTE_EVENT_DEV_CAP_CARRY_FLOW_ID |
+				  RTE_EVENT_DEV_CAP_MAINTENANCE_FREE;
 }
 
 int
diff --git a/drivers/event/dlb2/dlb2.c b/drivers/event/dlb2/dlb2.c
index 0dbe85762c..16e9764dbf 100644
--- a/drivers/event/dlb2/dlb2.c
+++ b/drivers/event/dlb2/dlb2.c
@@ -66,7 +66,8 @@ static struct rte_event_dev_info evdev_dlb2_default_info = {
 			  RTE_EVENT_DEV_CAP_BURST_MODE |
 			  RTE_EVENT_DEV_CAP_DISTRIBUTED_SCHED |
 			  RTE_EVENT_DEV_CAP_IMPLICIT_RELEASE_DISABLE |
-			  RTE_EVENT_DEV_CAP_QUEUE_ALL_TYPES),
+			  RTE_EVENT_DEV_CAP_QUEUE_ALL_TYPES |
+			  RTE_EVENT_DEV_CAP_MAINTENANCE_FREE),
 };
 
 struct process_local_port_data
diff --git a/drivers/event/dpaa/dpaa_eventdev.c b/drivers/event/dpaa/dpaa_eventdev.c
index eec4bc62b7..ff6cc0be18 100644
--- a/drivers/event/dpaa/dpaa_eventdev.c
+++ b/drivers/event/dpaa/dpaa_eventdev.c
@@ -356,7 +356,8 @@ dpaa_event_dev_info_get(struct rte_eventdev *dev,
 		RTE_EVENT_DEV_CAP_BURST_MODE |
 		RTE_EVENT_DEV_CAP_MULTIPLE_QUEUE_PORT |
 		RTE_EVENT_DEV_CAP_NONSEQ_MODE |
-		RTE_EVENT_DEV_CAP_CARRY_FLOW_ID;
+		RTE_EVENT_DEV_CAP_CARRY_FLOW_ID |
+		RTE_EVENT_DEV_CAP_MAINTENANCE_FREE;
 }
 
 static int
diff --git a/drivers/event/dpaa2/dpaa2_eventdev.c b/drivers/event/dpaa2/dpaa2_eventdev.c
index 710156ad14..4d94c315d2 100644
--- a/drivers/event/dpaa2/dpaa2_eventdev.c
+++ b/drivers/event/dpaa2/dpaa2_eventdev.c
@@ -408,7 +408,8 @@ dpaa2_eventdev_info_get(struct rte_eventdev *dev,
 		RTE_EVENT_DEV_CAP_MULTIPLE_QUEUE_PORT |
 		RTE_EVENT_DEV_CAP_NONSEQ_MODE |
 		RTE_EVENT_DEV_CAP_QUEUE_ALL_TYPES |
-		RTE_EVENT_DEV_CAP_CARRY_FLOW_ID;
+		RTE_EVENT_DEV_CAP_CARRY_FLOW_ID |
+		RTE_EVENT_DEV_CAP_MAINTENANCE_FREE;
 
 }
 
diff --git a/drivers/event/dsw/dsw_evdev.c b/drivers/event/dsw/dsw_evdev.c
index 5ff8fcc6a9..ffabf0d23d 100644
--- a/drivers/event/dsw/dsw_evdev.c
+++ b/drivers/event/dsw/dsw_evdev.c
@@ -222,8 +222,7 @@ dsw_info_get(struct rte_eventdev *dev __rte_unused,
 		RTE_EVENT_DEV_CAP_DISTRIBUTED_SCHED|
 		RTE_EVENT_DEV_CAP_NONSEQ_MODE|
 		RTE_EVENT_DEV_CAP_MULTIPLE_QUEUE_PORT|
-		RTE_EVENT_DEV_CAP_CARRY_FLOW_ID|
-		RTE_EVENT_DEV_CAP_REQUIRES_MAINT
+		RTE_EVENT_DEV_CAP_CARRY_FLOW_ID
 	};
 }
 
diff --git a/drivers/event/octeontx/ssovf_evdev.c b/drivers/event/octeontx/ssovf_evdev.c
index 366b6d356b..9e14e35d10 100644
--- a/drivers/event/octeontx/ssovf_evdev.c
+++ b/drivers/event/octeontx/ssovf_evdev.c
@@ -155,7 +155,8 @@ ssovf_info_get(struct rte_eventdev *dev, struct rte_event_dev_info *dev_info)
 					RTE_EVENT_DEV_CAP_RUNTIME_PORT_LINK |
 					RTE_EVENT_DEV_CAP_MULTIPLE_QUEUE_PORT |
 					RTE_EVENT_DEV_CAP_NONSEQ_MODE |
-					RTE_EVENT_DEV_CAP_CARRY_FLOW_ID;
+					RTE_EVENT_DEV_CAP_CARRY_FLOW_ID |
+					RTE_EVENT_DEV_CAP_MAINTENANCE_FREE;
 
 }
 
diff --git a/drivers/event/octeontx2/otx2_evdev.c b/drivers/event/octeontx2/otx2_evdev.c
index f26bed334f..ccf28b678b 100644
--- a/drivers/event/octeontx2/otx2_evdev.c
+++ b/drivers/event/octeontx2/otx2_evdev.c
@@ -505,7 +505,8 @@ otx2_sso_info_get(struct rte_eventdev *event_dev,
 					RTE_EVENT_DEV_CAP_RUNTIME_PORT_LINK |
 					RTE_EVENT_DEV_CAP_MULTIPLE_QUEUE_PORT |
 					RTE_EVENT_DEV_CAP_NONSEQ_MODE |
-					RTE_EVENT_DEV_CAP_CARRY_FLOW_ID;
+					RTE_EVENT_DEV_CAP_CARRY_FLOW_ID |
+					RTE_EVENT_DEV_CAP_MAINTENANCE_FREE;
 }
 
 static void
diff --git a/drivers/event/opdl/opdl_evdev.c b/drivers/event/opdl/opdl_evdev.c
index 5007e9a7bf..15c10240b0 100644
--- a/drivers/event/opdl/opdl_evdev.c
+++ b/drivers/event/opdl/opdl_evdev.c
@@ -375,7 +375,8 @@ opdl_info_get(struct rte_eventdev *dev, struct rte_event_dev_info *info)
 		.max_event_port_enqueue_depth = MAX_OPDL_CONS_Q_DEPTH,
 		.max_num_events = OPDL_INFLIGHT_EVENTS_TOTAL,
 		.event_dev_cap = RTE_EVENT_DEV_CAP_BURST_MODE |
-				 RTE_EVENT_DEV_CAP_CARRY_FLOW_ID,
+				 RTE_EVENT_DEV_CAP_CARRY_FLOW_ID |
+				 RTE_EVENT_DEV_CAP_MAINTENANCE_FREE,
 	};
 
 	*info = evdev_opdl_info;
diff --git a/drivers/event/skeleton/skeleton_eventdev.c b/drivers/event/skeleton/skeleton_eventdev.c
index af0efb3302..bf3b01ebc8 100644
--- a/drivers/event/skeleton/skeleton_eventdev.c
+++ b/drivers/event/skeleton/skeleton_eventdev.c
@@ -102,7 +102,8 @@ skeleton_eventdev_info_get(struct rte_eventdev *dev,
 	dev_info->event_dev_cap = RTE_EVENT_DEV_CAP_QUEUE_QOS |
 					RTE_EVENT_DEV_CAP_BURST_MODE |
 					RTE_EVENT_DEV_CAP_EVENT_QOS |
-					RTE_EVENT_DEV_CAP_CARRY_FLOW_ID;
+					RTE_EVENT_DEV_CAP_CARRY_FLOW_ID |
+					RTE_EVENT_DEV_CAP_MAINTENANCE_FREE;
 }
 
 static int
diff --git a/drivers/event/sw/sw_evdev.c b/drivers/event/sw/sw_evdev.c
index 070a4802e9..808f59d1e5 100644
--- a/drivers/event/sw/sw_evdev.c
+++ b/drivers/event/sw/sw_evdev.c
@@ -609,7 +609,8 @@ sw_info_get(struct rte_eventdev *dev, struct rte_event_dev_info *info)
 				RTE_EVENT_DEV_CAP_RUNTIME_PORT_LINK |
 				RTE_EVENT_DEV_CAP_MULTIPLE_QUEUE_PORT |
 				RTE_EVENT_DEV_CAP_NONSEQ_MODE |
-				RTE_EVENT_DEV_CAP_CARRY_FLOW_ID),
+				RTE_EVENT_DEV_CAP_CARRY_FLOW_ID |
+				RTE_EVENT_DEV_CAP_MAINTENANCE_FREE),
 	};
 
 	*info = evdev_sw_info;
diff --git a/lib/eventdev/rte_eventdev.h b/lib/eventdev/rte_eventdev.h
index e026486ca5..4119f51fa0 100644
--- a/lib/eventdev/rte_eventdev.h
+++ b/lib/eventdev/rte_eventdev.h
@@ -299,13 +299,14 @@ struct rte_event;
  * the content of this field is implementation dependent.
  */
 
-#define RTE_EVENT_DEV_CAP_REQUIRES_MAINT (1ULL << 10)
-/**< Event device requires calls to rte_event_maintain() during
- * periods when neither rte_event_dequeue_burst() nor
- * rte_event_enqueue_burst() are called on a port. This will allow the
- * event device to perform internal processing, such as flushing
- * buffered events, return credits to a global pool, or process
- * signaling related to load balancing.
+#define RTE_EVENT_DEV_CAP_MAINTENANCE_FREE (1ULL << 10)
+/**< Event device *does not* require calls to rte_event_maintain().
+ * An event device that does not set this flag requires calls to
+ * rte_event_maintain() during periods when neither
+ * rte_event_dequeue_burst() nor rte_event_enqueue_burst() are called
+ * on a port. This will allow the event device to perform internal
+ * processing, such as flushing buffered events, return credits to a
+ * global pool, or process signaling related to load balancing.
  */
 
 /* Event device priority levels */
@@ -2082,8 +2083,8 @@ rte_event_dequeue_burst(uint8_t dev_id, uint8_t port_id, struct rte_event ev[],
 /**
  * Maintain an event device.
  *
- * This function is only relevant for event devices which have the
- * @ref RTE_EVENT_DEV_CAP_REQUIRES_MAINT flag set. Such devices
+ * This function is only relevant for event devices which do not have
+ * the @ref RTE_EVENT_DEV_CAP_MAINTENANCE_FREE flag set. Such devices
  * require an application thread using a particular port to
  * periodically call rte_event_maintain() on that port during periods
  * which it is neither attempting to enqueue events to nor dequeue
-- 
2.25.1


^ permalink raw reply	[flat|nested] 87+ messages in thread

* Re: [dpdk-dev] [PATCH] eventdev: negate maintenance capability flag
  2021-11-10  9:55                 ` Van Haaren, Harry
  2021-11-10 10:06                   ` [dpdk-dev] [PATCH v2] " Mattias Rönnblom
@ 2021-11-10 10:07                   ` Mattias Rönnblom
  2021-11-10 10:43                     ` Jerin Jacob
  2021-11-10 11:14                   ` [dpdk-dev] [PATCH v2] eventdev: fix Rx adapter stalls on event device backpressure Mattias Rönnblom
  2 siblings, 1 reply; 87+ messages in thread
From: Mattias Rönnblom @ 2021-11-10 10:07 UTC (permalink / raw)
  To: Van Haaren, Harry, jerinj, Jerin Jacob, Sunil Kumar Kori
  Cc: dev, Pavan Nikhilesh Bhagavatula, Hemant Agrawal, Nipun Gupta,
	Thomas Monjalon, David Marchand, Gujjar, Abhinandan S, Carrillo,
	Erik G, Jayatheerthan, Jay, Yigit, Ferruh, Akhil Goyal

On 2021-11-10 10:55, Van Haaren, Harry wrote:
>> -----Original Message-----
>> From: Mattias Rönnblom <mattias.ronnblom@ericsson.com>
>> Sent: Wednesday, November 10, 2021 9:29 AM
>> To: jerinj@marvell.com; Jerin Jacob <jerinjacobk@gmail.com>; Sunil Kumar Kori
>> <skori@marvell.com>
>> Cc: dev@dpdk.org; Pavan Nikhilesh Bhagavatula <pbhagavatula@marvell.com>;
>> Hemant Agrawal <hemant.agrawal@nxp.com>; Nipun Gupta
>> <nipun.gupta@nxp.com>; Van Haaren, Harry <harry.van.haaren@intel.com>;
>> Thomas Monjalon <thomas@monjalon.net>; David Marchand
>> <david.marchand@redhat.com>; Gujjar, Abhinandan S
>> <abhinandan.gujjar@intel.com>; Carrillo, Erik G <erik.g.carrillo@intel.com>;
>> Jayatheerthan, Jay <jay.jayatheerthan@intel.com>; Yigit, Ferruh
>> <ferruh.yigit@intel.com>; Akhil Goyal <gakhil@marvell.com>; mattias.ronnblom
>> <mattias.ronnblom@ericsson.com>
>> Subject: [PATCH] eventdev: negate maintenance capability flag
>>
>> Replace RTE_EVENT_DEV_CAP_REQUIRES_MAINT, which signaled the need
>> for the application to call rte_event_maintain(), with
>> RTE_EVENT_DEV_CAP_MAINTENANCE_FREE, which does the opposite (i.e.,
>> signifies that the event device does not require maintenance).
>>
>> This approach is more in line with how other eventdev hardware and/or
>> software limitations are handled in the Eventdev API.
>>
>> Signed-off-by: Mattias Rönnblom <mattias.ronnblom@ericsson.com>
> Generally patch looks fine to me, but on testing I got a strange warning from the
> compiler on the OPDL driver:
>
> In file included from ../drivers/event/opdl/opdl_evdev.h:8,
>                   from ../drivers/event/opdl/opdl_evdev.c:15:
> ../drivers/event/opdl/opdl_evdev.c: In function ‘opdl_info_get’:
> ../lib/eventdev/rte_eventdev.h:302:44: warning: conversion from ‘long long unsigned int’ to ‘un
> signed char’ changes value from ‘1024’ to ‘0’ [-Woverflow]
>    302 | #define RTE_EVENT_DEV_CAP_MAINTENANCE_FREE (1ULL << 10)
>        |                                            ^
> ../drivers/event/opdl/opdl_evdev.c:379:34: note: in expansion of macro ‘RTE_EVENT_DEV_CAP_MAINT
> ENANCE_FREE’
>    379 |                                  RTE_EVENT_DEV_CAP_MAINTENANCE_FREE,
>        |                                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>
> Investigating, RTE_EVENT_DEV_CAP_* are assigned to struct rte_event_dev_info::event_dev_cap,
> which is a uint32_t. The error suggests that the variable being assigned to is a "unsigned char"?
>
> <snip>
>
>>   static void
>> diff --git a/drivers/event/opdl/opdl_evdev.c b/drivers/event/opdl/opdl_evdev.c
>> index 5007e9a7bf..787ee4713d 100644
>> --- a/drivers/event/opdl/opdl_evdev.c
>> +++ b/drivers/event/opdl/opdl_evdev.c
>> @@ -376,6 +376,7 @@ opdl_info_get(struct rte_eventdev *dev, struct
>> rte_event_dev_info *info)
>>   		.max_num_events = OPDL_INFLIGHT_EVENTS_TOTAL,
>>   		.event_dev_cap = RTE_EVENT_DEV_CAP_BURST_MODE |
>>   				 RTE_EVENT_DEV_CAP_CARRY_FLOW_ID,
>> +				 RTE_EVENT_DEV_CAP_MAINTENANCE_FREE,
>>   	};
> Aha! Replace:
>>   				 RTE_EVENT_DEV_CAP_CARRY_FLOW_ID,
> with:
>>   				 RTE_EVENT_DEV_CAP_CARRY_FLOW_ID |
> The "," character was causing the _FREE flag to not be combined with the previous
> flags field, instead being its own (unnamed?) assignment to the struct rte_event_dev_info.
>
> With that , to | change, all looks good to me. -Harry
>
>
I sent a v2. Thanks!


^ permalink raw reply	[flat|nested] 87+ messages in thread

* Re: [dpdk-dev] [PATCH] eventdev: negate maintenance capability flag
  2021-11-10 10:07                   ` [dpdk-dev] [PATCH] " Mattias Rönnblom
@ 2021-11-10 10:43                     ` Jerin Jacob
  2021-11-10 11:32                       ` [dpdk-dev] [PATCH v3] " Mattias Rönnblom
  0 siblings, 1 reply; 87+ messages in thread
From: Jerin Jacob @ 2021-11-10 10:43 UTC (permalink / raw)
  To: Mattias Rönnblom
  Cc: Van Haaren, Harry, jerinj, Sunil Kumar Kori, dev,
	Pavan Nikhilesh Bhagavatula, Hemant Agrawal, Nipun Gupta,
	Thomas Monjalon, David Marchand, Gujjar, Abhinandan S, Carrillo,
	Erik G, Jayatheerthan, Jay, Yigit, Ferruh, Akhil Goyal

On Wed, Nov 10, 2021 at 3:37 PM Mattias Rönnblom
<mattias.ronnblom@ericsson.com> wrote:
>
> On 2021-11-10 10:55, Van Haaren, Harry wrote:
> >> -----Original Message-----
> >> From: Mattias Rönnblom <mattias.ronnblom@ericsson.com>
> >> Sent: Wednesday, November 10, 2021 9:29 AM
> >> To: jerinj@marvell.com; Jerin Jacob <jerinjacobk@gmail.com>; Sunil Kumar Kori
> >> <skori@marvell.com>
> >> Cc: dev@dpdk.org; Pavan Nikhilesh Bhagavatula <pbhagavatula@marvell.com>;
> >> Hemant Agrawal <hemant.agrawal@nxp.com>; Nipun Gupta
> >> <nipun.gupta@nxp.com>; Van Haaren, Harry <harry.van.haaren@intel.com>;
> >> Thomas Monjalon <thomas@monjalon.net>; David Marchand
> >> <david.marchand@redhat.com>; Gujjar, Abhinandan S
> >> <abhinandan.gujjar@intel.com>; Carrillo, Erik G <erik.g.carrillo@intel.com>;
> >> Jayatheerthan, Jay <jay.jayatheerthan@intel.com>; Yigit, Ferruh
> >> <ferruh.yigit@intel.com>; Akhil Goyal <gakhil@marvell.com>; mattias.ronnblom
> >> <mattias.ronnblom@ericsson.com>
> >> Subject: [PATCH] eventdev: negate maintenance capability flag
> >>
> >> Replace RTE_EVENT_DEV_CAP_REQUIRES_MAINT, which signaled the need
> >> for the application to call rte_event_maintain(), with
> >> RTE_EVENT_DEV_CAP_MAINTENANCE_FREE, which does the opposite (i.e.,
> >> signifies that the event device does not require maintenance).
> >>
> >> This approach is more in line with how other eventdev hardware and/or
> >> software limitations are handled in the Eventdev API.
> >>
> >> Signed-off-by: Mattias Rönnblom <mattias.ronnblom@ericsson.com>
> > Generally patch looks fine to me, but on testing I got a strange warning from the
> > compiler on the OPDL driver:
> >
> > In file included from ../drivers/event/opdl/opdl_evdev.h:8,
> >                   from ../drivers/event/opdl/opdl_evdev.c:15:
> > ../drivers/event/opdl/opdl_evdev.c: In function ‘opdl_info_get’:
> > ../lib/eventdev/rte_eventdev.h:302:44: warning: conversion from ‘long long unsigned int’ to ‘un
> > signed char’ changes value from ‘1024’ to ‘0’ [-Woverflow]
> >    302 | #define RTE_EVENT_DEV_CAP_MAINTENANCE_FREE (1ULL << 10)
> >        |                                            ^
> > ../drivers/event/opdl/opdl_evdev.c:379:34: note: in expansion of macro ‘RTE_EVENT_DEV_CAP_MAINT
> > ENANCE_FREE’
> >    379 |                                  RTE_EVENT_DEV_CAP_MAINTENANCE_FREE,
> >        |                                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> >
> > Investigating, RTE_EVENT_DEV_CAP_* are assigned to struct rte_event_dev_info::event_dev_cap,
> > which is a uint32_t. The error suggests that the variable being assigned to is a "unsigned char"?
> >
> > <snip>
> >
> >>   static void
> >> diff --git a/drivers/event/opdl/opdl_evdev.c b/drivers/event/opdl/opdl_evdev.c
> >> index 5007e9a7bf..787ee4713d 100644
> >> --- a/drivers/event/opdl/opdl_evdev.c
> >> +++ b/drivers/event/opdl/opdl_evdev.c
> >> @@ -376,6 +376,7 @@ opdl_info_get(struct rte_eventdev *dev, struct
> >> rte_event_dev_info *info)
> >>              .max_num_events = OPDL_INFLIGHT_EVENTS_TOTAL,
> >>              .event_dev_cap = RTE_EVENT_DEV_CAP_BURST_MODE |
> >>                               RTE_EVENT_DEV_CAP_CARRY_FLOW_ID,
> >> +                             RTE_EVENT_DEV_CAP_MAINTENANCE_FREE,
> >>      };
> > Aha! Replace:
> >>                               RTE_EVENT_DEV_CAP_CARRY_FLOW_ID,
> > with:
> >>                               RTE_EVENT_DEV_CAP_CARRY_FLOW_ID |
> > The "," character was causing the _FREE flag to not be combined with the previous
> > flags field, instead being its own (unnamed?) assignment to the struct rte_event_dev_info.
> >
> > With that , to | change, all looks good to me. -Harry
> >
> >
> I sent a v2. Thanks!

v2 has doc build error. Please send v3

http://mails.dpdk.org/archives/test-report/2021-November/241649.html
>

^ permalink raw reply	[flat|nested] 87+ messages in thread

* [dpdk-dev] [PATCH v2] eventdev: fix Rx adapter stalls on event device backpressure
  2021-11-10  9:55                 ` Van Haaren, Harry
  2021-11-10 10:06                   ` [dpdk-dev] [PATCH v2] " Mattias Rönnblom
  2021-11-10 10:07                   ` [dpdk-dev] [PATCH] " Mattias Rönnblom
@ 2021-11-10 11:14                   ` Mattias Rönnblom
  2021-11-10 11:23                     ` Jayatheerthan, Jay
  2 siblings, 1 reply; 87+ messages in thread
From: Mattias Rönnblom @ 2021-11-10 11:14 UTC (permalink / raw)
  To: jerinjacobk, jay.jayatheerthan, ganapati.kundapura, jerinj
  Cc: dev @ dpdk . org, Mattias Rönnblom

In the Eventdev Ethernet RX Adapter, correctly handle the case where
the circular enqueue buffer head and last index point to the same
element.

This bug may be triggered in case there is backpressure from the event
device to the RX adapter.

v2:
* Corrected bug description

Fixes: 8113fd15e229 ("eventdev/eth_rx: make enqueue buffer circular")
Cc: ganapati.kundapura@intel.com

Signed-off-by: Mattias Rönnblom <mattias.ronnblom@ericsson.com>
---
 lib/eventdev/rte_event_eth_rx_adapter.c | 22 ++++++++++++++--------
 1 file changed, 14 insertions(+), 8 deletions(-)

diff --git a/lib/eventdev/rte_event_eth_rx_adapter.c b/lib/eventdev/rte_event_eth_rx_adapter.c
index 56318b5a6f..809416d9b7 100644
--- a/lib/eventdev/rte_event_eth_rx_adapter.c
+++ b/lib/eventdev/rte_event_eth_rx_adapter.c
@@ -777,19 +777,25 @@ rxa_flush_event_buffer(struct event_eth_rx_adapter *rx_adapter,
 		       struct eth_event_enqueue_buffer *buf,
 		       struct rte_event_eth_rx_adapter_stats *stats)
 {
-	uint16_t count = buf->last ? buf->last - buf->head : buf->count;
+	uint16_t count = buf->count;
+	uint16_t n = 0;
 
 	if (!count)
 		return 0;
 
-	uint16_t n = rte_event_enqueue_new_burst(rx_adapter->eventdev_id,
-					rx_adapter->event_port_id,
-					&buf->events[buf->head],
-					count);
-	if (n != count)
-		stats->rx_enq_retry++;
+	if (buf->last)
+		count = buf->last - buf->head;
+
+	if (count) {
+		n = rte_event_enqueue_new_burst(rx_adapter->eventdev_id,
+						rx_adapter->event_port_id,
+						&buf->events[buf->head],
+						count);
+		if (n != count)
+			stats->rx_enq_retry++;
 
-	buf->head += n;
+		buf->head += n;
+	}
 
 	if (buf->last && n == count) {
 		uint16_t n1;
-- 
2.25.1


^ permalink raw reply	[flat|nested] 87+ messages in thread

* Re: [dpdk-dev] [PATCH v2] eventdev: fix Rx adapter stalls on event device backpressure
  2021-11-10 11:14                   ` [dpdk-dev] [PATCH v2] eventdev: fix Rx adapter stalls on event device backpressure Mattias Rönnblom
@ 2021-11-10 11:23                     ` Jayatheerthan, Jay
  2021-11-10 18:56                       ` Jerin Jacob
  0 siblings, 1 reply; 87+ messages in thread
From: Jayatheerthan, Jay @ 2021-11-10 11:23 UTC (permalink / raw)
  To: mattias.ronnblom, jerinjacobk, Kundapura, Ganapati, jerinj
  Cc: dev @ dpdk . org, mattias.ronnblom

Looks good. Thanks for posting this change!

Acked-by: Jay Jayatheerthan <jay.jayatheerthan@intel.com>

> -----Original Message-----
> From: Mattias Rönnblom <mattias.ronnblom@ericsson.com>
> Sent: Wednesday, November 10, 2021 4:44 PM
> To: jerinjacobk@gmail.com; Jayatheerthan, Jay <jay.jayatheerthan@intel.com>; Kundapura, Ganapati
> <ganapati.kundapura@intel.com>; jerinj@marvell.com
> Cc: dev @ dpdk . org <dev@dpdk.org>; mattias.ronnblom <mattias.ronnblom@ericsson.com>
> Subject: [PATCH v2] eventdev: fix Rx adapter stalls on event device backpressure
> 
> In the Eventdev Ethernet RX Adapter, correctly handle the case where
> the circular enqueue buffer head and last index point to the same
> element.
> 
> This bug may be triggered in case there is backpressure from the event
> device to the RX adapter.
> 
> v2:
> * Corrected bug description
> 
> Fixes: 8113fd15e229 ("eventdev/eth_rx: make enqueue buffer circular")
> Cc: ganapati.kundapura@intel.com
> 
> Signed-off-by: Mattias Rönnblom <mattias.ronnblom@ericsson.com>
> ---
>  lib/eventdev/rte_event_eth_rx_adapter.c | 22 ++++++++++++++--------
>  1 file changed, 14 insertions(+), 8 deletions(-)
> 
> diff --git a/lib/eventdev/rte_event_eth_rx_adapter.c b/lib/eventdev/rte_event_eth_rx_adapter.c
> index 56318b5a6f..809416d9b7 100644
> --- a/lib/eventdev/rte_event_eth_rx_adapter.c
> +++ b/lib/eventdev/rte_event_eth_rx_adapter.c
> @@ -777,19 +777,25 @@ rxa_flush_event_buffer(struct event_eth_rx_adapter *rx_adapter,
>  		       struct eth_event_enqueue_buffer *buf,
>  		       struct rte_event_eth_rx_adapter_stats *stats)
>  {
> -	uint16_t count = buf->last ? buf->last - buf->head : buf->count;
> +	uint16_t count = buf->count;
> +	uint16_t n = 0;
> 
>  	if (!count)
>  		return 0;
> 
> -	uint16_t n = rte_event_enqueue_new_burst(rx_adapter->eventdev_id,
> -					rx_adapter->event_port_id,
> -					&buf->events[buf->head],
> -					count);
> -	if (n != count)
> -		stats->rx_enq_retry++;
> +	if (buf->last)
> +		count = buf->last - buf->head;
> +
> +	if (count) {
> +		n = rte_event_enqueue_new_burst(rx_adapter->eventdev_id,
> +						rx_adapter->event_port_id,
> +						&buf->events[buf->head],
> +						count);
> +		if (n != count)
> +			stats->rx_enq_retry++;
> 
> -	buf->head += n;
> +		buf->head += n;
> +	}
> 
>  	if (buf->last && n == count) {
>  		uint16_t n1;
> --
> 2.25.1


^ permalink raw reply	[flat|nested] 87+ messages in thread

* [dpdk-dev] [PATCH v3] eventdev: negate maintenance capability flag
  2021-11-10 10:43                     ` Jerin Jacob
@ 2021-11-10 11:32                       ` Mattias Rönnblom
  2021-11-10 18:55                         ` Jerin Jacob
  0 siblings, 1 reply; 87+ messages in thread
From: Mattias Rönnblom @ 2021-11-10 11:32 UTC (permalink / raw)
  To: Jerin Jacob
  Cc: harry.van.haaren, jerinj, Sunil Kumar Kori, dev,
	Pavan Nikhilesh Bhagavatula, Hemant Agrawal, Nipun Gupta,
	Thomas Monjalon, David Marchand, abhinandan.gujjar,
	erik.g.carrillo, jay.jayatheerthan, ferruh.yigit, Akhil Goyal,
	Mattias Rönnblom

Replace RTE_EVENT_DEV_CAP_REQUIRES_MAINT, which signaled the need
for the application to call rte_event_maintain(), with
RTE_EVENT_DEV_CAP_MAINTENANCE_FREE, which does the opposite (i.e.,
signifies that the event device does not require maintenance).

This approach is more in line with how other eventdev hardware and/or
software limitations are handled in the Eventdev API.

v3: Fix invalid references in the API documentation
v2: New flag was not properly set in opdl_evdev.c

Signed-off-by: Mattias Rönnblom <mattias.ronnblom@ericsson.com>
---
 doc/guides/eventdevs/dsw.rst               |  4 ++--
 drivers/event/cnxk/cnxk_eventdev.c         |  3 ++-
 drivers/event/dlb2/dlb2.c                  |  3 ++-
 drivers/event/dpaa/dpaa_eventdev.c         |  3 ++-
 drivers/event/dpaa2/dpaa2_eventdev.c       |  3 ++-
 drivers/event/dsw/dsw_evdev.c              |  3 +--
 drivers/event/octeontx/ssovf_evdev.c       |  3 ++-
 drivers/event/octeontx2/otx2_evdev.c       |  3 ++-
 drivers/event/opdl/opdl_evdev.c            |  3 ++-
 drivers/event/skeleton/skeleton_eventdev.c |  3 ++-
 drivers/event/sw/sw_evdev.c                |  3 ++-
 lib/eventdev/rte_eventdev.h                | 27 +++++++++++-----------
 12 files changed, 35 insertions(+), 26 deletions(-)

diff --git a/doc/guides/eventdevs/dsw.rst b/doc/guides/eventdevs/dsw.rst
index 18f7e9588f..5c6b51f65f 100644
--- a/doc/guides/eventdevs/dsw.rst
+++ b/doc/guides/eventdevs/dsw.rst
@@ -44,8 +44,8 @@ Port Maintenance
 ~~~~~~~~~~~~~~~~
 
 The distributed software eventdev uses an internal signaling scheme
-between the ports to achieve load balancing. Therefore, it sets the
-``RTE_EVENT_DEV_CAP_REQUIRES_MAINT`` flag.
+between the ports to achieve load balancing. Therefore, it does not
+set the ``RTE_EVENT_DEV_CAP_MAINTENANCE_FREE`` flag.
 
 During periods when the application thread using a particular port is
 neither attempting to enqueue nor to dequeue events, it must
diff --git a/drivers/event/cnxk/cnxk_eventdev.c b/drivers/event/cnxk/cnxk_eventdev.c
index 50d5c351bc..f7a5026250 100644
--- a/drivers/event/cnxk/cnxk_eventdev.c
+++ b/drivers/event/cnxk/cnxk_eventdev.c
@@ -119,7 +119,8 @@ cnxk_sso_info_get(struct cnxk_sso_evdev *dev,
 				  RTE_EVENT_DEV_CAP_RUNTIME_PORT_LINK |
 				  RTE_EVENT_DEV_CAP_MULTIPLE_QUEUE_PORT |
 				  RTE_EVENT_DEV_CAP_NONSEQ_MODE |
-				  RTE_EVENT_DEV_CAP_CARRY_FLOW_ID;
+				  RTE_EVENT_DEV_CAP_CARRY_FLOW_ID |
+				  RTE_EVENT_DEV_CAP_MAINTENANCE_FREE;
 }
 
 int
diff --git a/drivers/event/dlb2/dlb2.c b/drivers/event/dlb2/dlb2.c
index 0dbe85762c..16e9764dbf 100644
--- a/drivers/event/dlb2/dlb2.c
+++ b/drivers/event/dlb2/dlb2.c
@@ -66,7 +66,8 @@ static struct rte_event_dev_info evdev_dlb2_default_info = {
 			  RTE_EVENT_DEV_CAP_BURST_MODE |
 			  RTE_EVENT_DEV_CAP_DISTRIBUTED_SCHED |
 			  RTE_EVENT_DEV_CAP_IMPLICIT_RELEASE_DISABLE |
-			  RTE_EVENT_DEV_CAP_QUEUE_ALL_TYPES),
+			  RTE_EVENT_DEV_CAP_QUEUE_ALL_TYPES |
+			  RTE_EVENT_DEV_CAP_MAINTENANCE_FREE),
 };
 
 struct process_local_port_data
diff --git a/drivers/event/dpaa/dpaa_eventdev.c b/drivers/event/dpaa/dpaa_eventdev.c
index eec4bc62b7..ff6cc0be18 100644
--- a/drivers/event/dpaa/dpaa_eventdev.c
+++ b/drivers/event/dpaa/dpaa_eventdev.c
@@ -356,7 +356,8 @@ dpaa_event_dev_info_get(struct rte_eventdev *dev,
 		RTE_EVENT_DEV_CAP_BURST_MODE |
 		RTE_EVENT_DEV_CAP_MULTIPLE_QUEUE_PORT |
 		RTE_EVENT_DEV_CAP_NONSEQ_MODE |
-		RTE_EVENT_DEV_CAP_CARRY_FLOW_ID;
+		RTE_EVENT_DEV_CAP_CARRY_FLOW_ID |
+		RTE_EVENT_DEV_CAP_MAINTENANCE_FREE;
 }
 
 static int
diff --git a/drivers/event/dpaa2/dpaa2_eventdev.c b/drivers/event/dpaa2/dpaa2_eventdev.c
index 710156ad14..4d94c315d2 100644
--- a/drivers/event/dpaa2/dpaa2_eventdev.c
+++ b/drivers/event/dpaa2/dpaa2_eventdev.c
@@ -408,7 +408,8 @@ dpaa2_eventdev_info_get(struct rte_eventdev *dev,
 		RTE_EVENT_DEV_CAP_MULTIPLE_QUEUE_PORT |
 		RTE_EVENT_DEV_CAP_NONSEQ_MODE |
 		RTE_EVENT_DEV_CAP_QUEUE_ALL_TYPES |
-		RTE_EVENT_DEV_CAP_CARRY_FLOW_ID;
+		RTE_EVENT_DEV_CAP_CARRY_FLOW_ID |
+		RTE_EVENT_DEV_CAP_MAINTENANCE_FREE;
 
 }
 
diff --git a/drivers/event/dsw/dsw_evdev.c b/drivers/event/dsw/dsw_evdev.c
index 5ff8fcc6a9..ffabf0d23d 100644
--- a/drivers/event/dsw/dsw_evdev.c
+++ b/drivers/event/dsw/dsw_evdev.c
@@ -222,8 +222,7 @@ dsw_info_get(struct rte_eventdev *dev __rte_unused,
 		RTE_EVENT_DEV_CAP_DISTRIBUTED_SCHED|
 		RTE_EVENT_DEV_CAP_NONSEQ_MODE|
 		RTE_EVENT_DEV_CAP_MULTIPLE_QUEUE_PORT|
-		RTE_EVENT_DEV_CAP_CARRY_FLOW_ID|
-		RTE_EVENT_DEV_CAP_REQUIRES_MAINT
+		RTE_EVENT_DEV_CAP_CARRY_FLOW_ID
 	};
 }
 
diff --git a/drivers/event/octeontx/ssovf_evdev.c b/drivers/event/octeontx/ssovf_evdev.c
index 366b6d356b..9e14e35d10 100644
--- a/drivers/event/octeontx/ssovf_evdev.c
+++ b/drivers/event/octeontx/ssovf_evdev.c
@@ -155,7 +155,8 @@ ssovf_info_get(struct rte_eventdev *dev, struct rte_event_dev_info *dev_info)
 					RTE_EVENT_DEV_CAP_RUNTIME_PORT_LINK |
 					RTE_EVENT_DEV_CAP_MULTIPLE_QUEUE_PORT |
 					RTE_EVENT_DEV_CAP_NONSEQ_MODE |
-					RTE_EVENT_DEV_CAP_CARRY_FLOW_ID;
+					RTE_EVENT_DEV_CAP_CARRY_FLOW_ID |
+					RTE_EVENT_DEV_CAP_MAINTENANCE_FREE;
 
 }
 
diff --git a/drivers/event/octeontx2/otx2_evdev.c b/drivers/event/octeontx2/otx2_evdev.c
index f26bed334f..ccf28b678b 100644
--- a/drivers/event/octeontx2/otx2_evdev.c
+++ b/drivers/event/octeontx2/otx2_evdev.c
@@ -505,7 +505,8 @@ otx2_sso_info_get(struct rte_eventdev *event_dev,
 					RTE_EVENT_DEV_CAP_RUNTIME_PORT_LINK |
 					RTE_EVENT_DEV_CAP_MULTIPLE_QUEUE_PORT |
 					RTE_EVENT_DEV_CAP_NONSEQ_MODE |
-					RTE_EVENT_DEV_CAP_CARRY_FLOW_ID;
+					RTE_EVENT_DEV_CAP_CARRY_FLOW_ID |
+					RTE_EVENT_DEV_CAP_MAINTENANCE_FREE;
 }
 
 static void
diff --git a/drivers/event/opdl/opdl_evdev.c b/drivers/event/opdl/opdl_evdev.c
index 5007e9a7bf..15c10240b0 100644
--- a/drivers/event/opdl/opdl_evdev.c
+++ b/drivers/event/opdl/opdl_evdev.c
@@ -375,7 +375,8 @@ opdl_info_get(struct rte_eventdev *dev, struct rte_event_dev_info *info)
 		.max_event_port_enqueue_depth = MAX_OPDL_CONS_Q_DEPTH,
 		.max_num_events = OPDL_INFLIGHT_EVENTS_TOTAL,
 		.event_dev_cap = RTE_EVENT_DEV_CAP_BURST_MODE |
-				 RTE_EVENT_DEV_CAP_CARRY_FLOW_ID,
+				 RTE_EVENT_DEV_CAP_CARRY_FLOW_ID |
+				 RTE_EVENT_DEV_CAP_MAINTENANCE_FREE,
 	};
 
 	*info = evdev_opdl_info;
diff --git a/drivers/event/skeleton/skeleton_eventdev.c b/drivers/event/skeleton/skeleton_eventdev.c
index af0efb3302..bf3b01ebc8 100644
--- a/drivers/event/skeleton/skeleton_eventdev.c
+++ b/drivers/event/skeleton/skeleton_eventdev.c
@@ -102,7 +102,8 @@ skeleton_eventdev_info_get(struct rte_eventdev *dev,
 	dev_info->event_dev_cap = RTE_EVENT_DEV_CAP_QUEUE_QOS |
 					RTE_EVENT_DEV_CAP_BURST_MODE |
 					RTE_EVENT_DEV_CAP_EVENT_QOS |
-					RTE_EVENT_DEV_CAP_CARRY_FLOW_ID;
+					RTE_EVENT_DEV_CAP_CARRY_FLOW_ID |
+					RTE_EVENT_DEV_CAP_MAINTENANCE_FREE;
 }
 
 static int
diff --git a/drivers/event/sw/sw_evdev.c b/drivers/event/sw/sw_evdev.c
index 070a4802e9..808f59d1e5 100644
--- a/drivers/event/sw/sw_evdev.c
+++ b/drivers/event/sw/sw_evdev.c
@@ -609,7 +609,8 @@ sw_info_get(struct rte_eventdev *dev, struct rte_event_dev_info *info)
 				RTE_EVENT_DEV_CAP_RUNTIME_PORT_LINK |
 				RTE_EVENT_DEV_CAP_MULTIPLE_QUEUE_PORT |
 				RTE_EVENT_DEV_CAP_NONSEQ_MODE |
-				RTE_EVENT_DEV_CAP_CARRY_FLOW_ID),
+				RTE_EVENT_DEV_CAP_CARRY_FLOW_ID |
+				RTE_EVENT_DEV_CAP_MAINTENANCE_FREE),
 	};
 
 	*info = evdev_sw_info;
diff --git a/lib/eventdev/rte_eventdev.h b/lib/eventdev/rte_eventdev.h
index e026486ca5..eef47d8acc 100644
--- a/lib/eventdev/rte_eventdev.h
+++ b/lib/eventdev/rte_eventdev.h
@@ -299,13 +299,14 @@ struct rte_event;
  * the content of this field is implementation dependent.
  */
 
-#define RTE_EVENT_DEV_CAP_REQUIRES_MAINT (1ULL << 10)
-/**< Event device requires calls to rte_event_maintain() during
- * periods when neither rte_event_dequeue_burst() nor
- * rte_event_enqueue_burst() are called on a port. This will allow the
- * event device to perform internal processing, such as flushing
- * buffered events, return credits to a global pool, or process
- * signaling related to load balancing.
+#define RTE_EVENT_DEV_CAP_MAINTENANCE_FREE (1ULL << 10)
+/**< Event device *does not* require calls to rte_event_maintain().
+ * An event device that does not set this flag requires calls to
+ * rte_event_maintain() during periods when neither
+ * rte_event_dequeue_burst() nor rte_event_enqueue_burst() are called
+ * on a port. This will allow the event device to perform internal
+ * processing, such as flushing buffered events, return credits to a
+ * global pool, or process signaling related to load balancing.
  */
 
 /* Event device priority levels */
@@ -2082,8 +2083,8 @@ rte_event_dequeue_burst(uint8_t dev_id, uint8_t port_id, struct rte_event ev[],
 /**
  * Maintain an event device.
  *
- * This function is only relevant for event devices which have the
- * @ref RTE_EVENT_DEV_CAP_REQUIRES_MAINT flag set. Such devices
+ * This function is only relevant for event devices which do not have
+ * the @ref RTE_EVENT_DEV_CAP_MAINTENANCE_FREE flag set. Such devices
  * require an application thread using a particular port to
  * periodically call rte_event_maintain() on that port during periods
  * which it is neither attempting to enqueue events to nor dequeue
@@ -2098,9 +2099,9 @@ rte_event_dequeue_burst(uint8_t dev_id, uint8_t port_id, struct rte_event ev[],
  * or dequeue functions are being called, at the cost of a slight
  * increase in overhead.
  *
- * rte_event_maintain() may be called on event devices which haven't
- * set @ref RTE_EVENT_DEV_CAP_REQUIRES_MAINT flag, in which case it is
- * a no-operation.
+ * rte_event_maintain() may be called on event devices which have set
+ * @ref RTE_EVENT_DEV_CAP_MAINTENANCE_FREE, in which case it is a
+ * no-operation.
  *
  * @param dev_id
  *   The identifier of the device.
@@ -2112,7 +2113,7 @@ rte_event_dequeue_burst(uint8_t dev_id, uint8_t port_id, struct rte_event ev[],
  *  - 0 on success.
  *  - -EINVAL if *dev_id*,  *port_id*, or *op* is invalid.
  *
- * @see RTE_EVENT_DEV_CAP_REQUIRES_MAINT
+ * @see RTE_EVENT_DEV_CAP_MAINTENANCE_FREE
  */
 __rte_experimental
 static inline int
-- 
2.25.1


^ permalink raw reply	[flat|nested] 87+ messages in thread

* Re: [PATCH v3] eventdev: negate maintenance capability flag
  2021-11-10 11:32                       ` [dpdk-dev] [PATCH v3] " Mattias Rönnblom
@ 2021-11-10 18:55                         ` Jerin Jacob
  0 siblings, 0 replies; 87+ messages in thread
From: Jerin Jacob @ 2021-11-10 18:55 UTC (permalink / raw)
  To: Mattias Rönnblom
  Cc: Van Haaren, Harry, Jerin Jacob, Sunil Kumar Kori, dpdk-dev,
	Pavan Nikhilesh Bhagavatula, Hemant Agrawal, Nipun Gupta,
	Thomas Monjalon, David Marchand, Gujjar, Abhinandan S,
	Erik Gabriel Carrillo, Jayatheerthan, Jay, Ferruh Yigit,
	Akhil Goyal

On Wed, Nov 10, 2021 at 5:02 PM Mattias Rönnblom
<mattias.ronnblom@ericsson.com> wrote:
>
> Replace RTE_EVENT_DEV_CAP_REQUIRES_MAINT, which signaled the need
> for the application to call rte_event_maintain(), with
> RTE_EVENT_DEV_CAP_MAINTENANCE_FREE, which does the opposite (i.e.,
> signifies that the event device does not require maintenance).
>
> This approach is more in line with how other eventdev hardware and/or
> software limitations are handled in the Eventdev API.
>
> v3: Fix invalid references in the API documentation
> v2: New flag was not properly set in opdl_evdev.c
>
> Signed-off-by: Mattias Rönnblom <mattias.ronnblom@ericsson.com>

Acked-by: Jerin Jacob <jerinj@marvell.com>
Applied to dpdk-next-net-eventdev/for-main. Thanks

> ---
>  doc/guides/eventdevs/dsw.rst               |  4 ++--
>  drivers/event/cnxk/cnxk_eventdev.c         |  3 ++-
>  drivers/event/dlb2/dlb2.c                  |  3 ++-
>  drivers/event/dpaa/dpaa_eventdev.c         |  3 ++-
>  drivers/event/dpaa2/dpaa2_eventdev.c       |  3 ++-
>  drivers/event/dsw/dsw_evdev.c              |  3 +--
>  drivers/event/octeontx/ssovf_evdev.c       |  3 ++-
>  drivers/event/octeontx2/otx2_evdev.c       |  3 ++-
>  drivers/event/opdl/opdl_evdev.c            |  3 ++-
>  drivers/event/skeleton/skeleton_eventdev.c |  3 ++-
>  drivers/event/sw/sw_evdev.c                |  3 ++-
>  lib/eventdev/rte_eventdev.h                | 27 +++++++++++-----------
>  12 files changed, 35 insertions(+), 26 deletions(-)
>
> diff --git a/doc/guides/eventdevs/dsw.rst b/doc/guides/eventdevs/dsw.rst
> index 18f7e9588f..5c6b51f65f 100644
> --- a/doc/guides/eventdevs/dsw.rst
> +++ b/doc/guides/eventdevs/dsw.rst
> @@ -44,8 +44,8 @@ Port Maintenance
>  ~~~~~~~~~~~~~~~~
>
>  The distributed software eventdev uses an internal signaling scheme
> -between the ports to achieve load balancing. Therefore, it sets the
> -``RTE_EVENT_DEV_CAP_REQUIRES_MAINT`` flag.
> +between the ports to achieve load balancing. Therefore, it does not
> +set the ``RTE_EVENT_DEV_CAP_MAINTENANCE_FREE`` flag.
>
>  During periods when the application thread using a particular port is
>  neither attempting to enqueue nor to dequeue events, it must
> diff --git a/drivers/event/cnxk/cnxk_eventdev.c b/drivers/event/cnxk/cnxk_eventdev.c
> index 50d5c351bc..f7a5026250 100644
> --- a/drivers/event/cnxk/cnxk_eventdev.c
> +++ b/drivers/event/cnxk/cnxk_eventdev.c
> @@ -119,7 +119,8 @@ cnxk_sso_info_get(struct cnxk_sso_evdev *dev,
>                                   RTE_EVENT_DEV_CAP_RUNTIME_PORT_LINK |
>                                   RTE_EVENT_DEV_CAP_MULTIPLE_QUEUE_PORT |
>                                   RTE_EVENT_DEV_CAP_NONSEQ_MODE |
> -                                 RTE_EVENT_DEV_CAP_CARRY_FLOW_ID;
> +                                 RTE_EVENT_DEV_CAP_CARRY_FLOW_ID |
> +                                 RTE_EVENT_DEV_CAP_MAINTENANCE_FREE;
>  }
>
>  int
> diff --git a/drivers/event/dlb2/dlb2.c b/drivers/event/dlb2/dlb2.c
> index 0dbe85762c..16e9764dbf 100644
> --- a/drivers/event/dlb2/dlb2.c
> +++ b/drivers/event/dlb2/dlb2.c
> @@ -66,7 +66,8 @@ static struct rte_event_dev_info evdev_dlb2_default_info = {
>                           RTE_EVENT_DEV_CAP_BURST_MODE |
>                           RTE_EVENT_DEV_CAP_DISTRIBUTED_SCHED |
>                           RTE_EVENT_DEV_CAP_IMPLICIT_RELEASE_DISABLE |
> -                         RTE_EVENT_DEV_CAP_QUEUE_ALL_TYPES),
> +                         RTE_EVENT_DEV_CAP_QUEUE_ALL_TYPES |
> +                         RTE_EVENT_DEV_CAP_MAINTENANCE_FREE),
>  };
>
>  struct process_local_port_data
> diff --git a/drivers/event/dpaa/dpaa_eventdev.c b/drivers/event/dpaa/dpaa_eventdev.c
> index eec4bc62b7..ff6cc0be18 100644
> --- a/drivers/event/dpaa/dpaa_eventdev.c
> +++ b/drivers/event/dpaa/dpaa_eventdev.c
> @@ -356,7 +356,8 @@ dpaa_event_dev_info_get(struct rte_eventdev *dev,
>                 RTE_EVENT_DEV_CAP_BURST_MODE |
>                 RTE_EVENT_DEV_CAP_MULTIPLE_QUEUE_PORT |
>                 RTE_EVENT_DEV_CAP_NONSEQ_MODE |
> -               RTE_EVENT_DEV_CAP_CARRY_FLOW_ID;
> +               RTE_EVENT_DEV_CAP_CARRY_FLOW_ID |
> +               RTE_EVENT_DEV_CAP_MAINTENANCE_FREE;
>  }
>
>  static int
> diff --git a/drivers/event/dpaa2/dpaa2_eventdev.c b/drivers/event/dpaa2/dpaa2_eventdev.c
> index 710156ad14..4d94c315d2 100644
> --- a/drivers/event/dpaa2/dpaa2_eventdev.c
> +++ b/drivers/event/dpaa2/dpaa2_eventdev.c
> @@ -408,7 +408,8 @@ dpaa2_eventdev_info_get(struct rte_eventdev *dev,
>                 RTE_EVENT_DEV_CAP_MULTIPLE_QUEUE_PORT |
>                 RTE_EVENT_DEV_CAP_NONSEQ_MODE |
>                 RTE_EVENT_DEV_CAP_QUEUE_ALL_TYPES |
> -               RTE_EVENT_DEV_CAP_CARRY_FLOW_ID;
> +               RTE_EVENT_DEV_CAP_CARRY_FLOW_ID |
> +               RTE_EVENT_DEV_CAP_MAINTENANCE_FREE;
>
>  }
>
> diff --git a/drivers/event/dsw/dsw_evdev.c b/drivers/event/dsw/dsw_evdev.c
> index 5ff8fcc6a9..ffabf0d23d 100644
> --- a/drivers/event/dsw/dsw_evdev.c
> +++ b/drivers/event/dsw/dsw_evdev.c
> @@ -222,8 +222,7 @@ dsw_info_get(struct rte_eventdev *dev __rte_unused,
>                 RTE_EVENT_DEV_CAP_DISTRIBUTED_SCHED|
>                 RTE_EVENT_DEV_CAP_NONSEQ_MODE|
>                 RTE_EVENT_DEV_CAP_MULTIPLE_QUEUE_PORT|
> -               RTE_EVENT_DEV_CAP_CARRY_FLOW_ID|
> -               RTE_EVENT_DEV_CAP_REQUIRES_MAINT
> +               RTE_EVENT_DEV_CAP_CARRY_FLOW_ID
>         };
>  }
>
> diff --git a/drivers/event/octeontx/ssovf_evdev.c b/drivers/event/octeontx/ssovf_evdev.c
> index 366b6d356b..9e14e35d10 100644
> --- a/drivers/event/octeontx/ssovf_evdev.c
> +++ b/drivers/event/octeontx/ssovf_evdev.c
> @@ -155,7 +155,8 @@ ssovf_info_get(struct rte_eventdev *dev, struct rte_event_dev_info *dev_info)
>                                         RTE_EVENT_DEV_CAP_RUNTIME_PORT_LINK |
>                                         RTE_EVENT_DEV_CAP_MULTIPLE_QUEUE_PORT |
>                                         RTE_EVENT_DEV_CAP_NONSEQ_MODE |
> -                                       RTE_EVENT_DEV_CAP_CARRY_FLOW_ID;
> +                                       RTE_EVENT_DEV_CAP_CARRY_FLOW_ID |
> +                                       RTE_EVENT_DEV_CAP_MAINTENANCE_FREE;
>
>  }
>
> diff --git a/drivers/event/octeontx2/otx2_evdev.c b/drivers/event/octeontx2/otx2_evdev.c
> index f26bed334f..ccf28b678b 100644
> --- a/drivers/event/octeontx2/otx2_evdev.c
> +++ b/drivers/event/octeontx2/otx2_evdev.c
> @@ -505,7 +505,8 @@ otx2_sso_info_get(struct rte_eventdev *event_dev,
>                                         RTE_EVENT_DEV_CAP_RUNTIME_PORT_LINK |
>                                         RTE_EVENT_DEV_CAP_MULTIPLE_QUEUE_PORT |
>                                         RTE_EVENT_DEV_CAP_NONSEQ_MODE |
> -                                       RTE_EVENT_DEV_CAP_CARRY_FLOW_ID;
> +                                       RTE_EVENT_DEV_CAP_CARRY_FLOW_ID |
> +                                       RTE_EVENT_DEV_CAP_MAINTENANCE_FREE;
>  }
>
>  static void
> diff --git a/drivers/event/opdl/opdl_evdev.c b/drivers/event/opdl/opdl_evdev.c
> index 5007e9a7bf..15c10240b0 100644
> --- a/drivers/event/opdl/opdl_evdev.c
> +++ b/drivers/event/opdl/opdl_evdev.c
> @@ -375,7 +375,8 @@ opdl_info_get(struct rte_eventdev *dev, struct rte_event_dev_info *info)
>                 .max_event_port_enqueue_depth = MAX_OPDL_CONS_Q_DEPTH,
>                 .max_num_events = OPDL_INFLIGHT_EVENTS_TOTAL,
>                 .event_dev_cap = RTE_EVENT_DEV_CAP_BURST_MODE |
> -                                RTE_EVENT_DEV_CAP_CARRY_FLOW_ID,
> +                                RTE_EVENT_DEV_CAP_CARRY_FLOW_ID |
> +                                RTE_EVENT_DEV_CAP_MAINTENANCE_FREE,
>         };
>
>         *info = evdev_opdl_info;
> diff --git a/drivers/event/skeleton/skeleton_eventdev.c b/drivers/event/skeleton/skeleton_eventdev.c
> index af0efb3302..bf3b01ebc8 100644
> --- a/drivers/event/skeleton/skeleton_eventdev.c
> +++ b/drivers/event/skeleton/skeleton_eventdev.c
> @@ -102,7 +102,8 @@ skeleton_eventdev_info_get(struct rte_eventdev *dev,
>         dev_info->event_dev_cap = RTE_EVENT_DEV_CAP_QUEUE_QOS |
>                                         RTE_EVENT_DEV_CAP_BURST_MODE |
>                                         RTE_EVENT_DEV_CAP_EVENT_QOS |
> -                                       RTE_EVENT_DEV_CAP_CARRY_FLOW_ID;
> +                                       RTE_EVENT_DEV_CAP_CARRY_FLOW_ID |
> +                                       RTE_EVENT_DEV_CAP_MAINTENANCE_FREE;
>  }
>
>  static int
> diff --git a/drivers/event/sw/sw_evdev.c b/drivers/event/sw/sw_evdev.c
> index 070a4802e9..808f59d1e5 100644
> --- a/drivers/event/sw/sw_evdev.c
> +++ b/drivers/event/sw/sw_evdev.c
> @@ -609,7 +609,8 @@ sw_info_get(struct rte_eventdev *dev, struct rte_event_dev_info *info)
>                                 RTE_EVENT_DEV_CAP_RUNTIME_PORT_LINK |
>                                 RTE_EVENT_DEV_CAP_MULTIPLE_QUEUE_PORT |
>                                 RTE_EVENT_DEV_CAP_NONSEQ_MODE |
> -                               RTE_EVENT_DEV_CAP_CARRY_FLOW_ID),
> +                               RTE_EVENT_DEV_CAP_CARRY_FLOW_ID |
> +                               RTE_EVENT_DEV_CAP_MAINTENANCE_FREE),
>         };
>
>         *info = evdev_sw_info;
> diff --git a/lib/eventdev/rte_eventdev.h b/lib/eventdev/rte_eventdev.h
> index e026486ca5..eef47d8acc 100644
> --- a/lib/eventdev/rte_eventdev.h
> +++ b/lib/eventdev/rte_eventdev.h
> @@ -299,13 +299,14 @@ struct rte_event;
>   * the content of this field is implementation dependent.
>   */
>
> -#define RTE_EVENT_DEV_CAP_REQUIRES_MAINT (1ULL << 10)
> -/**< Event device requires calls to rte_event_maintain() during
> - * periods when neither rte_event_dequeue_burst() nor
> - * rte_event_enqueue_burst() are called on a port. This will allow the
> - * event device to perform internal processing, such as flushing
> - * buffered events, return credits to a global pool, or process
> - * signaling related to load balancing.
> +#define RTE_EVENT_DEV_CAP_MAINTENANCE_FREE (1ULL << 10)
> +/**< Event device *does not* require calls to rte_event_maintain().
> + * An event device that does not set this flag requires calls to
> + * rte_event_maintain() during periods when neither
> + * rte_event_dequeue_burst() nor rte_event_enqueue_burst() are called
> + * on a port. This will allow the event device to perform internal
> + * processing, such as flushing buffered events, return credits to a
> + * global pool, or process signaling related to load balancing.
>   */
>
>  /* Event device priority levels */
> @@ -2082,8 +2083,8 @@ rte_event_dequeue_burst(uint8_t dev_id, uint8_t port_id, struct rte_event ev[],
>  /**
>   * Maintain an event device.
>   *
> - * This function is only relevant for event devices which have the
> - * @ref RTE_EVENT_DEV_CAP_REQUIRES_MAINT flag set. Such devices
> + * This function is only relevant for event devices which do not have
> + * the @ref RTE_EVENT_DEV_CAP_MAINTENANCE_FREE flag set. Such devices
>   * require an application thread using a particular port to
>   * periodically call rte_event_maintain() on that port during periods
>   * which it is neither attempting to enqueue events to nor dequeue
> @@ -2098,9 +2099,9 @@ rte_event_dequeue_burst(uint8_t dev_id, uint8_t port_id, struct rte_event ev[],
>   * or dequeue functions are being called, at the cost of a slight
>   * increase in overhead.
>   *
> - * rte_event_maintain() may be called on event devices which haven't
> - * set @ref RTE_EVENT_DEV_CAP_REQUIRES_MAINT flag, in which case it is
> - * a no-operation.
> + * rte_event_maintain() may be called on event devices which have set
> + * @ref RTE_EVENT_DEV_CAP_MAINTENANCE_FREE, in which case it is a
> + * no-operation.
>   *
>   * @param dev_id
>   *   The identifier of the device.
> @@ -2112,7 +2113,7 @@ rte_event_dequeue_burst(uint8_t dev_id, uint8_t port_id, struct rte_event ev[],
>   *  - 0 on success.
>   *  - -EINVAL if *dev_id*,  *port_id*, or *op* is invalid.
>   *
> - * @see RTE_EVENT_DEV_CAP_REQUIRES_MAINT
> + * @see RTE_EVENT_DEV_CAP_MAINTENANCE_FREE
>   */
>  __rte_experimental
>  static inline int
> --
> 2.25.1
>

^ permalink raw reply	[flat|nested] 87+ messages in thread

* Re: [PATCH v2] eventdev: fix Rx adapter stalls on event device backpressure
  2021-11-10 11:23                     ` Jayatheerthan, Jay
@ 2021-11-10 18:56                       ` Jerin Jacob
  0 siblings, 0 replies; 87+ messages in thread
From: Jerin Jacob @ 2021-11-10 18:56 UTC (permalink / raw)
  To: Jayatheerthan, Jay
  Cc: mattias.ronnblom, Kundapura, Ganapati, jerinj, dev @ dpdk . org

On Wed, Nov 10, 2021 at 4:53 PM Jayatheerthan, Jay
<jay.jayatheerthan@intel.com> wrote:
>
> Looks good. Thanks for posting this change!
>
> Acked-by: Jay Jayatheerthan <jay.jayatheerthan@intel.com>


Changed the subject to: eventdev/eth_rx: fix stalls on event device backpressure

Applied to dpdk-next-net-eventdev/for-main. Thanks

>
> > -----Original Message-----
> > From: Mattias Rönnblom <mattias.ronnblom@ericsson.com>
> > Sent: Wednesday, November 10, 2021 4:44 PM
> > To: jerinjacobk@gmail.com; Jayatheerthan, Jay <jay.jayatheerthan@intel.com>; Kundapura, Ganapati
> > <ganapati.kundapura@intel.com>; jerinj@marvell.com
> > Cc: dev @ dpdk . org <dev@dpdk.org>; mattias.ronnblom <mattias.ronnblom@ericsson.com>
> > Subject: [PATCH v2] eventdev: fix Rx adapter stalls on event device backpressure
> >
> > In the Eventdev Ethernet RX Adapter, correctly handle the case where
> > the circular enqueue buffer head and last index point to the same
> > element.
> >
> > This bug may be triggered in case there is backpressure from the event
> > device to the RX adapter.
> >
> > v2:
> > * Corrected bug description
> >
> > Fixes: 8113fd15e229 ("eventdev/eth_rx: make enqueue buffer circular")
> > Cc: ganapati.kundapura@intel.com
> >
> > Signed-off-by: Mattias Rönnblom <mattias.ronnblom@ericsson.com>
> > ---
> >  lib/eventdev/rte_event_eth_rx_adapter.c | 22 ++++++++++++++--------
> >  1 file changed, 14 insertions(+), 8 deletions(-)
> >
> > diff --git a/lib/eventdev/rte_event_eth_rx_adapter.c b/lib/eventdev/rte_event_eth_rx_adapter.c
> > index 56318b5a6f..809416d9b7 100644
> > --- a/lib/eventdev/rte_event_eth_rx_adapter.c
> > +++ b/lib/eventdev/rte_event_eth_rx_adapter.c
> > @@ -777,19 +777,25 @@ rxa_flush_event_buffer(struct event_eth_rx_adapter *rx_adapter,
> >                      struct eth_event_enqueue_buffer *buf,
> >                      struct rte_event_eth_rx_adapter_stats *stats)
> >  {
> > -     uint16_t count = buf->last ? buf->last - buf->head : buf->count;
> > +     uint16_t count = buf->count;
> > +     uint16_t n = 0;
> >
> >       if (!count)
> >               return 0;
> >
> > -     uint16_t n = rte_event_enqueue_new_burst(rx_adapter->eventdev_id,
> > -                                     rx_adapter->event_port_id,
> > -                                     &buf->events[buf->head],
> > -                                     count);
> > -     if (n != count)
> > -             stats->rx_enq_retry++;
> > +     if (buf->last)
> > +             count = buf->last - buf->head;
> > +
> > +     if (count) {
> > +             n = rte_event_enqueue_new_burst(rx_adapter->eventdev_id,
> > +                                             rx_adapter->event_port_id,
> > +                                             &buf->events[buf->head],
> > +                                             count);
> > +             if (n != count)
> > +                     stats->rx_enq_retry++;
> >
> > -     buf->head += n;
> > +             buf->head += n;
> > +     }
> >
> >       if (buf->last && n == count) {
> >               uint16_t n1;
> > --
> > 2.25.1
>

^ permalink raw reply	[flat|nested] 87+ messages in thread

* RE: [EXT] Re: [dpdk-dev] [PATCH v5 1/4] doc: add skeleton for eventdevs feature matrices
  2021-11-09 11:34           ` Thomas Monjalon
@ 2021-11-11  6:40             ` Sunil Kumar Kori
  0 siblings, 0 replies; 87+ messages in thread
From: Sunil Kumar Kori @ 2021-11-11  6:40 UTC (permalink / raw)
  To: Thomas Monjalon, Jerin Jacob
  Cc: Jerin Jacob Kollanukkaran, Nikhil Rao,
	Pavan Nikhilesh Bhagavatula, Hemant Agrawal, Nipun Gupta,
	Van Haaren, Harry, Mattias Rönnblom, Liang Ma, dpdk-dev,
	David Marchand, Gujjar, Abhinandan S, Erik Gabriel Carrillo,
	Jayatheerthan, Jay, Ferruh Yigit, Akhil Goyal

>-----Original Message-----
>From: Thomas Monjalon <thomas@monjalon.net>
>Sent: Tuesday, November 9, 2021 5:05 PM
>To: Sunil Kumar Kori <skori@marvell.com>; Jerin Jacob
><jerinjacobk@gmail.com>
>Cc: Jerin Jacob Kollanukkaran <jerinj@marvell.com>; Nikhil Rao
><nikhil.rao@intel.com>; Pavan Nikhilesh Bhagavatula
><pbhagavatula@marvell.com>; Hemant Agrawal
><hemant.agrawal@nxp.com>; Nipun Gupta <nipun.gupta@nxp.com>; Van
>Haaren, Harry <harry.van.haaren@intel.com>; Mattias Rönnblom
><mattias.ronnblom@ericsson.com>; Liang Ma <liang.j.ma@intel.com>; dpdk-
>dev <dev@dpdk.org>; David Marchand <david.marchand@redhat.com>;
>Gujjar, Abhinandan S <abhinandan.gujjar@intel.com>; Erik Gabriel Carrillo
><erik.g.carrillo@intel.com>; Jayatheerthan, Jay
><jay.jayatheerthan@intel.com>; Ferruh Yigit <ferruh.yigit@intel.com>; Akhil
>Goyal <gakhil@marvell.com>
>Subject: [EXT] Re: [dpdk-dev] [PATCH v5 1/4] doc: add skeleton for eventdevs
>feature matrices
>
>External Email
>
>----------------------------------------------------------------------
>09/11/2021 11:11, Jerin Jacob:
>> On Fri, Oct 22, 2021 at 1:18 PM <skori@marvell.com> wrote:
>> >  # Maximum feature description string length -feature_str_len = 30
>> > +feature_str_len = 45
>>
>> I hope this OK. I understand that without this it gives errors and
>> feature-length is not enough
>
>I don't think this is OK, because it would enlarge the size of all tables.
>Please confirm (especially for NICs table).
>Is there a way to make the feature names smaller?
>
Ack. I will limit the string length up to 30 characters. 


^ permalink raw reply	[flat|nested] 87+ messages in thread

* [PATCH v6 01/11] doc: add skeleton for eventdevs feature matrices
  2021-10-22  7:48       ` [dpdk-dev] [PATCH v5 1/4] doc: add skeleton for eventdevs feature matrices skori
                           ` (3 preceding siblings ...)
  2021-11-09 10:11         ` [dpdk-dev] [PATCH v5 1/4] doc: add skeleton for eventdevs feature matrices Jerin Jacob
@ 2021-11-15 13:15         ` skori
  2021-11-15 13:15           ` [PATCH v6 02/11] doc: update eventdev feature matrix for octeontx skori
                             ` (10 more replies)
  2021-11-15 18:08         ` [dpdk-dev] [PATCH v5 1/4] doc: add skeleton for " Jerin Jacob
  2021-11-23 16:44         ` Jerin Jacob
  6 siblings, 11 replies; 87+ messages in thread
From: skori @ 2021-11-15 13:15 UTC (permalink / raw)
  To: jerinj, nikhil.rao, pbhagavatula, hemant.agrawal, nipun.gupta,
	harry.van.haaren, mattias.ronnblom, liang.j.ma
  Cc: dev, Sunil Kumar Kori

From: Sunil Kumar Kori <skori@marvell.com>

Patch adds skeleton for feature matrices for event dev
and Rx/Tx adapters.

Along with, .ini files are added for all supported PMDs.

Signed-off-by: Sunil Kumar Kori <skori@marvell.com>
---
v6:
 - Rebased to 21.11 rc2
 - Added feature matrices for all supported drivers
 - Added doc vs code check script
 
v5:
 - Rebased to 21.11
 - Added feature matrix for cnxk.
v4:
 - Rebased to 20.02
v3:
 - Removed .txt files to generate tables.
 - Use conf.py script to generate tables.
 - Add .ini file for all supported PMDs.
v2:
 - Review comments incorporated

 .gitignore                                  |  5 ++
 doc/guides/conf.py                          | 25 ++++++++++
 doc/guides/eventdevs/features/cn10k.ini     | 14 ++++++
 doc/guides/eventdevs/features/cn9k.ini      | 14 ++++++
 doc/guides/eventdevs/features/default.ini   | 51 +++++++++++++++++++++
 doc/guides/eventdevs/features/dpaa.ini      | 14 ++++++
 doc/guides/eventdevs/features/dpaa2.ini     | 14 ++++++
 doc/guides/eventdevs/features/dsw.ini       | 14 ++++++
 doc/guides/eventdevs/features/octeontx.ini  | 14 ++++++
 doc/guides/eventdevs/features/octeontx2.ini | 14 ++++++
 doc/guides/eventdevs/features/opdl.ini      | 14 ++++++
 doc/guides/eventdevs/features/sw.ini        | 14 ++++++
 doc/guides/eventdevs/index.rst              |  1 +
 doc/guides/eventdevs/overview.rst           | 40 ++++++++++++++++
 14 files changed, 248 insertions(+)
 create mode 100644 doc/guides/eventdevs/features/cn10k.ini
 create mode 100644 doc/guides/eventdevs/features/cn9k.ini
 create mode 100644 doc/guides/eventdevs/features/default.ini
 create mode 100644 doc/guides/eventdevs/features/dpaa.ini
 create mode 100644 doc/guides/eventdevs/features/dpaa2.ini
 create mode 100644 doc/guides/eventdevs/features/dsw.ini
 create mode 100644 doc/guides/eventdevs/features/octeontx.ini
 create mode 100644 doc/guides/eventdevs/features/octeontx2.ini
 create mode 100644 doc/guides/eventdevs/features/opdl.ini
 create mode 100644 doc/guides/eventdevs/features/sw.ini
 create mode 100644 doc/guides/eventdevs/overview.rst

diff --git a/.gitignore b/.gitignore
index b98a43a601..212c7aa28e 100644
--- a/.gitignore
+++ b/.gitignore
@@ -16,6 +16,11 @@ doc/guides/regexdevs/overview_feature_table.txt
 doc/guides/vdpadevs/overview_feature_table.txt
 doc/guides/bbdevs/overview_feature_table.txt
 doc/guides/gpus/overview_feature_table.txt
+doc/guides/eventdevs/overview_feature_table.txt
+doc/guides/eventdevs/overview_rx_adptr_feature_table.txt
+doc/guides/eventdevs/overview_tx_adptr_feature_table.txt
+doc/guides/eventdevs/overview_crypto_adptr_feature_table.txt
+doc/guides/eventdevs/overview_timer_adptr_feature_table.txt
 
 # ignore generated ctags/cscope files
 cscope.out.po
diff --git a/doc/guides/conf.py b/doc/guides/conf.py
index e6ce929bc8..1743ce301f 100644
--- a/doc/guides/conf.py
+++ b/doc/guides/conf.py
@@ -401,6 +401,31 @@ def setup(app):
                             'Features',
                             'Features availability in GPU drivers',
                             'Feature')
+    table_file = dirname(__file__) + '/eventdevs/overview_feature_table.txt'
+    generate_overview_table(table_file, 1,
+                            'Scheduling Features',
+                            'Features availability in eventdev drivers',
+                            'Feature')
+    table_file = dirname(__file__) + '/eventdevs/overview_rx_adptr_feature_table.txt'
+    generate_overview_table(table_file, 2,
+                            'Eth Rx adapter Features',
+                            'Features availability for Ethdev Rx adapters',
+                            'Feature')
+    table_file = dirname(__file__) + '/eventdevs/overview_tx_adptr_feature_table.txt'
+    generate_overview_table(table_file, 3,
+                            'Eth Tx adapter Features',
+                            'Features availability for Ethdev Tx adapters',
+                            'Feature')
+    table_file = dirname(__file__) + '/eventdevs/overview_crypto_adptr_feature_table.txt'
+    generate_overview_table(table_file, 4,
+                            'Crypto adapter Features',
+                            'Features availability for Crypto adapters',
+                            'Feature')
+    table_file = dirname(__file__) + '/eventdevs/overview_timer_adptr_feature_table.txt'
+    generate_overview_table(table_file, 5,
+                            'Timer adapter Features',
+                            'Features availability for Timer adapters',
+                            'Feature')
 
     if LooseVersion(sphinx_version) < LooseVersion('1.3.1'):
         print('Upgrade sphinx to version >= 1.3.1 for '
diff --git a/doc/guides/eventdevs/features/cn10k.ini b/doc/guides/eventdevs/features/cn10k.ini
new file mode 100644
index 0000000000..c7ddde5a65
--- /dev/null
+++ b/doc/guides/eventdevs/features/cn10k.ini
@@ -0,0 +1,14 @@
+;
+; Supported features of the 'cn10k' eventdev driver.
+;
+; Refer to default.ini for the full list of available PMD features.
+;
+[Scheduling Features]
+
+[Eth Rx adapter Features]
+
+[Eth Tx adapter Features]
+
+[Crypto adapter Features]
+
+[Timer adapter Features]
diff --git a/doc/guides/eventdevs/features/cn9k.ini b/doc/guides/eventdevs/features/cn9k.ini
new file mode 100644
index 0000000000..4b87ca93df
--- /dev/null
+++ b/doc/guides/eventdevs/features/cn9k.ini
@@ -0,0 +1,14 @@
+;
+; Supported features of the 'cn9k' eventdev driver.
+;
+; Refer to default.ini for the full list of available PMD features.
+;
+[Scheduling Features]
+
+[Eth Rx adapter Features]
+
+[Eth Tx adapter Features]
+
+[Crypto adapter Features]
+
+[Timer adapter Features]
diff --git a/doc/guides/eventdevs/features/default.ini b/doc/guides/eventdevs/features/default.ini
new file mode 100644
index 0000000000..5b16c45193
--- /dev/null
+++ b/doc/guides/eventdevs/features/default.ini
@@ -0,0 +1,51 @@
+;
+; Features of a default eventdev driver.
+;
+; This file defines the features that are valid for inclusion in
+; the other driver files and also the order that they appear in
+; the features table in the documentation.
+;
+[Scheduling Features]
+queue_qos                =
+event_qos                =
+distributed_sched        =
+queue_all_types          =
+burst_mode               =
+implicit_release_disable =
+nonseq_mode              =
+runtime_port_link        =
+multiple_queue_port      =
+carry_flow_id            =
+maintenance_free         =
+
+;
+; Features of a default Ethernet Rx adapter.
+;
+[Eth Rx adapter Features]
+internal_port    =
+multi_eventq     =
+override_flow_id =
+event_vector     =
+
+;
+; Features of a default Ethernet Tx adapter.
+;
+[Eth Tx adapter Features]
+internal_port =
+event_vector  =
+
+;
+; Features of a default Crypto adapter.
+;
+[Crypto adapter Features]
+internal_port_op_new     =
+internal_port_op_fwd     =
+internal_port_qp_ev_bind =
+session_private_data     =
+
+;
+; Features of a default Timer adapter.
+;
+[Timer adapter Features]
+internal_port =
+periodic      =
diff --git a/doc/guides/eventdevs/features/dpaa.ini b/doc/guides/eventdevs/features/dpaa.ini
new file mode 100644
index 0000000000..2a88b81e05
--- /dev/null
+++ b/doc/guides/eventdevs/features/dpaa.ini
@@ -0,0 +1,14 @@
+;
+; Supported features of the 'dpaa' eventdev driver.
+;
+; Refer to default.ini for the full list of available PMD features.
+;
+[Scheduling Features]
+
+[Eth Rx adapter Features]
+
+[Eth Tx adapter Features]
+
+[Crypto adapter Features]
+
+[Timer adapter Features]
diff --git a/doc/guides/eventdevs/features/dpaa2.ini b/doc/guides/eventdevs/features/dpaa2.ini
new file mode 100644
index 0000000000..67988af042
--- /dev/null
+++ b/doc/guides/eventdevs/features/dpaa2.ini
@@ -0,0 +1,14 @@
+;
+; Supported features of the 'dpaa2' eventdev driver.
+;
+; Refer to default.ini for the full list of available PMD features.
+;
+[Scheduling Features]
+
+[Eth Rx adapter Features]
+
+[Eth Tx adapter Features]
+
+[Crypto adapter Features]
+
+[Timer adapter Features]
diff --git a/doc/guides/eventdevs/features/dsw.ini b/doc/guides/eventdevs/features/dsw.ini
new file mode 100644
index 0000000000..7de3f7b91b
--- /dev/null
+++ b/doc/guides/eventdevs/features/dsw.ini
@@ -0,0 +1,14 @@
+;
+; Supported features of the 'distributed software' eventdev driver.
+;
+; Refer to default.ini for the full list of available PMD features.
+;
+[Scheduling Features]
+
+[Eth Rx adapter Features]
+
+[Eth Tx adapter Features]
+
+[Crypto adapter Features]
+
+[Timer adapter Features]
diff --git a/doc/guides/eventdevs/features/octeontx.ini b/doc/guides/eventdevs/features/octeontx.ini
new file mode 100644
index 0000000000..ac06d43d03
--- /dev/null
+++ b/doc/guides/eventdevs/features/octeontx.ini
@@ -0,0 +1,14 @@
+;
+; Supported features of the 'octeontx' eventdev driver.
+;
+; Refer to default.ini for the full list of available PMD features.
+;
+[Scheduling Features]
+
+[Eth Rx adapter Features]
+
+[Eth Tx adapter Features]
+
+[Crypto adapter Features]
+
+[Timer adapter Features]
diff --git a/doc/guides/eventdevs/features/octeontx2.ini b/doc/guides/eventdevs/features/octeontx2.ini
new file mode 100644
index 0000000000..3bce593858
--- /dev/null
+++ b/doc/guides/eventdevs/features/octeontx2.ini
@@ -0,0 +1,14 @@
+;
+; Supported features of the 'octeontx2' eventdev driver.
+;
+; Refer to default.ini for the full list of available PMD features.
+;
+[Scheduling Features]
+
+[Eth Rx adapter Features]
+
+[Eth Tx adapter Features]
+
+[Crypto adapter Features]
+
+[Timer adapter Features]
diff --git a/doc/guides/eventdevs/features/opdl.ini b/doc/guides/eventdevs/features/opdl.ini
new file mode 100644
index 0000000000..73922ca79f
--- /dev/null
+++ b/doc/guides/eventdevs/features/opdl.ini
@@ -0,0 +1,14 @@
+;
+; Supported features of 'Ordered Packet Distribution Library' eventdev driver.
+;
+; Refer to default.ini for the full list of available PMD features.
+;
+[Scheduling Features]
+
+[Eth Rx adapter Features]
+
+[Eth Tx adapter Features]
+
+[Crypto adapter Features]
+
+[Timer adapter Features]
diff --git a/doc/guides/eventdevs/features/sw.ini b/doc/guides/eventdevs/features/sw.ini
new file mode 100644
index 0000000000..5d787a6220
--- /dev/null
+++ b/doc/guides/eventdevs/features/sw.ini
@@ -0,0 +1,14 @@
+;
+; Supported features of the 'software' eventdev driver.
+;
+; Refer to default.ini for the full list of available PMD features.
+;
+[Scheduling Features]
+
+[Eth Rx adapter Features]
+
+[Eth Tx adapter Features]
+
+[Crypto adapter Features]
+
+[Timer adapter Features]
diff --git a/doc/guides/eventdevs/index.rst b/doc/guides/eventdevs/index.rst
index 2143025390..b11657f7ae 100644
--- a/doc/guides/eventdevs/index.rst
+++ b/doc/guides/eventdevs/index.rst
@@ -11,6 +11,7 @@ application through the eventdev API.
     :maxdepth: 2
     :numbered:
 
+    overview
     cnxk
     dlb2
     dpaa
diff --git a/doc/guides/eventdevs/overview.rst b/doc/guides/eventdevs/overview.rst
new file mode 100644
index 0000000000..3c5ee515f8
--- /dev/null
+++ b/doc/guides/eventdevs/overview.rst
@@ -0,0 +1,40 @@
+..  SPDX-License-Identifier: BSD-3-Clause
+    Copyright(C) 2021 Marvell.
+
+Event Device Supported Functionality Matrices
+=============================================
+
+Event device supported features
+-------------------------------
+
+.. _table_eventdev_pmd_features:
+
+.. include:: overview_feature_table.txt
+
+Ethernet Rx adapter supported features
+--------------------------------------
+
+.. _table_eventdev_rx_adapter_features:
+
+.. include:: overview_rx_adptr_feature_table.txt
+
+Ethernet Tx adapter supported features
+--------------------------------------
+
+.. _table_eventdev_tx_adapter_features:
+
+.. include:: overview_tx_adptr_feature_table.txt
+
+Crypto device adapter supported features
+----------------------------------------
+
+.. _table_cryptodev_adapter_features:
+
+.. include:: overview_crypto_adptr_feature_table.txt
+
+Timer adapter supported features
+--------------------------------
+
+.. _table_timer_adapter_features:
+
+.. include:: overview_timer_adptr_feature_table.txt
-- 
2.25.1


^ permalink raw reply	[flat|nested] 87+ messages in thread

* [PATCH v6 02/11] doc: update eventdev feature matrix for octeontx
  2021-11-15 13:15         ` [PATCH v6 01/11] doc: add skeleton for eventdevs feature matrices skori
@ 2021-11-15 13:15           ` skori
  2021-11-15 13:15           ` [PATCH v6 03/11] doc: update eventdev feature matrix for octeontx2 skori
                             ` (9 subsequent siblings)
  10 siblings, 0 replies; 87+ messages in thread
From: skori @ 2021-11-15 13:15 UTC (permalink / raw)
  To: jerinj, nikhil.rao, pbhagavatula, hemant.agrawal, nipun.gupta,
	harry.van.haaren, mattias.ronnblom, liang.j.ma
  Cc: dev, Sunil Kumar Kori

From: Sunil Kumar Kori <skori@marvell.com>

Patch updates eventdev and adapters feature matrices for
octeontx platform.

Signed-off-by: Sunil Kumar Kori <skori@marvell.com>
---
v6:
 - Rebased to 21.11 rc2
 - Added feature matrices for all supported drivers
 - Added doc vs code check script
 
v5:
 - Rebased to 21.11
 - Added feature matrix for cnxk.
v4:
 - Rebased to 20.02
v3:
 - Removed .txt files to generate tables.
 - Use conf.py script to generate tables.
 - Add .ini file for all supported PMDs.
v2:
 - Review comments incorporated

 doc/guides/eventdevs/features/octeontx.ini | 13 +++++++++++++
 1 file changed, 13 insertions(+)

diff --git a/doc/guides/eventdevs/features/octeontx.ini b/doc/guides/eventdevs/features/octeontx.ini
index ac06d43d03..ec044e6289 100644
--- a/doc/guides/eventdevs/features/octeontx.ini
+++ b/doc/guides/eventdevs/features/octeontx.ini
@@ -4,11 +4,24 @@
 ; Refer to default.ini for the full list of available PMD features.
 ;
 [Scheduling Features]
+queue_qos                  = Y
+distributed_sched          = Y
+queue_all_types            = Y
+nonseq_mode                = Y
+runtime_port_link          = Y
+multiple_queue_port        = Y
+carry_flow_id              = Y
+maintenance_free           = Y
 
 [Eth Rx adapter Features]
+internal_port              = Y
 
 [Eth Tx adapter Features]
+internal_port              = Y
 
 [Crypto adapter Features]
+internal_port_op_fwd       = Y
+session_private_data       = Y
 
 [Timer adapter Features]
+internal_port              = Y
-- 
2.25.1


^ permalink raw reply	[flat|nested] 87+ messages in thread

* [PATCH v6 03/11] doc: update eventdev feature matrix for octeontx2
  2021-11-15 13:15         ` [PATCH v6 01/11] doc: add skeleton for eventdevs feature matrices skori
  2021-11-15 13:15           ` [PATCH v6 02/11] doc: update eventdev feature matrix for octeontx skori
@ 2021-11-15 13:15           ` skori
  2021-11-15 13:15           ` [PATCH v6 04/11] doc: update eventdev feature matrix for cn9k skori
                             ` (8 subsequent siblings)
  10 siblings, 0 replies; 87+ messages in thread
From: skori @ 2021-11-15 13:15 UTC (permalink / raw)
  To: jerinj, nikhil.rao, pbhagavatula, hemant.agrawal, nipun.gupta,
	harry.van.haaren, mattias.ronnblom, liang.j.ma
  Cc: dev, Sunil Kumar Kori

From: Sunil Kumar Kori <skori@marvell.com>

Patch updates eventdev and adapters feature matrices for
octeontx2 platform.

Signed-off-by: Sunil Kumar Kori <skori@marvell.com>
---
v6:
 - Rebased to 21.11 rc2
 - Added feature matrices for all supported drivers
 - Added doc vs code check script
 
v5:
 - Rebased to 21.11
 - Added feature matrix for cnxk.
v4:
 - Rebased to 20.02
v3:
 - Removed .txt files to generate tables.
 - Use conf.py script to generate tables.
 - Add .ini file for all supported PMDs.
v2:
 - Review comments incorporated

 doc/guides/eventdevs/features/octeontx2.ini | 16 ++++++++++++++++
 1 file changed, 16 insertions(+)

diff --git a/doc/guides/eventdevs/features/octeontx2.ini b/doc/guides/eventdevs/features/octeontx2.ini
index 3bce593858..05b84beb6e 100644
--- a/doc/guides/eventdevs/features/octeontx2.ini
+++ b/doc/guides/eventdevs/features/octeontx2.ini
@@ -4,11 +4,27 @@
 ; Refer to default.ini for the full list of available PMD features.
 ;
 [Scheduling Features]
+queue_qos                  = Y
+distributed_sched          = Y
+queue_all_types            = Y
+nonseq_mode                = Y
+runtime_port_link          = Y
+multiple_queue_port        = Y
+carry_flow_id              = Y
+maintenance_free           = Y
 
 [Eth Rx adapter Features]
+internal_port              = Y
+multi_eventq               = Y
 
 [Eth Tx adapter Features]
+internal_port              = Y
 
 [Crypto adapter Features]
+internal_port_op_new       = Y
+internal_port_op_fwd       = Y
+internal_port_qp_ev_bind   = Y
 
 [Timer adapter Features]
+internal_port              = Y
+periodic                   = Y
-- 
2.25.1


^ permalink raw reply	[flat|nested] 87+ messages in thread

* [PATCH v6 04/11] doc: update eventdev feature matrix for cn9k
  2021-11-15 13:15         ` [PATCH v6 01/11] doc: add skeleton for eventdevs feature matrices skori
  2021-11-15 13:15           ` [PATCH v6 02/11] doc: update eventdev feature matrix for octeontx skori
  2021-11-15 13:15           ` [PATCH v6 03/11] doc: update eventdev feature matrix for octeontx2 skori
@ 2021-11-15 13:15           ` skori
  2021-11-15 13:15           ` [PATCH v6 05/11] doc: update eventdev feature matrix for cn10k skori
                             ` (7 subsequent siblings)
  10 siblings, 0 replies; 87+ messages in thread
From: skori @ 2021-11-15 13:15 UTC (permalink / raw)
  To: jerinj, nikhil.rao, pbhagavatula, hemant.agrawal, nipun.gupta,
	harry.van.haaren, mattias.ronnblom, liang.j.ma
  Cc: dev, Sunil Kumar Kori

From: Sunil Kumar Kori <skori@marvell.com>

Patch updates eventdev and adapters feature matrices for
cn9k platform.

Signed-off-by: Sunil Kumar Kori <skori@marvell.com>
---
v6:
 - Rebased to 21.11 rc2
 - Added feature matrices for all supported drivers
 - Added doc vs code check script
 
v5:
 - Rebased to 21.11
 - Added feature matrix for cnxk.
v4:
 - Rebased to 20.02
v3:
 - Removed .txt files to generate tables.
 - Use conf.py script to generate tables.
 - Add .ini file for all supported PMDs.
v2:
 - Review comments incorporated

 doc/guides/eventdevs/features/cn9k.ini | 15 +++++++++++++++
 1 file changed, 15 insertions(+)

diff --git a/doc/guides/eventdevs/features/cn9k.ini b/doc/guides/eventdevs/features/cn9k.ini
index 4b87ca93df..7a3ab4c533 100644
--- a/doc/guides/eventdevs/features/cn9k.ini
+++ b/doc/guides/eventdevs/features/cn9k.ini
@@ -4,11 +4,26 @@
 ; Refer to default.ini for the full list of available PMD features.
 ;
 [Scheduling Features]
+queue_qos                  = Y
+distributed_sched          = Y
+queue_all_types            = Y
+nonseq_mode                = Y
+runtime_port_link          = Y
+multiple_queue_port        = Y
+carry_flow_id              = Y
+maintenance_free           = Y
 
 [Eth Rx adapter Features]
+internal_port              = Y
+multi_eventq               = Y
+override_flow_id           = Y
 
 [Eth Tx adapter Features]
+internal_port              = Y
 
 [Crypto adapter Features]
+internal_port_op_fwd       = Y
+session_private_data       = Y
 
 [Timer adapter Features]
+internal_port = Y
-- 
2.25.1


^ permalink raw reply	[flat|nested] 87+ messages in thread

* [PATCH v6 05/11] doc: update eventdev feature matrix for cn10k
  2021-11-15 13:15         ` [PATCH v6 01/11] doc: add skeleton for eventdevs feature matrices skori
                             ` (2 preceding siblings ...)
  2021-11-15 13:15           ` [PATCH v6 04/11] doc: update eventdev feature matrix for cn9k skori
@ 2021-11-15 13:15           ` skori
  2021-11-15 13:15           ` [PATCH v6 06/11] doc: update eventdev feature matrix for dpaa skori
                             ` (6 subsequent siblings)
  10 siblings, 0 replies; 87+ messages in thread
From: skori @ 2021-11-15 13:15 UTC (permalink / raw)
  To: jerinj, nikhil.rao, pbhagavatula, hemant.agrawal, nipun.gupta,
	harry.van.haaren, mattias.ronnblom, liang.j.ma
  Cc: dev, Sunil Kumar Kori

From: Sunil Kumar Kori <skori@marvell.com>

Patch updates eventdev and adapters feature matrices for
cn10k platform.

Signed-off-by: Sunil Kumar Kori <skori@marvell.com>
---
v6:
 - Rebased to 21.11 rc2
 - Added feature matrices for all supported drivers
 - Added doc vs code check script
 
v5:
 - Rebased to 21.11
 - Added feature matrix for cnxk.
v4:
 - Rebased to 20.02
v3:
 - Removed .txt files to generate tables.
 - Use conf.py script to generate tables.
 - Add .ini file for all supported PMDs.
v2:
 - Review comments incorporated

 doc/guides/eventdevs/features/cn10k.ini | 17 +++++++++++++++++
 1 file changed, 17 insertions(+)

diff --git a/doc/guides/eventdevs/features/cn10k.ini b/doc/guides/eventdevs/features/cn10k.ini
index c7ddde5a65..f57bccbdc6 100644
--- a/doc/guides/eventdevs/features/cn10k.ini
+++ b/doc/guides/eventdevs/features/cn10k.ini
@@ -4,11 +4,28 @@
 ; Refer to default.ini for the full list of available PMD features.
 ;
 [Scheduling Features]
+queue_qos                  = Y
+distributed_sched          = Y
+queue_all_types            = Y
+nonseq_mode                = Y
+runtime_port_link          = Y
+multiple_queue_port        = Y
+carry_flow_id              = Y
+maintenance_free           = Y
 
 [Eth Rx adapter Features]
+internal_port              = Y
+multi_eventq               = Y
+override_flow_id           = Y
+event_vector               = Y
 
 [Eth Tx adapter Features]
+internal_port              = Y
+event_vector               = Y
 
 [Crypto adapter Features]
+internal_port_op_fwd       = Y
+session_private_data       = Y
 
 [Timer adapter Features]
+internal_port              = Y
-- 
2.25.1


^ permalink raw reply	[flat|nested] 87+ messages in thread

* [PATCH v6 06/11] doc: update eventdev feature matrix for dpaa
  2021-11-15 13:15         ` [PATCH v6 01/11] doc: add skeleton for eventdevs feature matrices skori
                             ` (3 preceding siblings ...)
  2021-11-15 13:15           ` [PATCH v6 05/11] doc: update eventdev feature matrix for cn10k skori
@ 2021-11-15 13:15           ` skori
  2021-11-15 13:15           ` [PATCH v6 07/11] doc: update eventdev feature matrix for dpaa2 skori
                             ` (5 subsequent siblings)
  10 siblings, 0 replies; 87+ messages in thread
From: skori @ 2021-11-15 13:15 UTC (permalink / raw)
  To: jerinj, nikhil.rao, pbhagavatula, hemant.agrawal, nipun.gupta,
	harry.van.haaren, mattias.ronnblom, liang.j.ma
  Cc: dev, Sunil Kumar Kori

From: Sunil Kumar Kori <skori@marvell.com>

Patch updates eventdev and adapters feature matrices for
dpaa platform.

Signed-off-by: Sunil Kumar Kori <skori@marvell.com>
---
v6:
 - Rebased to 21.11 rc2
 - Added feature matrices for all supported drivers
 - Added doc vs code check script
 
v5:
 - Rebased to 21.11
 - Added feature matrix for cnxk.
v4:
 - Rebased to 20.02
v3:
 - Removed .txt files to generate tables.
 - Use conf.py script to generate tables.
 - Add .ini file for all supported PMDs.
v2:
 - Review comments incorporated

 doc/guides/eventdevs/features/dpaa.ini | 13 +++++++++++++
 1 file changed, 13 insertions(+)

diff --git a/doc/guides/eventdevs/features/dpaa.ini b/doc/guides/eventdevs/features/dpaa.ini
index 2a88b81e05..b73bfa02e5 100644
--- a/doc/guides/eventdevs/features/dpaa.ini
+++ b/doc/guides/eventdevs/features/dpaa.ini
@@ -4,11 +4,24 @@
 ; Refer to default.ini for the full list of available PMD features.
 ;
 [Scheduling Features]
+distributed_sched          = Y
+burst_mode                 = Y
+nonseq_mode                = Y
+multiple_queue_port        = Y
+carry_flow_id              = Y
+maintenance_free           = Y
 
 [Eth Rx adapter Features]
+internal_port              = Y
+multi_eventq               = Y
+override_flow_id           = Y
 
 [Eth Tx adapter Features]
+internal_port              = Y
 
 [Crypto adapter Features]
+internal_port_op_new       = Y
+internal_port_qp_ev_bind   = Y
+session_private_data       = Y
 
 [Timer adapter Features]
-- 
2.25.1


^ permalink raw reply	[flat|nested] 87+ messages in thread

* [PATCH v6 07/11] doc: update eventdev feature matrix for dpaa2
  2021-11-15 13:15         ` [PATCH v6 01/11] doc: add skeleton for eventdevs feature matrices skori
                             ` (4 preceding siblings ...)
  2021-11-15 13:15           ` [PATCH v6 06/11] doc: update eventdev feature matrix for dpaa skori
@ 2021-11-15 13:15           ` skori
  2021-11-15 13:15           ` [PATCH v6 08/11] doc: update eventdev feature matrix for SW skori
                             ` (4 subsequent siblings)
  10 siblings, 0 replies; 87+ messages in thread
From: skori @ 2021-11-15 13:15 UTC (permalink / raw)
  To: jerinj, nikhil.rao, pbhagavatula, hemant.agrawal, nipun.gupta,
	harry.van.haaren, mattias.ronnblom, liang.j.ma
  Cc: dev, Sunil Kumar Kori

From: Sunil Kumar Kori <skori@marvell.com>

Patch updates eventdev and adapters feature matrices for
dpaa2 platform.

Signed-off-by: Sunil Kumar Kori <skori@marvell.com>
---
v6:
 - Rebased to 21.11 rc2
 - Added feature matrices for all supported drivers
 - Added doc vs code check script
 
v5:
 - Rebased to 21.11
 - Added feature matrix for cnxk.
v4:
 - Rebased to 20.02
v3:
 - Removed .txt files to generate tables.
 - Use conf.py script to generate tables.
 - Add .ini file for all supported PMDs.
v2:
 - Review comments incorporated

 doc/guides/eventdevs/features/dpaa2.ini | 15 +++++++++++++++
 1 file changed, 15 insertions(+)

diff --git a/doc/guides/eventdevs/features/dpaa2.ini b/doc/guides/eventdevs/features/dpaa2.ini
index 67988af042..c935bd0cfc 100644
--- a/doc/guides/eventdevs/features/dpaa2.ini
+++ b/doc/guides/eventdevs/features/dpaa2.ini
@@ -4,11 +4,26 @@
 ; Refer to default.ini for the full list of available PMD features.
 ;
 [Scheduling Features]
+distributed_sched          = Y
+queue_all_types            = Y
+burst_mode                 = Y
+nonseq_mode                = Y
+runtime_port_link          = Y
+multiple_queue_port        = Y
+carry_flow_id              = Y
+maintenance_free           = Y
 
 [Eth Rx adapter Features]
+internal_port              = Y
+multi_eventq               = Y
+override_flow_id           = Y
 
 [Eth Tx adapter Features]
+internal_port              = Y
 
 [Crypto adapter Features]
+internal_port_op_new       = Y
+internal_port_qp_ev_bind   = Y
+session_private_data       = Y
 
 [Timer adapter Features]
-- 
2.25.1


^ permalink raw reply	[flat|nested] 87+ messages in thread

* [PATCH v6 08/11] doc: update eventdev feature matrix for SW
  2021-11-15 13:15         ` [PATCH v6 01/11] doc: add skeleton for eventdevs feature matrices skori
                             ` (5 preceding siblings ...)
  2021-11-15 13:15           ` [PATCH v6 07/11] doc: update eventdev feature matrix for dpaa2 skori
@ 2021-11-15 13:15           ` skori
  2021-11-15 13:15           ` [PATCH v6 09/11] doc: update eventdev feature matrix for opdl skori
                             ` (3 subsequent siblings)
  10 siblings, 0 replies; 87+ messages in thread
From: skori @ 2021-11-15 13:15 UTC (permalink / raw)
  To: jerinj, nikhil.rao, pbhagavatula, hemant.agrawal, nipun.gupta,
	harry.van.haaren, mattias.ronnblom, liang.j.ma
  Cc: dev, Sunil Kumar Kori

From: Sunil Kumar Kori <skori@marvell.com>

Patch updates eventdev and adapters feature matrices for
sw platform.

Signed-off-by: Sunil Kumar Kori <skori@marvell.com>
---
v6:
 - Rebased to 21.11 rc2
 - Added feature matrices for all supported drivers
 - Added doc vs code check script
 
v5:
 - Rebased to 21.11
 - Added feature matrix for cnxk.
v4:
 - Rebased to 20.02
v3:
 - Removed .txt files to generate tables.
 - Use conf.py script to generate tables.
 - Add .ini file for all supported PMDs.
v2:
 - Review comments incorporated

 doc/guides/eventdevs/features/sw.ini | 15 +++++++++++++++
 1 file changed, 15 insertions(+)

diff --git a/doc/guides/eventdevs/features/sw.ini b/doc/guides/eventdevs/features/sw.ini
index 5d787a6220..fe83088300 100644
--- a/doc/guides/eventdevs/features/sw.ini
+++ b/doc/guides/eventdevs/features/sw.ini
@@ -4,11 +4,26 @@
 ; Refer to default.ini for the full list of available PMD features.
 ;
 [Scheduling Features]
+queue_qos                  = Y
+event_qos                  = Y
+burst_mode                 = Y
+implicit_release_disable   = Y
+nonseq_mode                = Y
+runtime_port_link          = Y
+multiple_queue_port        = Y
+carry_flow_id              = Y
+maintenance_free           = Y
 
 [Eth Rx adapter Features]
+multi_eventq               = Y
+override_flow_id           = Y
+event_vector               = Y
 
 [Eth Tx adapter Features]
+internal_port              = Y
+event_vector               = Y
 
 [Crypto adapter Features]
+session_private_data       = Y
 
 [Timer adapter Features]
-- 
2.25.1


^ permalink raw reply	[flat|nested] 87+ messages in thread

* [PATCH v6 09/11] doc: update eventdev feature matrix for opdl
  2021-11-15 13:15         ` [PATCH v6 01/11] doc: add skeleton for eventdevs feature matrices skori
                             ` (6 preceding siblings ...)
  2021-11-15 13:15           ` [PATCH v6 08/11] doc: update eventdev feature matrix for SW skori
@ 2021-11-15 13:15           ` skori
  2021-11-15 13:15           ` [PATCH v6 10/11] doc: update eventdev feature matrix for dsw skori
                             ` (2 subsequent siblings)
  10 siblings, 0 replies; 87+ messages in thread
From: skori @ 2021-11-15 13:15 UTC (permalink / raw)
  To: jerinj, nikhil.rao, pbhagavatula, hemant.agrawal, nipun.gupta,
	harry.van.haaren, mattias.ronnblom, liang.j.ma
  Cc: dev, Sunil Kumar Kori

From: Sunil Kumar Kori <skori@marvell.com>

Patch updates eventdev and adapters feature matrices for
opdl platform.

Signed-off-by: Sunil Kumar Kori <skori@marvell.com>
---
v6:
 - Rebased to 21.11 rc2
 - Added feature matrices for all supported drivers
 - Added doc vs code check script
 
v5:
 - Rebased to 21.11
 - Added feature matrix for cnxk.
v4:
 - Rebased to 20.02
v3:
 - Removed .txt files to generate tables.
 - Use conf.py script to generate tables.
 - Add .ini file for all supported PMDs.
v2:
 - Review comments incorporated

 doc/guides/eventdevs/features/opdl.ini | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/doc/guides/eventdevs/features/opdl.ini b/doc/guides/eventdevs/features/opdl.ini
index 73922ca79f..5cc35d3c77 100644
--- a/doc/guides/eventdevs/features/opdl.ini
+++ b/doc/guides/eventdevs/features/opdl.ini
@@ -4,11 +4,15 @@
 ; Refer to default.ini for the full list of available PMD features.
 ;
 [Scheduling Features]
+burst_mode                 = Y
+carry_flow_id              = Y
+maintenance_free           = Y
 
 [Eth Rx adapter Features]
 
 [Eth Tx adapter Features]
 
 [Crypto adapter Features]
+session_private_data       = Y
 
 [Timer adapter Features]
-- 
2.25.1


^ permalink raw reply	[flat|nested] 87+ messages in thread

* [PATCH v6 10/11] doc: update eventdev feature matrix for dsw
  2021-11-15 13:15         ` [PATCH v6 01/11] doc: add skeleton for eventdevs feature matrices skori
                             ` (7 preceding siblings ...)
  2021-11-15 13:15           ` [PATCH v6 09/11] doc: update eventdev feature matrix for opdl skori
@ 2021-11-15 13:15           ` skori
  2021-11-15 13:15           ` [PATCH v6 11/11] devtools: check event device doc tables skori
  2021-11-22  7:54           ` [PATCH v7 01/11] doc: add skeleton for eventdevs feature matrices skori
  10 siblings, 0 replies; 87+ messages in thread
From: skori @ 2021-11-15 13:15 UTC (permalink / raw)
  To: jerinj, nikhil.rao, pbhagavatula, hemant.agrawal, nipun.gupta,
	harry.van.haaren, mattias.ronnblom, liang.j.ma
  Cc: dev, Sunil Kumar Kori

From: Sunil Kumar Kori <skori@marvell.com>

Patch updates eventdev and adapters feature matrices for
dsw platform.

Signed-off-by: Sunil Kumar Kori <skori@marvell.com>
---
v6:
 - Rebased to 21.11 rc2
 - Added feature matrices for all supported drivers
 - Added doc vs code check script
 
v5:
 - Rebased to 21.11
 - Added feature matrix for cnxk.
v4:
 - Rebased to 20.02
v3:
 - Removed .txt files to generate tables.
 - Use conf.py script to generate tables.
 - Add .ini file for all supported PMDs.
v2:
 - Review comments incorporated

 doc/guides/eventdevs/features/dsw.ini | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/doc/guides/eventdevs/features/dsw.ini b/doc/guides/eventdevs/features/dsw.ini
index 7de3f7b91b..c8bc6b3f1d 100644
--- a/doc/guides/eventdevs/features/dsw.ini
+++ b/doc/guides/eventdevs/features/dsw.ini
@@ -4,11 +4,20 @@
 ; Refer to default.ini for the full list of available PMD features.
 ;
 [Scheduling Features]
+distributed_sched          = Y
+burst_mode                 = Y
+nonseq_mode                = Y
+multiple_queue_port        = Y
+carry_flow_id              = Y
 
 [Eth Rx adapter Features]
+multi_eventq               = Y
+override_flow_id           = Y
+event_vector               = Y
 
 [Eth Tx adapter Features]
 
 [Crypto adapter Features]
+session_private_data       = Y
 
 [Timer adapter Features]
-- 
2.25.1


^ permalink raw reply	[flat|nested] 87+ messages in thread

* [PATCH v6 11/11] devtools: check event device doc tables
  2021-11-15 13:15         ` [PATCH v6 01/11] doc: add skeleton for eventdevs feature matrices skori
                             ` (8 preceding siblings ...)
  2021-11-15 13:15           ` [PATCH v6 10/11] doc: update eventdev feature matrix for dsw skori
@ 2021-11-15 13:15           ` skori
  2021-11-22  7:54           ` [PATCH v7 01/11] doc: add skeleton for eventdevs feature matrices skori
  10 siblings, 0 replies; 87+ messages in thread
From: skori @ 2021-11-15 13:15 UTC (permalink / raw)
  To: jerinj, nikhil.rao, pbhagavatula, hemant.agrawal, nipun.gupta,
	harry.van.haaren, mattias.ronnblom, liang.j.ma, Thomas Monjalon
  Cc: dev, Sunil Kumar Kori

From: Sunil Kumar Kori <skori@marvell.com>

In this commit, check is added for event device, Rx,
Tx, Crypto and Timer adapters tables for all supported
drivers.

Signed-off-by: Sunil Kumar Kori <skori@marvell.com>
---
v6:
 - Rebased to 21.11 rc2
 - Added feature matrices for all supported drivers
 - Added doc vs code check script
 
v5:
 - Rebased to 21.11
 - Added feature matrix for cnxk.
v4:
 - Rebased to 20.02
v3:
 - Removed .txt files to generate tables.
 - Use conf.py script to generate tables.
 - Add .ini file for all supported PMDs.
v2:
 - Review comments incorporated

 devtools/check-doc-vs-code.sh   |  35 ++++++++
 devtools/parse-event-support.sh | 149 ++++++++++++++++++++++++++++++++
 2 files changed, 184 insertions(+)
 create mode 100755 devtools/parse-event-support.sh

diff --git a/devtools/check-doc-vs-code.sh b/devtools/check-doc-vs-code.sh
index c58c239c87..608d6e0e2e 100755
--- a/devtools/check-doc-vs-code.sh
+++ b/devtools/check-doc-vs-code.sh
@@ -66,11 +66,35 @@ check_rte_flow() # <driver>
 	fi
 }
 
+all_event_drivers()
+{
+	find $rootdir/drivers/event -mindepth 1 -maxdepth 1 -type d |
+	sed 's,.*/,,' |
+	sort
+}
+
+check_event_dev() # <driver>
+{
+	code=$rootdir/drivers/event/$1
+	doc=$rootdir/doc/guides/eventdevs/features/$1.ini
+	[ -d $code ] || return 0
+	[ -f $doc ] || return 0
+	report=$($selfdir/parse-event-support.sh $code $doc)
+	if [ -n "$report" ]; then
+		error "doc out of sync for $1"
+		echo "$report" | sed 's,^,\t,'
+	fi
+}
+
 if [ -z "$trusted_commit" ]; then
 	# check all
 	for driver in $(all_net_drivers); do
 		check_rte_flow $driver
 	done
+
+	for driver in $(all_event_drivers); do
+		check_event_dev $driver
+	done
 	exit $result
 fi
 
@@ -81,4 +105,15 @@ if has_code_change 'RTE_FLOW_.*_TYPE_' ||
 		check_rte_flow $driver
 	done
 fi
+
+if has_code_change 'RTE_EVENT_DEV_CAP_*' ||
+		has_code_change 'RTE_EVENT_ETH_RX_ADAPTER_CAP_*' ||
+		has_code_change 'RTE_EVENT_ETH_TX_ADAPTER_CAP_*' ||
+		has_code_change 'RTE_EVENT_CRYPTO_ADAPTER_CAP_*' ||
+		has_code_change 'RTE_EVENT_TIMER_ADAPTER_CAP_*' ||
+		has_file_change 'doc/guides/eventdevs/features'; then
+	for driver in $(all_event_drivers); do
+		check_event_dev $driver
+	done
+fi
 exit $result
diff --git a/devtools/parse-event-support.sh b/devtools/parse-event-support.sh
new file mode 100755
index 0000000000..d756977eec
--- /dev/null
+++ b/devtools/parse-event-support.sh
@@ -0,0 +1,149 @@
+#! /bin/sh -e
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(C) 2021 Marvell.
+
+# Parse event dev support of a driver directory,
+# and optionally show difference with a doc file in .ini format.
+
+dir=$1 # drivers/event/foo
+ref=$2 # doc/guides/eventdevs/features/foo.ini
+
+if [ -z "$dir" ]; then
+	echo "directory argument is required" >&2
+	exit 1
+fi
+
+# sorting order
+export LC_COLLATE=C
+
+# generate INI section
+list() # <title> <pattern>
+{
+	echo "[$1]"
+	git grep -who "$2[[:alnum:]_]*" $dir | sort -u |
+	awk 'sub(/'$2'/, "") {printf "%-20s = Y\n", tolower($0)}'
+}
+
+event_dev_sched_support()
+{
+	title="Scheduling Features"
+	pattern=$(echo "RTE_EVENT_DEV_CAP_" | awk '{print toupper($0)}')
+	list "$title" "$pattern" | grep -vwE 'void|indirect|end'
+}
+
+event_dev_rx_adptr_support()
+{
+	title="Eth Rx adapter Features"
+	pattern=$(echo "RTE_EVENT_ETH_RX_ADAPTER_CAP_" |
+		awk '{print toupper($0)}')
+	list "$title" "$pattern" | grep -vwE 'void|indirect|end'
+}
+
+event_dev_tx_adptr_support()
+{
+	title="Eth Tx adapter Features"
+	pattern=$(echo "RTE_EVENT_ETH_TX_ADAPTER_CAP_" |
+		awk '{print toupper($0)}')
+	list "$title" "$pattern" | grep -vwE 'void|indirect|end'
+}
+
+event_dev_crypto_adptr_support()
+{
+	title="Crypto adapter Features"
+	pattern=$(echo "RTE_EVENT_CRYPTO_ADAPTER_CAP_" |
+		awk '{print toupper($0)}')
+	list "$title" "$pattern" | grep -vwE 'void|indirect|end'
+}
+
+event_dev_timer_adptr_support()
+{
+	title="Timer adapter Features"
+	pattern=$(echo "RTE_EVENT_TIMER_ADAPTER_CAP_" |
+		awk '{print toupper($0)}')
+	list "$title" "$pattern" | grep -vwE 'void|indirect|end'
+}
+
+if [ -z "$ref" ]; then # generate full tables
+	event_dev_sched_support
+	echo
+	event_dev_rx_adptr_support
+	echo
+	event_dev_tx_adptr_support
+	echo
+	event_dev_crypto_adptr_support
+	echo
+	event_dev_timer_adptr_support
+	exit 0
+fi
+
+# compare with reference input
+event_dev_sched_compare()
+{
+	section="Scheduling Features]"
+	{
+		event_dev_sched_support
+		sed -n "/$section/,/]/p" "$ref" | sed '/^$/d'
+	} |
+	sed '/]/d' | # ignore section title
+	sed 's, *=.*,,' | # ignore value (better in doc than generated one)
+	sort | uniq -u | # show differences
+	sed "s,^,Scheduling Features ," # prefix with category name
+}
+
+event_dev_rx_adptr_compare()
+{
+	section="Eth Rx adapter Features]"
+	{
+		event_dev_rx_adptr_support
+		sed -n "/$section/,/]/p" "$ref" | sed '/^$/d'
+	} |
+	sed '/]/d' | # ignore section title
+	sed 's, *=.*,,' | # ignore value (better in doc than generated one)
+	sort | uniq -u | # show differences
+	sed "s,^,Eth Rx adapter Features ," # prefix with category name
+}
+
+event_dev_tx_adptr_compare()
+{
+	section="Eth Tx adapter Features]"
+	{
+		event_dev_tx_adptr_support
+		sed -n "/$section/,/]/p" "$ref" | sed '/^$/d'
+	} |
+	sed '/]/d' | # ignore section title
+	sed 's, *=.*,,' | # ignore value (better in doc than generated one)
+	sort | uniq -u | # show differences
+	sed "s,^,Eth Tx adapter Features ," # prefix with category name
+}
+
+event_dev_crypto_adptr_compare()
+{
+	section="Crypto adapter Features]"
+	{
+		event_dev_crypto_adptr_support
+		sed -n "/$section/,/]/p" "$ref" | sed '/^$/d'
+	} |
+	sed '/]/d' | # ignore section title
+	sed 's, *=.*,,' | # ignore value (better in doc than generated one)
+	sort | uniq -u | # show differences
+	sed "s,^,Crypto adapter Features ," # prefix with category name
+}
+
+event_dev_crypto_adptr_compare()
+{
+	section="Timer adapter Features]"
+	{
+		event_dev_timer_adptr_support
+		sed -n "/$section/,/]/p" "$ref" | sed '/^$/d'
+	} |
+	sed '/]/d' | # ignore section title
+	sed 's, *=.*,,' | # ignore value (better in doc than generated one)
+	sort | uniq -u | # show differences
+	sed "s,^,Timer adapter Features ," # prefix with category name
+}
+
+event_dev_sched_compare
+event_dev_rx_adptr_compare
+event_dev_tx_adptr_compare
+event_dev_crypto_adptr_compare
+event_dev_crypto_adptr_compare
-- 
2.25.1


^ permalink raw reply	[flat|nested] 87+ messages in thread

* Re: [dpdk-dev] [PATCH v5 1/4] doc: add skeleton for eventdevs feature matrices
  2021-10-22  7:48       ` [dpdk-dev] [PATCH v5 1/4] doc: add skeleton for eventdevs feature matrices skori
                           ` (4 preceding siblings ...)
  2021-11-15 13:15         ` [PATCH v6 01/11] doc: add skeleton for eventdevs feature matrices skori
@ 2021-11-15 18:08         ` Jerin Jacob
  2021-11-23 16:44         ` Jerin Jacob
  6 siblings, 0 replies; 87+ messages in thread
From: Jerin Jacob @ 2021-11-15 18:08 UTC (permalink / raw)
  To: Sunil Kumar Kori
  Cc: Jerin Jacob, Nikhil Rao, Pavan Nikhilesh, Hemant Agrawal,
	Nipun Gupta, Van Haaren, Harry, Mattias Rönnblom, Liang Ma,
	dpdk-dev

On Fri, Oct 22, 2021 at 1:18 PM <skori@marvell.com> wrote:
>
> From: Sunil Kumar Kori <skori@marvell.com>
>
> Patch adds skeleton for feature matrices for event dev
> and Rx/Tx adapters.
>
> Along with, .ini files are added for all supported PMDs.
>
> Signed-off-by: Sunil Kumar Kori <skori@marvell.com>

Please fix the below.

doc out of sync for dsw
        Eth Rx adapter Features event_vector
        Eth Rx adapter Features multi_eventq
        Eth Rx adapter Features override_flow_id
doc out of sync for sw
        Eth Rx adapter Features event_vector
        Eth Rx adapter Features multi_eventq
        Eth Rx adapter Features override_flow_id
        Eth Tx adapter Features event_vector
        Eth Tx adapter Features internal_port

> ---
> v5:
>  - Rebased to 21.11
>  - Added feature matrix for cnxk.
> v4:
>  - Rebased to 20.02
> v3:
>  - Removed .txt files to generate tables.
>  - Use conf.py script to generate tables.
>  - Add .ini file for all supported PMDs.
> v2:
>  - Review comments incorporated
>
>  .gitignore                                  |  2 ++
>  doc/guides/conf.py                          | 12 ++++++++-
>  doc/guides/eventdevs/features/cnxk.ini      |  8 ++++++
>  doc/guides/eventdevs/features/default.ini   | 30 +++++++++++++++++++++
>  doc/guides/eventdevs/features/dpaa.ini      |  8 ++++++
>  doc/guides/eventdevs/features/dpaa2.ini     |  8 ++++++
>  doc/guides/eventdevs/features/dsw.ini       |  8 ++++++
>  doc/guides/eventdevs/features/octeontx.ini  |  8 ++++++
>  doc/guides/eventdevs/features/octeontx2.ini |  8 ++++++
>  doc/guides/eventdevs/features/opdl.ini      |  8 ++++++
>  doc/guides/eventdevs/features/sw.ini        |  8 ++++++
>  doc/guides/eventdevs/index.rst              |  1 +
>  doc/guides/eventdevs/overview.rst           | 19 +++++++++++++
>  13 files changed, 127 insertions(+), 1 deletion(-)
>  create mode 100644 doc/guides/eventdevs/features/cnxk.ini
>  create mode 100644 doc/guides/eventdevs/features/default.ini
>  create mode 100644 doc/guides/eventdevs/features/dpaa.ini
>  create mode 100644 doc/guides/eventdevs/features/dpaa2.ini
>  create mode 100644 doc/guides/eventdevs/features/dsw.ini
>  create mode 100644 doc/guides/eventdevs/features/octeontx.ini
>  create mode 100644 doc/guides/eventdevs/features/octeontx2.ini
>  create mode 100644 doc/guides/eventdevs/features/opdl.ini
>  create mode 100644 doc/guides/eventdevs/features/sw.ini
>  create mode 100644 doc/guides/eventdevs/overview.rst
>
> diff --git a/.gitignore b/.gitignore
> index b19c0717e6..b3fc783945 100644
> --- a/.gitignore
> +++ b/.gitignore
> @@ -14,6 +14,8 @@ doc/guides/compressdevs/overview_feature_table.txt
>  doc/guides/regexdevs/overview_feature_table.txt
>  doc/guides/vdpadevs/overview_feature_table.txt
>  doc/guides/bbdevs/overview_feature_table.txt
> +doc/guides/eventdevs/overview_feature_table.txt
> +doc/guides/eventdevs/overview_adptr_feature_table.txt
>
>  # ignore generated ctags/cscope files
>  cscope.out.po
> diff --git a/doc/guides/conf.py b/doc/guides/conf.py
> index 67d2dd62c7..9d8e20e5fc 100644
> --- a/doc/guides/conf.py
> +++ b/doc/guides/conf.py
> @@ -41,7 +41,7 @@
>  master_doc = 'index'
>
>  # Maximum feature description string length
> -feature_str_len = 30
> +feature_str_len = 45
>
>  # Figures, tables and code-blocks automatically numbered if they have caption
>  numfig = True
> @@ -388,6 +388,16 @@ def setup(app):
>                              'Features',
>                              'Features availability in bbdev drivers',
>                              'Feature')
> +    table_file = dirname(__file__) + '/eventdevs/overview_feature_table.txt'
> +    generate_overview_table(table_file, 1,
> +                            'Features',
> +                            'Features availability in eventdev drivers',
> +                            'Feature')
> +    table_file = dirname(__file__) + '/eventdevs/overview_adptr_feature_table.txt'
> +    generate_overview_table(table_file, 2,
> +                            'Adapter Features',
> +                            'Features availability for adapters',
> +                            'Feature')
>
>      if LooseVersion(sphinx_version) < LooseVersion('1.3.1'):
>          print('Upgrade sphinx to version >= 1.3.1 for '
> diff --git a/doc/guides/eventdevs/features/cnxk.ini b/doc/guides/eventdevs/features/cnxk.ini
> new file mode 100644
> index 0000000000..a461966d69
> --- /dev/null
> +++ b/doc/guides/eventdevs/features/cnxk.ini
> @@ -0,0 +1,8 @@
> +;
> +; Supported features of the 'cnxk' eventdev driver.
> +;
> +; Refer to default.ini for the full list of available PMD features.
> +;
> +[Features]
> +
> +[Adapter Features]
> diff --git a/doc/guides/eventdevs/features/default.ini b/doc/guides/eventdevs/features/default.ini
> new file mode 100644
> index 0000000000..d007d7a69e
> --- /dev/null
> +++ b/doc/guides/eventdevs/features/default.ini
> @@ -0,0 +1,30 @@
> +;
> +; Features of a default eventdev driver.
> +;
> +; This file defines the features that are valid for inclusion in
> +; the other driver files and also the order that they appear in
> +; the features table in the documentation.
> +;
> +[Features]
> +Event queue priority based scheduling =
> +Event priority based scheduling       =
> +Event device distributed scheduling   =
> +Event device non sequential mode      =
> +Event queue all types                 =
> +Burst mode enqueue/dequeue            =
> +Event port implicit release disable   =
> +Runtime event queue/port linking      =
> +Multi queue linking per port          =
> +
> +;
> +; Features of a default adapter.
> +;
> +[Adapter Features]
> +Eth Rx/Tx adapter on internal port         =
> +Multiple event queues per ethdev           =
> +Override flow ID                           =
> +Crypto adapter new event enqueue           =
> +Crypto adapter forwarded event enqueue     =
> +Crypto queue pair mapping to event queue   =
> +Crypto adapter session data store/retrieve =
> +Timer adapter support in H/W               =
> diff --git a/doc/guides/eventdevs/features/dpaa.ini b/doc/guides/eventdevs/features/dpaa.ini
> new file mode 100644
> index 0000000000..3cf172f408
> --- /dev/null
> +++ b/doc/guides/eventdevs/features/dpaa.ini
> @@ -0,0 +1,8 @@
> +;
> +; Supported features of the 'dpaa' eventdev driver.
> +;
> +; Refer to default.ini for the full list of available PMD features.
> +;
> +[Features]
> +
> +[Adapter Features]
> diff --git a/doc/guides/eventdevs/features/dpaa2.ini b/doc/guides/eventdevs/features/dpaa2.ini
> new file mode 100644
> index 0000000000..822a82ef3e
> --- /dev/null
> +++ b/doc/guides/eventdevs/features/dpaa2.ini
> @@ -0,0 +1,8 @@
> +;
> +; Supported features of the 'dpaa2' eventdev driver.
> +;
> +; Refer to default.ini for the full list of available PMD features.
> +;
> +[Features]
> +
> +[Adapter Features]
> diff --git a/doc/guides/eventdevs/features/dsw.ini b/doc/guides/eventdevs/features/dsw.ini
> new file mode 100644
> index 0000000000..230737045b
> --- /dev/null
> +++ b/doc/guides/eventdevs/features/dsw.ini
> @@ -0,0 +1,8 @@
> +;
> +; Supported features of the 'distributed software' eventdev driver.
> +;
> +; Refer to default.ini for the full list of available PMD features.
> +;
> +[Features]
> +
> +[Adapter Features]
> diff --git a/doc/guides/eventdevs/features/octeontx.ini b/doc/guides/eventdevs/features/octeontx.ini
> new file mode 100644
> index 0000000000..d1b1fe6d62
> --- /dev/null
> +++ b/doc/guides/eventdevs/features/octeontx.ini
> @@ -0,0 +1,8 @@
> +;
> +; Supported features of the 'octeontx' eventdev driver.
> +;
> +; Refer to default.ini for the full list of available PMD features.
> +;
> +[Features]
> +
> +[Adapter Features]
> diff --git a/doc/guides/eventdevs/features/octeontx2.ini b/doc/guides/eventdevs/features/octeontx2.ini
> new file mode 100644
> index 0000000000..96f1af0dca
> --- /dev/null
> +++ b/doc/guides/eventdevs/features/octeontx2.ini
> @@ -0,0 +1,8 @@
> +;
> +; Supported features of the 'octeontx2' eventdev driver.
> +;
> +; Refer to default.ini for the full list of available PMD features.
> +;
> +[Features]
> +
> +[Adapter Features]
> diff --git a/doc/guides/eventdevs/features/opdl.ini b/doc/guides/eventdevs/features/opdl.ini
> new file mode 100644
> index 0000000000..020808fced
> --- /dev/null
> +++ b/doc/guides/eventdevs/features/opdl.ini
> @@ -0,0 +1,8 @@
> +;
> +; Supported features of 'Ordered Packet Distribution Library' eventdev driver.
> +;
> +; Refer to default.ini for the full list of available PMD features.
> +;
> +[Features]
> +
> +[Adapter Features]
> diff --git a/doc/guides/eventdevs/features/sw.ini b/doc/guides/eventdevs/features/sw.ini
> new file mode 100644
> index 0000000000..a5789f56d4
> --- /dev/null
> +++ b/doc/guides/eventdevs/features/sw.ini
> @@ -0,0 +1,8 @@
> +;
> +; Supported features of the 'software' eventdev driver.
> +;
> +; Refer to default.ini for the full list of available PMD features.
> +;
> +[Features]
> +
> +[Adapter Features]
> diff --git a/doc/guides/eventdevs/index.rst b/doc/guides/eventdevs/index.rst
> index 2143025390..b11657f7ae 100644
> --- a/doc/guides/eventdevs/index.rst
> +++ b/doc/guides/eventdevs/index.rst
> @@ -11,6 +11,7 @@ application through the eventdev API.
>      :maxdepth: 2
>      :numbered:
>
> +    overview
>      cnxk
>      dlb2
>      dpaa
> diff --git a/doc/guides/eventdevs/overview.rst b/doc/guides/eventdevs/overview.rst
> new file mode 100644
> index 0000000000..5d34d2c57b
> --- /dev/null
> +++ b/doc/guides/eventdevs/overview.rst
> @@ -0,0 +1,19 @@
> +..  SPDX-License-Identifier: BSD-3-Clause
> +    Copyright(C) 2021 Marvell.
> +
> +Event Device Supported Functionality Matrices
> +=============================================
> +
> +Event Device Supported Feature Flags
> +------------------------------------
> +
> +.. _table_eventdev_pmd_features:
> +
> +.. include:: overview_feature_table.txt
> +
> +Adapter Supported Feature Flags
> +-------------------------------
> +
> +.. _table_adapter_features:
> +
> +.. include:: overview_adptr_feature_table.txt
> --
> 2.25.1
>

^ permalink raw reply	[flat|nested] 87+ messages in thread

* [PATCH v7 01/11] doc: add skeleton for eventdevs feature matrices
  2021-11-15 13:15         ` [PATCH v6 01/11] doc: add skeleton for eventdevs feature matrices skori
                             ` (9 preceding siblings ...)
  2021-11-15 13:15           ` [PATCH v6 11/11] devtools: check event device doc tables skori
@ 2021-11-22  7:54           ` skori
  2021-11-22  7:54             ` [PATCH v7 02/11] doc: update eventdev feature matrix for octeontx skori
                               ` (10 more replies)
  10 siblings, 11 replies; 87+ messages in thread
From: skori @ 2021-11-22  7:54 UTC (permalink / raw)
  To: jerinj, nikhil.rao, pbhagavatula, hemant.agrawal, nipun.gupta,
	harry.van.haaren, mattias.ronnblom, liang.j.ma
  Cc: dev, Sunil Kumar Kori

From: Sunil Kumar Kori <skori@marvell.com>

Patch adds skeleton for feature matrices for event dev
and Rx/Tx adapters.

Along with, .ini files are added for all supported PMDs.

Signed-off-by: Sunil Kumar Kori <skori@marvell.com>
---
v7:
 - Rebased to 21.11 rc3
 - Fix Tx adapter capabilities for SW driver
v6:
 - Rebased to 21.11 rc2
 - Added feature matrices for all supported drivers
 - Added doc vs code check script
 
v5:
 - Rebased to 21.11
 - Added feature matrix for cnxk.
v4:
 - Rebased to 20.02
v3:
 - Removed .txt files to generate tables.
 - Use conf.py script to generate tables.
 - Add .ini file for all supported PMDs.
v2:
 - Review comments incorporated

 .gitignore                                  |  5 ++
 doc/guides/conf.py                          | 25 ++++++++++
 doc/guides/eventdevs/features/cn10k.ini     | 14 ++++++
 doc/guides/eventdevs/features/cn9k.ini      | 14 ++++++
 doc/guides/eventdevs/features/default.ini   | 51 +++++++++++++++++++++
 doc/guides/eventdevs/features/dpaa.ini      | 14 ++++++
 doc/guides/eventdevs/features/dpaa2.ini     | 14 ++++++
 doc/guides/eventdevs/features/dsw.ini       | 14 ++++++
 doc/guides/eventdevs/features/octeontx.ini  | 14 ++++++
 doc/guides/eventdevs/features/octeontx2.ini | 14 ++++++
 doc/guides/eventdevs/features/opdl.ini      | 14 ++++++
 doc/guides/eventdevs/features/sw.ini        | 14 ++++++
 doc/guides/eventdevs/index.rst              |  1 +
 doc/guides/eventdevs/overview.rst           | 40 ++++++++++++++++
 14 files changed, 248 insertions(+)
 create mode 100644 doc/guides/eventdevs/features/cn10k.ini
 create mode 100644 doc/guides/eventdevs/features/cn9k.ini
 create mode 100644 doc/guides/eventdevs/features/default.ini
 create mode 100644 doc/guides/eventdevs/features/dpaa.ini
 create mode 100644 doc/guides/eventdevs/features/dpaa2.ini
 create mode 100644 doc/guides/eventdevs/features/dsw.ini
 create mode 100644 doc/guides/eventdevs/features/octeontx.ini
 create mode 100644 doc/guides/eventdevs/features/octeontx2.ini
 create mode 100644 doc/guides/eventdevs/features/opdl.ini
 create mode 100644 doc/guides/eventdevs/features/sw.ini
 create mode 100644 doc/guides/eventdevs/overview.rst

diff --git a/.gitignore b/.gitignore
index b98a43a601..212c7aa28e 100644
--- a/.gitignore
+++ b/.gitignore
@@ -16,6 +16,11 @@ doc/guides/regexdevs/overview_feature_table.txt
 doc/guides/vdpadevs/overview_feature_table.txt
 doc/guides/bbdevs/overview_feature_table.txt
 doc/guides/gpus/overview_feature_table.txt
+doc/guides/eventdevs/overview_feature_table.txt
+doc/guides/eventdevs/overview_rx_adptr_feature_table.txt
+doc/guides/eventdevs/overview_tx_adptr_feature_table.txt
+doc/guides/eventdevs/overview_crypto_adptr_feature_table.txt
+doc/guides/eventdevs/overview_timer_adptr_feature_table.txt
 
 # ignore generated ctags/cscope files
 cscope.out.po
diff --git a/doc/guides/conf.py b/doc/guides/conf.py
index e6ce929bc8..1743ce301f 100644
--- a/doc/guides/conf.py
+++ b/doc/guides/conf.py
@@ -401,6 +401,31 @@ def setup(app):
                             'Features',
                             'Features availability in GPU drivers',
                             'Feature')
+    table_file = dirname(__file__) + '/eventdevs/overview_feature_table.txt'
+    generate_overview_table(table_file, 1,
+                            'Scheduling Features',
+                            'Features availability in eventdev drivers',
+                            'Feature')
+    table_file = dirname(__file__) + '/eventdevs/overview_rx_adptr_feature_table.txt'
+    generate_overview_table(table_file, 2,
+                            'Eth Rx adapter Features',
+                            'Features availability for Ethdev Rx adapters',
+                            'Feature')
+    table_file = dirname(__file__) + '/eventdevs/overview_tx_adptr_feature_table.txt'
+    generate_overview_table(table_file, 3,
+                            'Eth Tx adapter Features',
+                            'Features availability for Ethdev Tx adapters',
+                            'Feature')
+    table_file = dirname(__file__) + '/eventdevs/overview_crypto_adptr_feature_table.txt'
+    generate_overview_table(table_file, 4,
+                            'Crypto adapter Features',
+                            'Features availability for Crypto adapters',
+                            'Feature')
+    table_file = dirname(__file__) + '/eventdevs/overview_timer_adptr_feature_table.txt'
+    generate_overview_table(table_file, 5,
+                            'Timer adapter Features',
+                            'Features availability for Timer adapters',
+                            'Feature')
 
     if LooseVersion(sphinx_version) < LooseVersion('1.3.1'):
         print('Upgrade sphinx to version >= 1.3.1 for '
diff --git a/doc/guides/eventdevs/features/cn10k.ini b/doc/guides/eventdevs/features/cn10k.ini
new file mode 100644
index 0000000000..c7ddde5a65
--- /dev/null
+++ b/doc/guides/eventdevs/features/cn10k.ini
@@ -0,0 +1,14 @@
+;
+; Supported features of the 'cn10k' eventdev driver.
+;
+; Refer to default.ini for the full list of available PMD features.
+;
+[Scheduling Features]
+
+[Eth Rx adapter Features]
+
+[Eth Tx adapter Features]
+
+[Crypto adapter Features]
+
+[Timer adapter Features]
diff --git a/doc/guides/eventdevs/features/cn9k.ini b/doc/guides/eventdevs/features/cn9k.ini
new file mode 100644
index 0000000000..4b87ca93df
--- /dev/null
+++ b/doc/guides/eventdevs/features/cn9k.ini
@@ -0,0 +1,14 @@
+;
+; Supported features of the 'cn9k' eventdev driver.
+;
+; Refer to default.ini for the full list of available PMD features.
+;
+[Scheduling Features]
+
+[Eth Rx adapter Features]
+
+[Eth Tx adapter Features]
+
+[Crypto adapter Features]
+
+[Timer adapter Features]
diff --git a/doc/guides/eventdevs/features/default.ini b/doc/guides/eventdevs/features/default.ini
new file mode 100644
index 0000000000..5b16c45193
--- /dev/null
+++ b/doc/guides/eventdevs/features/default.ini
@@ -0,0 +1,51 @@
+;
+; Features of a default eventdev driver.
+;
+; This file defines the features that are valid for inclusion in
+; the other driver files and also the order that they appear in
+; the features table in the documentation.
+;
+[Scheduling Features]
+queue_qos                =
+event_qos                =
+distributed_sched        =
+queue_all_types          =
+burst_mode               =
+implicit_release_disable =
+nonseq_mode              =
+runtime_port_link        =
+multiple_queue_port      =
+carry_flow_id            =
+maintenance_free         =
+
+;
+; Features of a default Ethernet Rx adapter.
+;
+[Eth Rx adapter Features]
+internal_port    =
+multi_eventq     =
+override_flow_id =
+event_vector     =
+
+;
+; Features of a default Ethernet Tx adapter.
+;
+[Eth Tx adapter Features]
+internal_port =
+event_vector  =
+
+;
+; Features of a default Crypto adapter.
+;
+[Crypto adapter Features]
+internal_port_op_new     =
+internal_port_op_fwd     =
+internal_port_qp_ev_bind =
+session_private_data     =
+
+;
+; Features of a default Timer adapter.
+;
+[Timer adapter Features]
+internal_port =
+periodic      =
diff --git a/doc/guides/eventdevs/features/dpaa.ini b/doc/guides/eventdevs/features/dpaa.ini
new file mode 100644
index 0000000000..2a88b81e05
--- /dev/null
+++ b/doc/guides/eventdevs/features/dpaa.ini
@@ -0,0 +1,14 @@
+;
+; Supported features of the 'dpaa' eventdev driver.
+;
+; Refer to default.ini for the full list of available PMD features.
+;
+[Scheduling Features]
+
+[Eth Rx adapter Features]
+
+[Eth Tx adapter Features]
+
+[Crypto adapter Features]
+
+[Timer adapter Features]
diff --git a/doc/guides/eventdevs/features/dpaa2.ini b/doc/guides/eventdevs/features/dpaa2.ini
new file mode 100644
index 0000000000..67988af042
--- /dev/null
+++ b/doc/guides/eventdevs/features/dpaa2.ini
@@ -0,0 +1,14 @@
+;
+; Supported features of the 'dpaa2' eventdev driver.
+;
+; Refer to default.ini for the full list of available PMD features.
+;
+[Scheduling Features]
+
+[Eth Rx adapter Features]
+
+[Eth Tx adapter Features]
+
+[Crypto adapter Features]
+
+[Timer adapter Features]
diff --git a/doc/guides/eventdevs/features/dsw.ini b/doc/guides/eventdevs/features/dsw.ini
new file mode 100644
index 0000000000..7de3f7b91b
--- /dev/null
+++ b/doc/guides/eventdevs/features/dsw.ini
@@ -0,0 +1,14 @@
+;
+; Supported features of the 'distributed software' eventdev driver.
+;
+; Refer to default.ini for the full list of available PMD features.
+;
+[Scheduling Features]
+
+[Eth Rx adapter Features]
+
+[Eth Tx adapter Features]
+
+[Crypto adapter Features]
+
+[Timer adapter Features]
diff --git a/doc/guides/eventdevs/features/octeontx.ini b/doc/guides/eventdevs/features/octeontx.ini
new file mode 100644
index 0000000000..ac06d43d03
--- /dev/null
+++ b/doc/guides/eventdevs/features/octeontx.ini
@@ -0,0 +1,14 @@
+;
+; Supported features of the 'octeontx' eventdev driver.
+;
+; Refer to default.ini for the full list of available PMD features.
+;
+[Scheduling Features]
+
+[Eth Rx adapter Features]
+
+[Eth Tx adapter Features]
+
+[Crypto adapter Features]
+
+[Timer adapter Features]
diff --git a/doc/guides/eventdevs/features/octeontx2.ini b/doc/guides/eventdevs/features/octeontx2.ini
new file mode 100644
index 0000000000..3bce593858
--- /dev/null
+++ b/doc/guides/eventdevs/features/octeontx2.ini
@@ -0,0 +1,14 @@
+;
+; Supported features of the 'octeontx2' eventdev driver.
+;
+; Refer to default.ini for the full list of available PMD features.
+;
+[Scheduling Features]
+
+[Eth Rx adapter Features]
+
+[Eth Tx adapter Features]
+
+[Crypto adapter Features]
+
+[Timer adapter Features]
diff --git a/doc/guides/eventdevs/features/opdl.ini b/doc/guides/eventdevs/features/opdl.ini
new file mode 100644
index 0000000000..73922ca79f
--- /dev/null
+++ b/doc/guides/eventdevs/features/opdl.ini
@@ -0,0 +1,14 @@
+;
+; Supported features of 'Ordered Packet Distribution Library' eventdev driver.
+;
+; Refer to default.ini for the full list of available PMD features.
+;
+[Scheduling Features]
+
+[Eth Rx adapter Features]
+
+[Eth Tx adapter Features]
+
+[Crypto adapter Features]
+
+[Timer adapter Features]
diff --git a/doc/guides/eventdevs/features/sw.ini b/doc/guides/eventdevs/features/sw.ini
new file mode 100644
index 0000000000..5d787a6220
--- /dev/null
+++ b/doc/guides/eventdevs/features/sw.ini
@@ -0,0 +1,14 @@
+;
+; Supported features of the 'software' eventdev driver.
+;
+; Refer to default.ini for the full list of available PMD features.
+;
+[Scheduling Features]
+
+[Eth Rx adapter Features]
+
+[Eth Tx adapter Features]
+
+[Crypto adapter Features]
+
+[Timer adapter Features]
diff --git a/doc/guides/eventdevs/index.rst b/doc/guides/eventdevs/index.rst
index 2143025390..b11657f7ae 100644
--- a/doc/guides/eventdevs/index.rst
+++ b/doc/guides/eventdevs/index.rst
@@ -11,6 +11,7 @@ application through the eventdev API.
     :maxdepth: 2
     :numbered:
 
+    overview
     cnxk
     dlb2
     dpaa
diff --git a/doc/guides/eventdevs/overview.rst b/doc/guides/eventdevs/overview.rst
new file mode 100644
index 0000000000..3c5ee515f8
--- /dev/null
+++ b/doc/guides/eventdevs/overview.rst
@@ -0,0 +1,40 @@
+..  SPDX-License-Identifier: BSD-3-Clause
+    Copyright(C) 2021 Marvell.
+
+Event Device Supported Functionality Matrices
+=============================================
+
+Event device supported features
+-------------------------------
+
+.. _table_eventdev_pmd_features:
+
+.. include:: overview_feature_table.txt
+
+Ethernet Rx adapter supported features
+--------------------------------------
+
+.. _table_eventdev_rx_adapter_features:
+
+.. include:: overview_rx_adptr_feature_table.txt
+
+Ethernet Tx adapter supported features
+--------------------------------------
+
+.. _table_eventdev_tx_adapter_features:
+
+.. include:: overview_tx_adptr_feature_table.txt
+
+Crypto device adapter supported features
+----------------------------------------
+
+.. _table_cryptodev_adapter_features:
+
+.. include:: overview_crypto_adptr_feature_table.txt
+
+Timer adapter supported features
+--------------------------------
+
+.. _table_timer_adapter_features:
+
+.. include:: overview_timer_adptr_feature_table.txt
-- 
2.25.1


^ permalink raw reply	[flat|nested] 87+ messages in thread

* [PATCH v7 02/11] doc: update eventdev feature matrix for octeontx
  2021-11-22  7:54           ` [PATCH v7 01/11] doc: add skeleton for eventdevs feature matrices skori
@ 2021-11-22  7:54             ` skori
  2021-11-22  7:54             ` [PATCH v7 03/11] doc: update eventdev feature matrix for octeontx2 skori
                               ` (9 subsequent siblings)
  10 siblings, 0 replies; 87+ messages in thread
From: skori @ 2021-11-22  7:54 UTC (permalink / raw)
  To: jerinj, nikhil.rao, pbhagavatula, hemant.agrawal, nipun.gupta,
	harry.van.haaren, mattias.ronnblom, liang.j.ma
  Cc: dev, Sunil Kumar Kori

From: Sunil Kumar Kori <skori@marvell.com>

Patch updates eventdev and adapters feature matrices for
octeontx platform.

Signed-off-by: Sunil Kumar Kori <skori@marvell.com>
---
v7:
 - Rebased to 21.11 rc3
 - Fix Tx adapter capabilities for SW driver
v6:
 - Rebased to 21.11 rc2
 - Added feature matrices for all supported drivers
 - Added doc vs code check script
 
v5:
 - Rebased to 21.11
 - Added feature matrix for cnxk.
v4:
 - Rebased to 20.02
v3:
 - Removed .txt files to generate tables.
 - Use conf.py script to generate tables.
 - Add .ini file for all supported PMDs.
v2:
 - Review comments incorporated

 doc/guides/eventdevs/features/octeontx.ini | 13 +++++++++++++
 1 file changed, 13 insertions(+)

diff --git a/doc/guides/eventdevs/features/octeontx.ini b/doc/guides/eventdevs/features/octeontx.ini
index ac06d43d03..ec044e6289 100644
--- a/doc/guides/eventdevs/features/octeontx.ini
+++ b/doc/guides/eventdevs/features/octeontx.ini
@@ -4,11 +4,24 @@
 ; Refer to default.ini for the full list of available PMD features.
 ;
 [Scheduling Features]
+queue_qos                  = Y
+distributed_sched          = Y
+queue_all_types            = Y
+nonseq_mode                = Y
+runtime_port_link          = Y
+multiple_queue_port        = Y
+carry_flow_id              = Y
+maintenance_free           = Y
 
 [Eth Rx adapter Features]
+internal_port              = Y
 
 [Eth Tx adapter Features]
+internal_port              = Y
 
 [Crypto adapter Features]
+internal_port_op_fwd       = Y
+session_private_data       = Y
 
 [Timer adapter Features]
+internal_port              = Y
-- 
2.25.1


^ permalink raw reply	[flat|nested] 87+ messages in thread

* [PATCH v7 03/11] doc: update eventdev feature matrix for octeontx2
  2021-11-22  7:54           ` [PATCH v7 01/11] doc: add skeleton for eventdevs feature matrices skori
  2021-11-22  7:54             ` [PATCH v7 02/11] doc: update eventdev feature matrix for octeontx skori
@ 2021-11-22  7:54             ` skori
  2021-11-22  7:54             ` [PATCH v7 04/11] doc: update eventdev feature matrix for cn9k skori
                               ` (8 subsequent siblings)
  10 siblings, 0 replies; 87+ messages in thread
From: skori @ 2021-11-22  7:54 UTC (permalink / raw)
  To: jerinj, nikhil.rao, pbhagavatula, hemant.agrawal, nipun.gupta,
	harry.van.haaren, mattias.ronnblom, liang.j.ma
  Cc: dev, Sunil Kumar Kori

From: Sunil Kumar Kori <skori@marvell.com>

Patch updates eventdev and adapters feature matrices for
octeontx2 platform.

Signed-off-by: Sunil Kumar Kori <skori@marvell.com>
---
v7:
 - Rebased to 21.11 rc3
 - Fix Tx adapter capabilities for SW driver
v6:
 - Rebased to 21.11 rc2
 - Added feature matrices for all supported drivers
 - Added doc vs code check script
 
v5:
 - Rebased to 21.11
 - Added feature matrix for cnxk.
v4:
 - Rebased to 20.02
v3:
 - Removed .txt files to generate tables.
 - Use conf.py script to generate tables.
 - Add .ini file for all supported PMDs.
v2:
 - Review comments incorporated

 doc/guides/eventdevs/features/octeontx2.ini | 16 ++++++++++++++++
 1 file changed, 16 insertions(+)

diff --git a/doc/guides/eventdevs/features/octeontx2.ini b/doc/guides/eventdevs/features/octeontx2.ini
index 3bce593858..05b84beb6e 100644
--- a/doc/guides/eventdevs/features/octeontx2.ini
+++ b/doc/guides/eventdevs/features/octeontx2.ini
@@ -4,11 +4,27 @@
 ; Refer to default.ini for the full list of available PMD features.
 ;
 [Scheduling Features]
+queue_qos                  = Y
+distributed_sched          = Y
+queue_all_types            = Y
+nonseq_mode                = Y
+runtime_port_link          = Y
+multiple_queue_port        = Y
+carry_flow_id              = Y
+maintenance_free           = Y
 
 [Eth Rx adapter Features]
+internal_port              = Y
+multi_eventq               = Y
 
 [Eth Tx adapter Features]
+internal_port              = Y
 
 [Crypto adapter Features]
+internal_port_op_new       = Y
+internal_port_op_fwd       = Y
+internal_port_qp_ev_bind   = Y
 
 [Timer adapter Features]
+internal_port              = Y
+periodic                   = Y
-- 
2.25.1


^ permalink raw reply	[flat|nested] 87+ messages in thread

* [PATCH v7 04/11] doc: update eventdev feature matrix for cn9k
  2021-11-22  7:54           ` [PATCH v7 01/11] doc: add skeleton for eventdevs feature matrices skori
  2021-11-22  7:54             ` [PATCH v7 02/11] doc: update eventdev feature matrix for octeontx skori
  2021-11-22  7:54             ` [PATCH v7 03/11] doc: update eventdev feature matrix for octeontx2 skori
@ 2021-11-22  7:54             ` skori
  2021-11-22  7:54             ` [PATCH v7 05/11] doc: update eventdev feature matrix for cn10k skori
                               ` (7 subsequent siblings)
  10 siblings, 0 replies; 87+ messages in thread
From: skori @ 2021-11-22  7:54 UTC (permalink / raw)
  To: jerinj, nikhil.rao, pbhagavatula, hemant.agrawal, nipun.gupta,
	harry.van.haaren, mattias.ronnblom, liang.j.ma
  Cc: dev, Sunil Kumar Kori

From: Sunil Kumar Kori <skori@marvell.com>

Patch updates eventdev and adapters feature matrices for
cn9k platform.

Signed-off-by: Sunil Kumar Kori <skori@marvell.com>
---
v7:
 - Rebased to 21.11 rc3
 - Fix Tx adapter capabilities for SW driver
v6:
 - Rebased to 21.11 rc2
 - Added feature matrices for all supported drivers
 - Added doc vs code check script
 
v5:
 - Rebased to 21.11
 - Added feature matrix for cnxk.
v4:
 - Rebased to 20.02
v3:
 - Removed .txt files to generate tables.
 - Use conf.py script to generate tables.
 - Add .ini file for all supported PMDs.
v2:
 - Review comments incorporated

 doc/guides/eventdevs/features/cn9k.ini | 15 +++++++++++++++
 1 file changed, 15 insertions(+)

diff --git a/doc/guides/eventdevs/features/cn9k.ini b/doc/guides/eventdevs/features/cn9k.ini
index 4b87ca93df..7a3ab4c533 100644
--- a/doc/guides/eventdevs/features/cn9k.ini
+++ b/doc/guides/eventdevs/features/cn9k.ini
@@ -4,11 +4,26 @@
 ; Refer to default.ini for the full list of available PMD features.
 ;
 [Scheduling Features]
+queue_qos                  = Y
+distributed_sched          = Y
+queue_all_types            = Y
+nonseq_mode                = Y
+runtime_port_link          = Y
+multiple_queue_port        = Y
+carry_flow_id              = Y
+maintenance_free           = Y
 
 [Eth Rx adapter Features]
+internal_port              = Y
+multi_eventq               = Y
+override_flow_id           = Y
 
 [Eth Tx adapter Features]
+internal_port              = Y
 
 [Crypto adapter Features]
+internal_port_op_fwd       = Y
+session_private_data       = Y
 
 [Timer adapter Features]
+internal_port = Y
-- 
2.25.1


^ permalink raw reply	[flat|nested] 87+ messages in thread

* [PATCH v7 05/11] doc: update eventdev feature matrix for cn10k
  2021-11-22  7:54           ` [PATCH v7 01/11] doc: add skeleton for eventdevs feature matrices skori
                               ` (2 preceding siblings ...)
  2021-11-22  7:54             ` [PATCH v7 04/11] doc: update eventdev feature matrix for cn9k skori
@ 2021-11-22  7:54             ` skori
  2021-11-22 18:25               ` Jerin Jacob
  2021-11-22  7:54             ` [PATCH v7 06/11] doc: update eventdev feature matrix for dpaa skori
                               ` (6 subsequent siblings)
  10 siblings, 1 reply; 87+ messages in thread
From: skori @ 2021-11-22  7:54 UTC (permalink / raw)
  To: jerinj, nikhil.rao, pbhagavatula, hemant.agrawal, nipun.gupta,
	harry.van.haaren, mattias.ronnblom, liang.j.ma
  Cc: dev, Sunil Kumar Kori

From: Sunil Kumar Kori <skori@marvell.com>

Patch updates eventdev and adapters feature matrices for
cn10k platform.

Signed-off-by: Sunil Kumar Kori <skori@marvell.com>
---
v7:
 - Rebased to 21.11 rc3
 - Fix Tx adapter capabilities for SW driver
v6:
 - Rebased to 21.11 rc2
 - Added feature matrices for all supported drivers
 - Added doc vs code check script
 
v5:
 - Rebased to 21.11
 - Added feature matrix for cnxk.
v4:
 - Rebased to 20.02
v3:
 - Removed .txt files to generate tables.
 - Use conf.py script to generate tables.
 - Add .ini file for all supported PMDs.
v2:
 - Review comments incorporated

 doc/guides/eventdevs/features/cn10k.ini | 17 +++++++++++++++++
 1 file changed, 17 insertions(+)

diff --git a/doc/guides/eventdevs/features/cn10k.ini b/doc/guides/eventdevs/features/cn10k.ini
index c7ddde5a65..f57bccbdc6 100644
--- a/doc/guides/eventdevs/features/cn10k.ini
+++ b/doc/guides/eventdevs/features/cn10k.ini
@@ -4,11 +4,28 @@
 ; Refer to default.ini for the full list of available PMD features.
 ;
 [Scheduling Features]
+queue_qos                  = Y
+distributed_sched          = Y
+queue_all_types            = Y
+nonseq_mode                = Y
+runtime_port_link          = Y
+multiple_queue_port        = Y
+carry_flow_id              = Y
+maintenance_free           = Y
 
 [Eth Rx adapter Features]
+internal_port              = Y
+multi_eventq               = Y
+override_flow_id           = Y
+event_vector               = Y
 
 [Eth Tx adapter Features]
+internal_port              = Y
+event_vector               = Y
 
 [Crypto adapter Features]
+internal_port_op_fwd       = Y
+session_private_data       = Y
 
 [Timer adapter Features]
+internal_port              = Y
-- 
2.25.1


^ permalink raw reply	[flat|nested] 87+ messages in thread

* [PATCH v7 06/11] doc: update eventdev feature matrix for dpaa
  2021-11-22  7:54           ` [PATCH v7 01/11] doc: add skeleton for eventdevs feature matrices skori
                               ` (3 preceding siblings ...)
  2021-11-22  7:54             ` [PATCH v7 05/11] doc: update eventdev feature matrix for cn10k skori
@ 2021-11-22  7:54             ` skori
  2021-11-22  7:54             ` [PATCH v7 07/11] doc: update eventdev feature matrix for dpaa2 skori
                               ` (5 subsequent siblings)
  10 siblings, 0 replies; 87+ messages in thread
From: skori @ 2021-11-22  7:54 UTC (permalink / raw)
  To: jerinj, nikhil.rao, pbhagavatula, hemant.agrawal, nipun.gupta,
	harry.van.haaren, mattias.ronnblom, liang.j.ma
  Cc: dev, Sunil Kumar Kori

From: Sunil Kumar Kori <skori@marvell.com>

Patch updates eventdev and adapters feature matrices for
dpaa platform.

Signed-off-by: Sunil Kumar Kori <skori@marvell.com>
---
v7:
 - Rebased to 21.11 rc3
 - Fix Tx adapter capabilities for SW driver
v6:
 - Rebased to 21.11 rc2
 - Added feature matrices for all supported drivers
 - Added doc vs code check script
 
v5:
 - Rebased to 21.11
 - Added feature matrix for cnxk.
v4:
 - Rebased to 20.02
v3:
 - Removed .txt files to generate tables.
 - Use conf.py script to generate tables.
 - Add .ini file for all supported PMDs.
v2:
 - Review comments incorporated

 doc/guides/eventdevs/features/dpaa.ini | 13 +++++++++++++
 1 file changed, 13 insertions(+)

diff --git a/doc/guides/eventdevs/features/dpaa.ini b/doc/guides/eventdevs/features/dpaa.ini
index 2a88b81e05..b73bfa02e5 100644
--- a/doc/guides/eventdevs/features/dpaa.ini
+++ b/doc/guides/eventdevs/features/dpaa.ini
@@ -4,11 +4,24 @@
 ; Refer to default.ini for the full list of available PMD features.
 ;
 [Scheduling Features]
+distributed_sched          = Y
+burst_mode                 = Y
+nonseq_mode                = Y
+multiple_queue_port        = Y
+carry_flow_id              = Y
+maintenance_free           = Y
 
 [Eth Rx adapter Features]
+internal_port              = Y
+multi_eventq               = Y
+override_flow_id           = Y
 
 [Eth Tx adapter Features]
+internal_port              = Y
 
 [Crypto adapter Features]
+internal_port_op_new       = Y
+internal_port_qp_ev_bind   = Y
+session_private_data       = Y
 
 [Timer adapter Features]
-- 
2.25.1


^ permalink raw reply	[flat|nested] 87+ messages in thread

* [PATCH v7 07/11] doc: update eventdev feature matrix for dpaa2
  2021-11-22  7:54           ` [PATCH v7 01/11] doc: add skeleton for eventdevs feature matrices skori
                               ` (4 preceding siblings ...)
  2021-11-22  7:54             ` [PATCH v7 06/11] doc: update eventdev feature matrix for dpaa skori
@ 2021-11-22  7:54             ` skori
  2021-11-22  7:54             ` [PATCH v7 08/11] doc: update eventdev feature matrix for SW skori
                               ` (4 subsequent siblings)
  10 siblings, 0 replies; 87+ messages in thread
From: skori @ 2021-11-22  7:54 UTC (permalink / raw)
  To: jerinj, nikhil.rao, pbhagavatula, hemant.agrawal, nipun.gupta,
	harry.van.haaren, mattias.ronnblom, liang.j.ma
  Cc: dev, Sunil Kumar Kori

From: Sunil Kumar Kori <skori@marvell.com>

Patch updates eventdev and adapters feature matrices for
dpaa2 platform.

Signed-off-by: Sunil Kumar Kori <skori@marvell.com>
---
v7:
 - Rebased to 21.11 rc3
 - Fix Tx adapter capabilities for SW driver
v6:
 - Rebased to 21.11 rc2
 - Added feature matrices for all supported drivers
 - Added doc vs code check script
 
v5:
 - Rebased to 21.11
 - Added feature matrix for cnxk.
v4:
 - Rebased to 20.02
v3:
 - Removed .txt files to generate tables.
 - Use conf.py script to generate tables.
 - Add .ini file for all supported PMDs.
v2:
 - Review comments incorporated

 doc/guides/eventdevs/features/dpaa2.ini | 15 +++++++++++++++
 1 file changed, 15 insertions(+)

diff --git a/doc/guides/eventdevs/features/dpaa2.ini b/doc/guides/eventdevs/features/dpaa2.ini
index 67988af042..c935bd0cfc 100644
--- a/doc/guides/eventdevs/features/dpaa2.ini
+++ b/doc/guides/eventdevs/features/dpaa2.ini
@@ -4,11 +4,26 @@
 ; Refer to default.ini for the full list of available PMD features.
 ;
 [Scheduling Features]
+distributed_sched          = Y
+queue_all_types            = Y
+burst_mode                 = Y
+nonseq_mode                = Y
+runtime_port_link          = Y
+multiple_queue_port        = Y
+carry_flow_id              = Y
+maintenance_free           = Y
 
 [Eth Rx adapter Features]
+internal_port              = Y
+multi_eventq               = Y
+override_flow_id           = Y
 
 [Eth Tx adapter Features]
+internal_port              = Y
 
 [Crypto adapter Features]
+internal_port_op_new       = Y
+internal_port_qp_ev_bind   = Y
+session_private_data       = Y
 
 [Timer adapter Features]
-- 
2.25.1


^ permalink raw reply	[flat|nested] 87+ messages in thread

* [PATCH v7 08/11] doc: update eventdev feature matrix for SW
  2021-11-22  7:54           ` [PATCH v7 01/11] doc: add skeleton for eventdevs feature matrices skori
                               ` (5 preceding siblings ...)
  2021-11-22  7:54             ` [PATCH v7 07/11] doc: update eventdev feature matrix for dpaa2 skori
@ 2021-11-22  7:54             ` skori
  2021-11-22  7:54             ` [PATCH v7 09/11] doc: update eventdev feature matrix for opdl skori
                               ` (3 subsequent siblings)
  10 siblings, 0 replies; 87+ messages in thread
From: skori @ 2021-11-22  7:54 UTC (permalink / raw)
  To: jerinj, nikhil.rao, pbhagavatula, hemant.agrawal, nipun.gupta,
	harry.van.haaren, mattias.ronnblom, liang.j.ma
  Cc: dev, Sunil Kumar Kori

From: Sunil Kumar Kori <skori@marvell.com>

Patch updates eventdev and adapters feature matrices for
sw platform.

Signed-off-by: Sunil Kumar Kori <skori@marvell.com>
---
v7:
 - Rebased to 21.11 rc3
 - Fix Tx adapter capabilities for SW driver
v6:
 - Rebased to 21.11 rc2
 - Added feature matrices for all supported drivers
 - Added doc vs code check script
 
v5:
 - Rebased to 21.11
 - Added feature matrix for cnxk.
v4:
 - Rebased to 20.02
v3:
 - Removed .txt files to generate tables.
 - Use conf.py script to generate tables.
 - Add .ini file for all supported PMDs.
v2:
 - Review comments incorporated

 doc/guides/eventdevs/features/sw.ini | 13 +++++++++++++
 1 file changed, 13 insertions(+)

diff --git a/doc/guides/eventdevs/features/sw.ini b/doc/guides/eventdevs/features/sw.ini
index 5d787a6220..8c89d3b8d2 100644
--- a/doc/guides/eventdevs/features/sw.ini
+++ b/doc/guides/eventdevs/features/sw.ini
@@ -4,11 +4,24 @@
 ; Refer to default.ini for the full list of available PMD features.
 ;
 [Scheduling Features]
+queue_qos                  = Y
+event_qos                  = Y
+burst_mode                 = Y
+implicit_release_disable   = Y
+nonseq_mode                = Y
+runtime_port_link          = Y
+multiple_queue_port        = Y
+carry_flow_id              = Y
+maintenance_free           = Y
 
 [Eth Rx adapter Features]
+multi_eventq               = Y
+override_flow_id           = Y
+event_vector               = Y
 
 [Eth Tx adapter Features]
 
 [Crypto adapter Features]
+session_private_data       = Y
 
 [Timer adapter Features]
-- 
2.25.1


^ permalink raw reply	[flat|nested] 87+ messages in thread

* [PATCH v7 09/11] doc: update eventdev feature matrix for opdl
  2021-11-22  7:54           ` [PATCH v7 01/11] doc: add skeleton for eventdevs feature matrices skori
                               ` (6 preceding siblings ...)
  2021-11-22  7:54             ` [PATCH v7 08/11] doc: update eventdev feature matrix for SW skori
@ 2021-11-22  7:54             ` skori
  2021-11-22  7:54             ` [PATCH v7 10/11] doc: update eventdev feature matrix for dsw skori
                               ` (2 subsequent siblings)
  10 siblings, 0 replies; 87+ messages in thread
From: skori @ 2021-11-22  7:54 UTC (permalink / raw)
  To: jerinj, nikhil.rao, pbhagavatula, hemant.agrawal, nipun.gupta,
	harry.van.haaren, mattias.ronnblom, liang.j.ma
  Cc: dev, Sunil Kumar Kori

From: Sunil Kumar Kori <skori@marvell.com>

Patch updates eventdev and adapters feature matrices for
opdl platform.

Signed-off-by: Sunil Kumar Kori <skori@marvell.com>
---
v7:
 - Rebased to 21.11 rc3
 - Fix Tx adapter capabilities for SW driver
v6:
 - Rebased to 21.11 rc2
 - Added feature matrices for all supported drivers
 - Added doc vs code check script
 
v5:
 - Rebased to 21.11
 - Added feature matrix for cnxk.
v4:
 - Rebased to 20.02
v3:
 - Removed .txt files to generate tables.
 - Use conf.py script to generate tables.
 - Add .ini file for all supported PMDs.
v2:
 - Review comments incorporated

 doc/guides/eventdevs/features/opdl.ini | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/doc/guides/eventdevs/features/opdl.ini b/doc/guides/eventdevs/features/opdl.ini
index 73922ca79f..5cc35d3c77 100644
--- a/doc/guides/eventdevs/features/opdl.ini
+++ b/doc/guides/eventdevs/features/opdl.ini
@@ -4,11 +4,15 @@
 ; Refer to default.ini for the full list of available PMD features.
 ;
 [Scheduling Features]
+burst_mode                 = Y
+carry_flow_id              = Y
+maintenance_free           = Y
 
 [Eth Rx adapter Features]
 
 [Eth Tx adapter Features]
 
 [Crypto adapter Features]
+session_private_data       = Y
 
 [Timer adapter Features]
-- 
2.25.1


^ permalink raw reply	[flat|nested] 87+ messages in thread

* [PATCH v7 10/11] doc: update eventdev feature matrix for dsw
  2021-11-22  7:54           ` [PATCH v7 01/11] doc: add skeleton for eventdevs feature matrices skori
                               ` (7 preceding siblings ...)
  2021-11-22  7:54             ` [PATCH v7 09/11] doc: update eventdev feature matrix for opdl skori
@ 2021-11-22  7:54             ` skori
  2021-11-22  7:54             ` [PATCH v7 11/11] devtools: check event device doc tables skori
  2021-11-23 11:07             ` [PATCH v8 01/10] doc: add skeleton for eventdevs feature matrices skori
  10 siblings, 0 replies; 87+ messages in thread
From: skori @ 2021-11-22  7:54 UTC (permalink / raw)
  To: jerinj, nikhil.rao, pbhagavatula, hemant.agrawal, nipun.gupta,
	harry.van.haaren, mattias.ronnblom, liang.j.ma
  Cc: dev, Sunil Kumar Kori

From: Sunil Kumar Kori <skori@marvell.com>

Patch updates eventdev and adapters feature matrices for
dsw platform.

Signed-off-by: Sunil Kumar Kori <skori@marvell.com>
---
v7:
 - Rebased to 21.11 rc3
 - Fix Tx adapter capabilities for SW driver
v6:
 - Rebased to 21.11 rc2
 - Added feature matrices for all supported drivers
 - Added doc vs code check script
 
v5:
 - Rebased to 21.11
 - Added feature matrix for cnxk.
v4:
 - Rebased to 20.02
v3:
 - Removed .txt files to generate tables.
 - Use conf.py script to generate tables.
 - Add .ini file for all supported PMDs.
v2:
 - Review comments incorporated

 doc/guides/eventdevs/features/dsw.ini | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/doc/guides/eventdevs/features/dsw.ini b/doc/guides/eventdevs/features/dsw.ini
index 7de3f7b91b..c8bc6b3f1d 100644
--- a/doc/guides/eventdevs/features/dsw.ini
+++ b/doc/guides/eventdevs/features/dsw.ini
@@ -4,11 +4,20 @@
 ; Refer to default.ini for the full list of available PMD features.
 ;
 [Scheduling Features]
+distributed_sched          = Y
+burst_mode                 = Y
+nonseq_mode                = Y
+multiple_queue_port        = Y
+carry_flow_id              = Y
 
 [Eth Rx adapter Features]
+multi_eventq               = Y
+override_flow_id           = Y
+event_vector               = Y
 
 [Eth Tx adapter Features]
 
 [Crypto adapter Features]
+session_private_data       = Y
 
 [Timer adapter Features]
-- 
2.25.1


^ permalink raw reply	[flat|nested] 87+ messages in thread

* [PATCH v7 11/11] devtools: check event device doc tables
  2021-11-22  7:54           ` [PATCH v7 01/11] doc: add skeleton for eventdevs feature matrices skori
                               ` (8 preceding siblings ...)
  2021-11-22  7:54             ` [PATCH v7 10/11] doc: update eventdev feature matrix for dsw skori
@ 2021-11-22  7:54             ` skori
  2021-11-22 18:35               ` Jerin Jacob
  2021-11-23 11:07             ` [PATCH v8 01/10] doc: add skeleton for eventdevs feature matrices skori
  10 siblings, 1 reply; 87+ messages in thread
From: skori @ 2021-11-22  7:54 UTC (permalink / raw)
  To: jerinj, nikhil.rao, pbhagavatula, hemant.agrawal, nipun.gupta,
	harry.van.haaren, mattias.ronnblom, liang.j.ma, Thomas Monjalon
  Cc: dev, Sunil Kumar Kori

From: Sunil Kumar Kori <skori@marvell.com>

In this commit, check is added for event device, Rx,
Tx, Crypto and Timer adapters tables for all supported
drivers.

Signed-off-by: Sunil Kumar Kori <skori@marvell.com>
---
v7:
 - Rebased to 21.11 rc3
 - Fix Tx adapter capabilities for SW driver
v6:
 - Rebased to 21.11 rc2
 - Added feature matrices for all supported drivers
 - Added doc vs code check script
 
v5:
 - Rebased to 21.11
 - Added feature matrix for cnxk.
v4:
 - Rebased to 20.02
v3:
 - Removed .txt files to generate tables.
 - Use conf.py script to generate tables.
 - Add .ini file for all supported PMDs.
v2:
 - Review comments incorporated

 devtools/check-doc-vs-code.sh   |  35 ++++++++
 devtools/parse-event-support.sh | 149 ++++++++++++++++++++++++++++++++
 2 files changed, 184 insertions(+)
 create mode 100755 devtools/parse-event-support.sh

diff --git a/devtools/check-doc-vs-code.sh b/devtools/check-doc-vs-code.sh
index c58c239c87..608d6e0e2e 100755
--- a/devtools/check-doc-vs-code.sh
+++ b/devtools/check-doc-vs-code.sh
@@ -66,11 +66,35 @@ check_rte_flow() # <driver>
 	fi
 }
 
+all_event_drivers()
+{
+	find $rootdir/drivers/event -mindepth 1 -maxdepth 1 -type d |
+	sed 's,.*/,,' |
+	sort
+}
+
+check_event_dev() # <driver>
+{
+	code=$rootdir/drivers/event/$1
+	doc=$rootdir/doc/guides/eventdevs/features/$1.ini
+	[ -d $code ] || return 0
+	[ -f $doc ] || return 0
+	report=$($selfdir/parse-event-support.sh $code $doc)
+	if [ -n "$report" ]; then
+		error "doc out of sync for $1"
+		echo "$report" | sed 's,^,\t,'
+	fi
+}
+
 if [ -z "$trusted_commit" ]; then
 	# check all
 	for driver in $(all_net_drivers); do
 		check_rte_flow $driver
 	done
+
+	for driver in $(all_event_drivers); do
+		check_event_dev $driver
+	done
 	exit $result
 fi
 
@@ -81,4 +105,15 @@ if has_code_change 'RTE_FLOW_.*_TYPE_' ||
 		check_rte_flow $driver
 	done
 fi
+
+if has_code_change 'RTE_EVENT_DEV_CAP_*' ||
+		has_code_change 'RTE_EVENT_ETH_RX_ADAPTER_CAP_*' ||
+		has_code_change 'RTE_EVENT_ETH_TX_ADAPTER_CAP_*' ||
+		has_code_change 'RTE_EVENT_CRYPTO_ADAPTER_CAP_*' ||
+		has_code_change 'RTE_EVENT_TIMER_ADAPTER_CAP_*' ||
+		has_file_change 'doc/guides/eventdevs/features'; then
+	for driver in $(all_event_drivers); do
+		check_event_dev $driver
+	done
+fi
 exit $result
diff --git a/devtools/parse-event-support.sh b/devtools/parse-event-support.sh
new file mode 100755
index 0000000000..d756977eec
--- /dev/null
+++ b/devtools/parse-event-support.sh
@@ -0,0 +1,149 @@
+#! /bin/sh -e
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(C) 2021 Marvell.
+
+# Parse event dev support of a driver directory,
+# and optionally show difference with a doc file in .ini format.
+
+dir=$1 # drivers/event/foo
+ref=$2 # doc/guides/eventdevs/features/foo.ini
+
+if [ -z "$dir" ]; then
+	echo "directory argument is required" >&2
+	exit 1
+fi
+
+# sorting order
+export LC_COLLATE=C
+
+# generate INI section
+list() # <title> <pattern>
+{
+	echo "[$1]"
+	git grep -who "$2[[:alnum:]_]*" $dir | sort -u |
+	awk 'sub(/'$2'/, "") {printf "%-20s = Y\n", tolower($0)}'
+}
+
+event_dev_sched_support()
+{
+	title="Scheduling Features"
+	pattern=$(echo "RTE_EVENT_DEV_CAP_" | awk '{print toupper($0)}')
+	list "$title" "$pattern" | grep -vwE 'void|indirect|end'
+}
+
+event_dev_rx_adptr_support()
+{
+	title="Eth Rx adapter Features"
+	pattern=$(echo "RTE_EVENT_ETH_RX_ADAPTER_CAP_" |
+		awk '{print toupper($0)}')
+	list "$title" "$pattern" | grep -vwE 'void|indirect|end'
+}
+
+event_dev_tx_adptr_support()
+{
+	title="Eth Tx adapter Features"
+	pattern=$(echo "RTE_EVENT_ETH_TX_ADAPTER_CAP_" |
+		awk '{print toupper($0)}')
+	list "$title" "$pattern" | grep -vwE 'void|indirect|end'
+}
+
+event_dev_crypto_adptr_support()
+{
+	title="Crypto adapter Features"
+	pattern=$(echo "RTE_EVENT_CRYPTO_ADAPTER_CAP_" |
+		awk '{print toupper($0)}')
+	list "$title" "$pattern" | grep -vwE 'void|indirect|end'
+}
+
+event_dev_timer_adptr_support()
+{
+	title="Timer adapter Features"
+	pattern=$(echo "RTE_EVENT_TIMER_ADAPTER_CAP_" |
+		awk '{print toupper($0)}')
+	list "$title" "$pattern" | grep -vwE 'void|indirect|end'
+}
+
+if [ -z "$ref" ]; then # generate full tables
+	event_dev_sched_support
+	echo
+	event_dev_rx_adptr_support
+	echo
+	event_dev_tx_adptr_support
+	echo
+	event_dev_crypto_adptr_support
+	echo
+	event_dev_timer_adptr_support
+	exit 0
+fi
+
+# compare with reference input
+event_dev_sched_compare()
+{
+	section="Scheduling Features]"
+	{
+		event_dev_sched_support
+		sed -n "/$section/,/]/p" "$ref" | sed '/^$/d'
+	} |
+	sed '/]/d' | # ignore section title
+	sed 's, *=.*,,' | # ignore value (better in doc than generated one)
+	sort | uniq -u | # show differences
+	sed "s,^,Scheduling Features ," # prefix with category name
+}
+
+event_dev_rx_adptr_compare()
+{
+	section="Eth Rx adapter Features]"
+	{
+		event_dev_rx_adptr_support
+		sed -n "/$section/,/]/p" "$ref" | sed '/^$/d'
+	} |
+	sed '/]/d' | # ignore section title
+	sed 's, *=.*,,' | # ignore value (better in doc than generated one)
+	sort | uniq -u | # show differences
+	sed "s,^,Eth Rx adapter Features ," # prefix with category name
+}
+
+event_dev_tx_adptr_compare()
+{
+	section="Eth Tx adapter Features]"
+	{
+		event_dev_tx_adptr_support
+		sed -n "/$section/,/]/p" "$ref" | sed '/^$/d'
+	} |
+	sed '/]/d' | # ignore section title
+	sed 's, *=.*,,' | # ignore value (better in doc than generated one)
+	sort | uniq -u | # show differences
+	sed "s,^,Eth Tx adapter Features ," # prefix with category name
+}
+
+event_dev_crypto_adptr_compare()
+{
+	section="Crypto adapter Features]"
+	{
+		event_dev_crypto_adptr_support
+		sed -n "/$section/,/]/p" "$ref" | sed '/^$/d'
+	} |
+	sed '/]/d' | # ignore section title
+	sed 's, *=.*,,' | # ignore value (better in doc than generated one)
+	sort | uniq -u | # show differences
+	sed "s,^,Crypto adapter Features ," # prefix with category name
+}
+
+event_dev_crypto_adptr_compare()
+{
+	section="Timer adapter Features]"
+	{
+		event_dev_timer_adptr_support
+		sed -n "/$section/,/]/p" "$ref" | sed '/^$/d'
+	} |
+	sed '/]/d' | # ignore section title
+	sed 's, *=.*,,' | # ignore value (better in doc than generated one)
+	sort | uniq -u | # show differences
+	sed "s,^,Timer adapter Features ," # prefix with category name
+}
+
+event_dev_sched_compare
+event_dev_rx_adptr_compare
+event_dev_tx_adptr_compare
+event_dev_crypto_adptr_compare
+event_dev_crypto_adptr_compare
-- 
2.25.1


^ permalink raw reply	[flat|nested] 87+ messages in thread

* Re: [PATCH v7 05/11] doc: update eventdev feature matrix for cn10k
  2021-11-22  7:54             ` [PATCH v7 05/11] doc: update eventdev feature matrix for cn10k skori
@ 2021-11-22 18:25               ` Jerin Jacob
  0 siblings, 0 replies; 87+ messages in thread
From: Jerin Jacob @ 2021-11-22 18:25 UTC (permalink / raw)
  To: Sunil Kumar Kori
  Cc: Jerin Jacob, Nikhil Rao, Pavan Nikhilesh, Hemant Agrawal,
	Nipun Gupta, Van Haaren, Harry, Mattias Rönnblom, Liang Ma,
	dpdk-dev

On Mon, Nov 22, 2021 at 1:24 PM <skori@marvell.com> wrote:
>
> From: Sunil Kumar Kori <skori@marvell.com>
>
> Patch updates eventdev and adapters feature matrices for
> cn10k platform.
>
> Signed-off-by: Sunil Kumar Kori <skori@marvell.com>
> ---
> v7:
>  - Rebased to 21.11 rc3
>  - Fix Tx adapter capabilities for SW driver
> v6:
>  - Rebased to 21.11 rc2
>  - Added feature matrices for all supported drivers
>  - Added doc vs code check script
>
> v5:
>  - Rebased to 21.11
>  - Added feature matrix for cnxk.
> v4:
>  - Rebased to 20.02
> v3:
>  - Removed .txt files to generate tables.
>  - Use conf.py script to generate tables.
>  - Add .ini file for all supported PMDs.
> v2:
>  - Review comments incorporated
>
>  doc/guides/eventdevs/features/cn10k.ini | 17 +++++++++++++++++

devtools/parse-event-support.sh scripts looks for
doc/guides/eventdevs/features/cnxk.ini
based on driver file. Please converge cn9k.ini and cn10k.ini as cnxk.ini

^ permalink raw reply	[flat|nested] 87+ messages in thread

* Re: [PATCH v7 11/11] devtools: check event device doc tables
  2021-11-22  7:54             ` [PATCH v7 11/11] devtools: check event device doc tables skori
@ 2021-11-22 18:35               ` Jerin Jacob
  0 siblings, 0 replies; 87+ messages in thread
From: Jerin Jacob @ 2021-11-22 18:35 UTC (permalink / raw)
  To: Sunil Kumar Kori
  Cc: Jerin Jacob, Nikhil Rao, Pavan Nikhilesh, Hemant Agrawal,
	Nipun Gupta, Van Haaren, Harry, Mattias Rönnblom, Liang Ma,
	Thomas Monjalon, dpdk-dev

On Mon, Nov 22, 2021 at 1:33 PM <skori@marvell.com> wrote:
>
> From: Sunil Kumar Kori <skori@marvell.com>
>
> In this commit, check is added for event device, Rx,
> Tx, Crypto and Timer adapters tables for all supported
> drivers.
>
> Signed-off-by: Sunil Kumar Kori <skori@marvell.com>

Following errors[2] need to be taken care in
devtools/parse-event-support.sh by detecting it is using a common Rx
adapter or not?
I have spent some time fixing it, Please find below a test patch for same[1].
Please send the next version with fix. I am planning to merge all doc
patches(1-10) to next-event-dev tree and delegate this
patch(11/11) to Thomas as he is the maintainer for tooling.

[2]
doc out of sync for dsw
        Eth Rx adapter Features event_vector
        Eth Rx adapter Features multi_eventq
        Eth Rx adapter Features override_flow_id
doc out of sync for sw
        Eth Rx adapter Features event_vector
        Eth Rx adapter Features multi_eventq
        Eth Rx adapter Features override_flow_id


> ---
> v7:
>  - Rebased to 21.11 rc3
>  - Fix Tx adapter capabilities for SW driver
> v6:
>  - Rebased to 21.11 rc2
>  - Added feature matrices for all supported drivers
>  - Added doc vs code check script
>
> v5:
>  - Rebased to 21.11
>  - Added feature matrix for cnxk.
> v4:
>  - Rebased to 20.02
> v3:
>  - Removed .txt files to generate tables.
>  - Use conf.py script to generate tables.
>  - Add .ini file for all supported PMDs.
> v2:
>  - Review comments incorporated
>
>  devtools/check-doc-vs-code.sh   |  35 ++++++++
>  devtools/parse-event-support.sh | 149 ++++++++++++++++++++++++++++++++
>  2 files changed, 184 insertions(+)
>  create mode 100755 devtools/parse-event-support.sh
>
> diff --git a/devtools/check-doc-vs-code.sh b/devtools/check-doc-vs-code.sh
> index c58c239c87..608d6e0e2e 100755
> --- a/devtools/check-doc-vs-code.sh
> +++ b/devtools/check-doc-vs-code.sh
> @@ -66,11 +66,35 @@ check_rte_flow() # <driver>
>         fi
>  }
>
> +all_event_drivers()
> +{
> +       find $rootdir/drivers/event -mindepth 1 -maxdepth 1 -type d |
> +       sed 's,.*/,,' |
> +       sort
> +}
> +
> +check_event_dev() # <driver>
> +{
> +       code=$rootdir/drivers/event/$1
> +       doc=$rootdir/doc/guides/eventdevs/features/$1.ini
> +       [ -d $code ] || return 0
> +       [ -f $doc ] || return 0
> +       report=$($selfdir/parse-event-support.sh $code $doc)
> +       if [ -n "$report" ]; then
> +               error "doc out of sync for $1"
> +               echo "$report" | sed 's,^,\t,'
> +       fi
> +}
> +
>  if [ -z "$trusted_commit" ]; then
>         # check all
>         for driver in $(all_net_drivers); do
>                 check_rte_flow $driver
>         done
> +
> +       for driver in $(all_event_drivers); do
> +               check_event_dev $driver
> +       done
>         exit $result
>  fi
>
> @@ -81,4 +105,15 @@ if has_code_change 'RTE_FLOW_.*_TYPE_' ||
>                 check_rte_flow $driver
>         done
>  fi
> +
> +if has_code_change 'RTE_EVENT_DEV_CAP_*' ||
> +               has_code_change 'RTE_EVENT_ETH_RX_ADAPTER_CAP_*' ||
> +               has_code_change 'RTE_EVENT_ETH_TX_ADAPTER_CAP_*' ||
> +               has_code_change 'RTE_EVENT_CRYPTO_ADAPTER_CAP_*' ||
> +               has_code_change 'RTE_EVENT_TIMER_ADAPTER_CAP_*' ||
> +               has_file_change 'doc/guides/eventdevs/features'; then
> +       for driver in $(all_event_drivers); do
> +               check_event_dev $driver
> +       done
> +fi
>  exit $result
> diff --git a/devtools/parse-event-support.sh b/devtools/parse-event-support.sh
> new file mode 100755
> index 0000000000..d756977eec
> --- /dev/null
> +++ b/devtools/parse-event-support.sh
> @@ -0,0 +1,149 @@
> +#! /bin/sh -e
> +# SPDX-License-Identifier: BSD-3-Clause
> +# Copyright(C) 2021 Marvell.
> +
> +# Parse event dev support of a driver directory,
> +# and optionally show difference with a doc file in .ini format.
> +
> +dir=$1 # drivers/event/foo
> +ref=$2 # doc/guides/eventdevs/features/foo.ini
> +
> +if [ -z "$dir" ]; then
> +       echo "directory argument is required" >&2
> +       exit 1
> +fi
> +
> +# sorting order
> +export LC_COLLATE=C
> +
> +# generate INI section
> +list() # <title> <pattern>
> +{
> +       echo "[$1]"
> +       git grep -who "$2[[:alnum:]_]*" $dir | sort -u |
> +       awk 'sub(/'$2'/, "") {printf "%-20s = Y\n", tolower($0)}'
> +}
> +
> +event_dev_sched_support()
> +{
> +       title="Scheduling Features"
> +       pattern=$(echo "RTE_EVENT_DEV_CAP_" | awk '{print toupper($0)}')
> +       list "$title" "$pattern" | grep -vwE 'void|indirect|end'

void| in... copy-paste issue from rte_flow.

> +}
> +
> +event_dev_rx_adptr_support()
> +{
> +       title="Eth Rx adapter Features"
> +       pattern=$(echo "RTE_EVENT_ETH_RX_ADAPTER_CAP_" |
> +               awk '{print toupper($0)}')
> +       list "$title" "$pattern" | grep -vwE 'void|indirect|end'
> +}
> +
> +event_dev_tx_adptr_support()
> +{
> +       title="Eth Tx adapter Features"
> +       pattern=$(echo "RTE_EVENT_ETH_TX_ADAPTER_CAP_" |
> +               awk '{print toupper($0)}')
> +       list "$title" "$pattern" | grep -vwE 'void|indirect|end'
> +}
> +
> +event_dev_crypto_adptr_support()
> +{
> +       title="Crypto adapter Features"
> +       pattern=$(echo "RTE_EVENT_CRYPTO_ADAPTER_CAP_" |
> +               awk '{print toupper($0)}')
> +       list "$title" "$pattern" | grep -vwE 'void|indirect|end'
> +}
> +
> +event_dev_timer_adptr_support()
> +{
> +       title="Timer adapter Features"
> +       pattern=$(echo "RTE_EVENT_TIMER_ADAPTER_CAP_" |
> +               awk '{print toupper($0)}')
> +       list "$title" "$pattern" | grep -vwE 'void|indirect|end'
> +}
> +
> +if [ -z "$ref" ]; then # generate full tables
> +       event_dev_sched_support
> +       echo
> +       event_dev_rx_adptr_support
> +       echo
> +       event_dev_tx_adptr_support
> +       echo
> +       event_dev_crypto_adptr_support
> +       echo
> +       event_dev_timer_adptr_support
> +       exit 0
> +fi
> +
> +# compare with reference input
> +event_dev_sched_compare()
> +{
> +       section="Scheduling Features]"
> +       {
> +               event_dev_sched_support
> +               sed -n "/$section/,/]/p" "$ref" | sed '/^$/d'
> +       } |
> +       sed '/]/d' | # ignore section title
> +       sed 's, *=.*,,' | # ignore value (better in doc than generated one)
> +       sort | uniq -u | # show differences
> +       sed "s,^,Scheduling Features ," # prefix with category name
> +}
> +
> +event_dev_rx_adptr_compare()
> +{
> +       section="Eth Rx adapter Features]"
> +       {
> +               event_dev_rx_adptr_support
> +               sed -n "/$section/,/]/p" "$ref" | sed '/^$/d'
> +       } |
> +       sed '/]/d' | # ignore section title
> +       sed 's, *=.*,,' | # ignore value (better in doc than generated one)
> +       sort | uniq -u | # show differences
> +       sed "s,^,Eth Rx adapter Features ," # prefix with category name
> +}
> +
> +event_dev_tx_adptr_compare()
> +{
> +       section="Eth Tx adapter Features]"
> +       {
> +               event_dev_tx_adptr_support
> +               sed -n "/$section/,/]/p" "$ref" | sed '/^$/d'
> +       } |
> +       sed '/]/d' | # ignore section title
> +       sed 's, *=.*,,' | # ignore value (better in doc than generated one)
> +       sort | uniq -u | # show differences
> +       sed "s,^,Eth Tx adapter Features ," # prefix with category name
> +}
> +
> +event_dev_crypto_adptr_compare()
> +{
> +       section="Crypto adapter Features]"
> +       {
> +               event_dev_crypto_adptr_support
> +               sed -n "/$section/,/]/p" "$ref" | sed '/^$/d'
> +       } |
> +       sed '/]/d' | # ignore section title
> +       sed 's, *=.*,,' | # ignore value (better in doc than generated one)
> +       sort | uniq -u | # show differences
> +       sed "s,^,Crypto adapter Features ," # prefix with category name
> +}
> +
> +event_dev_crypto_adptr_compare()

event_dev_crypto_timer_compare

> +{
> +       section="Timer adapter Features]"
> +       {
> +               event_dev_timer_adptr_support
> +               sed -n "/$section/,/]/p" "$ref" | sed '/^$/d'
> +       } |
> +       sed '/]/d' | # ignore section title
> +       sed 's, *=.*,,' | # ignore value (better in doc than generated one)
> +       sort | uniq -u | # show differences
> +       sed "s,^,Timer adapter Features ," # prefix with category name
> +}
> +
> +event_dev_sched_compare
> +event_dev_rx_adptr_compare
> +event_dev_tx_adptr_compare
> +event_dev_crypto_adptr_compare
> +event_dev_crypto_adptr_compare

event_dev_crypto_timer_compare

[1

 event_dev_crypto_adptr_support()
@@ -52,7 +65,7 @@ event_dev_crypto_adptr_support()
        title="Crypto adapter Features"
        pattern=$(echo "RTE_EVENT_CRYPTO_ADAPTER_CAP_" |
                awk '{print toupper($0)}')
-       list "$title" "$pattern" | grep -vwE 'void|indirect|end'
+       list "$title" "$pattern" ""
 }

 event_dev_timer_adptr_support()
@@ -60,7 +73,7 @@ event_dev_timer_adptr_support()
        title="Timer adapter Features"
        pattern=$(echo "RTE_EVENT_TIMER_ADAPTER_CAP_" |
                awk '{print toupper($0)}')
-       list "$title" "$pattern" | grep -vwE 'void|indirect|end'
+       list "$title" "$pattern" ""
 }

 if [ -z "$ref" ]; then # generate full tables
@@ -129,7 +142,7 @@ event_dev_crypto_adptr_compare()
        sed "s,^,Crypto adapter Features ," # prefix with category name
 }

-event_dev_crypto_adptr_compare()
+event_dev_timer_adptr_compare()
 {
        section="Timer adapter Features]"
        {
@@ -146,4 +159,4 @@ event_dev_sched_compare
 event_dev_rx_adptr_compare
 event_dev_tx_adptr_compare
 event_dev_crypto_adptr_compare
-event_dev_crypto_adptr_compare
+event_dev_timer_adptr_compare]
diff --git a/devtools/parse-event-support.sh b/devtools/parse-event-support.sh
index d756977eec..f8e6bb0db2 100755
--- a/devtools/parse-event-support.sh
+++ b/devtools/parse-event-support.sh
@@ -16,19 +16,31 @@ fi
 # sorting order
 export LC_COLLATE=C

+check_sw_capa()
+{
+       driver=$(echo "$dir" | cut -d / -f 3)
+       if [ "$driver" == "dsw" ] || [ "$driver" == "sw" ] ; then
+               return 1
+       else
+               return 0
+       fi
+}
+
 # generate INI section
-list() # <title> <pattern>
+list() # <title> <pattern> <extra_patterns>
 {
        echo "[$1]"
-       git grep -who "$2[[:alnum:]_]*" $dir | sort -u |
-       awk 'sub(/'$2'/, "") {printf "%-20s = Y\n", tolower($0)}'
+       words=$(git grep -who "$2[[:alnum:]_]*" $dir)
+       words+=$(echo -e "$3")
+       echo "$words" | sort -u |
+               awk 'sub(/'$2'/, "") {printf "%-20s = Y\n", tolower($0)}'
 }

 event_dev_sched_support()
 {
        title="Scheduling Features"
        pattern=$(echo "RTE_EVENT_DEV_CAP_" | awk '{print toupper($0)}')
-       list "$title" "$pattern" | grep -vwE 'void|indirect|end'
+       list "$title" "$pattern" ""
 }

 event_dev_rx_adptr_support()
@@ -36,7 +48,8 @@ event_dev_rx_adptr_support()
        title="Eth Rx adapter Features"
        pattern=$(echo "RTE_EVENT_ETH_RX_ADAPTER_CAP_" |
                awk '{print toupper($0)}')
-       list "$title" "$pattern" | grep -vwE 'void|indirect|end'
+       check_sw_capa ||
extra='RTE_EVENT_ETH_RX_ADAPTER_CAP_OVERRIDE_FLOW_ID\nRTE_EVENT_ETH_RX_ADAPTER_CAP_MULTI_EVENTQ\nRTE_EVENT_ETH_RX_ADAPTER_CAP_EVENT_VECTOR\n'
+       list "$title" "$pattern" "$extra"
 }

 event_dev_tx_adptr_support()
@@ -44,7 +57,7 @@ event_dev_tx_adptr_support()
        title="Eth Tx adapter Features"
        pattern=$(echo "RTE_EVENT_ETH_TX_ADAPTER_CAP_" |
                awk '{print toupper($0)}')
-       list "$title" "$pattern" | grep -vwE 'void|indirect|end'
+       list "$title" "$pattern" ""
 }



> --
> 2.25.1
>

^ permalink raw reply	[flat|nested] 87+ messages in thread

* [PATCH v8 01/10] doc: add skeleton for eventdevs feature matrices
  2021-11-22  7:54           ` [PATCH v7 01/11] doc: add skeleton for eventdevs feature matrices skori
                               ` (9 preceding siblings ...)
  2021-11-22  7:54             ` [PATCH v7 11/11] devtools: check event device doc tables skori
@ 2021-11-23 11:07             ` skori
  2021-11-23 11:07               ` [PATCH v8 02/10] doc: update eventdev feature matrix for octeontx skori
                                 ` (12 more replies)
  10 siblings, 13 replies; 87+ messages in thread
From: skori @ 2021-11-23 11:07 UTC (permalink / raw)
  To: jerinj, nikhil.rao, pbhagavatula, hemant.agrawal, nipun.gupta,
	harry.van.haaren, mattias.ronnblom, liang.j.ma
  Cc: dev, Sunil Kumar Kori

From: Sunil Kumar Kori <skori@marvell.com>

Patch adds skeleton for feature matrices for event dev
and Rx/Tx adapters.

Along with, .ini files are added for all supported PMDs.

Signed-off-by: Sunil Kumar Kori <skori@marvell.com>
---
v8:
 - Fix script dump for dsw and SW driver
 - Review comments incorporated
v7:
 - Rebased to 21.11 rc3
 - Fix Tx adapter capabilities for SW driver
v6:
 - Rebased to 21.11 rc2
 - Added feature matrices for all supported drivers
 - Added doc vs code check script
 
v5:
 - Rebased to 21.11
 - Added feature matrix for cnxk.
v4:
 - Rebased to 20.02
v3:
 - Removed .txt files to generate tables.
 - Use conf.py script to generate tables.
 - Add .ini file for all supported PMDs.
v2:
 - Review comments incorporated

 .gitignore                                  |  5 ++
 doc/guides/conf.py                          | 25 ++++++++++
 doc/guides/eventdevs/features/cnxk.ini      | 14 ++++++
 doc/guides/eventdevs/features/default.ini   | 51 +++++++++++++++++++++
 doc/guides/eventdevs/features/dpaa.ini      | 14 ++++++
 doc/guides/eventdevs/features/dpaa2.ini     | 14 ++++++
 doc/guides/eventdevs/features/dsw.ini       | 14 ++++++
 doc/guides/eventdevs/features/octeontx.ini  | 14 ++++++
 doc/guides/eventdevs/features/octeontx2.ini | 14 ++++++
 doc/guides/eventdevs/features/opdl.ini      | 14 ++++++
 doc/guides/eventdevs/features/sw.ini        | 14 ++++++
 doc/guides/eventdevs/index.rst              |  1 +
 doc/guides/eventdevs/overview.rst           | 40 ++++++++++++++++
 13 files changed, 234 insertions(+)
 create mode 100644 doc/guides/eventdevs/features/cnxk.ini
 create mode 100644 doc/guides/eventdevs/features/default.ini
 create mode 100644 doc/guides/eventdevs/features/dpaa.ini
 create mode 100644 doc/guides/eventdevs/features/dpaa2.ini
 create mode 100644 doc/guides/eventdevs/features/dsw.ini
 create mode 100644 doc/guides/eventdevs/features/octeontx.ini
 create mode 100644 doc/guides/eventdevs/features/octeontx2.ini
 create mode 100644 doc/guides/eventdevs/features/opdl.ini
 create mode 100644 doc/guides/eventdevs/features/sw.ini
 create mode 100644 doc/guides/eventdevs/overview.rst

diff --git a/.gitignore b/.gitignore
index b98a43a601..212c7aa28e 100644
--- a/.gitignore
+++ b/.gitignore
@@ -16,6 +16,11 @@ doc/guides/regexdevs/overview_feature_table.txt
 doc/guides/vdpadevs/overview_feature_table.txt
 doc/guides/bbdevs/overview_feature_table.txt
 doc/guides/gpus/overview_feature_table.txt
+doc/guides/eventdevs/overview_feature_table.txt
+doc/guides/eventdevs/overview_rx_adptr_feature_table.txt
+doc/guides/eventdevs/overview_tx_adptr_feature_table.txt
+doc/guides/eventdevs/overview_crypto_adptr_feature_table.txt
+doc/guides/eventdevs/overview_timer_adptr_feature_table.txt
 
 # ignore generated ctags/cscope files
 cscope.out.po
diff --git a/doc/guides/conf.py b/doc/guides/conf.py
index e6ce929bc8..1743ce301f 100644
--- a/doc/guides/conf.py
+++ b/doc/guides/conf.py
@@ -401,6 +401,31 @@ def setup(app):
                             'Features',
                             'Features availability in GPU drivers',
                             'Feature')
+    table_file = dirname(__file__) + '/eventdevs/overview_feature_table.txt'
+    generate_overview_table(table_file, 1,
+                            'Scheduling Features',
+                            'Features availability in eventdev drivers',
+                            'Feature')
+    table_file = dirname(__file__) + '/eventdevs/overview_rx_adptr_feature_table.txt'
+    generate_overview_table(table_file, 2,
+                            'Eth Rx adapter Features',
+                            'Features availability for Ethdev Rx adapters',
+                            'Feature')
+    table_file = dirname(__file__) + '/eventdevs/overview_tx_adptr_feature_table.txt'
+    generate_overview_table(table_file, 3,
+                            'Eth Tx adapter Features',
+                            'Features availability for Ethdev Tx adapters',
+                            'Feature')
+    table_file = dirname(__file__) + '/eventdevs/overview_crypto_adptr_feature_table.txt'
+    generate_overview_table(table_file, 4,
+                            'Crypto adapter Features',
+                            'Features availability for Crypto adapters',
+                            'Feature')
+    table_file = dirname(__file__) + '/eventdevs/overview_timer_adptr_feature_table.txt'
+    generate_overview_table(table_file, 5,
+                            'Timer adapter Features',
+                            'Features availability for Timer adapters',
+                            'Feature')
 
     if LooseVersion(sphinx_version) < LooseVersion('1.3.1'):
         print('Upgrade sphinx to version >= 1.3.1 for '
diff --git a/doc/guides/eventdevs/features/cnxk.ini b/doc/guides/eventdevs/features/cnxk.ini
new file mode 100644
index 0000000000..480b5d03c6
--- /dev/null
+++ b/doc/guides/eventdevs/features/cnxk.ini
@@ -0,0 +1,14 @@
+;
+; Supported features of the 'cnxk' eventdev driver.
+;
+; Refer to default.ini for the full list of available PMD features.
+;
+[Scheduling Features]
+
+[Eth Rx adapter Features]
+
+[Eth Tx adapter Features]
+
+[Crypto adapter Features]
+
+[Timer adapter Features]
diff --git a/doc/guides/eventdevs/features/default.ini b/doc/guides/eventdevs/features/default.ini
new file mode 100644
index 0000000000..5b16c45193
--- /dev/null
+++ b/doc/guides/eventdevs/features/default.ini
@@ -0,0 +1,51 @@
+;
+; Features of a default eventdev driver.
+;
+; This file defines the features that are valid for inclusion in
+; the other driver files and also the order that they appear in
+; the features table in the documentation.
+;
+[Scheduling Features]
+queue_qos                =
+event_qos                =
+distributed_sched        =
+queue_all_types          =
+burst_mode               =
+implicit_release_disable =
+nonseq_mode              =
+runtime_port_link        =
+multiple_queue_port      =
+carry_flow_id            =
+maintenance_free         =
+
+;
+; Features of a default Ethernet Rx adapter.
+;
+[Eth Rx adapter Features]
+internal_port    =
+multi_eventq     =
+override_flow_id =
+event_vector     =
+
+;
+; Features of a default Ethernet Tx adapter.
+;
+[Eth Tx adapter Features]
+internal_port =
+event_vector  =
+
+;
+; Features of a default Crypto adapter.
+;
+[Crypto adapter Features]
+internal_port_op_new     =
+internal_port_op_fwd     =
+internal_port_qp_ev_bind =
+session_private_data     =
+
+;
+; Features of a default Timer adapter.
+;
+[Timer adapter Features]
+internal_port =
+periodic      =
diff --git a/doc/guides/eventdevs/features/dpaa.ini b/doc/guides/eventdevs/features/dpaa.ini
new file mode 100644
index 0000000000..2a88b81e05
--- /dev/null
+++ b/doc/guides/eventdevs/features/dpaa.ini
@@ -0,0 +1,14 @@
+;
+; Supported features of the 'dpaa' eventdev driver.
+;
+; Refer to default.ini for the full list of available PMD features.
+;
+[Scheduling Features]
+
+[Eth Rx adapter Features]
+
+[Eth Tx adapter Features]
+
+[Crypto adapter Features]
+
+[Timer adapter Features]
diff --git a/doc/guides/eventdevs/features/dpaa2.ini b/doc/guides/eventdevs/features/dpaa2.ini
new file mode 100644
index 0000000000..67988af042
--- /dev/null
+++ b/doc/guides/eventdevs/features/dpaa2.ini
@@ -0,0 +1,14 @@
+;
+; Supported features of the 'dpaa2' eventdev driver.
+;
+; Refer to default.ini for the full list of available PMD features.
+;
+[Scheduling Features]
+
+[Eth Rx adapter Features]
+
+[Eth Tx adapter Features]
+
+[Crypto adapter Features]
+
+[Timer adapter Features]
diff --git a/doc/guides/eventdevs/features/dsw.ini b/doc/guides/eventdevs/features/dsw.ini
new file mode 100644
index 0000000000..7de3f7b91b
--- /dev/null
+++ b/doc/guides/eventdevs/features/dsw.ini
@@ -0,0 +1,14 @@
+;
+; Supported features of the 'distributed software' eventdev driver.
+;
+; Refer to default.ini for the full list of available PMD features.
+;
+[Scheduling Features]
+
+[Eth Rx adapter Features]
+
+[Eth Tx adapter Features]
+
+[Crypto adapter Features]
+
+[Timer adapter Features]
diff --git a/doc/guides/eventdevs/features/octeontx.ini b/doc/guides/eventdevs/features/octeontx.ini
new file mode 100644
index 0000000000..ac06d43d03
--- /dev/null
+++ b/doc/guides/eventdevs/features/octeontx.ini
@@ -0,0 +1,14 @@
+;
+; Supported features of the 'octeontx' eventdev driver.
+;
+; Refer to default.ini for the full list of available PMD features.
+;
+[Scheduling Features]
+
+[Eth Rx adapter Features]
+
+[Eth Tx adapter Features]
+
+[Crypto adapter Features]
+
+[Timer adapter Features]
diff --git a/doc/guides/eventdevs/features/octeontx2.ini b/doc/guides/eventdevs/features/octeontx2.ini
new file mode 100644
index 0000000000..3bce593858
--- /dev/null
+++ b/doc/guides/eventdevs/features/octeontx2.ini
@@ -0,0 +1,14 @@
+;
+; Supported features of the 'octeontx2' eventdev driver.
+;
+; Refer to default.ini for the full list of available PMD features.
+;
+[Scheduling Features]
+
+[Eth Rx adapter Features]
+
+[Eth Tx adapter Features]
+
+[Crypto adapter Features]
+
+[Timer adapter Features]
diff --git a/doc/guides/eventdevs/features/opdl.ini b/doc/guides/eventdevs/features/opdl.ini
new file mode 100644
index 0000000000..73922ca79f
--- /dev/null
+++ b/doc/guides/eventdevs/features/opdl.ini
@@ -0,0 +1,14 @@
+;
+; Supported features of 'Ordered Packet Distribution Library' eventdev driver.
+;
+; Refer to default.ini for the full list of available PMD features.
+;
+[Scheduling Features]
+
+[Eth Rx adapter Features]
+
+[Eth Tx adapter Features]
+
+[Crypto adapter Features]
+
+[Timer adapter Features]
diff --git a/doc/guides/eventdevs/features/sw.ini b/doc/guides/eventdevs/features/sw.ini
new file mode 100644
index 0000000000..5d787a6220
--- /dev/null
+++ b/doc/guides/eventdevs/features/sw.ini
@@ -0,0 +1,14 @@
+;
+; Supported features of the 'software' eventdev driver.
+;
+; Refer to default.ini for the full list of available PMD features.
+;
+[Scheduling Features]
+
+[Eth Rx adapter Features]
+
+[Eth Tx adapter Features]
+
+[Crypto adapter Features]
+
+[Timer adapter Features]
diff --git a/doc/guides/eventdevs/index.rst b/doc/guides/eventdevs/index.rst
index 2143025390..b11657f7ae 100644
--- a/doc/guides/eventdevs/index.rst
+++ b/doc/guides/eventdevs/index.rst
@@ -11,6 +11,7 @@ application through the eventdev API.
     :maxdepth: 2
     :numbered:
 
+    overview
     cnxk
     dlb2
     dpaa
diff --git a/doc/guides/eventdevs/overview.rst b/doc/guides/eventdevs/overview.rst
new file mode 100644
index 0000000000..3c5ee515f8
--- /dev/null
+++ b/doc/guides/eventdevs/overview.rst
@@ -0,0 +1,40 @@
+..  SPDX-License-Identifier: BSD-3-Clause
+    Copyright(C) 2021 Marvell.
+
+Event Device Supported Functionality Matrices
+=============================================
+
+Event device supported features
+-------------------------------
+
+.. _table_eventdev_pmd_features:
+
+.. include:: overview_feature_table.txt
+
+Ethernet Rx adapter supported features
+--------------------------------------
+
+.. _table_eventdev_rx_adapter_features:
+
+.. include:: overview_rx_adptr_feature_table.txt
+
+Ethernet Tx adapter supported features
+--------------------------------------
+
+.. _table_eventdev_tx_adapter_features:
+
+.. include:: overview_tx_adptr_feature_table.txt
+
+Crypto device adapter supported features
+----------------------------------------
+
+.. _table_cryptodev_adapter_features:
+
+.. include:: overview_crypto_adptr_feature_table.txt
+
+Timer adapter supported features
+--------------------------------
+
+.. _table_timer_adapter_features:
+
+.. include:: overview_timer_adptr_feature_table.txt
-- 
2.25.1


^ permalink raw reply	[flat|nested] 87+ messages in thread

* [PATCH v8 02/10] doc: update eventdev feature matrix for octeontx
  2021-11-23 11:07             ` [PATCH v8 01/10] doc: add skeleton for eventdevs feature matrices skori
@ 2021-11-23 11:07               ` skori
  2021-11-23 11:07               ` [PATCH v8 03/10] doc: update eventdev feature matrix for octeontx2 skori
                                 ` (11 subsequent siblings)
  12 siblings, 0 replies; 87+ messages in thread
From: skori @ 2021-11-23 11:07 UTC (permalink / raw)
  To: jerinj, nikhil.rao, pbhagavatula, hemant.agrawal, nipun.gupta,
	harry.van.haaren, mattias.ronnblom, liang.j.ma
  Cc: dev, Sunil Kumar Kori

From: Sunil Kumar Kori <skori@marvell.com>

Patch updates eventdev and adapters feature matrices for
octeontx platform.

Signed-off-by: Sunil Kumar Kori <skori@marvell.com>
---
v8:
 - Fix script dump for dsw and SW driver
 - Review comments incorporated
v7:
 - Rebased to 21.11 rc3
 - Fix Tx adapter capabilities for SW driver
v6:
 - Rebased to 21.11 rc2
 - Added feature matrices for all supported drivers
 - Added doc vs code check script
 
v5:
 - Rebased to 21.11
 - Added feature matrix for cnxk.
v4:
 - Rebased to 20.02
v3:
 - Removed .txt files to generate tables.
 - Use conf.py script to generate tables.
 - Add .ini file for all supported PMDs.
v2:
 - Review comments incorporated

 doc/guides/eventdevs/features/octeontx.ini | 13 +++++++++++++
 1 file changed, 13 insertions(+)

diff --git a/doc/guides/eventdevs/features/octeontx.ini b/doc/guides/eventdevs/features/octeontx.ini
index ac06d43d03..ec044e6289 100644
--- a/doc/guides/eventdevs/features/octeontx.ini
+++ b/doc/guides/eventdevs/features/octeontx.ini
@@ -4,11 +4,24 @@
 ; Refer to default.ini for the full list of available PMD features.
 ;
 [Scheduling Features]
+queue_qos                  = Y
+distributed_sched          = Y
+queue_all_types            = Y
+nonseq_mode                = Y
+runtime_port_link          = Y
+multiple_queue_port        = Y
+carry_flow_id              = Y
+maintenance_free           = Y
 
 [Eth Rx adapter Features]
+internal_port              = Y
 
 [Eth Tx adapter Features]
+internal_port              = Y
 
 [Crypto adapter Features]
+internal_port_op_fwd       = Y
+session_private_data       = Y
 
 [Timer adapter Features]
+internal_port              = Y
-- 
2.25.1


^ permalink raw reply	[flat|nested] 87+ messages in thread

* [PATCH v8 03/10] doc: update eventdev feature matrix for octeontx2
  2021-11-23 11:07             ` [PATCH v8 01/10] doc: add skeleton for eventdevs feature matrices skori
  2021-11-23 11:07               ` [PATCH v8 02/10] doc: update eventdev feature matrix for octeontx skori
@ 2021-11-23 11:07               ` skori
  2021-11-23 11:07               ` [PATCH v8 04/10] doc: update eventdev feature matrix for cnxk skori
                                 ` (10 subsequent siblings)
  12 siblings, 0 replies; 87+ messages in thread
From: skori @ 2021-11-23 11:07 UTC (permalink / raw)
  To: jerinj, nikhil.rao, pbhagavatula, hemant.agrawal, nipun.gupta,
	harry.van.haaren, mattias.ronnblom, liang.j.ma
  Cc: dev, Sunil Kumar Kori

From: Sunil Kumar Kori <skori@marvell.com>

Patch updates eventdev and adapters feature matrices for
octeontx2 platform.

Signed-off-by: Sunil Kumar Kori <skori@marvell.com>
---
v8:
 - Fix script dump for dsw and SW driver
 - Review comments incorporated
v7:
 - Rebased to 21.11 rc3
 - Fix Tx adapter capabilities for SW driver
v6:
 - Rebased to 21.11 rc2
 - Added feature matrices for all supported drivers
 - Added doc vs code check script
 
v5:
 - Rebased to 21.11
 - Added feature matrix for cnxk.
v4:
 - Rebased to 20.02
v3:
 - Removed .txt files to generate tables.
 - Use conf.py script to generate tables.
 - Add .ini file for all supported PMDs.
v2:
 - Review comments incorporated

 doc/guides/eventdevs/features/octeontx2.ini | 16 ++++++++++++++++
 1 file changed, 16 insertions(+)

diff --git a/doc/guides/eventdevs/features/octeontx2.ini b/doc/guides/eventdevs/features/octeontx2.ini
index 3bce593858..05b84beb6e 100644
--- a/doc/guides/eventdevs/features/octeontx2.ini
+++ b/doc/guides/eventdevs/features/octeontx2.ini
@@ -4,11 +4,27 @@
 ; Refer to default.ini for the full list of available PMD features.
 ;
 [Scheduling Features]
+queue_qos                  = Y
+distributed_sched          = Y
+queue_all_types            = Y
+nonseq_mode                = Y
+runtime_port_link          = Y
+multiple_queue_port        = Y
+carry_flow_id              = Y
+maintenance_free           = Y
 
 [Eth Rx adapter Features]
+internal_port              = Y
+multi_eventq               = Y
 
 [Eth Tx adapter Features]
+internal_port              = Y
 
 [Crypto adapter Features]
+internal_port_op_new       = Y
+internal_port_op_fwd       = Y
+internal_port_qp_ev_bind   = Y
 
 [Timer adapter Features]
+internal_port              = Y
+periodic                   = Y
-- 
2.25.1


^ permalink raw reply	[flat|nested] 87+ messages in thread

* [PATCH v8 04/10] doc: update eventdev feature matrix for cnxk
  2021-11-23 11:07             ` [PATCH v8 01/10] doc: add skeleton for eventdevs feature matrices skori
  2021-11-23 11:07               ` [PATCH v8 02/10] doc: update eventdev feature matrix for octeontx skori
  2021-11-23 11:07               ` [PATCH v8 03/10] doc: update eventdev feature matrix for octeontx2 skori
@ 2021-11-23 11:07               ` skori
  2021-11-23 11:07               ` [PATCH v8 05/10] doc: update eventdev feature matrix for dpaa skori
                                 ` (9 subsequent siblings)
  12 siblings, 0 replies; 87+ messages in thread
From: skori @ 2021-11-23 11:07 UTC (permalink / raw)
  To: jerinj, nikhil.rao, pbhagavatula, hemant.agrawal, nipun.gupta,
	harry.van.haaren, mattias.ronnblom, liang.j.ma
  Cc: dev, Sunil Kumar Kori

From: Sunil Kumar Kori <skori@marvell.com>

Patch updates eventdev and adapters feature matrices for
cnxk platform.

Signed-off-by: Sunil Kumar Kori <skori@marvell.com>
---
v8:
 - Fix script dump for dsw and SW driver
 - Review comments incorporated
v7:
 - Rebased to 21.11 rc3
 - Fix Tx adapter capabilities for SW driver
v6:
 - Rebased to 21.11 rc2
 - Added feature matrices for all supported drivers
 - Added doc vs code check script
 
v5:
 - Rebased to 21.11
 - Added feature matrix for cnxk.
v4:
 - Rebased to 20.02
v3:
 - Removed .txt files to generate tables.
 - Use conf.py script to generate tables.
 - Add .ini file for all supported PMDs.
v2:
 - Review comments incorporated

 doc/guides/eventdevs/features/cnxk.ini | 17 +++++++++++++++++
 1 file changed, 17 insertions(+)

diff --git a/doc/guides/eventdevs/features/cnxk.ini b/doc/guides/eventdevs/features/cnxk.ini
index 480b5d03c6..7633c6e3a2 100644
--- a/doc/guides/eventdevs/features/cnxk.ini
+++ b/doc/guides/eventdevs/features/cnxk.ini
@@ -4,11 +4,28 @@
 ; Refer to default.ini for the full list of available PMD features.
 ;
 [Scheduling Features]
+queue_qos                  = Y
+distributed_sched          = Y
+queue_all_types            = Y
+nonseq_mode                = Y
+runtime_port_link          = Y
+multiple_queue_port        = Y
+carry_flow_id              = Y
+maintenance_free           = Y
 
 [Eth Rx adapter Features]
+internal_port              = Y
+multi_eventq               = Y
+override_flow_id           = Y
+event_vector               = Y
 
 [Eth Tx adapter Features]
+internal_port              = Y
+event_vector               = Y
 
 [Crypto adapter Features]
+internal_port_op_fwd       = Y
+session_private_data       = Y
 
 [Timer adapter Features]
+internal_port              = Y
-- 
2.25.1


^ permalink raw reply	[flat|nested] 87+ messages in thread

* [PATCH v8 05/10] doc: update eventdev feature matrix for dpaa
  2021-11-23 11:07             ` [PATCH v8 01/10] doc: add skeleton for eventdevs feature matrices skori
                                 ` (2 preceding siblings ...)
  2021-11-23 11:07               ` [PATCH v8 04/10] doc: update eventdev feature matrix for cnxk skori
@ 2021-11-23 11:07               ` skori
  2021-11-23 11:07               ` [PATCH v8 06/10] doc: update eventdev feature matrix for dpaa2 skori
                                 ` (8 subsequent siblings)
  12 siblings, 0 replies; 87+ messages in thread
From: skori @ 2021-11-23 11:07 UTC (permalink / raw)
  To: jerinj, nikhil.rao, pbhagavatula, hemant.agrawal, nipun.gupta,
	harry.van.haaren, mattias.ronnblom, liang.j.ma
  Cc: dev, Sunil Kumar Kori

From: Sunil Kumar Kori <skori@marvell.com>

Patch updates eventdev and adapters feature matrices for
dpaa platform.

Signed-off-by: Sunil Kumar Kori <skori@marvell.com>
---
v8:
 - Fix script dump for dsw and SW driver
 - Review comments incorporated
v7:
 - Rebased to 21.11 rc3
 - Fix Tx adapter capabilities for SW driver
v6:
 - Rebased to 21.11 rc2
 - Added feature matrices for all supported drivers
 - Added doc vs code check script
 
v5:
 - Rebased to 21.11
 - Added feature matrix for cnxk.
v4:
 - Rebased to 20.02
v3:
 - Removed .txt files to generate tables.
 - Use conf.py script to generate tables.
 - Add .ini file for all supported PMDs.
v2:
 - Review comments incorporated

 doc/guides/eventdevs/features/dpaa.ini | 13 +++++++++++++
 1 file changed, 13 insertions(+)

diff --git a/doc/guides/eventdevs/features/dpaa.ini b/doc/guides/eventdevs/features/dpaa.ini
index 2a88b81e05..b73bfa02e5 100644
--- a/doc/guides/eventdevs/features/dpaa.ini
+++ b/doc/guides/eventdevs/features/dpaa.ini
@@ -4,11 +4,24 @@
 ; Refer to default.ini for the full list of available PMD features.
 ;
 [Scheduling Features]
+distributed_sched          = Y
+burst_mode                 = Y
+nonseq_mode                = Y
+multiple_queue_port        = Y
+carry_flow_id              = Y
+maintenance_free           = Y
 
 [Eth Rx adapter Features]
+internal_port              = Y
+multi_eventq               = Y
+override_flow_id           = Y
 
 [Eth Tx adapter Features]
+internal_port              = Y
 
 [Crypto adapter Features]
+internal_port_op_new       = Y
+internal_port_qp_ev_bind   = Y
+session_private_data       = Y
 
 [Timer adapter Features]
-- 
2.25.1


^ permalink raw reply	[flat|nested] 87+ messages in thread

* [PATCH v8 06/10] doc: update eventdev feature matrix for dpaa2
  2021-11-23 11:07             ` [PATCH v8 01/10] doc: add skeleton for eventdevs feature matrices skori
                                 ` (3 preceding siblings ...)
  2021-11-23 11:07               ` [PATCH v8 05/10] doc: update eventdev feature matrix for dpaa skori
@ 2021-11-23 11:07               ` skori
  2021-11-23 11:07               ` [PATCH v8 07/10] doc: update eventdev feature matrix for SW skori
                                 ` (7 subsequent siblings)
  12 siblings, 0 replies; 87+ messages in thread
From: skori @ 2021-11-23 11:07 UTC (permalink / raw)
  To: jerinj, nikhil.rao, pbhagavatula, hemant.agrawal, nipun.gupta,
	harry.van.haaren, mattias.ronnblom, liang.j.ma
  Cc: dev, Sunil Kumar Kori

From: Sunil Kumar Kori <skori@marvell.com>

Patch updates eventdev and adapters feature matrices for
dpaa2 platform.

Signed-off-by: Sunil Kumar Kori <skori@marvell.com>
---
v8:
 - Fix script dump for dsw and SW driver
 - Review comments incorporated
v7:
 - Rebased to 21.11 rc3
 - Fix Tx adapter capabilities for SW driver
v6:
 - Rebased to 21.11 rc2
 - Added feature matrices for all supported drivers
 - Added doc vs code check script
 
v5:
 - Rebased to 21.11
 - Added feature matrix for cnxk.
v4:
 - Rebased to 20.02
v3:
 - Removed .txt files to generate tables.
 - Use conf.py script to generate tables.
 - Add .ini file for all supported PMDs.
v2:
 - Review comments incorporated

 doc/guides/eventdevs/features/dpaa2.ini | 15 +++++++++++++++
 1 file changed, 15 insertions(+)

diff --git a/doc/guides/eventdevs/features/dpaa2.ini b/doc/guides/eventdevs/features/dpaa2.ini
index 67988af042..c935bd0cfc 100644
--- a/doc/guides/eventdevs/features/dpaa2.ini
+++ b/doc/guides/eventdevs/features/dpaa2.ini
@@ -4,11 +4,26 @@
 ; Refer to default.ini for the full list of available PMD features.
 ;
 [Scheduling Features]
+distributed_sched          = Y
+queue_all_types            = Y
+burst_mode                 = Y
+nonseq_mode                = Y
+runtime_port_link          = Y
+multiple_queue_port        = Y
+carry_flow_id              = Y
+maintenance_free           = Y
 
 [Eth Rx adapter Features]
+internal_port              = Y
+multi_eventq               = Y
+override_flow_id           = Y
 
 [Eth Tx adapter Features]
+internal_port              = Y
 
 [Crypto adapter Features]
+internal_port_op_new       = Y
+internal_port_qp_ev_bind   = Y
+session_private_data       = Y
 
 [Timer adapter Features]
-- 
2.25.1


^ permalink raw reply	[flat|nested] 87+ messages in thread

* [PATCH v8 07/10] doc: update eventdev feature matrix for SW
  2021-11-23 11:07             ` [PATCH v8 01/10] doc: add skeleton for eventdevs feature matrices skori
                                 ` (4 preceding siblings ...)
  2021-11-23 11:07               ` [PATCH v8 06/10] doc: update eventdev feature matrix for dpaa2 skori
@ 2021-11-23 11:07               ` skori
  2021-11-23 11:07               ` [PATCH v8 08/10] doc: update eventdev feature matrix for opdl skori
                                 ` (6 subsequent siblings)
  12 siblings, 0 replies; 87+ messages in thread
From: skori @ 2021-11-23 11:07 UTC (permalink / raw)
  To: jerinj, nikhil.rao, pbhagavatula, hemant.agrawal, nipun.gupta,
	harry.van.haaren, mattias.ronnblom, liang.j.ma
  Cc: dev, Sunil Kumar Kori

From: Sunil Kumar Kori <skori@marvell.com>

Patch updates eventdev and adapters feature matrices for
sw platform.

Signed-off-by: Sunil Kumar Kori <skori@marvell.com>
---
v8:
 - Fix script dump for dsw and SW driver
 - Review comments incorporated
v7:
 - Rebased to 21.11 rc3
 - Fix Tx adapter capabilities for SW driver
v6:
 - Rebased to 21.11 rc2
 - Added feature matrices for all supported drivers
 - Added doc vs code check script
 
v5:
 - Rebased to 21.11
 - Added feature matrix for cnxk.
v4:
 - Rebased to 20.02
v3:
 - Removed .txt files to generate tables.
 - Use conf.py script to generate tables.
 - Add .ini file for all supported PMDs.
v2:
 - Review comments incorporated

 doc/guides/eventdevs/features/sw.ini | 13 +++++++++++++
 1 file changed, 13 insertions(+)

diff --git a/doc/guides/eventdevs/features/sw.ini b/doc/guides/eventdevs/features/sw.ini
index 5d787a6220..8c89d3b8d2 100644
--- a/doc/guides/eventdevs/features/sw.ini
+++ b/doc/guides/eventdevs/features/sw.ini
@@ -4,11 +4,24 @@
 ; Refer to default.ini for the full list of available PMD features.
 ;
 [Scheduling Features]
+queue_qos                  = Y
+event_qos                  = Y
+burst_mode                 = Y
+implicit_release_disable   = Y
+nonseq_mode                = Y
+runtime_port_link          = Y
+multiple_queue_port        = Y
+carry_flow_id              = Y
+maintenance_free           = Y
 
 [Eth Rx adapter Features]
+multi_eventq               = Y
+override_flow_id           = Y
+event_vector               = Y
 
 [Eth Tx adapter Features]
 
 [Crypto adapter Features]
+session_private_data       = Y
 
 [Timer adapter Features]
-- 
2.25.1


^ permalink raw reply	[flat|nested] 87+ messages in thread

* [PATCH v8 08/10] doc: update eventdev feature matrix for opdl
  2021-11-23 11:07             ` [PATCH v8 01/10] doc: add skeleton for eventdevs feature matrices skori
                                 ` (5 preceding siblings ...)
  2021-11-23 11:07               ` [PATCH v8 07/10] doc: update eventdev feature matrix for SW skori
@ 2021-11-23 11:07               ` skori
  2021-11-23 11:07               ` [PATCH v8 09/10] doc: update eventdev feature matrix for dsw skori
                                 ` (5 subsequent siblings)
  12 siblings, 0 replies; 87+ messages in thread
From: skori @ 2021-11-23 11:07 UTC (permalink / raw)
  To: jerinj, nikhil.rao, pbhagavatula, hemant.agrawal, nipun.gupta,
	harry.van.haaren, mattias.ronnblom, liang.j.ma
  Cc: dev, Sunil Kumar Kori

From: Sunil Kumar Kori <skori@marvell.com>

Patch updates eventdev and adapters feature matrices for
opdl platform.

Signed-off-by: Sunil Kumar Kori <skori@marvell.com>
---
v8:
 - Fix script dump for dsw and SW driver
 - Review comments incorporated
v7:
 - Rebased to 21.11 rc3
 - Fix Tx adapter capabilities for SW driver
v6:
 - Rebased to 21.11 rc2
 - Added feature matrices for all supported drivers
 - Added doc vs code check script
 
v5:
 - Rebased to 21.11
 - Added feature matrix for cnxk.
v4:
 - Rebased to 20.02
v3:
 - Removed .txt files to generate tables.
 - Use conf.py script to generate tables.
 - Add .ini file for all supported PMDs.
v2:
 - Review comments incorporated

 doc/guides/eventdevs/features/opdl.ini | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/doc/guides/eventdevs/features/opdl.ini b/doc/guides/eventdevs/features/opdl.ini
index 73922ca79f..5cc35d3c77 100644
--- a/doc/guides/eventdevs/features/opdl.ini
+++ b/doc/guides/eventdevs/features/opdl.ini
@@ -4,11 +4,15 @@
 ; Refer to default.ini for the full list of available PMD features.
 ;
 [Scheduling Features]
+burst_mode                 = Y
+carry_flow_id              = Y
+maintenance_free           = Y
 
 [Eth Rx adapter Features]
 
 [Eth Tx adapter Features]
 
 [Crypto adapter Features]
+session_private_data       = Y
 
 [Timer adapter Features]
-- 
2.25.1


^ permalink raw reply	[flat|nested] 87+ messages in thread

* [PATCH v8 09/10] doc: update eventdev feature matrix for dsw
  2021-11-23 11:07             ` [PATCH v8 01/10] doc: add skeleton for eventdevs feature matrices skori
                                 ` (6 preceding siblings ...)
  2021-11-23 11:07               ` [PATCH v8 08/10] doc: update eventdev feature matrix for opdl skori
@ 2021-11-23 11:07               ` skori
  2021-11-23 11:07               ` [PATCH v8 10/10] devtools: check event device doc tables skori
                                 ` (4 subsequent siblings)
  12 siblings, 0 replies; 87+ messages in thread
From: skori @ 2021-11-23 11:07 UTC (permalink / raw)
  To: jerinj, nikhil.rao, pbhagavatula, hemant.agrawal, nipun.gupta,
	harry.van.haaren, mattias.ronnblom, liang.j.ma
  Cc: dev, Sunil Kumar Kori

From: Sunil Kumar Kori <skori@marvell.com>

Patch updates eventdev and adapters feature matrices for
dsw platform.

Signed-off-by: Sunil Kumar Kori <skori@marvell.com>
---
v8:
 - Fix script dump for dsw and SW driver
 - Review comments incorporated
v7:
 - Rebased to 21.11 rc3
 - Fix Tx adapter capabilities for SW driver
v6:
 - Rebased to 21.11 rc2
 - Added feature matrices for all supported drivers
 - Added doc vs code check script
 
v5:
 - Rebased to 21.11
 - Added feature matrix for cnxk.
v4:
 - Rebased to 20.02
v3:
 - Removed .txt files to generate tables.
 - Use conf.py script to generate tables.
 - Add .ini file for all supported PMDs.
v2:
 - Review comments incorporated

 doc/guides/eventdevs/features/dsw.ini | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/doc/guides/eventdevs/features/dsw.ini b/doc/guides/eventdevs/features/dsw.ini
index 7de3f7b91b..c8bc6b3f1d 100644
--- a/doc/guides/eventdevs/features/dsw.ini
+++ b/doc/guides/eventdevs/features/dsw.ini
@@ -4,11 +4,20 @@
 ; Refer to default.ini for the full list of available PMD features.
 ;
 [Scheduling Features]
+distributed_sched          = Y
+burst_mode                 = Y
+nonseq_mode                = Y
+multiple_queue_port        = Y
+carry_flow_id              = Y
 
 [Eth Rx adapter Features]
+multi_eventq               = Y
+override_flow_id           = Y
+event_vector               = Y
 
 [Eth Tx adapter Features]
 
 [Crypto adapter Features]
+session_private_data       = Y
 
 [Timer adapter Features]
-- 
2.25.1


^ permalink raw reply	[flat|nested] 87+ messages in thread

* [PATCH v8 10/10] devtools: check event device doc tables
  2021-11-23 11:07             ` [PATCH v8 01/10] doc: add skeleton for eventdevs feature matrices skori
                                 ` (7 preceding siblings ...)
  2021-11-23 11:07               ` [PATCH v8 09/10] doc: update eventdev feature matrix for dsw skori
@ 2021-11-23 11:07               ` skori
  2021-11-24 10:52                 ` Thomas Monjalon
  2021-11-24 10:03               ` [PATCH v8 01/10] doc: add skeleton for eventdevs feature matrices Thomas Monjalon
                                 ` (3 subsequent siblings)
  12 siblings, 1 reply; 87+ messages in thread
From: skori @ 2021-11-23 11:07 UTC (permalink / raw)
  To: jerinj, nikhil.rao, pbhagavatula, hemant.agrawal, nipun.gupta,
	harry.van.haaren, mattias.ronnblom, liang.j.ma, Thomas Monjalon
  Cc: dev, Sunil Kumar Kori

From: Sunil Kumar Kori <skori@marvell.com>

In this commit, check is added for event device, Rx,
Tx, Crypto and Timer adapters tables for all supported
drivers.

Signed-off-by: Sunil Kumar Kori <skori@marvell.com>
---
v8:
 - Fix script dump for dsw and SW driver
 - Review comments incorporated
v7:
 - Rebased to 21.11 rc3
 - Fix Tx adapter capabilities for SW driver
v6:
 - Rebased to 21.11 rc2
 - Added feature matrices for all supported drivers
 - Added doc vs code check script
 
v5:
 - Rebased to 21.11
 - Added feature matrix for cnxk.
v4:
 - Rebased to 20.02
v3:
 - Removed .txt files to generate tables.
 - Use conf.py script to generate tables.
 - Add .ini file for all supported PMDs.
v2:
 - Review comments incorporated

 devtools/check-doc-vs-code.sh   |  35 +++++++
 devtools/parse-event-support.sh | 165 ++++++++++++++++++++++++++++++++
 2 files changed, 200 insertions(+)
 create mode 100755 devtools/parse-event-support.sh

diff --git a/devtools/check-doc-vs-code.sh b/devtools/check-doc-vs-code.sh
index c58c239c87..608d6e0e2e 100755
--- a/devtools/check-doc-vs-code.sh
+++ b/devtools/check-doc-vs-code.sh
@@ -66,11 +66,35 @@ check_rte_flow() # <driver>
 	fi
 }
 
+all_event_drivers()
+{
+	find $rootdir/drivers/event -mindepth 1 -maxdepth 1 -type d |
+	sed 's,.*/,,' |
+	sort
+}
+
+check_event_dev() # <driver>
+{
+	code=$rootdir/drivers/event/$1
+	doc=$rootdir/doc/guides/eventdevs/features/$1.ini
+	[ -d $code ] || return 0
+	[ -f $doc ] || return 0
+	report=$($selfdir/parse-event-support.sh $code $doc)
+	if [ -n "$report" ]; then
+		error "doc out of sync for $1"
+		echo "$report" | sed 's,^,\t,'
+	fi
+}
+
 if [ -z "$trusted_commit" ]; then
 	# check all
 	for driver in $(all_net_drivers); do
 		check_rte_flow $driver
 	done
+
+	for driver in $(all_event_drivers); do
+		check_event_dev $driver
+	done
 	exit $result
 fi
 
@@ -81,4 +105,15 @@ if has_code_change 'RTE_FLOW_.*_TYPE_' ||
 		check_rte_flow $driver
 	done
 fi
+
+if has_code_change 'RTE_EVENT_DEV_CAP_*' ||
+		has_code_change 'RTE_EVENT_ETH_RX_ADAPTER_CAP_*' ||
+		has_code_change 'RTE_EVENT_ETH_TX_ADAPTER_CAP_*' ||
+		has_code_change 'RTE_EVENT_CRYPTO_ADAPTER_CAP_*' ||
+		has_code_change 'RTE_EVENT_TIMER_ADAPTER_CAP_*' ||
+		has_file_change 'doc/guides/eventdevs/features'; then
+	for driver in $(all_event_drivers); do
+		check_event_dev $driver
+	done
+fi
 exit $result
diff --git a/devtools/parse-event-support.sh b/devtools/parse-event-support.sh
new file mode 100755
index 0000000000..f0f6b2392a
--- /dev/null
+++ b/devtools/parse-event-support.sh
@@ -0,0 +1,165 @@
+#! /bin/sh -e
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(C) 2021 Marvell.
+
+# Parse event dev support of a driver directory,
+# and optionally show difference with a doc file in .ini format.
+
+dir=$1 # drivers/event/foo
+ref=$2 # doc/guides/eventdevs/features/foo.ini
+
+if [ -z "$dir" ]; then
+	echo "directory argument is required" >&2
+	exit 1
+fi
+
+# sorting order
+export LC_COLLATE=C
+
+check_rx_adptr_sw_capa()
+{
+	driver=$(echo "$dir" | cut -d / -f 3)
+	if [ "$driver" = "dsw" ] || [ "$driver" = "sw" ] ; then
+		return 1
+	else
+		return 0
+	fi
+}
+
+# generate INI section
+list() # <title> <pattern> <extra_patterns>
+{
+	echo "[$1]"
+	word0=$(git grep -who "$2[[:alnum:]_]*" $dir)
+	word1=$(echo "$3")
+	words="$word0""$word1"
+	echo "$words" | sort -u |
+		awk 'sub(/'$2'/, "") {printf "%-20s = Y\n", tolower($0)}'
+}
+
+event_dev_sched_support()
+{
+	title="Scheduling Features"
+	pattern=$(echo "RTE_EVENT_DEV_CAP_" | awk '{print toupper($0)}')
+	list "$title" "$pattern" ""
+}
+
+event_dev_rx_adptr_support()
+{
+	title="Eth Rx adapter Features"
+	pattern=$(echo "RTE_EVENT_ETH_RX_ADAPTER_CAP_" |
+		awk '{print toupper($0)}')
+	check_rx_adptr_sw_capa || extra='RTE_EVENT_ETH_RX_ADAPTER_CAP_OVERRIDE_FLOW_ID
+				RTE_EVENT_ETH_RX_ADAPTER_CAP_MULTI_EVENTQ
+				RTE_EVENT_ETH_RX_ADAPTER_CAP_EVENT_VECTOR'
+	list "$title" "$pattern" "$extra"
+}
+
+event_dev_tx_adptr_support()
+{
+	title="Eth Tx adapter Features"
+	pattern=$(echo "RTE_EVENT_ETH_TX_ADAPTER_CAP_" |
+		awk '{print toupper($0)}')
+	list "$title" "$pattern" ""
+}
+
+event_dev_crypto_adptr_support()
+{
+	title="Crypto adapter Features"
+	pattern=$(echo "RTE_EVENT_CRYPTO_ADAPTER_CAP_" |
+		awk '{print toupper($0)}')
+	list "$title" "$pattern" ""
+}
+
+event_dev_timer_adptr_support()
+{
+	title="Timer adapter Features"
+	pattern=$(echo "RTE_EVENT_TIMER_ADAPTER_CAP_" |
+		awk '{print toupper($0)}')
+	list "$title" "$pattern" ""
+}
+
+if [ -z "$ref" ]; then # generate full tables
+	event_dev_sched_support
+	echo
+	event_dev_rx_adptr_support
+	echo
+	event_dev_tx_adptr_support
+	echo
+	event_dev_crypto_adptr_support
+	echo
+	event_dev_timer_adptr_support
+	exit 0
+fi
+
+# compare with reference input
+event_dev_sched_compare()
+{
+	section="Scheduling Features]"
+	{
+		event_dev_sched_support
+		sed -n "/$section/,/]/p" "$ref" | sed '/^$/d'
+	} |
+	sed '/]/d' | # ignore section title
+	sed 's, *=.*,,' | # ignore value (better in doc than generated one)
+	sort | uniq -u | # show differences
+	sed "s,^,Scheduling Features ," # prefix with category name
+}
+
+event_dev_rx_adptr_compare()
+{
+	section="Eth Rx adapter Features]"
+	{
+		event_dev_rx_adptr_support
+		sed -n "/$section/,/]/p" "$ref" | sed '/^$/d'
+	} |
+	sed '/]/d' | # ignore section title
+	sed 's, *=.*,,' | # ignore value (better in doc than generated one)
+	sort | uniq -u | # show differences
+	sed "s,^,Eth Rx adapter Features ," # prefix with category name
+}
+
+event_dev_tx_adptr_compare()
+{
+	section="Eth Tx adapter Features]"
+	{
+		event_dev_tx_adptr_support
+		sed -n "/$section/,/]/p" "$ref" | sed '/^$/d'
+	} |
+	sed '/]/d' | # ignore section title
+	sed 's, *=.*,,' | # ignore value (better in doc than generated one)
+	sort | uniq -u | # show differences
+	sed "s,^,Eth Tx adapter Features ," # prefix with category name
+}
+
+event_dev_crypto_adptr_compare()
+{
+	section="Crypto adapter Features]"
+	{
+		event_dev_crypto_adptr_support
+		sed -n "/$section/,/]/p" "$ref" | sed '/^$/d'
+	} |
+	sed '/]/d' | # ignore section title
+	sed 's, *=.*,,' | # ignore value (better in doc than generated one)
+	sort | uniq -u | # show differences
+	sed "s,^,Crypto adapter Features ," # prefix with category name
+}
+
+event_dev_timer_adptr_compare()
+{
+	section="Timer adapter Features]"
+	{
+		event_dev_timer_adptr_support
+		sed -n "/$section/,/]/p" "$ref" | sed '/^$/d'
+	} |
+	sed '/]/d' | # ignore section title
+	sed 's, *=.*,,' | # ignore value (better in doc than generated one)
+	sort | uniq -u | # show differences
+	sed "s,^,Timer adapter Features ," # prefix with category name
+}
+
+event_dev_sched_compare
+event_dev_rx_adptr_compare
+event_dev_tx_adptr_compare
+event_dev_crypto_adptr_compare
+event_dev_timer_adptr_compare
-- 
2.25.1


^ permalink raw reply	[flat|nested] 87+ messages in thread

* Re: [dpdk-dev] [PATCH v5 1/4] doc: add skeleton for eventdevs feature matrices
  2021-10-22  7:48       ` [dpdk-dev] [PATCH v5 1/4] doc: add skeleton for eventdevs feature matrices skori
                           ` (5 preceding siblings ...)
  2021-11-15 18:08         ` [dpdk-dev] [PATCH v5 1/4] doc: add skeleton for " Jerin Jacob
@ 2021-11-23 16:44         ` Jerin Jacob
  2021-11-24  8:06           ` Thomas Monjalon
  6 siblings, 1 reply; 87+ messages in thread
From: Jerin Jacob @ 2021-11-23 16:44 UTC (permalink / raw)
  To: Sunil Kumar Kori, Thomas Monjalon
  Cc: Jerin Jacob, Nikhil Rao, Pavan Nikhilesh, Hemant Agrawal,
	Nipun Gupta, Van Haaren, Harry, Mattias Rönnblom, Liang Ma,
	dpdk-dev

On Fri, Oct 22, 2021 at 1:18 PM <skori@marvell.com> wrote:
>
> From: Sunil Kumar Kori <skori@marvell.com>
>
> Patch adds skeleton for feature matrices for event dev
> and Rx/Tx adapters.
>
> Along with, .ini files are added for all supported PMDs.
>
> Signed-off-by: Sunil Kumar Kori <skori@marvell.com>

Series Acked-by: Jerin Jacob <jerinj@marvell.com>
Series without patch [10/10][1] applied to
dpdk-next-net-eventdev/for-main. Thanks


[1]
http://patches.dpdk.org/project/dpdk/patch/20211123110743.2002557-10-skori@marvell.com/

@Thomas Monjalon  Delegated above patch to you as it is for tooling.


> ---
> v5:
>  - Rebased to 21.11
>  - Added feature matrix for cnxk.
> v4:
>  - Rebased to 20.02
> v3:
>  - Removed .txt files to generate tables.
>  - Use conf.py script to generate tables.
>  - Add .ini file for all supported PMDs.
> v2:
>  - Review comments incorporated
>
>  .gitignore                                  |  2 ++
>  doc/guides/conf.py                          | 12 ++++++++-
>  doc/guides/eventdevs/features/cnxk.ini      |  8 ++++++
>  doc/guides/eventdevs/features/default.ini   | 30 +++++++++++++++++++++
>  doc/guides/eventdevs/features/dpaa.ini      |  8 ++++++
>  doc/guides/eventdevs/features/dpaa2.ini     |  8 ++++++
>  doc/guides/eventdevs/features/dsw.ini       |  8 ++++++
>  doc/guides/eventdevs/features/octeontx.ini  |  8 ++++++
>  doc/guides/eventdevs/features/octeontx2.ini |  8 ++++++
>  doc/guides/eventdevs/features/opdl.ini      |  8 ++++++
>  doc/guides/eventdevs/features/sw.ini        |  8 ++++++
>  doc/guides/eventdevs/index.rst              |  1 +
>  doc/guides/eventdevs/overview.rst           | 19 +++++++++++++
>  13 files changed, 127 insertions(+), 1 deletion(-)
>  create mode 100644 doc/guides/eventdevs/features/cnxk.ini
>  create mode 100644 doc/guides/eventdevs/features/default.ini
>  create mode 100644 doc/guides/eventdevs/features/dpaa.ini
>  create mode 100644 doc/guides/eventdevs/features/dpaa2.ini
>  create mode 100644 doc/guides/eventdevs/features/dsw.ini
>  create mode 100644 doc/guides/eventdevs/features/octeontx.ini
>  create mode 100644 doc/guides/eventdevs/features/octeontx2.ini
>  create mode 100644 doc/guides/eventdevs/features/opdl.ini
>  create mode 100644 doc/guides/eventdevs/features/sw.ini
>  create mode 100644 doc/guides/eventdevs/overview.rst
>
> diff --git a/.gitignore b/.gitignore
> index b19c0717e6..b3fc783945 100644
> --- a/.gitignore
> +++ b/.gitignore
> @@ -14,6 +14,8 @@ doc/guides/compressdevs/overview_feature_table.txt
>  doc/guides/regexdevs/overview_feature_table.txt
>  doc/guides/vdpadevs/overview_feature_table.txt
>  doc/guides/bbdevs/overview_feature_table.txt
> +doc/guides/eventdevs/overview_feature_table.txt
> +doc/guides/eventdevs/overview_adptr_feature_table.txt
>
>  # ignore generated ctags/cscope files
>  cscope.out.po
> diff --git a/doc/guides/conf.py b/doc/guides/conf.py
> index 67d2dd62c7..9d8e20e5fc 100644
> --- a/doc/guides/conf.py
> +++ b/doc/guides/conf.py
> @@ -41,7 +41,7 @@
>  master_doc = 'index'
>
>  # Maximum feature description string length
> -feature_str_len = 30
> +feature_str_len = 45
>
>  # Figures, tables and code-blocks automatically numbered if they have caption
>  numfig = True
> @@ -388,6 +388,16 @@ def setup(app):
>                              'Features',
>                              'Features availability in bbdev drivers',
>                              'Feature')
> +    table_file = dirname(__file__) + '/eventdevs/overview_feature_table.txt'
> +    generate_overview_table(table_file, 1,
> +                            'Features',
> +                            'Features availability in eventdev drivers',
> +                            'Feature')
> +    table_file = dirname(__file__) + '/eventdevs/overview_adptr_feature_table.txt'
> +    generate_overview_table(table_file, 2,
> +                            'Adapter Features',
> +                            'Features availability for adapters',
> +                            'Feature')
>
>      if LooseVersion(sphinx_version) < LooseVersion('1.3.1'):
>          print('Upgrade sphinx to version >= 1.3.1 for '
> diff --git a/doc/guides/eventdevs/features/cnxk.ini b/doc/guides/eventdevs/features/cnxk.ini
> new file mode 100644
> index 0000000000..a461966d69
> --- /dev/null
> +++ b/doc/guides/eventdevs/features/cnxk.ini
> @@ -0,0 +1,8 @@
> +;
> +; Supported features of the 'cnxk' eventdev driver.
> +;
> +; Refer to default.ini for the full list of available PMD features.
> +;
> +[Features]
> +
> +[Adapter Features]
> diff --git a/doc/guides/eventdevs/features/default.ini b/doc/guides/eventdevs/features/default.ini
> new file mode 100644
> index 0000000000..d007d7a69e
> --- /dev/null
> +++ b/doc/guides/eventdevs/features/default.ini
> @@ -0,0 +1,30 @@
> +;
> +; Features of a default eventdev driver.
> +;
> +; This file defines the features that are valid for inclusion in
> +; the other driver files and also the order that they appear in
> +; the features table in the documentation.
> +;
> +[Features]
> +Event queue priority based scheduling =
> +Event priority based scheduling       =
> +Event device distributed scheduling   =
> +Event device non sequential mode      =
> +Event queue all types                 =
> +Burst mode enqueue/dequeue            =
> +Event port implicit release disable   =
> +Runtime event queue/port linking      =
> +Multi queue linking per port          =
> +
> +;
> +; Features of a default adapter.
> +;
> +[Adapter Features]
> +Eth Rx/Tx adapter on internal port         =
> +Multiple event queues per ethdev           =
> +Override flow ID                           =
> +Crypto adapter new event enqueue           =
> +Crypto adapter forwarded event enqueue     =
> +Crypto queue pair mapping to event queue   =
> +Crypto adapter session data store/retrieve =
> +Timer adapter support in H/W               =
> diff --git a/doc/guides/eventdevs/features/dpaa.ini b/doc/guides/eventdevs/features/dpaa.ini
> new file mode 100644
> index 0000000000..3cf172f408
> --- /dev/null
> +++ b/doc/guides/eventdevs/features/dpaa.ini
> @@ -0,0 +1,8 @@
> +;
> +; Supported features of the 'dpaa' eventdev driver.
> +;
> +; Refer to default.ini for the full list of available PMD features.
> +;
> +[Features]
> +
> +[Adapter Features]
> diff --git a/doc/guides/eventdevs/features/dpaa2.ini b/doc/guides/eventdevs/features/dpaa2.ini
> new file mode 100644
> index 0000000000..822a82ef3e
> --- /dev/null
> +++ b/doc/guides/eventdevs/features/dpaa2.ini
> @@ -0,0 +1,8 @@
> +;
> +; Supported features of the 'dpaa2' eventdev driver.
> +;
> +; Refer to default.ini for the full list of available PMD features.
> +;
> +[Features]
> +
> +[Adapter Features]
> diff --git a/doc/guides/eventdevs/features/dsw.ini b/doc/guides/eventdevs/features/dsw.ini
> new file mode 100644
> index 0000000000..230737045b
> --- /dev/null
> +++ b/doc/guides/eventdevs/features/dsw.ini
> @@ -0,0 +1,8 @@
> +;
> +; Supported features of the 'distributed software' eventdev driver.
> +;
> +; Refer to default.ini for the full list of available PMD features.
> +;
> +[Features]
> +
> +[Adapter Features]
> diff --git a/doc/guides/eventdevs/features/octeontx.ini b/doc/guides/eventdevs/features/octeontx.ini
> new file mode 100644
> index 0000000000..d1b1fe6d62
> --- /dev/null
> +++ b/doc/guides/eventdevs/features/octeontx.ini
> @@ -0,0 +1,8 @@
> +;
> +; Supported features of the 'octeontx' eventdev driver.
> +;
> +; Refer to default.ini for the full list of available PMD features.
> +;
> +[Features]
> +
> +[Adapter Features]
> diff --git a/doc/guides/eventdevs/features/octeontx2.ini b/doc/guides/eventdevs/features/octeontx2.ini
> new file mode 100644
> index 0000000000..96f1af0dca
> --- /dev/null
> +++ b/doc/guides/eventdevs/features/octeontx2.ini
> @@ -0,0 +1,8 @@
> +;
> +; Supported features of the 'octeontx2' eventdev driver.
> +;
> +; Refer to default.ini for the full list of available PMD features.
> +;
> +[Features]
> +
> +[Adapter Features]
> diff --git a/doc/guides/eventdevs/features/opdl.ini b/doc/guides/eventdevs/features/opdl.ini
> new file mode 100644
> index 0000000000..020808fced
> --- /dev/null
> +++ b/doc/guides/eventdevs/features/opdl.ini
> @@ -0,0 +1,8 @@
> +;
> +; Supported features of 'Ordered Packet Distribution Library' eventdev driver.
> +;
> +; Refer to default.ini for the full list of available PMD features.
> +;
> +[Features]
> +
> +[Adapter Features]
> diff --git a/doc/guides/eventdevs/features/sw.ini b/doc/guides/eventdevs/features/sw.ini
> new file mode 100644
> index 0000000000..a5789f56d4
> --- /dev/null
> +++ b/doc/guides/eventdevs/features/sw.ini
> @@ -0,0 +1,8 @@
> +;
> +; Supported features of the 'software' eventdev driver.
> +;
> +; Refer to default.ini for the full list of available PMD features.
> +;
> +[Features]
> +
> +[Adapter Features]
> diff --git a/doc/guides/eventdevs/index.rst b/doc/guides/eventdevs/index.rst
> index 2143025390..b11657f7ae 100644
> --- a/doc/guides/eventdevs/index.rst
> +++ b/doc/guides/eventdevs/index.rst
> @@ -11,6 +11,7 @@ application through the eventdev API.
>      :maxdepth: 2
>      :numbered:
>
> +    overview
>      cnxk
>      dlb2
>      dpaa
> diff --git a/doc/guides/eventdevs/overview.rst b/doc/guides/eventdevs/overview.rst
> new file mode 100644
> index 0000000000..5d34d2c57b
> --- /dev/null
> +++ b/doc/guides/eventdevs/overview.rst
> @@ -0,0 +1,19 @@
> +..  SPDX-License-Identifier: BSD-3-Clause
> +    Copyright(C) 2021 Marvell.
> +
> +Event Device Supported Functionality Matrices
> +=============================================
> +
> +Event Device Supported Feature Flags
> +------------------------------------
> +
> +.. _table_eventdev_pmd_features:
> +
> +.. include:: overview_feature_table.txt
> +
> +Adapter Supported Feature Flags
> +-------------------------------
> +
> +.. _table_adapter_features:
> +
> +.. include:: overview_adptr_feature_table.txt
> --
> 2.25.1
>

^ permalink raw reply	[flat|nested] 87+ messages in thread

* Re: [dpdk-dev] [PATCH v5 1/4] doc: add skeleton for eventdevs feature matrices
  2021-11-23 16:44         ` Jerin Jacob
@ 2021-11-24  8:06           ` Thomas Monjalon
  2021-11-24  8:14             ` Jerin Jacob
  0 siblings, 1 reply; 87+ messages in thread
From: Thomas Monjalon @ 2021-11-24  8:06 UTC (permalink / raw)
  To: Jerin Jacob, Jerin Jacob
  Cc: Sunil Kumar Kori, dev, Nikhil Rao, Pavan Nikhilesh,
	Hemant Agrawal, Nipun Gupta, Van Haaren, Harry,
	Mattias Rönnblom, Liang Ma

23/11/2021 17:44, Jerin Jacob:
> On Fri, Oct 22, 2021 at 1:18 PM <skori@marvell.com> wrote:
> >
> > From: Sunil Kumar Kori <skori@marvell.com>
> >
> > Patch adds skeleton for feature matrices for event dev
> > and Rx/Tx adapters.
> >
> > Along with, .ini files are added for all supported PMDs.
> >
> > Signed-off-by: Sunil Kumar Kori <skori@marvell.com>
> 
> Series Acked-by: Jerin Jacob <jerinj@marvell.com>
> Series without patch [10/10][1] applied to
> dpdk-next-net-eventdev/for-main. Thanks

Note: you are replying on v5.
I assume you applied the v8, right?

> [1]
> http://patches.dpdk.org/project/dpdk/patch/20211123110743.2002557-10-skori@marvell.com/
> 
> @Thomas Monjalon  Delegated above patch to you as it is for tooling.

I'll look at it.



^ permalink raw reply	[flat|nested] 87+ messages in thread

* Re: [dpdk-dev] [PATCH v5 1/4] doc: add skeleton for eventdevs feature matrices
  2021-11-24  8:06           ` Thomas Monjalon
@ 2021-11-24  8:14             ` Jerin Jacob
  0 siblings, 0 replies; 87+ messages in thread
From: Jerin Jacob @ 2021-11-24  8:14 UTC (permalink / raw)
  To: Thomas Monjalon
  Cc: Jerin Jacob, Sunil Kumar Kori, dpdk-dev, Nikhil Rao,
	Pavan Nikhilesh, Hemant Agrawal, Nipun Gupta, Van Haaren, Harry,
	Mattias Rönnblom, Liang Ma

On Wed, Nov 24, 2021 at 1:36 PM Thomas Monjalon <thomas@monjalon.net> wrote:
>
> 23/11/2021 17:44, Jerin Jacob:
> > On Fri, Oct 22, 2021 at 1:18 PM <skori@marvell.com> wrote:
> > >
> > > From: Sunil Kumar Kori <skori@marvell.com>
> > >
> > > Patch adds skeleton for feature matrices for event dev
> > > and Rx/Tx adapters.
> > >
> > > Along with, .ini files are added for all supported PMDs.
> > >
> > > Signed-off-by: Sunil Kumar Kori <skori@marvell.com>
> >
> > Series Acked-by: Jerin Jacob <jerinj@marvell.com>
> > Series without patch [10/10][1] applied to
> > dpdk-next-net-eventdev/for-main. Thanks
>
> Note: you are replying on v5.
> I assume you applied the v8, right?

Yes. Lost in Gmail web threading view.

>
> > [1]
> > http://patches.dpdk.org/project/dpdk/patch/20211123110743.2002557-10-skori@marvell.com/
> >
> > @Thomas Monjalon  Delegated above patch to you as it is for tooling.
>
> I'll look at it.

Thanks


>
>

^ permalink raw reply	[flat|nested] 87+ messages in thread

* Re: [PATCH v8 01/10] doc: add skeleton for eventdevs feature matrices
  2021-11-23 11:07             ` [PATCH v8 01/10] doc: add skeleton for eventdevs feature matrices skori
                                 ` (8 preceding siblings ...)
  2021-11-23 11:07               ` [PATCH v8 10/10] devtools: check event device doc tables skori
@ 2021-11-24 10:03               ` Thomas Monjalon
  2021-11-24 10:30                 ` [EXT] " Sunil Kumar Kori
  2021-11-24 10:48               ` Thomas Monjalon
                                 ` (2 subsequent siblings)
  12 siblings, 1 reply; 87+ messages in thread
From: Thomas Monjalon @ 2021-11-24 10:03 UTC (permalink / raw)
  To: jerinj, Sunil Kumar Kori
  Cc: nikhil.rao, pbhagavatula, hemant.agrawal, nipun.gupta,
	harry.van.haaren, mattias.ronnblom, liang.j.ma, dev

23/11/2021 12:07, skori@marvell.com:
>  .gitignore                                  |  5 ++
>  doc/guides/conf.py                          | 25 ++++++++++
>  doc/guides/eventdevs/features/cnxk.ini      | 14 ++++++
>  doc/guides/eventdevs/features/default.ini   | 51 +++++++++++++++++++++
>  doc/guides/eventdevs/features/dpaa.ini      | 14 ++++++
>  doc/guides/eventdevs/features/dpaa2.ini     | 14 ++++++
>  doc/guides/eventdevs/features/dsw.ini       | 14 ++++++
>  doc/guides/eventdevs/features/octeontx.ini  | 14 ++++++
>  doc/guides/eventdevs/features/octeontx2.ini | 14 ++++++
>  doc/guides/eventdevs/features/opdl.ini      | 14 ++++++
>  doc/guides/eventdevs/features/sw.ini        | 14 ++++++
>  doc/guides/eventdevs/index.rst              |  1 +
>  doc/guides/eventdevs/overview.rst           | 40 ++++++++++++++++
>  13 files changed, 234 insertions(+)

Why dlb2 is missing?





^ permalink raw reply	[flat|nested] 87+ messages in thread

* RE: [EXT] Re: [PATCH v8 01/10] doc: add skeleton for eventdevs feature matrices
  2021-11-24 10:03               ` [PATCH v8 01/10] doc: add skeleton for eventdevs feature matrices Thomas Monjalon
@ 2021-11-24 10:30                 ` Sunil Kumar Kori
  2021-11-24 10:43                   ` Thomas Monjalon
  0 siblings, 1 reply; 87+ messages in thread
From: Sunil Kumar Kori @ 2021-11-24 10:30 UTC (permalink / raw)
  To: Thomas Monjalon, Jerin Jacob Kollanukkaran
  Cc: nikhil.rao, Pavan Nikhilesh Bhagavatula, hemant.agrawal,
	nipun.gupta, harry.van.haaren, mattias.ronnblom, liang.j.ma, dev

>-----Original Message-----
>From: Thomas Monjalon <thomas@monjalon.net>
>Sent: Wednesday, November 24, 2021 3:34 PM
>To: Jerin Jacob Kollanukkaran <jerinj@marvell.com>; Sunil Kumar Kori
><skori@marvell.com>
>Cc: nikhil.rao@intel.com; Pavan Nikhilesh Bhagavatula
><pbhagavatula@marvell.com>; hemant.agrawal@nxp.com;
>nipun.gupta@nxp.com; harry.van.haaren@intel.com;
>mattias.ronnblom@ericsson.com; liang.j.ma@intel.com; dev@dpdk.org
>Subject: [EXT] Re: [PATCH v8 01/10] doc: add skeleton for eventdevs feature
>matrices
>
>External Email
>
>----------------------------------------------------------------------
>23/11/2021 12:07, skori@marvell.com:
>>  .gitignore                                  |  5 ++
>>  doc/guides/conf.py                          | 25 ++++++++++
>>  doc/guides/eventdevs/features/cnxk.ini      | 14 ++++++
>>  doc/guides/eventdevs/features/default.ini   | 51 +++++++++++++++++++++
>>  doc/guides/eventdevs/features/dpaa.ini      | 14 ++++++
>>  doc/guides/eventdevs/features/dpaa2.ini     | 14 ++++++
>>  doc/guides/eventdevs/features/dsw.ini       | 14 ++++++
>>  doc/guides/eventdevs/features/octeontx.ini  | 14 ++++++
>> doc/guides/eventdevs/features/octeontx2.ini | 14 ++++++
>>  doc/guides/eventdevs/features/opdl.ini      | 14 ++++++
>>  doc/guides/eventdevs/features/sw.ini        | 14 ++++++
>>  doc/guides/eventdevs/index.rst              |  1 +
>>  doc/guides/eventdevs/overview.rst           | 40 ++++++++++++++++
>>  13 files changed, 234 insertions(+)
>
>Why dlb2 is missing?
No specific reason. It's missed by mistake. I will send a patch to fix it. 

>
>
>


^ permalink raw reply	[flat|nested] 87+ messages in thread

* Re: [EXT] Re: [PATCH v8 01/10] doc: add skeleton for eventdevs feature matrices
  2021-11-24 10:30                 ` [EXT] " Sunil Kumar Kori
@ 2021-11-24 10:43                   ` Thomas Monjalon
  2021-11-24 12:35                     ` Sunil Kumar Kori
  0 siblings, 1 reply; 87+ messages in thread
From: Thomas Monjalon @ 2021-11-24 10:43 UTC (permalink / raw)
  To: Sunil Kumar Kori
  Cc: Jerin Jacob Kollanukkaran, dev, nikhil.rao,
	Pavan Nikhilesh Bhagavatula, hemant.agrawal, nipun.gupta,
	harry.van.haaren, mattias.ronnblom, liang.j.ma, dev

24/11/2021 11:30, Sunil Kumar Kori:
> From: Thomas Monjalon <thomas@monjalon.net>
> >23/11/2021 12:07, skori@marvell.com:
> >>  .gitignore                                  |  5 ++
> >>  doc/guides/conf.py                          | 25 ++++++++++
> >>  doc/guides/eventdevs/features/cnxk.ini      | 14 ++++++
> >>  doc/guides/eventdevs/features/default.ini   | 51 +++++++++++++++++++++
> >>  doc/guides/eventdevs/features/dpaa.ini      | 14 ++++++
> >>  doc/guides/eventdevs/features/dpaa2.ini     | 14 ++++++
> >>  doc/guides/eventdevs/features/dsw.ini       | 14 ++++++
> >>  doc/guides/eventdevs/features/octeontx.ini  | 14 ++++++
> >> doc/guides/eventdevs/features/octeontx2.ini | 14 ++++++
> >>  doc/guides/eventdevs/features/opdl.ini      | 14 ++++++
> >>  doc/guides/eventdevs/features/sw.ini        | 14 ++++++
> >>  doc/guides/eventdevs/index.rst              |  1 +
> >>  doc/guides/eventdevs/overview.rst           | 40 ++++++++++++++++
> >>  13 files changed, 234 insertions(+)
> >
> >Why dlb2 is missing?
> No specific reason. It's missed by mistake. I will send a patch to fix it.

I think a v9 is needed.
I am sending other comments.
Note: it can all be in one single patch.



^ permalink raw reply	[flat|nested] 87+ messages in thread

* Re: [PATCH v8 01/10] doc: add skeleton for eventdevs feature matrices
  2021-11-23 11:07             ` [PATCH v8 01/10] doc: add skeleton for eventdevs feature matrices skori
                                 ` (9 preceding siblings ...)
  2021-11-24 10:03               ` [PATCH v8 01/10] doc: add skeleton for eventdevs feature matrices Thomas Monjalon
@ 2021-11-24 10:48               ` Thomas Monjalon
  2021-11-24 11:12                 ` [EXT] " Sunil Kumar Kori
  2021-11-24 12:14               ` [PATCH v1 1/1] doc: update eventdev feature matrix for dlb2 skori
  2021-11-24 13:03               ` [PATCH v9 1/1] doc: add eventdevs feature matrices skori
  12 siblings, 1 reply; 87+ messages in thread
From: Thomas Monjalon @ 2021-11-24 10:48 UTC (permalink / raw)
  To: Sunil Kumar Kori
  Cc: jerinj, nikhil.rao, pbhagavatula, hemant.agrawal, nipun.gupta,
	harry.van.haaren, mattias.ronnblom, liang.j.ma, dev

23/11/2021 12:07, skori@marvell.com:
> +[Scheduling Features]
> +queue_qos                =
> +event_qos                =
> +distributed_sched        =
> +queue_all_types          =
> +burst_mode               =
> +implicit_release_disable =
> +nonseq_mode              =
> +runtime_port_link        =
> +multiple_queue_port      =
> +carry_flow_id            =
> +maintenance_free         =
> +
> +;
> +; Features of a default Ethernet Rx adapter.
> +;
> +[Eth Rx adapter Features]
> +internal_port    =
> +multi_eventq     =
> +override_flow_id =
> +event_vector     =
> +
> +;
> +; Features of a default Ethernet Tx adapter.
> +;
> +[Eth Tx adapter Features]
> +internal_port =
> +event_vector  =
> +
> +;
> +; Features of a default Crypto adapter.
> +;
> +[Crypto adapter Features]
> +internal_port_op_new     =
> +internal_port_op_fwd     =
> +internal_port_qp_ev_bind =
> +session_private_data     =
> +
> +;
> +; Features of a default Timer adapter.
> +;
> +[Timer adapter Features]
> +internal_port =
> +periodic      =

Would be better to align the equal signs as done by the script
	%-20s =



^ permalink raw reply	[flat|nested] 87+ messages in thread

* Re: [PATCH v8 10/10] devtools: check event device doc tables
  2021-11-23 11:07               ` [PATCH v8 10/10] devtools: check event device doc tables skori
@ 2021-11-24 10:52                 ` Thomas Monjalon
  2021-11-24 11:16                   ` [EXT] " Sunil Kumar Kori
  0 siblings, 1 reply; 87+ messages in thread
From: Thomas Monjalon @ 2021-11-24 10:52 UTC (permalink / raw)
  To: Sunil Kumar Kori
  Cc: jerinj, nikhil.rao, pbhagavatula, hemant.agrawal, nipun.gupta,
	harry.van.haaren, mattias.ronnblom, liang.j.ma, dev

23/11/2021 12:07, skori@marvell.com:
> --- a/devtools/check-doc-vs-code.sh
> +++ b/devtools/check-doc-vs-code.sh
> +all_event_drivers()
> +{
> +	find $rootdir/drivers/event -mindepth 1 -maxdepth 1 -type d |
> +	sed 's,.*/,,' |
> +	sort
> +}
> +
> +check_event_dev() # <driver>
> +{
> +	code=$rootdir/drivers/event/$1
> +	doc=$rootdir/doc/guides/eventdevs/features/$1.ini
> +	[ -d $code ] || return 0
> +	[ -f $doc ] || return 0
> +	report=$($selfdir/parse-event-support.sh $code $doc)
> +	if [ -n "$report" ]; then
> +		error "doc out of sync for $1"
> +		echo "$report" | sed 's,^,\t,'
> +	fi
> +}

These 2 functions are mostly copy/paste of rte_flow functions.
Given there will be more in future, I would prefer code being factorized.

>  if [ -z "$trusted_commit" ]; then
>  	# check all
>  	for driver in $(all_net_drivers); do
>  		check_rte_flow $driver
>  	done
> +

I would remove this blank line.

> +	for driver in $(all_event_drivers); do
> +		check_event_dev $driver
> +	done
>  	exit $result
>  fi
[...]
> +if has_code_change 'RTE_EVENT_DEV_CAP_*' ||
> +		has_code_change 'RTE_EVENT_ETH_RX_ADAPTER_CAP_*' ||
> +		has_code_change 'RTE_EVENT_ETH_TX_ADAPTER_CAP_*' ||
> +		has_code_change 'RTE_EVENT_CRYPTO_ADAPTER_CAP_*' ||
> +		has_code_change 'RTE_EVENT_TIMER_ADAPTER_CAP_*' ||

Can it be a single query?

> +		has_file_change 'doc/guides/eventdevs/features'; then
> +	for driver in $(all_event_drivers); do

No need to check all drivers.
For rte_flow, only changed drivers are checked.

> +		check_event_dev $driver
> +	done
> +fi
[...]
> +# generate INI section
> +list() # <title> <pattern> <extra_patterns>
> +{
> +	echo "[$1]"
> +	word0=$(git grep -who "$2[[:alnum:]_]*" $dir)
> +	word1=$(echo "$3")

Why echo?

> +	words="$word0""$word1"

Why so many quotes?

> +	echo "$words" | sort -u |
> +		awk 'sub(/'$2'/, "") {printf "%-20s = Y\n", tolower($0)}'
> +}
[...]
> +event_dev_rx_adptr_support()
> +{
> +	title="Eth Rx adapter Features"
> +	pattern=$(echo "RTE_EVENT_ETH_RX_ADAPTER_CAP_" |
> +		awk '{print toupper($0)}')
> +	check_rx_adptr_sw_capa || extra='RTE_EVENT_ETH_RX_ADAPTER_CAP_OVERRIDE_FLOW_ID
> +				RTE_EVENT_ETH_RX_ADAPTER_CAP_MULTI_EVENTQ
> +				RTE_EVENT_ETH_RX_ADAPTER_CAP_EVENT_VECTOR'

Why having extra parameter, instead of updating the pattern?
By the way, the pattern RTE_EVENT_ETH_RX_ADAPTER_CAP_ already include all of this.

> +	list "$title" "$pattern" "$extra"
> +}
[...]
> +# compare with reference input
> +event_dev_sched_compare()
> +{
> +	section="Scheduling Features]"
> +	{
> +		event_dev_sched_support
> +		sed -n "/$section/,/]/p" "$ref" | sed '/^$/d'
> +	} |
> +	sed '/]/d' | # ignore section title
> +	sed 's, *=.*,,' | # ignore value (better in doc than generated one)
> +	sort | uniq -u | # show differences
> +	sed "s,^,Scheduling Features ," # prefix with category name
> +}
> +
> +event_dev_rx_adptr_compare()
> +{
> +	section="Eth Rx adapter Features]"
> +	{
> +		event_dev_rx_adptr_support
> +		sed -n "/$section/,/]/p" "$ref" | sed '/^$/d'
> +	} |
> +	sed '/]/d' | # ignore section title
> +	sed 's, *=.*,,' | # ignore value (better in doc than generated one)
> +	sort | uniq -u | # show differences
> +	sed "s,^,Eth Rx adapter Features ," # prefix with category name
> +}
> +
> +event_dev_tx_adptr_compare()
> +{
> +	section="Eth Tx adapter Features]"
> +	{
> +		event_dev_tx_adptr_support
> +		sed -n "/$section/,/]/p" "$ref" | sed '/^$/d'
> +	} |
> +	sed '/]/d' | # ignore section title
> +	sed 's, *=.*,,' | # ignore value (better in doc than generated one)
> +	sort | uniq -u | # show differences
> +	sed "s,^,Eth Tx adapter Features ," # prefix with category name
> +}
> +
> +event_dev_crypto_adptr_compare()
> +{
> +	section="Crypto adapter Features]"
> +	{
> +		event_dev_crypto_adptr_support
> +		sed -n "/$section/,/]/p" "$ref" | sed '/^$/d'
> +	} |
> +	sed '/]/d' | # ignore section title
> +	sed 's, *=.*,,' | # ignore value (better in doc than generated one)
> +	sort | uniq -u | # show differences
> +	sed "s,^,Crypto adapter Features ," # prefix with category name
> +}
> +
> +event_dev_timer_adptr_compare()
> +{
> +	section="Timer adapter Features]"
> +	{
> +		event_dev_timer_adptr_support
> +		sed -n "/$section/,/]/p" "$ref" | sed '/^$/d'
> +	} |
> +	sed '/]/d' | # ignore section title
> +	sed 's, *=.*,,' | # ignore value (better in doc than generated one)
> +	sort | uniq -u | # show differences
> +	sed "s,^,Timer adapter Features ," # prefix with category name
> +}

I think these functions can be factorized.



^ permalink raw reply	[flat|nested] 87+ messages in thread

* RE: [EXT] Re: [PATCH v8 01/10] doc: add skeleton for eventdevs feature matrices
  2021-11-24 10:48               ` Thomas Monjalon
@ 2021-11-24 11:12                 ` Sunil Kumar Kori
  0 siblings, 0 replies; 87+ messages in thread
From: Sunil Kumar Kori @ 2021-11-24 11:12 UTC (permalink / raw)
  To: Thomas Monjalon
  Cc: Jerin Jacob Kollanukkaran, nikhil.rao,
	Pavan Nikhilesh Bhagavatula, hemant.agrawal, nipun.gupta,
	harry.van.haaren, mattias.ronnblom, liang.j.ma, dev



Regards
Sunil Kumar Kori

>-----Original Message-----
>From: Thomas Monjalon <thomas@monjalon.net>
>Sent: Wednesday, November 24, 2021 4:18 PM
>To: Sunil Kumar Kori <skori@marvell.com>
>Cc: Jerin Jacob Kollanukkaran <jerinj@marvell.com>; nikhil.rao@intel.com;
>Pavan Nikhilesh Bhagavatula <pbhagavatula@marvell.com>;
>hemant.agrawal@nxp.com; nipun.gupta@nxp.com;
>harry.van.haaren@intel.com; mattias.ronnblom@ericsson.com;
>liang.j.ma@intel.com; dev@dpdk.org
>Subject: [EXT] Re: [PATCH v8 01/10] doc: add skeleton for eventdevs feature
>matrices
>
>External Email
>
>----------------------------------------------------------------------
>23/11/2021 12:07, skori@marvell.com:
>> +[Scheduling Features]
>> +queue_qos                =
>> +event_qos                =
>> +distributed_sched        =
>> +queue_all_types          =
>> +burst_mode               =
>> +implicit_release_disable =
>> +nonseq_mode              =
>> +runtime_port_link        =
>> +multiple_queue_port      =
>> +carry_flow_id            =
>> +maintenance_free         =
>> +
>> +;
>> +; Features of a default Ethernet Rx adapter.
>> +;
>> +[Eth Rx adapter Features]
>> +internal_port    =
>> +multi_eventq     =
>> +override_flow_id =
>> +event_vector     =
>> +
>> +;
>> +; Features of a default Ethernet Tx adapter.
>> +;
>> +[Eth Tx adapter Features]
>> +internal_port =
>> +event_vector  =
>> +
>> +;
>> +; Features of a default Crypto adapter.
>> +;
>> +[Crypto adapter Features]
>> +internal_port_op_new     =
>> +internal_port_op_fwd     =
>> +internal_port_qp_ev_bind =
>> +session_private_data     =
>> +
>> +;
>> +; Features of a default Timer adapter.
>> +;
>> +[Timer adapter Features]
>> +internal_port =
>> +periodic      =
>
>Would be better to align the equal signs as done by the script
>	%-20s =
>
Ack. 


^ permalink raw reply	[flat|nested] 87+ messages in thread

* RE: [EXT] Re: [PATCH v8 10/10] devtools: check event device doc tables
  2021-11-24 10:52                 ` Thomas Monjalon
@ 2021-11-24 11:16                   ` Sunil Kumar Kori
  2021-11-24 11:21                     ` Thomas Monjalon
  0 siblings, 1 reply; 87+ messages in thread
From: Sunil Kumar Kori @ 2021-11-24 11:16 UTC (permalink / raw)
  To: Thomas Monjalon
  Cc: Jerin Jacob Kollanukkaran, nikhil.rao,
	Pavan Nikhilesh Bhagavatula, hemant.agrawal, nipun.gupta,
	harry.van.haaren, mattias.ronnblom, liang.j.ma, dev

Hi Thomas,

It will take some time to handle all the comments for this patch. So I would request you to defer this patch for next release and take other patches in series. 
Also I will send one patch to add feature matrix for dlb2 platform and fix minor review comments given by You. 

Regards
Sunil Kumar Kori

>-----Original Message-----
>From: Thomas Monjalon <thomas@monjalon.net>
>Sent: Wednesday, November 24, 2021 4:23 PM
>To: Sunil Kumar Kori <skori@marvell.com>
>Cc: Jerin Jacob Kollanukkaran <jerinj@marvell.com>; nikhil.rao@intel.com;
>Pavan Nikhilesh Bhagavatula <pbhagavatula@marvell.com>;
>hemant.agrawal@nxp.com; nipun.gupta@nxp.com;
>harry.van.haaren@intel.com; mattias.ronnblom@ericsson.com;
>liang.j.ma@intel.com; dev@dpdk.org
>Subject: [EXT] Re: [PATCH v8 10/10] devtools: check event device doc tables
>
>External Email
>
>----------------------------------------------------------------------
>23/11/2021 12:07, skori@marvell.com:
>> --- a/devtools/check-doc-vs-code.sh
>> +++ b/devtools/check-doc-vs-code.sh
>> +all_event_drivers()
>> +{
>> +	find $rootdir/drivers/event -mindepth 1 -maxdepth 1 -type d |
>> +	sed 's,.*/,,' |
>> +	sort
>> +}
>> +
>> +check_event_dev() # <driver>
>> +{
>> +	code=$rootdir/drivers/event/$1
>> +	doc=$rootdir/doc/guides/eventdevs/features/$1.ini
>> +	[ -d $code ] || return 0
>> +	[ -f $doc ] || return 0
>> +	report=$($selfdir/parse-event-support.sh $code $doc)
>> +	if [ -n "$report" ]; then
>> +		error "doc out of sync for $1"
>> +		echo "$report" | sed 's,^,\t,'
>> +	fi
>> +}
>
>These 2 functions are mostly copy/paste of rte_flow functions.
>Given there will be more in future, I would prefer code being factorized.
>
>>  if [ -z "$trusted_commit" ]; then
>>  	# check all
>>  	for driver in $(all_net_drivers); do
>>  		check_rte_flow $driver
>>  	done
>> +
>
>I would remove this blank line.
>
>> +	for driver in $(all_event_drivers); do
>> +		check_event_dev $driver
>> +	done
>>  	exit $result
>>  fi
>[...]
>> +if has_code_change 'RTE_EVENT_DEV_CAP_*' ||
>> +		has_code_change 'RTE_EVENT_ETH_RX_ADAPTER_CAP_*' ||
>> +		has_code_change 'RTE_EVENT_ETH_TX_ADAPTER_CAP_*' ||
>> +		has_code_change 'RTE_EVENT_CRYPTO_ADAPTER_CAP_*' ||
>> +		has_code_change 'RTE_EVENT_TIMER_ADAPTER_CAP_*' ||
>
>Can it be a single query?
>
>> +		has_file_change 'doc/guides/eventdevs/features'; then
>> +	for driver in $(all_event_drivers); do
>
>No need to check all drivers.
>For rte_flow, only changed drivers are checked.
>
>> +		check_event_dev $driver
>> +	done
>> +fi
>[...]
>> +# generate INI section
>> +list() # <title> <pattern> <extra_patterns> {
>> +	echo "[$1]"
>> +	word0=$(git grep -who "$2[[:alnum:]_]*" $dir)
>> +	word1=$(echo "$3")
>
>Why echo?
>
>> +	words="$word0""$word1"
>
>Why so many quotes?
>
>> +	echo "$words" | sort -u |
>> +		awk 'sub(/'$2'/, "") {printf "%-20s = Y\n", tolower($0)}'
>> +}
>[...]
>> +event_dev_rx_adptr_support()
>> +{
>> +	title="Eth Rx adapter Features"
>> +	pattern=$(echo "RTE_EVENT_ETH_RX_ADAPTER_CAP_" |
>> +		awk '{print toupper($0)}')
>> +	check_rx_adptr_sw_capa ||
>extra='RTE_EVENT_ETH_RX_ADAPTER_CAP_OVERRIDE_FLOW_ID
>> +
>	RTE_EVENT_ETH_RX_ADAPTER_CAP_MULTI_EVENTQ
>> +
>	RTE_EVENT_ETH_RX_ADAPTER_CAP_EVENT_VECTOR'
>
>Why having extra parameter, instead of updating the pattern?
>By the way, the pattern RTE_EVENT_ETH_RX_ADAPTER_CAP_ already include
>all of this.
>
>> +	list "$title" "$pattern" "$extra"
>> +}
>[...]
>> +# compare with reference input
>> +event_dev_sched_compare()
>> +{
>> +	section="Scheduling Features]"
>> +	{
>> +		event_dev_sched_support
>> +		sed -n "/$section/,/]/p" "$ref" | sed '/^$/d'
>> +	} |
>> +	sed '/]/d' | # ignore section title
>> +	sed 's, *=.*,,' | # ignore value (better in doc than generated one)
>> +	sort | uniq -u | # show differences
>> +	sed "s,^,Scheduling Features ," # prefix with category name }
>> +
>> +event_dev_rx_adptr_compare()
>> +{
>> +	section="Eth Rx adapter Features]"
>> +	{
>> +		event_dev_rx_adptr_support
>> +		sed -n "/$section/,/]/p" "$ref" | sed '/^$/d'
>> +	} |
>> +	sed '/]/d' | # ignore section title
>> +	sed 's, *=.*,,' | # ignore value (better in doc than generated one)
>> +	sort | uniq -u | # show differences
>> +	sed "s,^,Eth Rx adapter Features ," # prefix with category name }
>> +
>> +event_dev_tx_adptr_compare()
>> +{
>> +	section="Eth Tx adapter Features]"
>> +	{
>> +		event_dev_tx_adptr_support
>> +		sed -n "/$section/,/]/p" "$ref" | sed '/^$/d'
>> +	} |
>> +	sed '/]/d' | # ignore section title
>> +	sed 's, *=.*,,' | # ignore value (better in doc than generated one)
>> +	sort | uniq -u | # show differences
>> +	sed "s,^,Eth Tx adapter Features ," # prefix with category name }
>> +
>> +event_dev_crypto_adptr_compare()
>> +{
>> +	section="Crypto adapter Features]"
>> +	{
>> +		event_dev_crypto_adptr_support
>> +		sed -n "/$section/,/]/p" "$ref" | sed '/^$/d'
>> +	} |
>> +	sed '/]/d' | # ignore section title
>> +	sed 's, *=.*,,' | # ignore value (better in doc than generated one)
>> +	sort | uniq -u | # show differences
>> +	sed "s,^,Crypto adapter Features ," # prefix with category name }
>> +
>> +event_dev_timer_adptr_compare()
>> +{
>> +	section="Timer adapter Features]"
>> +	{
>> +		event_dev_timer_adptr_support
>> +		sed -n "/$section/,/]/p" "$ref" | sed '/^$/d'
>> +	} |
>> +	sed '/]/d' | # ignore section title
>> +	sed 's, *=.*,,' | # ignore value (better in doc than generated one)
>> +	sort | uniq -u | # show differences
>> +	sed "s,^,Timer adapter Features ," # prefix with category name }
>
>I think these functions can be factorized.
>


^ permalink raw reply	[flat|nested] 87+ messages in thread

* Re: [EXT] Re: [PATCH v8 10/10] devtools: check event device doc tables
  2021-11-24 11:16                   ` [EXT] " Sunil Kumar Kori
@ 2021-11-24 11:21                     ` Thomas Monjalon
  0 siblings, 0 replies; 87+ messages in thread
From: Thomas Monjalon @ 2021-11-24 11:21 UTC (permalink / raw)
  To: Sunil Kumar Kori
  Cc: Jerin Jacob Kollanukkaran, nikhil.rao,
	Pavan Nikhilesh Bhagavatula, hemant.agrawal, nipun.gupta,
	harry.van.haaren, mattias.ronnblom, liang.j.ma, dev

24/11/2021 12:16, Sunil Kumar Kori:
> Hi Thomas,
> 
> It will take some time to handle all the comments for this patch. So I would request you to defer this patch for next release and take other patches in series. 
> Also I will send one patch to add feature matrix for dlb2 platform and fix minor review comments given by You. 

This is just documentation, so it can be merged
until the last day of the release.
Please try to get the script ready.
If the script is not ready on time, I will merge only the doc.



^ permalink raw reply	[flat|nested] 87+ messages in thread

* [PATCH v1 1/1] doc: update eventdev feature matrix for dlb2
  2021-11-23 11:07             ` [PATCH v8 01/10] doc: add skeleton for eventdevs feature matrices skori
                                 ` (10 preceding siblings ...)
  2021-11-24 10:48               ` Thomas Monjalon
@ 2021-11-24 12:14               ` skori
  2021-11-24 13:03               ` [PATCH v9 1/1] doc: add eventdevs feature matrices skori
  12 siblings, 0 replies; 87+ messages in thread
From: skori @ 2021-11-24 12:14 UTC (permalink / raw)
  To: jerinj, nikhil.rao, pbhagavatula, hemant.agrawal, nipun.gupta,
	harry.van.haaren, mattias.ronnblom
  Cc: dev, Sunil Kumar Kori

From: Sunil Kumar Kori <skori@marvell.com>

Patch updates eventdev and adapters feature matrices for
dlb2 driver.

Signed-off-by: Sunil Kumar Kori <skori@marvell.com>
---
 doc/guides/eventdevs/features/default.ini | 46 +++++++++++------------
 doc/guides/eventdevs/features/dlb2.ini    | 21 +++++++++++
 2 files changed, 44 insertions(+), 23 deletions(-)
 create mode 100644 doc/guides/eventdevs/features/dlb2.ini

diff --git a/doc/guides/eventdevs/features/default.ini b/doc/guides/eventdevs/features/default.ini
index 5b16c45193..2ea233463a 100644
--- a/doc/guides/eventdevs/features/default.ini
+++ b/doc/guides/eventdevs/features/default.ini
@@ -6,46 +6,46 @@
 ; the features table in the documentation.
 ;
 [Scheduling Features]
-queue_qos                =
-event_qos                =
-distributed_sched        =
-queue_all_types          =
-burst_mode               =
-implicit_release_disable =
-nonseq_mode              =
-runtime_port_link        =
-multiple_queue_port      =
-carry_flow_id            =
-maintenance_free         =
+queue_qos                  =
+event_qos                  =
+distributed_sched          =
+queue_all_types            =
+burst_mode                 =
+implicit_release_disable   =
+nonseq_mode                =
+runtime_port_link          =
+multiple_queue_port        =
+carry_flow_id              =
+maintenance_free           =
 
 ;
 ; Features of a default Ethernet Rx adapter.
 ;
 [Eth Rx adapter Features]
-internal_port    =
-multi_eventq     =
-override_flow_id =
-event_vector     =
+internal_port              =
+multi_eventq               =
+override_flow_id           =
+event_vector               =
 
 ;
 ; Features of a default Ethernet Tx adapter.
 ;
 [Eth Tx adapter Features]
-internal_port =
-event_vector  =
+internal_port              =
+event_vector               =
 
 ;
 ; Features of a default Crypto adapter.
 ;
 [Crypto adapter Features]
-internal_port_op_new     =
-internal_port_op_fwd     =
-internal_port_qp_ev_bind =
-session_private_data     =
+internal_port_op_new       =
+internal_port_op_fwd       =
+internal_port_qp_ev_bind   =
+session_private_data       =
 
 ;
 ; Features of a default Timer adapter.
 ;
 [Timer adapter Features]
-internal_port =
-periodic      =
+internal_port              =
+periodic                   =
diff --git a/doc/guides/eventdevs/features/dlb2.ini b/doc/guides/eventdevs/features/dlb2.ini
new file mode 100644
index 0000000000..29747b1c26
--- /dev/null
+++ b/doc/guides/eventdevs/features/dlb2.ini
@@ -0,0 +1,21 @@
+;
+; Supported features of the 'dlb2' eventdev driver.
+;
+; Refer to default.ini for the full list of available PMD features.
+;
+[Scheduling Features]
+queue_qos                  = Y
+event_qos                  = Y
+distributed_sched          = Y
+queue_all_types            = Y
+burst_mode                 = Y
+implicit_release_disable   = Y
+maintenance_free           = Y
+
+[Eth Rx adapter Features]
+
+[Eth Tx adapter Features]
+
+[Crypto adapter Features]
+
+[Timer adapter Features]
-- 
2.25.1


^ permalink raw reply	[flat|nested] 87+ messages in thread

* RE: [EXT] Re: [PATCH v8 01/10] doc: add skeleton for eventdevs feature matrices
  2021-11-24 10:43                   ` Thomas Monjalon
@ 2021-11-24 12:35                     ` Sunil Kumar Kori
  2021-11-24 12:41                       ` Thomas Monjalon
  0 siblings, 1 reply; 87+ messages in thread
From: Sunil Kumar Kori @ 2021-11-24 12:35 UTC (permalink / raw)
  To: Thomas Monjalon
  Cc: Jerin Jacob Kollanukkaran, dev, nikhil.rao,
	Pavan Nikhilesh Bhagavatula, hemant.agrawal, nipun.gupta,
	harry.van.haaren, mattias.ronnblom, liang.j.ma, dev

Hi Thomas,

Just wanted to confirm that all documentation patches should go as single patch or I can send it as a series of patches. 
I am ready with dlb2 changes also. Once you confirm I will send patches accordingly. Please confirm.


Regards
Sunil Kumar Kori

>-----Original Message-----
>From: Thomas Monjalon <thomas@monjalon.net>
>Sent: Wednesday, November 24, 2021 4:14 PM
>To: Sunil Kumar Kori <skori@marvell.com>
>Cc: Jerin Jacob Kollanukkaran <jerinj@marvell.com>; dev@dpdk.org;
>nikhil.rao@intel.com; Pavan Nikhilesh Bhagavatula
><pbhagavatula@marvell.com>; hemant.agrawal@nxp.com;
>nipun.gupta@nxp.com; harry.van.haaren@intel.com;
>mattias.ronnblom@ericsson.com; liang.j.ma@intel.com; dev@dpdk.org
>Subject: Re: [EXT] Re: [PATCH v8 01/10] doc: add skeleton for eventdevs
>feature matrices
>
>24/11/2021 11:30, Sunil Kumar Kori:
>> From: Thomas Monjalon <thomas@monjalon.net>
>> >23/11/2021 12:07, skori@marvell.com:
>> >>  .gitignore                                  |  5 ++
>> >>  doc/guides/conf.py                          | 25 ++++++++++
>> >>  doc/guides/eventdevs/features/cnxk.ini      | 14 ++++++
>> >>  doc/guides/eventdevs/features/default.ini   | 51
>+++++++++++++++++++++
>> >>  doc/guides/eventdevs/features/dpaa.ini      | 14 ++++++
>> >>  doc/guides/eventdevs/features/dpaa2.ini     | 14 ++++++
>> >>  doc/guides/eventdevs/features/dsw.ini       | 14 ++++++
>> >>  doc/guides/eventdevs/features/octeontx.ini  | 14 ++++++
>> >> doc/guides/eventdevs/features/octeontx2.ini | 14 ++++++
>> >>  doc/guides/eventdevs/features/opdl.ini      | 14 ++++++
>> >>  doc/guides/eventdevs/features/sw.ini        | 14 ++++++
>> >>  doc/guides/eventdevs/index.rst              |  1 +
>> >>  doc/guides/eventdevs/overview.rst           | 40 ++++++++++++++++
>> >>  13 files changed, 234 insertions(+)
>> >
>> >Why dlb2 is missing?
>> No specific reason. It's missed by mistake. I will send a patch to fix it.
>
>I think a v9 is needed.
>I am sending other comments.
>Note: it can all be in one single patch.
>


^ permalink raw reply	[flat|nested] 87+ messages in thread

* Re: [EXT] Re: [PATCH v8 01/10] doc: add skeleton for eventdevs feature matrices
  2021-11-24 12:35                     ` Sunil Kumar Kori
@ 2021-11-24 12:41                       ` Thomas Monjalon
  2021-11-24 12:46                         ` Sunil Kumar Kori
  0 siblings, 1 reply; 87+ messages in thread
From: Thomas Monjalon @ 2021-11-24 12:41 UTC (permalink / raw)
  To: Sunil Kumar Kori
  Cc: Jerin Jacob Kollanukkaran, dev, nikhil.rao,
	Pavan Nikhilesh Bhagavatula, hemant.agrawal, nipun.gupta,
	harry.van.haaren, mattias.ronnblom, liang.j.ma, dev

24/11/2021 13:35, Sunil Kumar Kori:
> Hi Thomas,
> 
> Just wanted to confirm that all documentation patches should go as single patch or I can send it as a series of patches. 
> I am ready with dlb2 changes also. Once you confirm I will send patches accordingly. Please confirm.

There is no specific comment in each patch, so it can go all in a single patch (v9).




^ permalink raw reply	[flat|nested] 87+ messages in thread

* RE: [EXT] Re: [PATCH v8 01/10] doc: add skeleton for eventdevs feature matrices
  2021-11-24 12:41                       ` Thomas Monjalon
@ 2021-11-24 12:46                         ` Sunil Kumar Kori
  2021-11-24 13:05                           ` Sunil Kumar Kori
  0 siblings, 1 reply; 87+ messages in thread
From: Sunil Kumar Kori @ 2021-11-24 12:46 UTC (permalink / raw)
  To: Thomas Monjalon
  Cc: Jerin Jacob Kollanukkaran, dev, nikhil.rao,
	Pavan Nikhilesh Bhagavatula, hemant.agrawal, nipun.gupta,
	harry.van.haaren, mattias.ronnblom, liang.j.ma, dev



Regards
Sunil Kumar Kori

>-----Original Message-----
>From: Thomas Monjalon <thomas@monjalon.net>
>Sent: Wednesday, November 24, 2021 6:12 PM
>To: Sunil Kumar Kori <skori@marvell.com>
>Cc: Jerin Jacob Kollanukkaran <jerinj@marvell.com>; dev@dpdk.org;
>nikhil.rao@intel.com; Pavan Nikhilesh Bhagavatula
><pbhagavatula@marvell.com>; hemant.agrawal@nxp.com;
>nipun.gupta@nxp.com; harry.van.haaren@intel.com;
>mattias.ronnblom@ericsson.com; liang.j.ma@intel.com; dev@dpdk.org
>Subject: Re: [EXT] Re: [PATCH v8 01/10] doc: add skeleton for eventdevs
>feature matrices
>
>24/11/2021 13:35, Sunil Kumar Kori:
>> Hi Thomas,
>>
>> Just wanted to confirm that all documentation patches should go as single
>patch or I can send it as a series of patches.
>> I am ready with dlb2 changes also. Once you confirm I will send patches
>accordingly. Please confirm.
>
>There is no specific comment in each patch, so it can go all in a single patch
>(v9).
>
>
Ack.


^ permalink raw reply	[flat|nested] 87+ messages in thread

* [PATCH v9 1/1] doc: add eventdevs feature matrices
  2021-11-23 11:07             ` [PATCH v8 01/10] doc: add skeleton for eventdevs feature matrices skori
                                 ` (11 preceding siblings ...)
  2021-11-24 12:14               ` [PATCH v1 1/1] doc: update eventdev feature matrix for dlb2 skori
@ 2021-11-24 13:03               ` skori
  2021-11-26 14:55                 ` Thomas Monjalon
  12 siblings, 1 reply; 87+ messages in thread
From: skori @ 2021-11-24 13:03 UTC (permalink / raw)
  To: jerinj, nikhil.rao, pbhagavatula, hemant.agrawal, nipun.gupta,
	harry.van.haaren, mattias.ronnblom
  Cc: dev, Sunil Kumar Kori

From: Sunil Kumar Kori <skori@marvell.com>

Patch adds feature matrices for event dev, Rx/Tx, Crypto
and Timer adapters.

Along with, .ini files are added for all supported PMDs.

Signed-off-by: Sunil Kumar Kori <skori@marvell.com>
---
v9:
 - Squah doc patches into a single patch.
 - Add .ini file for dlb2 driver also
 - Fix minor review comments
v8:
 - Fix script dump for dsw and SW driver
 - Review comments incorporated
v7:
 - Rebased to 21.11 rc3
 - Fix Tx adapter capabilities for SW driver
v6:
 - Rebased to 21.11 rc2
 - Added feature matrices for all supported drivers
 - Added doc vs code check script
 
v5:
 - Rebased to 21.11
 - Added feature matrix for cnxk.
v4:
 - Rebased to 20.02
v3:
 - Removed .txt files to generate tables.
 - Use conf.py script to generate tables.
 - Add .ini file for all supported PMDs.
v2:
 - Review comments incorporated

 .gitignore                                  |  5 ++
 doc/guides/conf.py                          | 25 ++++++++++
 doc/guides/eventdevs/features/cnxk.ini      | 31 +++++++++++++
 doc/guides/eventdevs/features/default.ini   | 51 +++++++++++++++++++++
 doc/guides/eventdevs/features/dlb2.ini      | 21 +++++++++
 doc/guides/eventdevs/features/dpaa.ini      | 27 +++++++++++
 doc/guides/eventdevs/features/dpaa2.ini     | 29 ++++++++++++
 doc/guides/eventdevs/features/dsw.ini       | 23 ++++++++++
 doc/guides/eventdevs/features/octeontx.ini  | 27 +++++++++++
 doc/guides/eventdevs/features/octeontx2.ini | 30 ++++++++++++
 doc/guides/eventdevs/features/opdl.ini      | 18 ++++++++
 doc/guides/eventdevs/features/sw.ini        | 27 +++++++++++
 doc/guides/eventdevs/index.rst              |  1 +
 doc/guides/eventdevs/overview.rst           | 40 ++++++++++++++++
 14 files changed, 355 insertions(+)
 create mode 100644 doc/guides/eventdevs/features/cnxk.ini
 create mode 100644 doc/guides/eventdevs/features/default.ini
 create mode 100644 doc/guides/eventdevs/features/dlb2.ini
 create mode 100644 doc/guides/eventdevs/features/dpaa.ini
 create mode 100644 doc/guides/eventdevs/features/dpaa2.ini
 create mode 100644 doc/guides/eventdevs/features/dsw.ini
 create mode 100644 doc/guides/eventdevs/features/octeontx.ini
 create mode 100644 doc/guides/eventdevs/features/octeontx2.ini
 create mode 100644 doc/guides/eventdevs/features/opdl.ini
 create mode 100644 doc/guides/eventdevs/features/sw.ini
 create mode 100644 doc/guides/eventdevs/overview.rst

diff --git a/.gitignore b/.gitignore
index b98a43a601..212c7aa28e 100644
--- a/.gitignore
+++ b/.gitignore
@@ -16,6 +16,11 @@ doc/guides/regexdevs/overview_feature_table.txt
 doc/guides/vdpadevs/overview_feature_table.txt
 doc/guides/bbdevs/overview_feature_table.txt
 doc/guides/gpus/overview_feature_table.txt
+doc/guides/eventdevs/overview_feature_table.txt
+doc/guides/eventdevs/overview_rx_adptr_feature_table.txt
+doc/guides/eventdevs/overview_tx_adptr_feature_table.txt
+doc/guides/eventdevs/overview_crypto_adptr_feature_table.txt
+doc/guides/eventdevs/overview_timer_adptr_feature_table.txt
 
 # ignore generated ctags/cscope files
 cscope.out.po
diff --git a/doc/guides/conf.py b/doc/guides/conf.py
index e6ce929bc8..1743ce301f 100644
--- a/doc/guides/conf.py
+++ b/doc/guides/conf.py
@@ -401,6 +401,31 @@ def setup(app):
                             'Features',
                             'Features availability in GPU drivers',
                             'Feature')
+    table_file = dirname(__file__) + '/eventdevs/overview_feature_table.txt'
+    generate_overview_table(table_file, 1,
+                            'Scheduling Features',
+                            'Features availability in eventdev drivers',
+                            'Feature')
+    table_file = dirname(__file__) + '/eventdevs/overview_rx_adptr_feature_table.txt'
+    generate_overview_table(table_file, 2,
+                            'Eth Rx adapter Features',
+                            'Features availability for Ethdev Rx adapters',
+                            'Feature')
+    table_file = dirname(__file__) + '/eventdevs/overview_tx_adptr_feature_table.txt'
+    generate_overview_table(table_file, 3,
+                            'Eth Tx adapter Features',
+                            'Features availability for Ethdev Tx adapters',
+                            'Feature')
+    table_file = dirname(__file__) + '/eventdevs/overview_crypto_adptr_feature_table.txt'
+    generate_overview_table(table_file, 4,
+                            'Crypto adapter Features',
+                            'Features availability for Crypto adapters',
+                            'Feature')
+    table_file = dirname(__file__) + '/eventdevs/overview_timer_adptr_feature_table.txt'
+    generate_overview_table(table_file, 5,
+                            'Timer adapter Features',
+                            'Features availability for Timer adapters',
+                            'Feature')
 
     if LooseVersion(sphinx_version) < LooseVersion('1.3.1'):
         print('Upgrade sphinx to version >= 1.3.1 for '
diff --git a/doc/guides/eventdevs/features/cnxk.ini b/doc/guides/eventdevs/features/cnxk.ini
new file mode 100644
index 0000000000..7633c6e3a2
--- /dev/null
+++ b/doc/guides/eventdevs/features/cnxk.ini
@@ -0,0 +1,31 @@
+;
+; Supported features of the 'cnxk' eventdev driver.
+;
+; Refer to default.ini for the full list of available PMD features.
+;
+[Scheduling Features]
+queue_qos                  = Y
+distributed_sched          = Y
+queue_all_types            = Y
+nonseq_mode                = Y
+runtime_port_link          = Y
+multiple_queue_port        = Y
+carry_flow_id              = Y
+maintenance_free           = Y
+
+[Eth Rx adapter Features]
+internal_port              = Y
+multi_eventq               = Y
+override_flow_id           = Y
+event_vector               = Y
+
+[Eth Tx adapter Features]
+internal_port              = Y
+event_vector               = Y
+
+[Crypto adapter Features]
+internal_port_op_fwd       = Y
+session_private_data       = Y
+
+[Timer adapter Features]
+internal_port              = Y
diff --git a/doc/guides/eventdevs/features/default.ini b/doc/guides/eventdevs/features/default.ini
new file mode 100644
index 0000000000..2ea233463a
--- /dev/null
+++ b/doc/guides/eventdevs/features/default.ini
@@ -0,0 +1,51 @@
+;
+; Features of a default eventdev driver.
+;
+; This file defines the features that are valid for inclusion in
+; the other driver files and also the order that they appear in
+; the features table in the documentation.
+;
+[Scheduling Features]
+queue_qos                  =
+event_qos                  =
+distributed_sched          =
+queue_all_types            =
+burst_mode                 =
+implicit_release_disable   =
+nonseq_mode                =
+runtime_port_link          =
+multiple_queue_port        =
+carry_flow_id              =
+maintenance_free           =
+
+;
+; Features of a default Ethernet Rx adapter.
+;
+[Eth Rx adapter Features]
+internal_port              =
+multi_eventq               =
+override_flow_id           =
+event_vector               =
+
+;
+; Features of a default Ethernet Tx adapter.
+;
+[Eth Tx adapter Features]
+internal_port              =
+event_vector               =
+
+;
+; Features of a default Crypto adapter.
+;
+[Crypto adapter Features]
+internal_port_op_new       =
+internal_port_op_fwd       =
+internal_port_qp_ev_bind   =
+session_private_data       =
+
+;
+; Features of a default Timer adapter.
+;
+[Timer adapter Features]
+internal_port              =
+periodic                   =
diff --git a/doc/guides/eventdevs/features/dlb2.ini b/doc/guides/eventdevs/features/dlb2.ini
new file mode 100644
index 0000000000..29747b1c26
--- /dev/null
+++ b/doc/guides/eventdevs/features/dlb2.ini
@@ -0,0 +1,21 @@
+;
+; Supported features of the 'dlb2' eventdev driver.
+;
+; Refer to default.ini for the full list of available PMD features.
+;
+[Scheduling Features]
+queue_qos                  = Y
+event_qos                  = Y
+distributed_sched          = Y
+queue_all_types            = Y
+burst_mode                 = Y
+implicit_release_disable   = Y
+maintenance_free           = Y
+
+[Eth Rx adapter Features]
+
+[Eth Tx adapter Features]
+
+[Crypto adapter Features]
+
+[Timer adapter Features]
diff --git a/doc/guides/eventdevs/features/dpaa.ini b/doc/guides/eventdevs/features/dpaa.ini
new file mode 100644
index 0000000000..b73bfa02e5
--- /dev/null
+++ b/doc/guides/eventdevs/features/dpaa.ini
@@ -0,0 +1,27 @@
+;
+; Supported features of the 'dpaa' eventdev driver.
+;
+; Refer to default.ini for the full list of available PMD features.
+;
+[Scheduling Features]
+distributed_sched          = Y
+burst_mode                 = Y
+nonseq_mode                = Y
+multiple_queue_port        = Y
+carry_flow_id              = Y
+maintenance_free           = Y
+
+[Eth Rx adapter Features]
+internal_port              = Y
+multi_eventq               = Y
+override_flow_id           = Y
+
+[Eth Tx adapter Features]
+internal_port              = Y
+
+[Crypto adapter Features]
+internal_port_op_new       = Y
+internal_port_qp_ev_bind   = Y
+session_private_data       = Y
+
+[Timer adapter Features]
diff --git a/doc/guides/eventdevs/features/dpaa2.ini b/doc/guides/eventdevs/features/dpaa2.ini
new file mode 100644
index 0000000000..c935bd0cfc
--- /dev/null
+++ b/doc/guides/eventdevs/features/dpaa2.ini
@@ -0,0 +1,29 @@
+;
+; Supported features of the 'dpaa2' eventdev driver.
+;
+; Refer to default.ini for the full list of available PMD features.
+;
+[Scheduling Features]
+distributed_sched          = Y
+queue_all_types            = Y
+burst_mode                 = Y
+nonseq_mode                = Y
+runtime_port_link          = Y
+multiple_queue_port        = Y
+carry_flow_id              = Y
+maintenance_free           = Y
+
+[Eth Rx adapter Features]
+internal_port              = Y
+multi_eventq               = Y
+override_flow_id           = Y
+
+[Eth Tx adapter Features]
+internal_port              = Y
+
+[Crypto adapter Features]
+internal_port_op_new       = Y
+internal_port_qp_ev_bind   = Y
+session_private_data       = Y
+
+[Timer adapter Features]
diff --git a/doc/guides/eventdevs/features/dsw.ini b/doc/guides/eventdevs/features/dsw.ini
new file mode 100644
index 0000000000..c8bc6b3f1d
--- /dev/null
+++ b/doc/guides/eventdevs/features/dsw.ini
@@ -0,0 +1,23 @@
+;
+; Supported features of the 'distributed software' eventdev driver.
+;
+; Refer to default.ini for the full list of available PMD features.
+;
+[Scheduling Features]
+distributed_sched          = Y
+burst_mode                 = Y
+nonseq_mode                = Y
+multiple_queue_port        = Y
+carry_flow_id              = Y
+
+[Eth Rx adapter Features]
+multi_eventq               = Y
+override_flow_id           = Y
+event_vector               = Y
+
+[Eth Tx adapter Features]
+
+[Crypto adapter Features]
+session_private_data       = Y
+
+[Timer adapter Features]
diff --git a/doc/guides/eventdevs/features/octeontx.ini b/doc/guides/eventdevs/features/octeontx.ini
new file mode 100644
index 0000000000..ec044e6289
--- /dev/null
+++ b/doc/guides/eventdevs/features/octeontx.ini
@@ -0,0 +1,27 @@
+;
+; Supported features of the 'octeontx' eventdev driver.
+;
+; Refer to default.ini for the full list of available PMD features.
+;
+[Scheduling Features]
+queue_qos                  = Y
+distributed_sched          = Y
+queue_all_types            = Y
+nonseq_mode                = Y
+runtime_port_link          = Y
+multiple_queue_port        = Y
+carry_flow_id              = Y
+maintenance_free           = Y
+
+[Eth Rx adapter Features]
+internal_port              = Y
+
+[Eth Tx adapter Features]
+internal_port              = Y
+
+[Crypto adapter Features]
+internal_port_op_fwd       = Y
+session_private_data       = Y
+
+[Timer adapter Features]
+internal_port              = Y
diff --git a/doc/guides/eventdevs/features/octeontx2.ini b/doc/guides/eventdevs/features/octeontx2.ini
new file mode 100644
index 0000000000..05b84beb6e
--- /dev/null
+++ b/doc/guides/eventdevs/features/octeontx2.ini
@@ -0,0 +1,30 @@
+;
+; Supported features of the 'octeontx2' eventdev driver.
+;
+; Refer to default.ini for the full list of available PMD features.
+;
+[Scheduling Features]
+queue_qos                  = Y
+distributed_sched          = Y
+queue_all_types            = Y
+nonseq_mode                = Y
+runtime_port_link          = Y
+multiple_queue_port        = Y
+carry_flow_id              = Y
+maintenance_free           = Y
+
+[Eth Rx adapter Features]
+internal_port              = Y
+multi_eventq               = Y
+
+[Eth Tx adapter Features]
+internal_port              = Y
+
+[Crypto adapter Features]
+internal_port_op_new       = Y
+internal_port_op_fwd       = Y
+internal_port_qp_ev_bind   = Y
+
+[Timer adapter Features]
+internal_port              = Y
+periodic                   = Y
diff --git a/doc/guides/eventdevs/features/opdl.ini b/doc/guides/eventdevs/features/opdl.ini
new file mode 100644
index 0000000000..5cc35d3c77
--- /dev/null
+++ b/doc/guides/eventdevs/features/opdl.ini
@@ -0,0 +1,18 @@
+;
+; Supported features of 'Ordered Packet Distribution Library' eventdev driver.
+;
+; Refer to default.ini for the full list of available PMD features.
+;
+[Scheduling Features]
+burst_mode                 = Y
+carry_flow_id              = Y
+maintenance_free           = Y
+
+[Eth Rx adapter Features]
+
+[Eth Tx adapter Features]
+
+[Crypto adapter Features]
+session_private_data       = Y
+
+[Timer adapter Features]
diff --git a/doc/guides/eventdevs/features/sw.ini b/doc/guides/eventdevs/features/sw.ini
new file mode 100644
index 0000000000..8c89d3b8d2
--- /dev/null
+++ b/doc/guides/eventdevs/features/sw.ini
@@ -0,0 +1,27 @@
+;
+; Supported features of the 'software' eventdev driver.
+;
+; Refer to default.ini for the full list of available PMD features.
+;
+[Scheduling Features]
+queue_qos                  = Y
+event_qos                  = Y
+burst_mode                 = Y
+implicit_release_disable   = Y
+nonseq_mode                = Y
+runtime_port_link          = Y
+multiple_queue_port        = Y
+carry_flow_id              = Y
+maintenance_free           = Y
+
+[Eth Rx adapter Features]
+multi_eventq               = Y
+override_flow_id           = Y
+event_vector               = Y
+
+[Eth Tx adapter Features]
+
+[Crypto adapter Features]
+session_private_data       = Y
+
+[Timer adapter Features]
diff --git a/doc/guides/eventdevs/index.rst b/doc/guides/eventdevs/index.rst
index 2143025390..b11657f7ae 100644
--- a/doc/guides/eventdevs/index.rst
+++ b/doc/guides/eventdevs/index.rst
@@ -11,6 +11,7 @@ application through the eventdev API.
     :maxdepth: 2
     :numbered:
 
+    overview
     cnxk
     dlb2
     dpaa
diff --git a/doc/guides/eventdevs/overview.rst b/doc/guides/eventdevs/overview.rst
new file mode 100644
index 0000000000..3c5ee515f8
--- /dev/null
+++ b/doc/guides/eventdevs/overview.rst
@@ -0,0 +1,40 @@
+..  SPDX-License-Identifier: BSD-3-Clause
+    Copyright(C) 2021 Marvell.
+
+Event Device Supported Functionality Matrices
+=============================================
+
+Event device supported features
+-------------------------------
+
+.. _table_eventdev_pmd_features:
+
+.. include:: overview_feature_table.txt
+
+Ethernet Rx adapter supported features
+--------------------------------------
+
+.. _table_eventdev_rx_adapter_features:
+
+.. include:: overview_rx_adptr_feature_table.txt
+
+Ethernet Tx adapter supported features
+--------------------------------------
+
+.. _table_eventdev_tx_adapter_features:
+
+.. include:: overview_tx_adptr_feature_table.txt
+
+Crypto device adapter supported features
+----------------------------------------
+
+.. _table_cryptodev_adapter_features:
+
+.. include:: overview_crypto_adptr_feature_table.txt
+
+Timer adapter supported features
+--------------------------------
+
+.. _table_timer_adapter_features:
+
+.. include:: overview_timer_adptr_feature_table.txt
-- 
2.25.1


^ permalink raw reply	[flat|nested] 87+ messages in thread

* RE: [EXT] Re: [PATCH v8 01/10] doc: add skeleton for eventdevs feature matrices
  2021-11-24 12:46                         ` Sunil Kumar Kori
@ 2021-11-24 13:05                           ` Sunil Kumar Kori
  0 siblings, 0 replies; 87+ messages in thread
From: Sunil Kumar Kori @ 2021-11-24 13:05 UTC (permalink / raw)
  To: Sunil Kumar Kori, Thomas Monjalon
  Cc: Jerin Jacob Kollanukkaran, dev, nikhil.rao,
	Pavan Nikhilesh Bhagavatula, hemant.agrawal, nipun.gupta,
	harry.van.haaren, mattias.ronnblom, liang.j.ma, dev

Regards
Sunil Kumar Kori

>-----Original Message-----
>From: Sunil Kumar Kori <skori@marvell.com>
>Sent: Wednesday, November 24, 2021 6:17 PM
>To: Thomas Monjalon <thomas@monjalon.net>
>Cc: Jerin Jacob Kollanukkaran <jerinj@marvell.com>; dev@dpdk.org;
>nikhil.rao@intel.com; Pavan Nikhilesh Bhagavatula
><pbhagavatula@marvell.com>; hemant.agrawal@nxp.com;
>nipun.gupta@nxp.com; harry.van.haaren@intel.com;
>mattias.ronnblom@ericsson.com; liang.j.ma@intel.com; dev@dpdk.org
>Subject: RE: [EXT] Re: [PATCH v8 01/10] doc: add skeleton for eventdevs
>feature matrices
>
>
>
>Regards
>Sunil Kumar Kori
>
>>-----Original Message-----
>>From: Thomas Monjalon <thomas@monjalon.net>
>>Sent: Wednesday, November 24, 2021 6:12 PM
>>To: Sunil Kumar Kori <skori@marvell.com>
>>Cc: Jerin Jacob Kollanukkaran <jerinj@marvell.com>; dev@dpdk.org;
>>nikhil.rao@intel.com; Pavan Nikhilesh Bhagavatula
>><pbhagavatula@marvell.com>; hemant.agrawal@nxp.com;
>>nipun.gupta@nxp.com; harry.van.haaren@intel.com;
>>mattias.ronnblom@ericsson.com; liang.j.ma@intel.com; dev@dpdk.org
>>Subject: Re: [EXT] Re: [PATCH v8 01/10] doc: add skeleton for eventdevs
>>feature matrices
>>
>>24/11/2021 13:35, Sunil Kumar Kori:
>>> Hi Thomas,
>>>
>>> Just wanted to confirm that all documentation patches should go as
>>> single
>>patch or I can send it as a series of patches.
>>> I am ready with dlb2 changes also. Once you confirm I will send
>>> patches
>>accordingly. Please confirm.
>>
>>There is no specific comment in each patch, so it can go all in a
>>single patch (v9).
>>
>>
>Ack.

I sent v9. Please have a look.


^ permalink raw reply	[flat|nested] 87+ messages in thread

* Re: [PATCH v9 1/1] doc: add eventdevs feature matrices
  2021-11-24 13:03               ` [PATCH v9 1/1] doc: add eventdevs feature matrices skori
@ 2021-11-26 14:55                 ` Thomas Monjalon
  0 siblings, 0 replies; 87+ messages in thread
From: Thomas Monjalon @ 2021-11-26 14:55 UTC (permalink / raw)
  To: Sunil Kumar Kori
  Cc: jerinj, nikhil.rao, pbhagavatula, hemant.agrawal, nipun.gupta,
	harry.van.haaren, mattias.ronnblom, dev

24/11/2021 14:03, skori@marvell.com:
> From: Sunil Kumar Kori <skori@marvell.com>
> 
> Patch adds feature matrices for event dev, Rx/Tx, Crypto
> and Timer adapters.
> 
> Along with, .ini files are added for all supported PMDs.
> 
> Signed-off-by: Sunil Kumar Kori <skori@marvell.com>

Applied, thanks.

I hope we can merge the script to check these matrices soon.



^ permalink raw reply	[flat|nested] 87+ messages in thread

* [dpdk-dev] [PATCH 2/3] doc: update eventdev feature matrix for octeontx2
  2019-11-07 11:14 [dpdk-dev] [PATCH 1/3] doc: add skeleton for eventdevs feature metrices Sunil Kumar Kori
@ 2019-11-07 11:14 ` Sunil Kumar Kori
  0 siblings, 0 replies; 87+ messages in thread
From: Sunil Kumar Kori @ 2019-11-07 11:14 UTC (permalink / raw)
  To: jerinj, nikhil.rao, pbhagavatula, hemant.agrawal, nipun.gupta,
	harry.van.haaren, mattias.ronnblom, liang.j.ma, John McNamara,
	Marko Kovacevic
  Cc: dev, Sunil Kumar Kori

Patch updates eventdev and adapters feature metrices for octeontx2
platform.

Signed-off-by: Sunil Kumar Kori <skori@marvell.com>
---
 doc/guides/eventdevs/features/octeontx2.ini      | 16 ++++++++++++++++
 .../eventdevs/overview_adptr_feature_table.txt   |  4 ++--
 doc/guides/eventdevs/overview_feature_table.txt  | 12 ++++++------
 3 files changed, 24 insertions(+), 8 deletions(-)
 create mode 100644 doc/guides/eventdevs/features/octeontx2.ini

diff --git a/doc/guides/eventdevs/features/octeontx2.ini b/doc/guides/eventdevs/features/octeontx2.ini
new file mode 100644
index 000000000..05718e4ac
--- /dev/null
+++ b/doc/guides/eventdevs/features/octeontx2.ini
@@ -0,0 +1,16 @@
+;
+; Supported features of the 'octeontx2' eventdev driver.
+;
+; Refer to default.ini for the full list of available PMD features.
+;
+[Features]
+Event queue priority based scheduling = Y
+Event device distributed scheduling   = Y
+Event device non sequential mode      = Y
+Event queue all types                 = Y
+Runtime event queue/port linking      = Y
+Multi queue linking per port          = Y
+
+[Adapter Features]
+Rx/Tx on internal port           = Y
+Multiple event queues per ethdev = Y
diff --git a/doc/guides/eventdevs/overview_adptr_feature_table.txt b/doc/guides/eventdevs/overview_adptr_feature_table.txt
index 4f4887ea8..11c66eb49 100644
--- a/doc/guides/eventdevs/overview_adptr_feature_table.txt
+++ b/doc/guides/eventdevs/overview_adptr_feature_table.txt
@@ -70,7 +70,7 @@
                                           x x
                                             2
    ================================ = = = = = = =
-   Rx/Tx on internal port
-   Multiple event queues per ethdev
+   Rx/Tx on internal port                   Y
+   Multiple event queues per ethdev         Y
    Override flow ID
    ================================ = = = = = = =
diff --git a/doc/guides/eventdevs/overview_feature_table.txt b/doc/guides/eventdevs/overview_feature_table.txt
index c2e9bd289..c4d3bd6d4 100644
--- a/doc/guides/eventdevs/overview_feature_table.txt
+++ b/doc/guides/eventdevs/overview_feature_table.txt
@@ -70,13 +70,13 @@
                                                x x
                                                  2
    ===================================== = = = = = = =
-   Event queue priority based scheduling
+   Event queue priority based scheduling         Y
    Event priority based scheduling
-   Event device distributed scheduling
-   Event device non sequential mode
-   Event queue all types
+   Event device distributed scheduling           Y
+   Event device non sequential mode              Y
+   Event queue all types                         Y
    Burst mode enqueue/dequeue
    Event port implicit release disable
-   Runtime event queue/port linking
-   Multi queue linking per port
+   Runtime event queue/port linking              Y
+   Multi queue linking per port                  Y
    ===================================== = = = = = = =
-- 
2.17.1


^ permalink raw reply	[flat|nested] 87+ messages in thread

end of thread, other threads:[~2021-11-26 14:55 UTC | newest]

Thread overview: 87+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-11-07 11:12 [dpdk-dev] [PATCH 1/3] doc: add skeleton for eventdevs feature metrices Sunil Kumar Kori
2019-11-07 11:12 ` [dpdk-dev] [PATCH 2/3] doc: update eventdev feature matrix for octeontx2 Sunil Kumar Kori
2019-11-07 11:12 ` [dpdk-dev] [PATCH 3/3] doc: update eventdev feature matrix for octeontx Sunil Kumar Kori
2019-11-15  7:38 ` [dpdk-dev] [PATCH 1/3] doc: add skeleton for eventdevs feature metrices Jerin Jacob
2019-11-21  7:44 ` [dpdk-dev] [PATCH v2 1/3] doc: add skeleton for eventdevs feature matrices Sunil Kumar Kori
2019-11-21  7:44   ` [dpdk-dev] [PATCH v2 2/3] doc: update eventdev feature matrix for octeontx2 Sunil Kumar Kori
2019-11-21  7:44   ` [dpdk-dev] [PATCH v2 3/3] doc: update eventdev feature matrix for octeontx Sunil Kumar Kori
2019-11-28 15:49   ` [dpdk-dev] [PATCH v2 1/3] doc: add skeleton for eventdevs feature matrices Thomas Monjalon
2019-12-03  6:27   ` [dpdk-dev] [PATCH v3 " Sunil Kumar Kori
2019-12-03  6:27     ` [dpdk-dev] [PATCH v3 2/3] doc: update eventdev feature matrix for octeontx2 Sunil Kumar Kori
2019-12-03  6:27     ` [dpdk-dev] [PATCH v3 3/3] doc: update eventdev feature matrix for octeontx Sunil Kumar Kori
2020-02-27  7:02     ` [dpdk-dev] [PATCH v4 1/3] doc: add skeleton for eventdevs feature matrices Sunil Kumar Kori
2020-02-27  7:03       ` [dpdk-dev] [PATCH v4 2/3] doc: update eventdev feature matrix for octeontx2 Sunil Kumar Kori
2020-02-27  7:03       ` [dpdk-dev] [PATCH v4 3/3] doc: update eventdev feature matrix for octeontx Sunil Kumar Kori
2021-10-22  7:48       ` [dpdk-dev] [PATCH v5 1/4] doc: add skeleton for eventdevs feature matrices skori
2021-10-22  7:48         ` [dpdk-dev] [PATCH v5 2/4] doc: update eventdev feature matrix for octeontx2 skori
2021-10-22  7:48         ` [dpdk-dev] [PATCH v5 3/4] doc: update eventdev feature matrix for octeontx skori
2021-10-22  7:48         ` [dpdk-dev] [PATCH v5 4/4] doc: update eventdev feature matrix for cnxk skori
2021-11-09 10:11         ` [dpdk-dev] [PATCH v5 1/4] doc: add skeleton for eventdevs feature matrices Jerin Jacob
2021-11-09 11:34           ` Thomas Monjalon
2021-11-11  6:40             ` [EXT] " Sunil Kumar Kori
2021-11-10  8:42           ` Mattias Rönnblom
2021-11-10  8:50             ` [dpdk-dev] [EXT] " Jerin Jacob Kollanukkaran
2021-11-10  9:29               ` [dpdk-dev] [PATCH] eventdev: negate maintenance capability flag Mattias Rönnblom
2021-11-10  9:55                 ` Van Haaren, Harry
2021-11-10 10:06                   ` [dpdk-dev] [PATCH v2] " Mattias Rönnblom
2021-11-10 10:07                   ` [dpdk-dev] [PATCH] " Mattias Rönnblom
2021-11-10 10:43                     ` Jerin Jacob
2021-11-10 11:32                       ` [dpdk-dev] [PATCH v3] " Mattias Rönnblom
2021-11-10 18:55                         ` Jerin Jacob
2021-11-10 11:14                   ` [dpdk-dev] [PATCH v2] eventdev: fix Rx adapter stalls on event device backpressure Mattias Rönnblom
2021-11-10 11:23                     ` Jayatheerthan, Jay
2021-11-10 18:56                       ` Jerin Jacob
2021-11-15 13:15         ` [PATCH v6 01/11] doc: add skeleton for eventdevs feature matrices skori
2021-11-15 13:15           ` [PATCH v6 02/11] doc: update eventdev feature matrix for octeontx skori
2021-11-15 13:15           ` [PATCH v6 03/11] doc: update eventdev feature matrix for octeontx2 skori
2021-11-15 13:15           ` [PATCH v6 04/11] doc: update eventdev feature matrix for cn9k skori
2021-11-15 13:15           ` [PATCH v6 05/11] doc: update eventdev feature matrix for cn10k skori
2021-11-15 13:15           ` [PATCH v6 06/11] doc: update eventdev feature matrix for dpaa skori
2021-11-15 13:15           ` [PATCH v6 07/11] doc: update eventdev feature matrix for dpaa2 skori
2021-11-15 13:15           ` [PATCH v6 08/11] doc: update eventdev feature matrix for SW skori
2021-11-15 13:15           ` [PATCH v6 09/11] doc: update eventdev feature matrix for opdl skori
2021-11-15 13:15           ` [PATCH v6 10/11] doc: update eventdev feature matrix for dsw skori
2021-11-15 13:15           ` [PATCH v6 11/11] devtools: check event device doc tables skori
2021-11-22  7:54           ` [PATCH v7 01/11] doc: add skeleton for eventdevs feature matrices skori
2021-11-22  7:54             ` [PATCH v7 02/11] doc: update eventdev feature matrix for octeontx skori
2021-11-22  7:54             ` [PATCH v7 03/11] doc: update eventdev feature matrix for octeontx2 skori
2021-11-22  7:54             ` [PATCH v7 04/11] doc: update eventdev feature matrix for cn9k skori
2021-11-22  7:54             ` [PATCH v7 05/11] doc: update eventdev feature matrix for cn10k skori
2021-11-22 18:25               ` Jerin Jacob
2021-11-22  7:54             ` [PATCH v7 06/11] doc: update eventdev feature matrix for dpaa skori
2021-11-22  7:54             ` [PATCH v7 07/11] doc: update eventdev feature matrix for dpaa2 skori
2021-11-22  7:54             ` [PATCH v7 08/11] doc: update eventdev feature matrix for SW skori
2021-11-22  7:54             ` [PATCH v7 09/11] doc: update eventdev feature matrix for opdl skori
2021-11-22  7:54             ` [PATCH v7 10/11] doc: update eventdev feature matrix for dsw skori
2021-11-22  7:54             ` [PATCH v7 11/11] devtools: check event device doc tables skori
2021-11-22 18:35               ` Jerin Jacob
2021-11-23 11:07             ` [PATCH v8 01/10] doc: add skeleton for eventdevs feature matrices skori
2021-11-23 11:07               ` [PATCH v8 02/10] doc: update eventdev feature matrix for octeontx skori
2021-11-23 11:07               ` [PATCH v8 03/10] doc: update eventdev feature matrix for octeontx2 skori
2021-11-23 11:07               ` [PATCH v8 04/10] doc: update eventdev feature matrix for cnxk skori
2021-11-23 11:07               ` [PATCH v8 05/10] doc: update eventdev feature matrix for dpaa skori
2021-11-23 11:07               ` [PATCH v8 06/10] doc: update eventdev feature matrix for dpaa2 skori
2021-11-23 11:07               ` [PATCH v8 07/10] doc: update eventdev feature matrix for SW skori
2021-11-23 11:07               ` [PATCH v8 08/10] doc: update eventdev feature matrix for opdl skori
2021-11-23 11:07               ` [PATCH v8 09/10] doc: update eventdev feature matrix for dsw skori
2021-11-23 11:07               ` [PATCH v8 10/10] devtools: check event device doc tables skori
2021-11-24 10:52                 ` Thomas Monjalon
2021-11-24 11:16                   ` [EXT] " Sunil Kumar Kori
2021-11-24 11:21                     ` Thomas Monjalon
2021-11-24 10:03               ` [PATCH v8 01/10] doc: add skeleton for eventdevs feature matrices Thomas Monjalon
2021-11-24 10:30                 ` [EXT] " Sunil Kumar Kori
2021-11-24 10:43                   ` Thomas Monjalon
2021-11-24 12:35                     ` Sunil Kumar Kori
2021-11-24 12:41                       ` Thomas Monjalon
2021-11-24 12:46                         ` Sunil Kumar Kori
2021-11-24 13:05                           ` Sunil Kumar Kori
2021-11-24 10:48               ` Thomas Monjalon
2021-11-24 11:12                 ` [EXT] " Sunil Kumar Kori
2021-11-24 12:14               ` [PATCH v1 1/1] doc: update eventdev feature matrix for dlb2 skori
2021-11-24 13:03               ` [PATCH v9 1/1] doc: add eventdevs feature matrices skori
2021-11-26 14:55                 ` Thomas Monjalon
2021-11-15 18:08         ` [dpdk-dev] [PATCH v5 1/4] doc: add skeleton for " Jerin Jacob
2021-11-23 16:44         ` Jerin Jacob
2021-11-24  8:06           ` Thomas Monjalon
2021-11-24  8:14             ` Jerin Jacob
2019-11-07 11:14 [dpdk-dev] [PATCH 1/3] doc: add skeleton for eventdevs feature metrices Sunil Kumar Kori
2019-11-07 11:14 ` [dpdk-dev] [PATCH 2/3] doc: update eventdev feature matrix for octeontx2 Sunil Kumar Kori

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).