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