a02341065dcbbfe0b65a676969a747de964aa94d
[dpdk.git] / doc / guides / eventdevs / cnxk.rst
1 .. SPDX-License-Identifier: BSD-3-Clause
2    Copyright(c) 2021 Marvell.
3
4 Marvell cnxk SSO Eventdev Driver
5 ================================
6
7 The SSO PMD (**librte_event_cnxk**) and provides poll mode
8 eventdev driver support for the inbuilt event device found in the
9 **Marvell OCTEON cnxk** SoC family.
10
11 More information about OCTEON cnxk SoC can be found at `Marvell Official Website
12 <https://www.marvell.com/embedded-processors/infrastructure-processors/>`_.
13
14 Supported OCTEON cnxk SoCs
15 --------------------------
16
17 - CN9XX
18 - CN10XX
19
20 Features
21 --------
22
23 Features of the OCTEON cnxk SSO PMD are:
24
25 - 256 Event queues
26 - 26 (dual) and 52 (single) Event ports on CN9XX
27 - 52 Event ports on CN10XX
28 - HW event scheduler
29 - Supports 1M flows per event queue
30 - Flow based event pipelining
31 - Flow pinning support in flow based event pipelining
32 - Queue based event pipelining
33 - Supports ATOMIC, ORDERED, PARALLEL schedule types per flow
34 - Event scheduling QoS based on event queue priority
35 - Open system with configurable amount of outstanding events limited only by
36   DRAM
37 - HW accelerated dequeue timeout support to enable power management
38
39 Prerequisites and Compilation procedure
40 ---------------------------------------
41
42    See :doc:`../platform/cnxk` for setup information.
43
44
45 Runtime Config Options
46 ----------------------
47
48 - ``Maximum number of in-flight events`` (default ``8192``)
49
50   In **Marvell OCTEON cnxk** the max number of in-flight events are only limited
51   by DRAM size, the ``xae_cnt`` devargs parameter is introduced to provide
52   upper limit for in-flight events.
53
54   For example::
55
56     -a 0002:0e:00.0,xae_cnt=16384
57
58 - ``Event Group QoS support``
59
60   SSO GGRPs i.e. queue uses DRAM & SRAM buffers to hold in-flight
61   events. By default the buffers are assigned to the SSO GGRPs to
62   satisfy minimum HW requirements. SSO is free to assign the remaining
63   buffers to GGRPs based on a preconfigured threshold.
64   We can control the QoS of SSO GGRP by modifying the above mentioned
65   thresholds. GGRPs that have higher importance can be assigned higher
66   thresholds than the rest. The dictionary format is as follows
67   [Qx-XAQ-TAQ-IAQ][Qz-XAQ-TAQ-IAQ] expressed in percentages, 0 represents
68   default.
69
70   For example::
71
72     -a 0002:0e:00.0,qos=[1-50-50-50]
73
74 Debugging Options
75 -----------------
76
77 .. _table_octeon_cnxk_event_debug_options:
78
79 .. table:: OCTEON cnxk event device debug options
80
81    +---+------------+-------------------------------------------------------+
82    | # | Component  | EAL log command                                       |
83    +===+============+=======================================================+
84    | 1 | SSO        | --log-level='pmd\.event\.cnxk,8'                      |
85    +---+------------+-------------------------------------------------------+