E830 adapters currently support Tx Time based queues.

Signed-off-by: Soumyadeep Hore <soumyadeep.h...@intel.com>
---
 doc/guides/nics/ice.rst | 27 +++++++++++++++++++++++++++
 1 file changed, 27 insertions(+)

diff --git a/doc/guides/nics/ice.rst b/doc/guides/nics/ice.rst
index 77985ae5a2..8ab693ff0b 100644
--- a/doc/guides/nics/ice.rst
+++ b/doc/guides/nics/ice.rst
@@ -415,6 +415,33 @@ and add the ``--force-max-simd-bitwidth=64`` startup 
parameter to disable vector
 
    examples/dpdk-ptpclient -c f -n 3 -a 0000:ec:00.1 
--force-max-simd-bitwidth=64 -- -T 1 -p 0x1 -c 1
 
+Tx Packet Pacing
+~~~~~~~~~~~~~~~~
+
+In order to deliver the timestamp with every packet, a special type of Tx Host 
Queue is
+used, the TS Queue. This feature is currently supported only in E830 adapters.
+
+The tx_offload ``RTE_ETH_TX_OFFLOAD_SEND_ON_TIMESTAMP`` is used to enable the 
feature.
+In order to deliver timestamps internally ``set txtimes`` is used where inter 
burst
+and intra burst time interval in nsecs is provided.
+For example:
+
+.. code-block:: console
+
+   dpdk-testpmd -a 0000:31:00.0 -c f -n 4 -- -i --tx-offloads=0x200000
+   set fwd txonly
+   set txtimes <inter_burst>,<intra_burst>
+   start
+
+Based on the tx_offload initialised during port configuration time, Tx Time
+Queue will be enabled during ice_tx_queue_setup() only for E830 adapters.
+The initial time should be fetched using rte_eth_read_clock(). Further the
+timestamps should be calculated based on the inter_burst and intra_burst times,
+then storing it into proper format (Refer to ``struct tx_timestamp`` in
+tx_only.c) as to be placed in packet header. The timestamps should then be
+copied to packet mbufs and packet header length should be manually adjusted
+accordingly.
+
 Generic Flow Support
 ~~~~~~~~~~~~~~~~~~~~
 
-- 
2.43.0

Reply via email to