Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -339,6 +339,61 @@

# ip maddr del 01:80:c4:00:00:0e dev hsr0.5

.. rubric:: *PTP Support*

PTP (Precision Time Protocol) synchronization over HSR (High-availability Seamless Redundancy) is supported using the

Check warning on line 344 in source/linux/Foundational_Components/Kernel/Kernel_Drivers/Network/HSR_Offload.rst

View workflow job for this annotation

GitHub Actions / vale

[vale] reported by reviewdog 🐶 [RedHat.Definitions] Define acronyms and abbreviations (such as 'HSR') on first occurrence if they're likely to be unfamiliar. Raw Output: {"message": "[RedHat.Definitions] Define acronyms and abbreviations (such as 'HSR') on first occurrence if they're likely to be unfamiliar.", "location": {"path": "source/linux/Foundational_Components/Kernel/Kernel_Drivers/Network/HSR_Offload.rst", "range": {"start": {"line": 344, "column": 52}}}, "severity": "INFO"}
`linuxptp-hsr <https://git.kernel.org/pub/scm/linux/kernel/git/bigeasy/linuxptp-hsr.git>`_
implementation on the ``hsr_prp_v2_plus`` branch.

.. rubric:: Prerequisites

Clone and build linuxptp-hsr on each node:

.. code-block:: console

git clone https://git.kernel.org/pub/scm/linux/kernel/git/bigeasy/linuxptp-hsr.git
cd linuxptp-hsr
git checkout hsr_prp_v2_plus

Patch the config files with the actual interface names and the P2P destination MAC address:

.. code-block:: console

sed -i '/^delay_mechanism P2P/a p2p_dst_mac 01:1B:19:00:00:01' configs/hsr-master.cfg configs/hsr-slave.cfg
sed -i 's/^\[eth1\]/[<INTF_A>]/; s/^\[eth2\]/[<INTF_B>]/' configs/hsr-master.cfg configs/hsr-slave.cfg

Build and install:

.. code-block:: console

make && make install

.. rubric:: Running PTP

Set up the interface as described in the Introduction section. On the PTP primary node:

.. code-block:: console

./ptp4l -f configs/hsr-master.cfg

On each PTP secondary node:

.. code-block:: console

./ptp4l -f configs/hsr-slave.cfg

.. rubric:: Verifying PTP Synchronization

Inspect the ``master offset`` values in the ptp4l log output to verify PTP synchronization.

Sample ptp4l output showing a synchronized secondary node:

.. code-block:: text

ptp4l[xx.xxx]: master offset -123 s2 freq +4321 path delay 543
ptp4l[xx.xxx]: master offset 45 s2 freq +4290 path delay 541
ptp4l[xx.xxx]: master offset -78 s2 freq +4310 path delay 544

.. rubric:: Performance

This section describes the throughput and CPU usage metrics in the offload case
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -309,6 +309,61 @@

# ip maddr del 01:80:c4:00:00:0e dev prp0.5

.. rubric:: *PTP Support*

PTP (Precision Time Protocol) synchronization over PRP (Parallel Redundancy Protocol) is supported using the

Check warning on line 314 in source/linux/Foundational_Components/Kernel/Kernel_Drivers/Network/PRP_Offload.rst

View workflow job for this annotation

GitHub Actions / vale

[vale] reported by reviewdog 🐶 [RedHat.Definitions] Define acronyms and abbreviations (such as 'PRP') on first occurrence if they're likely to be unfamiliar. Raw Output: {"message": "[RedHat.Definitions] Define acronyms and abbreviations (such as 'PRP') on first occurrence if they're likely to be unfamiliar.", "location": {"path": "source/linux/Foundational_Components/Kernel/Kernel_Drivers/Network/PRP_Offload.rst", "range": {"start": {"line": 314, "column": 52}}}, "severity": "INFO"}
`linuxptp-hsr <https://git.kernel.org/pub/scm/linux/kernel/git/bigeasy/linuxptp-hsr.git>`_
implementation on the ``hsr_prp_v2_plus`` branch.

.. rubric:: Prerequisites

Clone and build linuxptp-hsr on each node:

.. code-block:: console

git clone https://git.kernel.org/pub/scm/linux/kernel/git/bigeasy/linuxptp-hsr.git
cd linuxptp-hsr
git checkout hsr_prp_v2_plus

Patch the config files with the actual interface names and the P2P destination MAC address:

.. code-block:: console

sed -i '/^delay_mechanism P2P/a p2p_dst_mac 01:1B:19:00:00:01' configs/prp-master.cfg configs/prp-slave.cfg
sed -i 's/^\[eth1\]/[<INTF_A>]/; s/^\[eth2\]/[<INTF_B>]/' configs/prp-master.cfg configs/prp-slave.cfg

Build and install:

.. code-block:: console

make && make install

.. rubric:: Running PTP

Set up the interface as described above. On the PTP primary node:

Check warning on line 343 in source/linux/Foundational_Components/Kernel/Kernel_Drivers/Network/PRP_Offload.rst

View workflow job for this annotation

GitHub Actions / vale

[vale] reported by reviewdog 🐶 [RedHat.TermsSuggestions] Depending on the context, consider using 'earlier', 'previous', 'preceding', or 'before' rather than 'above'. Raw Output: {"message": "[RedHat.TermsSuggestions] Depending on the context, consider using 'earlier', 'previous', 'preceding', or 'before' rather than 'above'.", "location": {"path": "source/linux/Foundational_Components/Kernel/Kernel_Drivers/Network/PRP_Offload.rst", "range": {"start": {"line": 343, "column": 35}}}, "severity": "INFO"}

.. code-block:: console

./ptp4l -f configs/prp-master.cfg

On the PTP secondary node:

.. code-block:: console

./ptp4l -f configs/prp-slave.cfg

.. rubric:: Verifying PTP Synchronization

Inspect the ``master offset`` values in the ptp4l log output to verify PTP synchronization.

Sample ptp4l output showing a synchronized secondary node:

.. code-block:: text

ptp4l[xx.xxx]: master offset -123 s2 freq +4321 path delay 543
ptp4l[xx.xxx]: master offset 45 s2 freq +4290 path delay 541
ptp4l[xx.xxx]: master offset -78 s2 freq +4310 path delay 544

.. rubric:: Performance

This section describes the throughput and CPU usage metrics in the offload case
Expand Down
Loading