Merge "Silicom NIC PTP support (r8, dsR8)"
This commit is contained in:
commit
e199398608
@ -61,6 +61,8 @@ Supported hardware components for use with |prod| are listed here.
|
|||||||
| | |
|
| | |
|
||||||
| | - NVIDIA Mellanox MCX4121A-ACAT (ConnectX-4) Lx 10G/25G |
|
| | - NVIDIA Mellanox MCX4121A-ACAT (ConnectX-4) Lx 10G/25G |
|
||||||
| | |
|
| | |
|
||||||
|
| | - Silicom TimeSync STS2 |
|
||||||
|
| | |
|
||||||
+--------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
+--------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||||||
| NICs Verified for SR-IOV | - Intel 82599 (Niantic) 10G |
|
| NICs Verified for SR-IOV | - Intel 82599 (Niantic) 10G |
|
||||||
| | |
|
| | |
|
||||||
@ -78,6 +80,8 @@ Supported hardware components for use with |prod| are listed here.
|
|||||||
| | |
|
| | |
|
||||||
| | - Broadcom 57504 |
|
| | - Broadcom 57504 |
|
||||||
| | |
|
| | |
|
||||||
|
| | - Silicom TimeSync STS2 |
|
||||||
|
| | |
|
||||||
| | .. note:: |
|
| | .. note:: |
|
||||||
| | For Mellanox NICs, SR-IOV must be enabled in the NIC firmware. |
|
| | For Mellanox NICs, SR-IOV must be enabled in the NIC firmware. |
|
||||||
| | |
|
| | |
|
||||||
@ -93,6 +97,8 @@ Supported hardware components for use with |prod| are listed here.
|
|||||||
| | |
|
| | |
|
||||||
| | - NVIDIA Mellanox MCX623106AC-CDAT, MCX623106AN-CDAT (ConnectX-6) 100G |
|
| | - NVIDIA Mellanox MCX623106AC-CDAT, MCX623106AN-CDAT (ConnectX-6) 100G |
|
||||||
| | |
|
| | |
|
||||||
|
| | - Silicom TimeSync STS2 |
|
||||||
|
| | |
|
||||||
+--------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
+--------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||||||
| NIC for High-precision timing synchronization with IEEE | - Intel E810-XXVDA4T (Columbiaville - Westport Channel) 25G |
|
| NIC for High-precision timing synchronization with IEEE | - Intel E810-XXVDA4T (Columbiaville - Westport Channel) 25G |
|
||||||
| 1588 PTP, SyncE and GNSS | |
|
| 1588 PTP, SyncE and GNSS | |
|
||||||
|
@ -0,0 +1,98 @@
|
|||||||
|
.. _configure-silicom-sts-ptp-application-1bc4a8d07aad:
|
||||||
|
|
||||||
|
======================================================
|
||||||
|
Configure PTP on Silicom TimeSync (STS) Server Adapter
|
||||||
|
======================================================
|
||||||
|
|
||||||
|
|
||||||
|
The Silicom TimeSync Server Adapter (STS) provides local time sync support via
|
||||||
|
a local GNSS module which is based on Intel E810 chipset.
|
||||||
|
|
||||||
|
For additional information, see
|
||||||
|
https://www.silicom-usa.com/pr/server-adapters/networking-adapters/10-gigabit-ethernet-networking-adapters/p410g8ts81-timesync-server-adapter/
|
||||||
|
|
||||||
|
The Silicom STS card operates in two modes: regular NIC mode and timing mode.
|
||||||
|
|
||||||
|
Packaged as a system application, the sts-silicom application provides
|
||||||
|
the ability to configure the STS cards in timing mode and specify time sync
|
||||||
|
parameters using helm-overrides.
|
||||||
|
|
||||||
|
.. rubric:: |context|
|
||||||
|
|
||||||
|
On multi-node systems, a homogenous deployment of the Silicom TimeSync (STS)
|
||||||
|
cards is necessary since it's not possible to specify different configurations
|
||||||
|
for different nodes.
|
||||||
|
|
||||||
|
|
||||||
|
.. rubric:: **Limitations**
|
||||||
|
|
||||||
|
.. include:: configuring-ptp-service-using-the-cli.rst
|
||||||
|
:start-after: begin-silicom-ptp-limitations
|
||||||
|
:end-before: end-silicom-ptp-limitations
|
||||||
|
|
||||||
|
.. rubric:: |proc|
|
||||||
|
|
||||||
|
The following example uses a Grand Master deployment on port ``enp81s0f3`` with
|
||||||
|
``twoStep`` mode enabled:
|
||||||
|
|
||||||
|
#. Install the application.
|
||||||
|
|
||||||
|
~(keystone_admin)]$ system application-upload /usr/local/share/applications/helm/sts-silicom-<n.n-nn>.tgz
|
||||||
|
|
||||||
|
|
||||||
|
#. Create the configuration file and apply it.
|
||||||
|
|
||||||
|
.. code-block::
|
||||||
|
|
||||||
|
$ cat << EOF > sts_override.yaml
|
||||||
|
Spec:
|
||||||
|
profileID: 2
|
||||||
|
ports:
|
||||||
|
- ethName: enp81s0f3
|
||||||
|
ql: 4
|
||||||
|
ethPort: 4
|
||||||
|
masterPortMask_GM: 0x8
|
||||||
|
syncePortMask_GM: 0x8
|
||||||
|
twoStep: 1
|
||||||
|
EOF
|
||||||
|
|
||||||
|
~(keystone_admin)]$ system helm-override-update sts-silicom sts-silicom sts-silicom --values sts_override.yaml
|
||||||
|
|
||||||
|
~(keystone_admin)]$ system application-apply sts-silicom
|
||||||
|
|
||||||
|
#. Check if the application is applied.
|
||||||
|
|
||||||
|
.. code-block::
|
||||||
|
|
||||||
|
~(keystone_admin)]$ system application-show sts-silicom
|
||||||
|
|
||||||
|
.. rubric:: |postreq|
|
||||||
|
|
||||||
|
To update the application, remove and re-apply it with the new configuration.
|
||||||
|
|
||||||
|
#. Remove the application.
|
||||||
|
|
||||||
|
.. code-block:: none
|
||||||
|
|
||||||
|
~(keystone_admin)]$ system application-remove sts-silicom
|
||||||
|
|
||||||
|
#. Edit ``sts_override.yaml``.
|
||||||
|
|
||||||
|
#. Apply the new configuration.
|
||||||
|
|
||||||
|
.. code-block:: none
|
||||||
|
|
||||||
|
~(keystone_admin)]$ system helm-override-update sts-silicom sts-silicom sts-silicom --values sts_override.yaml
|
||||||
|
~(keystone_admin)]$ system application-apply sts-silicom
|
||||||
|
|
||||||
|
|
||||||
|
For more details on the configuration parameters, please consult the following
|
||||||
|
Silicom documentation:
|
||||||
|
|
||||||
|
https://github.com/silicom-ltd/STS_HelmCharts
|
||||||
|
|
||||||
|
From https://silicom.ftptoday.com, under /STS/STS_Docs/ (credentials
|
||||||
|
required):
|
||||||
|
|
||||||
|
* STS_Products_Line_Quick_Start_Guide_v1.60.pdf
|
||||||
|
* Linux_TSync_Prog_Guide_V2.4.pdf
|
@ -235,19 +235,70 @@ Create an interface and assign to ports
|
|||||||
PTP Limitations
|
PTP Limitations
|
||||||
---------------
|
---------------
|
||||||
|
|
||||||
NICs using the Intel Ice NIC driver may report the following in the ``ptp4l``
|
|
||||||
logs, which might coincide with a |PTP| port switching to ``FAULTY`` before
|
|
||||||
re-initializing.
|
|
||||||
|
|
||||||
.. code-block:: none
|
* NICs using the Intel® ice driver may report the following error in the
|
||||||
|
``ptp4l`` logs, which results in a |PTP| port switching to ``FAULTY`` before
|
||||||
|
re-initializing.
|
||||||
|
|
||||||
ptp4l[80330.489]: timed out while polling for tx timestamp
|
.. note::
|
||||||
ptp4l[80330.489]: increasing tx_timestamp_timeout may correct this issue, but it is likely caused by a driver bug
|
|
||||||
|
|PTP| ports frequently switching to ``FAULTY`` may degrade the accuracy of
|
||||||
|
the |PTP| timing.
|
||||||
|
|
||||||
|
.. code-block:: none
|
||||||
|
|
||||||
|
ptp4l[80330.489]: timed out while polling for tx timestamp
|
||||||
|
ptp4l[80330.489]: increasing tx_timestamp_timeout may correct this issue, but it is likely caused by a driver bug
|
||||||
|
|
||||||
|
.. note::
|
||||||
|
|
||||||
This is due to a limitation of the Intel Ice driver. The recommended workaround
|
This is due to a limitation with the Intel® ice driver as the driver
|
||||||
is to set the ``tx_timestamp_timeout`` parameter to 700 (ms) in the ``ptp4l``
|
cannot guarantee the time interval to return the timestamp to the
|
||||||
config.
|
``ptp4l`` user space process which results in the occasional timeout
|
||||||
|
error message.
|
||||||
|
|
||||||
.. code-block:: none
|
**Workaround**: The workaround recommended by Intel is to increase the
|
||||||
|
``tx_timestamp_timeout`` parameter in the ``ptp4l`` config. The increased
|
||||||
|
timeout value gives more time for the ice driver to provide the timestamp to
|
||||||
|
the ``ptp4l`` user space process. Timeout values of 50ms and 700ms have been
|
||||||
|
validated. However, the user can use a different value if it is more suitable
|
||||||
|
for their system.
|
||||||
|
|
||||||
~(keystone_admin)]$ system ptp-instance-parameter-add ptp-inst1 tx_timestamp_timeout=700
|
.. code-block:: none
|
||||||
|
|
||||||
|
~(keystone_admin)]$ system ptp-instance-parameter-add <instance_name> tx_timestamp_timeout=700
|
||||||
|
~(keystone_admin)]$ system ptp-instance-apply
|
||||||
|
|
||||||
|
.. note::
|
||||||
|
|
||||||
|
The ``ptp4l`` timeout error log may also be caused by other underlying
|
||||||
|
issues, such as NIC port instability. Therefore, it is recommended to
|
||||||
|
confirm the NIC port is stable before adjusting the timeout values.
|
||||||
|
|
||||||
|
.. begin-silicom-ptp-limitations
|
||||||
|
|
||||||
|
* Silicom and Intel based Time Sync NICs may not be deployed on the same system
|
||||||
|
due to conflicting time sync services and operations.
|
||||||
|
|
||||||
|
|PTP| configuration for Silicom TimeSync (STS) cards is handled separately
|
||||||
|
from |prod| host |PTP| configuration and may result in configuration
|
||||||
|
conflicts if both are used at the same time.
|
||||||
|
|
||||||
|
The sts-silicom application provides a dedicated ``phc2sys`` instance which
|
||||||
|
synchronizes the local system clock to the Silicom TimeSync (STS) card. Users
|
||||||
|
should ensure that ``phc2sys`` is not configured via |prod| |PTP| Host
|
||||||
|
Configuration when the sts-silicom application is in use.
|
||||||
|
|
||||||
|
Additionally, if |prod| |PTP| Host Configuration is being used in parallel
|
||||||
|
for non-STS NICs, users should ensure that all ``ptp4l`` instances do not use
|
||||||
|
conflicting ``domainNumber`` values.
|
||||||
|
|
||||||
|
* When the Silicom TimeSync (STS) card is configured in timing mode using the
|
||||||
|
sts-silicom application, the card goes through an initialization process on
|
||||||
|
application apply and server reboots. The ports will bounce up and down
|
||||||
|
several times during the initialization process, causing network traffic
|
||||||
|
disruption. Therefore, configuring the platform networks on the Silicom
|
||||||
|
TimeSync (STS) card is not supported since it will cause platform
|
||||||
|
instability.
|
||||||
|
|
||||||
|
.. end-silicom-ptp-limitations
|
||||||
|
@ -54,6 +54,7 @@ PTP Server Configuration
|
|||||||
instance-specific-considerations-d9d9509c79dd
|
instance-specific-considerations-d9d9509c79dd
|
||||||
remove-ptp-configurations-4885c027dfa5
|
remove-ptp-configurations-4885c027dfa5
|
||||||
advanced-ptp-configuration-334a08dc50fb
|
advanced-ptp-configuration-334a08dc50fb
|
||||||
|
configure-silicom-sts-ptp-application-1bc4a8d07aad
|
||||||
ptp-instance-examples-517dce312f56
|
ptp-instance-examples-517dce312f56
|
||||||
ptp-instance-troubleshooting-7a7c576ee57a
|
ptp-instance-troubleshooting-7a7c576ee57a
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user