doc: add mlx5 PMD flex item documentation

Message ID 20211116145139.837-1-getelson@nvidia.com (mailing list archive)
State Superseded, archived
Delegated to: Raslan Darawsheh
Headers
Series doc: add mlx5 PMD flex item documentation |

Checks

Context Check Description
ci/checkpatch success coding style OK
ci/iol-testing warning apply patch failure
ci/github-robot: build success github build: passed
ci/Intel-compilation success Compilation OK
ci/intel-Testing success Testing PASS

Commit Message

Gregory Etelson Nov. 16, 2021, 2:51 p.m. UTC
  Describe firmware configuration requirements.
List mlx5 hardware and PMD limitations.

Signed-off-by: Gregory Etelson <getelson@nvidia.com>
---
 doc/guides/nics/mlx5.rst | 16 ++++++++++++++++
 1 file changed, 16 insertions(+)
  

Comments

Thomas Monjalon Nov. 16, 2021, 3:05 p.m. UTC | #1
16/11/2021 15:51, Gregory Etelson:
> Describe firmware configuration requirements.
> List mlx5 hardware and PMD limitations.

That's a pity we missed documentation when adding the feature.
Please a line "Fixes".

[...]
> +- Flex item API:
> +
> +  - Firmware configuration: ``FLEX_PARSER_PROFILE_ENABLE=4 PROG_PARSE_GRAPH=1``.

This is not a limitation and it is redundant with the last part of this patch.

> +  - Hardware support: BlueField-2.

I think it should be a space: BlueField 2

> +  - Flex item is supported on PF only.
> +  - Hardware limits ``header_length_mask_width`` up to 6 bits.
> +  - Firmware supports 8 global sample fields. Each flex item allocates non-shared sample fields from that pool.

Please break lines after a dot.

> +  - Supported flex item can have 1 IN arc - ``eth`` or ``udp`` and up to 2 OUT arcs - ``ipv4`` or ``ipv6``.

Is "arc" defined somewhere?

> +  - Flex item fields (next_header, next_protocol, samples) do not participate in RSS hash functions.

Fields should be enclosed with quotes.

> +  - In RTE flex item configuration, ``next_header.field_base`` value must be byte aligned (multiple of 8).

Please don't say "RTE".

[...]
> +- enable dynamic flex parser for RTE flex item::

Again, please stop using "RTE". I really wonder why I see this in a lot of patches.
In user doc, it doesn't make sense at all.
If you really want to distinguish API and driver implementation, use "API".

> +
> +   FLEX_PARSER_PROFILE_ENABLE=4
> +   PROG_PARSE_GRAPH=1
  

Patch

diff --git a/doc/guides/nics/mlx5.rst b/doc/guides/nics/mlx5.rst
index 552e06c0db..bbeeb1a3d4 100644
--- a/doc/guides/nics/mlx5.rst
+++ b/doc/guides/nics/mlx5.rst
@@ -494,6 +494,17 @@  Limitations
     from the reference "Clock Queue" completions,
     the scheduled send timestamps should not be specified with non-zero MSB.
 
+- Flex item API:
+
+  - Firmware configuration: ``FLEX_PARSER_PROFILE_ENABLE=4 PROG_PARSE_GRAPH=1``.
+  - Hardware support: BlueField-2.
+  - Flex item is supported on PF only.
+  - Hardware limits ``header_length_mask_width`` up to 6 bits.
+  - Firmware supports 8 global sample fields. Each flex item allocates non-shared sample fields from that pool.
+  - Supported flex item can have 1 IN arc - ``eth`` or ``udp`` and up to 2 OUT arcs - ``ipv4`` or ``ipv6``.
+  - Flex item fields (next_header, next_protocol, samples) do not participate in RSS hash functions.
+  - In RTE flex item configuration, ``next_header.field_base`` value must be byte aligned (multiple of 8).
+
 Statistics
 ----------
 
@@ -1260,6 +1271,11 @@  Below are some firmware configurations listed.
 
    REAL_TIME_CLOCK_ENABLE=1
 
+- enable dynamic flex parser for RTE flex item::
+
+   FLEX_PARSER_PROFILE_ENABLE=4
+   PROG_PARSE_GRAPH=1
+
 Linux Prerequisites
 -------------------