From bca31b45a9d1013c4ff84e373a818b7f159f1977 Mon Sep 17 00:00:00 2001 From: Ngairangbam Mili Date: Mon, 15 Sep 2025 07:59:36 +0000 Subject: [PATCH] Granite Rapids-D GNSS and DPLL support for timing Story: 2011345 Task: 52810 Change-Id: I0ee7c0fb100b0ad155c00bda4c37641546b824fb Signed-off-by: Ngairangbam Mili --- doc/source/shared/abbrevs.txt | 5 + .../kubernetes/figures/t-bc-configuration.PNG | Bin 0 -> 39209 bytes .../kubernetes/figures/t-gm-configuration.PNG | Bin 0 -> 79687 bytes ...e-specific-considerations-d9d9509c79dd.rst | 74 ++- .../ptp-instance-examples-517dce312f56.rst | 435 +++++++++++++++++- 5 files changed, 491 insertions(+), 23 deletions(-) create mode 100644 doc/source/system_configuration/kubernetes/figures/t-bc-configuration.PNG create mode 100644 doc/source/system_configuration/kubernetes/figures/t-gm-configuration.PNG diff --git a/doc/source/shared/abbrevs.txt b/doc/source/shared/abbrevs.txt index a58ee2203..e3f0d7146 100755 --- a/doc/source/shared/abbrevs.txt +++ b/doc/source/shared/abbrevs.txt @@ -62,6 +62,7 @@ .. |DNAT| replace:: :abbr:`DNAT (Destination Network Address Translation)` .. |DNS| replace:: :abbr:`DNS (Domain Name System)` .. |DPDK| replace:: :abbr:`DPDK (Data Plane Development Kit)` +.. |DPLL| replace:: :abbr:`DPLL (Digital Phase Locked Loop)` .. |DN| replace:: :abbr:`DN (Distinguished Name)` .. |DORA| replace:: :abbr:`DORA (Dell Open RAN Accelerator)` .. |DRAM| replace:: :abbr:`DRAM (Dynamic Random Access Memory)` @@ -169,6 +170,8 @@ .. |PMU| replace:: :abbr:`PMU (Performance Monitor Unit)` .. |PQDN| replace:: :abbr:`PDQN (Partially Qualified Domain Name)` .. |PQDNs| replace:: :abbr:`PQDNs (Partially Qualified Domain Names)` +.. |PHY| replace:: :abbr:`PHY (Physical Layer)` +.. |PPS| replace:: :abbr:`PPS (Pulse Per Second)` .. |PRTC| replace:: :abbr:`PRTC (Primary Reference Time Clock)` .. |PSA| replace:: :abbr:`PSA (Pod Security Admission)` .. |PSP| replace:: :abbr:`PSP (Pod Security Policy)` @@ -196,6 +199,7 @@ .. |RST| replace:: :abbr:`rST (reStructuredText)` .. |RVMC| replace:: :abbr:`RVMC (Redfish Virtual Media Controller)` .. |RWX| replace:: :abbr:`RWX (Read Write Many)` +.. |RX| replace:: :abbr:`RX (Receiver)` .. |SA| replace:: :abbr:`SA (Security Association)` .. |SAs| replace:: :abbr:`SAs (Security Associations)` .. |SAN| replace:: :abbr:`SAN (Subject Alternative Name)` @@ -243,6 +247,7 @@ .. |TPM| replace:: :abbr:`TPM (Trusted Platform Module)` .. |TPMs| replace:: :abbr:`TPMs (Trusted Platform Modules)` .. |TTL| replace:: :abbr:`TTL (Time-to-live)` +.. |TX| replace:: :abbr:`TX (Transmitter)` .. |UDP| replace:: :abbr:`UDP (User Datagram Protocol)` .. |UDS| replace:: :abbr:`UDS (Unix Domain Socket)` .. |UEFI| replace:: :abbr:`UEFI (Unified Extensible Firmware Interface)` diff --git a/doc/source/system_configuration/kubernetes/figures/t-bc-configuration.PNG b/doc/source/system_configuration/kubernetes/figures/t-bc-configuration.PNG new file mode 100644 index 0000000000000000000000000000000000000000..3e256d8d1a200c9e00492931d28a1a36b55b8f44 GIT binary patch literal 39209 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

{OTM$@mG5njXHYOOv3V<5)9}jHlOVX5iASW3 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

=JIL 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 literal 0 HcmV?d00001 diff --git a/doc/source/system_configuration/kubernetes/instance-specific-considerations-d9d9509c79dd.rst b/doc/source/system_configuration/kubernetes/instance-specific-considerations-d9d9509c79dd.rst index bfc02d846..39bd6fd1d 100644 --- a/doc/source/system_configuration/kubernetes/instance-specific-considerations-d9d9509c79dd.rst +++ b/doc/source/system_configuration/kubernetes/instance-specific-considerations-d9d9509c79dd.rst @@ -119,15 +119,73 @@ NONE **Other requirements** The clock type instance is a special instance used for configuring the |NIC| -control parameters of the Westport Channel or Logan Beach |NIC| clock -interface parameters. +control parameters of the Westport Channel, Logan Beach, E825 (GNR-D) and E830 +(Connorsville) |NICs| clock interface parameters. These parameters can be applied to the interface of a clock instance |PTP| parameters: -* sma1 input/output -* sma2 input/output -* u.fl1 output -* u.fl2 input -* synce_rclka enabled -* synce_rclkb enabled +- sma1 input/output + +- sma2 input/output + +- u.fl1 output + +- u.fl2 input + +- synce_rclka enabled + +- synce_rclkb enabled + +- sdp0 + + - output - configure SDP0 pin as output and assign to channel 1 + +- sdp1 + + - input - configure SDP1 pin as input and assign to channel 1 + +- sdp2 + + - output - configure SDP2 pin as output and assign to channel 2 + +- sdp3 + + - input - configure SDP3 pin as input and assign to channel 2 + +- period_sdp0 + + - 1pps - enable 1PPS output on SDP0 pin + + - 1khz - enable 1 KHz output on SDP0 pin + + - 10mhz - enable 10 MHz output on SDP0 pin + +- period_sdp2 + + - 1pps - enable 1PPS output on SDP2 pin + + - 1khz - enable 1 KHz output on SDP2 pin + + - 10mhz - enable 10 MHz output on SDP2 pin + +- tspll_cfg: + + - osc_156.25 - use the 156.25 MHz oscillator clock signal as input reference + clock for the |PHC| + + - timeref_156.25 - use the 156.25 MHz |DPLL| clock signal (TIME_REF) as input + reference clock for the |PHC|. + +- tx_clk + + - enet - use the 25 MHz oscillator clock signal as |TX| reference clock for the + |PHY| port + + - synce - use the 156.25 MHz |DPLL| clock signal as |TX| reference clock for the + |PHY| port. + + - eref0 - use the 156.25 MHz oscillator clock signal as |TX| reference clock + for the |PHY| port + + diff --git a/doc/source/system_configuration/kubernetes/ptp-instance-examples-517dce312f56.rst b/doc/source/system_configuration/kubernetes/ptp-instance-examples-517dce312f56.rst index 4fbf523d7..90c3bcb7d 100644 --- a/doc/source/system_configuration/kubernetes/ptp-instance-examples-517dce312f56.rst +++ b/doc/source/system_configuration/kubernetes/ptp-instance-examples-517dce312f56.rst @@ -9,22 +9,18 @@ Example PTP Instance Configurations :depth: 2 -The following sections provide example configuration steps for two |PTP| +The following sections provide example configuration steps for some |PTP| configurations supported by |prod|. -* The first is a Border Clock setup where an external |PTP| |PTS| is providing - a time source for the system. Only ptp4l and phc2sys are used for this - configuration. - -* The second shows how to setup a |PTS| node when a time source is available - via a locally connected GNSS signal. The ``ptp4l``, ``phc2sys``, - ``ts2phc`` and clock instance types are used for this configuration. - -Simple PTP configuration - T-BC +T-BC - Simple PTP configuration =============================== -Using the topology shown, the following examples provide -configurations for each service type: +This example presents a Border Clock setup where an external |PTP| |PTS| +provides a time source for the system. Only ``ptp4l`` and ``phc2sys`` are used +for this configuration. + +Using the topology shown, the following examples provide configurations for +each service type: .. figure:: figures/ptp-t-bc-configuration.png :scale: 110 % @@ -162,11 +158,12 @@ phc2sys ~(keystone_admin)]$ system ptp-instance-apply - - -Alternate PTP configuration - T-GM +T-GM - Alternate PTP Configuration ================================== +This example shows how to setup a |PTS| node when a time source is available +via a locally connected |GNSS| signal. The ``ptp4l``, ``phc2sys``, ``ts2phc`` +and clock instance types are used for this configuration. Using the topology shown, the following examples provide configurations for each service type. @@ -404,3 +401,411 @@ instance: .. code-block:: ~(keystone_admin)]$ system ptp-instance-apply + +T-GM - Dual NIC Deployment with GNSS and Timing Modules +======================================================= + +This scenario presents an example of |T-GM| setup where the two |NICs| use |GNSS| +as the precise time source. This configuration can be extended to include +additional |NICs|. + +.. figure:: figures/t-gm-configuration.PNG + :scale: 110 % + + *T-GM Configuration* + +clock +----- + +#. Create an instance. + + .. code-block:: none + + ~(keystone_admin)]$ system ptp-instance-add clock0 clock + +#. Create an interface to configure NIC1, add parameter(s), and assign the host + interface(s) to it. The SDP1 pin is assigned to channel 1 and will receive + the signal from |DPLL|. Input reference clock for |PHC| will be a 156.25 MHz + signal from |DPLL| (TIME_REF). Use |DPLL| clock signal (SyncE) as |TX| + reference clock for |PHY| port. + + .. code-block:: none + + ~(keystone_admin)]$ system ptp-interface-add clock0if0 clock0 + ~(keystone_admin)]$ system ptp-interface-parameter-add clock0if0 sdp1=input + ~(keystone_admin)]$ system ptp-interface-parameter-add clock0if0 tspll_cfg=timeref_156.25 + ~(keystone_admin)]$ system ptp-interface-parameter-add clock0if0 tx_clk=synce + ~(keystone_admin)]$ system host-if-ptp-assign controller-0 enp1s0f0 clk0if0 + +#. Create an interface to configure the other ports of NIC1. Use |DPLL| clock + signal (SyncE) as |TX| reference clock for |PHY| port. + + .. code-block:: none + + ~(keystone_admin)]$ system ptp-interface-add clock0if1 clock0 + ~(keystone_admin)]$ system ptp-interface-parameter-add clock0if1 tx_clk=synce + ~(keystone_admin)]$ system host-if-ptp-assign controller-0 enp1s0f1 clock0if1 + ~(keystone_admin)]$ system host-if-ptp-assign controller-0 enp1s0f2 clock0if1 + ~(keystone_admin)]$ system host-if-ptp-assign controller-0 enp1s0f3 clock0if1 + ~(keystone_admin)]$ system host-if-ptp-assign controller-0 enp1s0f4 clock0if1 + ~(keystone_admin)]$ system host-if-ptp-assign controller-0 enp1s0f5 clock0if1 + ~(keystone_admin)]$ system host-if-ptp-assign controller-0 enp1s0f6 clock0if1 + ~(keystone_admin)]$ system host-if-ptp-assign controller-0 enp1s0f7 clock0if1 + +#. Create an interface to configure NIC2, add parameter(s), and assign the host + interface(s) to it. SDP1 pin is assigned to channel 1 and will receive the + signal from |DPLL|. For additional |NICs|, run the following commands for each |NIC|. + + .. code-block:: none + + ~(keystone_admin)]$ system ptp-interface-add clock0if2 clock0 + ~(keystone_admin)]$ system ptp-interface-parameter-add clock0if2 sdp1=input + ~(keystone_admin)]$ system host-if-ptp-assign controller-0 enp2s0f0 clock0if2 + +#. Assign the instance to a host. + + .. code-block:: none + + ~(keystone_admin)]$ system host-ptp-instance-assign controller-0 clock0 + +#. Apply the configuration. + + .. code-block:: none + + ~(keystone_admin)]$ system ptp-instance-apply + + +ts2phc +------ + +#. Create an instance and add parameter(s). This instance will synchronize the + |PHCs| with the external timestamp signal coming from the |GNSS|. + + .. code-block:: none + + ~(keystone_admin)]$ system ptp-instance-add ts0 ts2phc + ~(keystone_admin)]$ system ptp-instance-parameter-add ts0 ts2phc.nmea_serialport=/dev/ttyACM0 + + .. note:: + + The |GNSS| serial port and baud rate may vary depending on the platform. + +#. Create an interface, add parameter(s), and assign the host interface(s) to + it. The clock signal will be received by the SDP1 pin on channel 1 of each + |NIC|. + + .. code-block:: none + + ~(keystone_admin)]$ system ptp-interface-add ts0if0 ts0 + ~(keystone_admin)]$ system ptp-interface-parameter-add ts0if0 ts2phc.channel=1 ts2phc.pin_index=1 + ~(keystone_admin)]$ system host-if-ptp-assign controller-0 enp1s0f0 ts0if0 + +#. Assign the host interface(s) of the other |NICs| that will be + synchronized by the |GNSS| timestamps. + + .. code-block:: none + + ~(keystone_admin)]$ system host-if-ptp-assign controller-0 enp2s0f0 ts0if0 + +#. Assign the instance to a host. + + .. code-block:: none + + ~(keystone_admin)]$ system host-ptp-instance-assign controller-0 ts0 + +#. Apply the configuration. + + .. code-block:: none + + ~(keystone_admin)]$ system ptp-instance-apply + + +ptp4l +----- + +#. Create an instance for NIC1 and add parameter(s). It is recommended to + create a ``ptp4l`` instance for each |PHC|. + + .. code-block:: none + + ~(keystone_admin)]$ system ptp-instance-add ptp0 ptp4l + ~(keystone_admin)]$ system ptp-instance-parameter-add ptp0 domainNumber=24 + ~(keystone_admin)]$ system ptp-instance-parameter-add ptp0 dataset_comparison=G.8275.x + +#. Create an interface, add parameter(s), and assign host interface(s) to it. + + .. code-block:: none + + ~(keystone_admin)]$ system ptp-interface-add ptp0if0 ptp0 + ~(keystone_admin)]$ system host-if-ptp-assign controller-0 enp1s0f0 ptp0if0 + ~(keystone_admin)]$ system host-if-ptp-assign controller-0 enp1s0f1 ptp0if0 + ~(keystone_admin)]$ system host-if-ptp-assign controller-0 enp1s0f2 ptp0if0 + ~(keystone_admin)]$ system host-if-ptp-assign controller-0 enp1s0f3 ptp0if0 + ~(keystone_admin)]$ system host-if-ptp-assign controller-0 enp1s0f4 ptp0if0 + ~(keystone_admin)]$ system host-if-ptp-assign controller-0 enp1s0f5 ptp0if0 + ~(keystone_admin)]$ system host-if-ptp-assign controller-0 enp1s0f6 ptp0if0 + ~(keystone_admin)]$ system host-if-ptp-assign controller-0 enp1s0f7 ptp0if0 + +#. Assign the instance to a host. + + .. code-block:: none + + ~(keystone_admin)]$ system host-ptp-instance-assign controller-0 ptp0 + +#. Repeat the procedure in a similar manner for the additional |NICs|. + + .. code-block:: none + + ~(keystone_admin)]$ system ptp-instance-add ptp1 ptp4l + ~(keystone_admin)]$ system ptp-instance-parameter-add ptp1 domainNumber=24 + ~(keystone_admin)]$ system ptp-instance-parameter-add ptp1 dataset_comparison=G.8275.x + + ~(keystone_admin)]$ system ptp-interface-add ptp1if0 ptp1 + ~(keystone_admin)]$ system host-if-ptp-assign controller-0 enp2s0f0 ptp1if0 + ~(keystone_admin)]$ system host-if-ptp-assign controller-0 enp2s0f1 ptp1if0 + ~(keystone_admin)]$ system host-if-ptp-assign controller-0 enp2s0f2 ptp1if0 + ~(keystone_admin)]$ system host-if-ptp-assign controller-0 enp2s0f3 ptp1if0 + ~(keystone_admin)]$ system host-if-ptp-assign controller-0 enp2s0f4 ptp1if0 + ~(keystone_admin)]$ system host-if-ptp-assign controller-0 enp2s0f5 ptp1if0 + ~(keystone_admin)]$ system host-if-ptp-assign controller-0 enp2s0f6 ptp1if0 + ~(keystone_admin)]$ system host-if-ptp-assign controller-0 enp2s0f7 ptp1if0 + ~(keystone_admin)]$ system host-ptp-instance-assign controller-0 ptp1 + +#. Apply the configuration. + + .. code-block:: none + + ~(keystone_admin)]$ system ptp-instance-apply + +phc2sys +------- + +#. Create an instance and add parameter(s). This instance will synchronize the + system clock with the NIC1 |PHC| via the |PTP| port (-s option). + + .. code-block:: none + + ~(keystone_admin)]$ system ptp-instance-add phc0 phc2sys + ~(keystone_admin)]$ system ptp-instance-parameter-add phc0 domainNumber=24 + ~(keystone_admin)]$ system ptp-instance-parameter-add phc0 uds_address=/var/run/ptp4l-ptp0 + ~(keystone_admin)]$ system ptp-instance-parameter-add phc0 cmdline_opts='-w -s enp1s0f0' + + .. note:: + + For the -s option in the ``cmdline_opts`` parameter, it is necessary to + add the |PTP| port of NIC1. To find the |PTP| port, find the interface + that contains the ``ptp`` folder: + + .. code-block:: none + + $ ls /sys/class/net/enp1*/device/ptp + /sys/class/net/enp1s0f0/device/ptp: + ptp0 + +#. Assign the instance to a host. + + .. code-block:: none + + ~(keystone_admin)]$ system host-ptp-instance-assign controller-0 phc0 + +#. Apply the configuration. + + .. code-block:: none + + ~(keystone_admin)]$ system ptp-instance-apply + +T-BC - Dual NIC Deployment with Timing Module +============================================= + +This scenario presents an example of |T-BC| configuration where NIC1 is +synchronized via ``ptp4l`` and then NIC2 is synchronized via a clock signal +generated by NIC1. + +This configuration can be extended to include additional |NICs|. + +.. figure:: figures/t-bc-configuration.PNG + :scale: 110 % + + *T-BC configuration* + +.. note:: + + In a setup where Intel E825 and E830 |NICs| are used, the incoming |PTP| and + SyncE clock sources must be connected to the E825 ports only. + +clock +----- + +#. Create an instance. + + .. code-block:: none + + ~(keystone_admin)]$ system ptp-instance-add clock0 clock + +#. Create an interface to configure NIC1, add parameter(s), and assign the host + interface(s) to it. The SDP0 pin is assigned to channel 1 and will generate + a 1 |PPS| signal to |DPLL|. Input reference clock for |PHC| will be a 156.25 MHz + signal from |DPLL| (TIME_REF). Use |DPLL| clock signal (SyncE) as |TX| reference + clock for |PHY| port. + + .. code-block:: none + + ~(keystone_admin)]$ system ptp-interface-add clock0if0 clock0 + ~(keystone_admin)]$ system ptp-interface-parameter-add clock0if0 sdp0=output period_sdp0=1pps + ~(keystone_admin)]$ system ptp-interface-parameter-add clock0if0 tspll_cfg=timeref_156.25 + ~(keystone_admin)]$ system ptp-interface-parameter-add clock0if0 tx_clk=synce + ~(keystone_admin)]$ system host-if-ptp-assign controller-0 enp1s0f0 clk0if0 + +#. Create an interface to configure the other ports of NIC1. Use |DPLL| clock + signal (SyncE) as |TX| reference clock for |PHY| port. + + .. code-block:: none + + ~(keystone_admin)]$ system ptp-interface-add clock0if1 clock0 + ~(keystone_admin)]$ system ptp-interface-parameter-add clock0if1 tx_clk=synce + ~(keystone_admin)]$ system host-if-ptp-assign controller-0 enp1s0f1 clock0if1 + ~(keystone_admin)]$ system host-if-ptp-assign controller-0 enp1s0f2 clock0if1 + ~(keystone_admin)]$ system host-if-ptp-assign controller-0 enp1s0f3 clock0if1 + ~(keystone_admin)]$ system host-if-ptp-assign controller-0 enp1s0f4 clock0if1 + ~(keystone_admin)]$ system host-if-ptp-assign controller-0 enp1s0f5 clock0if1 + ~(keystone_admin)]$ system host-if-ptp-assign controller-0 enp1s0f6 clock0if1 + ~(keystone_admin)]$ system host-if-ptp-assign controller-0 enp1s0f7 clock0if1 + +#. Create an interface to configure NIC2, add parameter(s), and assign the host + interface(s) to it. SDP1 pin is assigned to channel 1 and will receive the + signal from |DPLL|. For additional |NICs|, run the following commands for + each |NIC|. + + .. code-block:: none + + ~(keystone_admin)]$ system ptp-interface-add clock0if2 clock0 + ~(keystone_admin)]$ system ptp-interface-parameter-add clock0if2 sdp1=input + ~(keystone_admin)]$ system host-if-ptp-assign controller-0 enp2s0f0 clock0if2 + +#. Assign the instance to a host. + + .. code-block:: none + + ~(keystone_admin)]$ system host-ptp-instance-assign controller-0 clock0 + +#. Apply the configuration. + + .. code-block:: none + + ~(keystone_admin)]$ system ptp-instance-apply + +ts2phc +------ + +#. Create an instance and add parameter(s). This instance will synchronize the + |PHCs| with the clock signal generated by NIC1. + + .. code-block:: none + + ~(keystone_admin)]$ system ptp-instance-add ts0 ts2phc + ~(keystone_admin)]$ system ptp-instance-parameter-add ts0 cmdline_opts='-s generic' + +#. Create an interface, add parameter(s), and assign the host interface(s) of the + |NICs| that will be synchronized by NIC1 clock signal. The clock signal + will be received by the SDP1 pin on channel 1 of each |NIC|. + + .. code-block:: none + + ~(keystone_admin)]$ system ptp-interface-add ts0if0 ts0 + ~(keystone_admin)]$ system ptp-interface-parameter-add ts0if0 ts2phc.channel=1 ts2phc.pin_index=1 + ~(keystone_admin)]$ system host-if-ptp-assign controller-0 enp2s0f0 ts0if0 + +#. Assign the instance to a host. + + .. code-block:: none + + ~(keystone_admin)]$ system host-ptp-instance-assign controller-0 ts0 + +#. Apply the configuration. + + .. code-block:: none + + ~(keystone_admin)]$ system ptp-instance-apply + +ptp4l +----- + +#. Create an instance for NIC1 and add parameter(s). It is recommended to + create a ``ptp4l`` instance for each |PHC|. + + .. code-block:: none + + ~(keystone_admin)]$ system ptp-instance-add ptp0 ptp4l + ~(keystone_admin)]$ system ptp-instance-parameter-add ptp0 domainNumber=24 + ~(keystone_admin)]$ system ptp-instance-parameter-add ptp0 dataset_comparison=G.8275.x + +#. Create an interface, add parameter(s), and assign the host interface(s) to it. + + .. code-block:: none + + ~(keystone_admin)$ system ptp-interface-add ptp0if0 ptp0 + ~(keystone_admin)$ system host-if-ptp-assign controller-0 enp1s0f0 ptp0if0 + ~(keystone_admin)$ system host-if-ptp-assign controller-0 enp1s0f1 ptp0if0 + ~(keystone_admin)$ system host-if-ptp-assign controller-0 enp1s0f2 ptp0if0 + ~(keystone_admin)$ system host-if-ptp-assign controller-0 enp1s0f3 ptp0if0 + ~(keystone_admin)$ system host-if-ptp-assign controller-0 enp1s0f4 ptp0if0 + ~(keystone_admin)$ system host-if-ptp-assign controller-0 enp1s0f5 ptp0if0 + ~(keystone_admin)$ system host-if-ptp-assign controller-0 enp1s0f6 ptp0if0 + ~(keystone_admin)$ system host-if-ptp-assign controller-0 enp1s0f7 ptp0if0 + + +#. Assign the instance to a host. + + .. code-block:: none + + ~(keystone_admin)]$ system host-ptp-instance-assign controller-0 ptp0 + +#. Repeat the procedure in a similar manner for the additional |NICs|. + + .. code-block:: none + + ~(keystone_admin)]$ system ptp-instance-add ptp1 ptp4l + ~(keystone_admin)]$ system ptp-instance-parameter-add ptp1 domainNumber=24 + ~(keystone_admin)]$ system ptp-instance-parameter-add ptp1 dataset_comparison=G.8275.x + ~(keystone_admin)]$ system ptp-interface-add ptp1if0 ptp1 + ~(keystone_admin)]$ system host-if-ptp-assign controller-0 enp2s0f0 ptp1if0 + ~(keystone_admin)]$ system host-if-ptp-assign controller-0 enp2s0f1 ptp1if0 + ~(keystone_admin)]$ system host-if-ptp-assign controller-0 enp2s0f2 ptp1if0 + ~(keystone_admin)]$ system host-if-ptp-assign controller-0 enp2s0f3 ptp1if0 + ~(keystone_admin)]$ system host-if-ptp-assign controller-0 enp2s0f4 ptp1if0 + ~(keystone_admin)]$ system host-if-ptp-assign controller-0 enp2s0f5 ptp1if0 + ~(keystone_admin)]$ system host-if-ptp-assign controller-0 enp2s0f6 ptp1if0 + ~(keystone_admin)]$ system host-if-ptp-assign controller-0 enp2s0f7 ptp1if0 + ~(keystone_admin)]$ system host-ptp-instance-assign controller-0 ptp1 + + +#. Apply the configuration. + + .. code-block:: none + + ~(keystone_admin)]$ system ptp-instance-apply + +phc2sys +------- + +#. Create an instance and add parameter(s). This instance will synchronize the + system clock with the NIC1 |PHC| via the |PTP| port (-s option). + + .. code-block:: none + + ~(keystone_admin)]$ system ptp-instance-add phc0 phc2sys + ~(keystone_admin)]$ system ptp-instance-parameter-add phc0 domainNumber=24 + ~(keystone_admin)]$ system ptp-instance-parameter-add phc0 uds_address=/var/run/ptp4l-ptp0 + ~(keystone_admin)]$ system ptp-instance-parameter-add phc0 cmdline_opts='-w -s enp1s0f0' + +#. Assign the instance to a host. + + .. code-block:: none + + ~(keystone_admin)]$ system host-ptp-instance-assign controller-0 phc0 + +#. Apply the configuration. + + .. code-block:: none + + ~(keystone_admin)]$ system ptp-instance-apply