PTP PMC example and system configuartion changes. (r8, r9, dsR8, dsR9)

1. Replaced few commands with updated ones.
2. Updated the title from "SyncE and Introduction" to "SyncE Introduction".
3. Added a note in "Instance Specific Considerations" section.
4. Added and modifed few content in PTP Introduction and General Information sections.
(Added PHC to the abbreviation list).

Change-Id: I1d457c379869e264663a82625b1373384de16033
Signed-off-by: Dinesh Neelapu <dinesh.neelapu@windriver.com>
This commit is contained in:
Dinesh Neelapu 2023-07-05 19:46:34 +00:00
parent 7cafedd741
commit e86d77c86e
5 changed files with 38 additions and 18 deletions

@ -112,6 +112,8 @@
.. |PEM| replace:: :abbr:`PEM (Privacy Enhanced Mail)` .. |PEM| replace:: :abbr:`PEM (Privacy Enhanced Mail)`
.. |PF| replace:: :abbr:`PF (Physical Function)` .. |PF| replace:: :abbr:`PF (Physical Function)`
.. |PHB| replace:: :abbr:`PHB (Per-Hop Behavior)` .. |PHB| replace:: :abbr:`PHB (Per-Hop Behavior)`
.. |PHC| replace:: :abbr:`PHC (PTP Hardware Clock)`
.. |PHCs| replace:: :abbr:`PHC (PTP Hardware Clock)`
.. |PMD| replace:: :abbr:`PMD (Pole Mode Driver)` .. |PMD| replace:: :abbr:`PMD (Pole Mode Driver)`
.. |PQDN| replace:: :abbr:`PDQN (Partially Qualified Domain Name)` .. |PQDN| replace:: :abbr:`PDQN (Partially Qualified Domain Name)`
.. |PQDNs| replace:: :abbr:`PQDNs (Partially Qualified Domain Names)` .. |PQDNs| replace:: :abbr:`PQDNs (Partially Qualified Domain Names)`

@ -1,8 +1,8 @@
.. _gnss-and-synce-support-62004dc97f3e: .. _gnss-and-synce-support-62004dc97f3e:
====================== ==================
SyncE and Introduction SyncE Introduction
====================== ==================
Intel's Westport Channel and Logan Beach NICs support a built-in GNSS module Intel's Westport Channel and Logan Beach NICs support a built-in GNSS module
and the ability to distribute clock via Synchronous Ethernet (SyncE). This and the ability to distribute clock via Synchronous Ethernet (SyncE). This
@ -15,7 +15,7 @@ additional details if required.
.. important:: .. important::
Reference the user guide for their Westport Channel or Logan Beach NIC for Reference the user guide for their Westport Channel or Logan Beach |NIC| for
additional information on configuring these features. The intent of this additional information on configuring these features. The intent of this
section is to explain how these parameters can be set, rather than section is to explain how these parameters can be set, rather than
describing each possible configuration. describing each possible configuration.

@ -32,6 +32,17 @@ NONE
An interface with a port must be assigned to the ``ptp4l`` instance in order An interface with a port must be assigned to the ``ptp4l`` instance in order
for it to start. for it to start.
.. note::
It is recommended to configure one ``ptp4l`` instance per |PHC|. Some |NIC|
designs have a single |PHC| shared between all the ports on the |NIC|, while
others may have one |PHC| per port. Refer to the |NIC| documentation to
determine if a |NIC| has multiple |PHCs|. Configuring a ``ptp4l`` instance
with multiple interfaces, each with its own |PHC|, results in degraded
timing accuracy or other undesirable behaviors. This means that a given
``ptp4l`` instance should only be configured with interfaces that are on the
same |NIC| and share a |PHC|.
phc2sys phc2sys
======= =======
@ -89,7 +100,7 @@ named differently on each system.
**Other requirements** **Other requirements**
An interface with a port must be assigned to the ``ts2phc`` instance in order An interface with a port must be assigned to the ``ts2phc`` instance in order
for time to be synced from GNSS to the phc. for time to be synced from GNSS to the |PHC|.
clock clock
===== =====
@ -108,8 +119,8 @@ NONE
**Other requirements** **Other requirements**
The clock type instance is a special instance used for configuring the NIC The clock type instance is a special instance used for configuring the |NIC|
control parameters of the Westport Channel or Logan Beach NIC clock control parameters of the Westport Channel or Logan Beach |NIC| clock
interface parameters. interface parameters.
These parameters can be applied to the interface of a clock instance |PTP| These parameters can be applied to the interface of a clock instance |PTP|

@ -44,7 +44,7 @@ terminal output.
.. code-block:: .. code-block::
~(keystone_admin)]$ cat /etc/ptpinstance/ptp4l-ptp4l-legacy.conf ~(keystone_admin)]$ cat /etc/linuxptp/ptpinstance/ptp4l-ptp4l-legacy.conf
[global] [global]
## ##
@ -66,8 +66,7 @@ terminal output.
.. code-block:: .. code-block::
~(keystone_admin)]$ ptp4l -f /etc/ptpinstance/ptp4l-ptp4l-legacy.conf ~(keystone_admin)]$ ptp4l -f /etc/linuxptp/ptpinstance/ptp4l-ptp4l-legacy.conf
no interface specified
In this example the ``ptp4l`` program indicates that there is no interface In this example the ``ptp4l`` program indicates that there is no interface
specified, which is confirmed by the contents of the config file above. specified, which is confirmed by the contents of the config file above.
@ -90,7 +89,12 @@ Additional tools
# General command format: # General command format:
sudo pmc -u -b 0 -f <path to ptp4l.conf for targeted instance> -s <path to uds socket for target instance> 'COMMAND GOES HERE' sudo pmc -u -b 0 -f <path to ptp4l.conf for targeted instance> -s <path to uds socket for target instance> 'COMMAND GOES HERE'
eg. pmc -u -b 0 -f /etc/ptpinstance/ptp4l-ptp1.conf -s /var/run/ptp4l-ptp1 'get PORT_DATA_SET
For Example:
.. code-block::
pmc -u -b 0 -f /etc/linuxptp/ptpinstance/ptp4l-ptp1.conf -s /var/run/ptp4l-ptp1 get PORT_DATA_SET
:command:`PHC_CTL` :command:`PHC_CTL`

@ -27,8 +27,8 @@ part of the linuxptp project (https://sourceforge.net/projects/linuxptp/).
``ptp4l`` ``ptp4l``
ptp4l is the implementation of Precision Time Protocol according to the IEEE ptp4l is the implementation of Precision Time Protocol according to the IEEE
standard 1588 for Linux. It handles communication between |PTP| nodes as standard 1588 for Linux. It handles communication between |PTP| nodes as
well as setting the |PTP| Hardware Clock (PHC) on the NIC. See man ptp4l for well as setting the |PTP| Hardware Clock (PHC) on the NIC. Refer to the man
a complete list of configuration parameters. page (:command:`man ptp41`) for a complete list of configuration parameters.
``phc2sys`` ``phc2sys``
phc2sys is used to synchronize the system time with a PHC. The PHC may be phc2sys is used to synchronize the system time with a PHC. The PHC may be
@ -78,8 +78,10 @@ Overview of the |prod| configuration units
``currentUtcOffsetValid=1`` at the the ``ptp4l`` instance level to set this ``currentUtcOffsetValid=1`` at the the ``ptp4l`` instance level to set this
flag. flag.
To return the CLOCK_TAI offset to 0, the ``currentUtcOffsetValid=1`` parameter To return the CLOCK_TAI offset to 0, the ``currentUtcOffsetValid=1``
must be removed and the host must be restarted via lock/unlock. parameter must be removed using system ptp-instance-parameter delete and
the PTP configuration must be re-applied with :command:`system
ptp-instance-apply``.
General information General information
@ -87,8 +89,9 @@ General information
The relevant system locations for |PTP| instance configuration files are: The relevant system locations for |PTP| instance configuration files are:
``/etc/ptpinstance/`` ``/etc/linuxptp/ptpinstance/``
Application configuration files, one per instance (excluding clock type). Application configuration files. A single configuration file is generated
for each configured instance.
``/etc/sysconfig/ptpinstance`` ``/etc/sysconfig/ptpinstance``
Environment variable files, one per instance Environment variable files, one per instance