This patch series adds support for doubly-attached clocks (DAC) as
described in IEC 62439-3:2016 Appendix B.
It is used for clocks with redundant network connection via HSR or PRP.
The specification also defines additional profile ids for single- and
doubly-attached clocks.

Both interfaces of a redundant connection need to be handled
individually, although they are connected to the same grandmaster.
The synchronized port in SLAVE state is then backed-up by the redundant
port, which remains in PASSIVE state, unless the former port enters
FAULTY state. The PASSIVE redundant port can then step in immediately.

This improves the PTP availability in high-assurance networks, e.g. for
power automation.

In order to use the DAC feature, the `dataset_comparison` configuration
option has to be set to `iec62439-3` and a redundancy pair needs to be
defined by adding `paired_interface` option with the respective other
interface to the configuration.

The patch series also adds a default configuration for clocks according
to the Power Utility Profile as defined in IEC 61850-9-3:2016, relying
on the DAC feature.

Signed-off-by: Stephan Wurm <stephan.w...@a-eberle.de>
---
Stephan Wurm (6):
      Add doubly attached clock support
      port: Add extra handling for FAULTY port
      Add profile identification according to IEC 62439-3:2016 standard
      ptp4l: Add doubly attached clock support
      ptp4l: Document DAC configuration options
      Add 61850-9-3 profile default configuration

 bmc.c                 | 10 ++++++
 bmc.h                 |  1 +
 clock.c               |  4 +++
 config.c              |  2 ++
 configs/61850-9-3.cfg | 32 ++++++++++++++++++
 e2e_tc.c              |  1 +
 fsm.c                 | 71 +++++++++++++++++++++++++++++++++++++++
 fsm.h                 |  2 ++
 p2p_tc.c              |  2 ++
 pmc.c                 |  4 +--
 port.c                | 92 ++++++++++++++++++++++++++++++++++++++++++++++-----
 port.h                | 47 +++++++++++++++++---------
 port_private.h        |  4 +++
 port_signaling.c      |  1 +
 ptp4l.8               | 10 ++++--
 ptp4l.c               | 12 ++++++-
 tc.c                  |  2 ++
 unicast_service.c     |  1 +
 util.c                |  4 ++-
 19 files changed, 273 insertions(+), 29 deletions(-)
---
base-commit: 60d829b102be9b8b13357a0f7a93f3e02d44b4ce
change-id: 20230317-iec62439-3-251804d04825

Best regards,
-- 
Stephan Wurm <stephan.w...@a-eberle.de>



_______________________________________________
Linuxptp-devel mailing list
Linuxptp-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxptp-devel

Reply via email to