Updated cnxk DMA driver document to explain about performance tuning
parameters for kernel module.

Signed-off-by: Amit Prakash Shukla <amitpraka...@marvell.com>
---
 doc/guides/dmadevs/cnxk.rst | 30 ++++++++++++++++++++++++++++++
 1 file changed, 30 insertions(+)

diff --git a/doc/guides/dmadevs/cnxk.rst b/doc/guides/dmadevs/cnxk.rst
index 418b9a9d63..8d841b1f12 100644
--- a/doc/guides/dmadevs/cnxk.rst
+++ b/doc/guides/dmadevs/cnxk.rst
@@ -56,3 +56,33 @@ Performing Data Copies
 Refer to the :ref:`Enqueue / Dequeue APIs <dmadev_enqueue_dequeue>` section
 of the dmadev library documentation
 for details on operation enqueue and submission API usage.
+
+Performance Tuning Parameters
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+To achieve higher performance, DMA device needs to be tuned using PF kernel 
driver
+module params. The PF kernel driver is part of the octeon sdk. Module params 
shall be
+configured during module insert as in below example::
+
+    $ sudo insmod octeontx2_dpi.ko mps=128 mrrs=128 eng_fifo_buf=0x101008080808
+
+* ``mps``
+  Maximum payload size. MPS size shall not exceed the size selected by PCI 
config.
+  Max size that shall be configured can be found on executing ``lspci`` command
+  for the device.
+
+* ``mrrs``
+  Maximum read request size. MRRS size shall not exceed the size selected by 
PCI
+  config. Max size that shall be configured can be found on executing ``lspci``
+  command for the device.
+
+* ``eng_fifo_buf``
+  CNXK supports 6 DMA engines and each engine has an associated FIFO. 
By-default
+  all engine's FIFO is configured to 8 KB. Engine FIFO size can be tuned using 
this
+  64 bit variable, where each byte represents an engine. In the example above 
engine
+  0-3 FIFO are configure as 8 KB and engine 4-5 are configured as 16 KB.
+
+.. note::
+    MPS and MRRS performance tuning parameters helps achieve higher performance
+    only for Inbound and Outbound DMA transfers. The parameter has no effect 
for
+    Internal only DMA transfer.
-- 
2.25.1

Reply via email to