[Linuxptp-devel] [RFC PATCH v2 8/9] Sample config files for testing CMLDS

2023-05-15 Thread Kishen Maloor
This adds two example config files to instantate a gPTP domain 0 instance that hosts a CMLDS Link Port (run_cmlds=1) and a gPTP domain 1 instance that invokes the CMLDS using the COMMON_P2P delay mechanism. Signed-off-by: Kishen Maloor --- configs/gPTP-cmlds.cfg | 34

[Linuxptp-devel] [RFC PATCH v2 0/9] Common Mean Link Delay Service (CMLDS)

2023-05-15 Thread Kishen Maloor
This patch series presents a functional implementation of the Common Mean Link Delay Service (CMLDS). CMLDS is optional in IEEE 1588-2019/clause 16.6, and mandatory in the IEEE 802.1AS-2020 PTP Profile/clause 11.2.17 for time-aware systems that implement multiple domains. Accordingly, this

[Linuxptp-devel] [RFC PATCH v2 4/9] Update the PdelayReq/Res flows for CMLDS Link Ports

2023-05-15 Thread Kishen Maloor
For ports that are configured with "run_cmlds=1", i.e. CMLDS Link Ports, this change updates port_pdelay_request(), process_pdelay_req() and port_peer_delay() to utilize the CMLDS sdoid/domainNumber/portId along code paths where necessary. It also ensures that neighborRateRatio is calculated on

[Linuxptp-devel] [RFC PATCH v2 5/9] Add port_cmlds_ignore()

2023-05-15 Thread Kishen Maloor
port_cmlds_ignore() assesses incoming messages per the following policy: * All messages that bear the CMLDS sdoid/domainNumber are directed to a CMLDS Link Port context and processed by this function. All other messages go through the regular flow (i.e. port_ignore() and beyond) based on the the

[Linuxptp-devel] [RFC PATCH v2 3/9] Add DM_COMMON_P2P

2023-05-15 Thread Kishen Maloor
This change adds COMMON_P2P (IEEE 802.1AS-2020, clause 14.8.5) to the enumeration of delay mechanisms and incorporates it into existing code paths pertaining to DM_P2P to (where appropriate) maintain parity with DM_P2P. Co-authored-by: Andrew Zaborowski Signed-off-by: Kishen Maloor ---

[Linuxptp-devel] [RFC PATCH v2 9/9] Make allowedLostResponses configurable

2023-05-15 Thread Kishen Maloor
This change adds 'allowedLostResponses' as a per-port parameter with a default value of 3 (per IEEE 802.1AS-2011, clause 11.5.3). (Note that this matches the value of the previously #define'd ALLOWED_LOST_RESPONSES, so this change does not alter any prevailing behavior) It is now configurable to

[Linuxptp-devel] [RFC PATCH v2 1/9] Add new TLV for CommonMeanLinkDelayInformation

2023-05-15 Thread Kishen Maloor
In a setup with multiple gPTP domains, the Common Mean Link Delay Service (CMLDS) (IEEE 1588/16.6.3) performs link delay measurements in a single domain and must (somehow) convey those to other domains. IEEE 1588 does not specify this interface and flags it as an implementation detail (IEEE

[Linuxptp-devel] [RFC PATCH v2 7/9] Implement the COMMON_P2P delay mechanism

2023-05-15 Thread Kishen Maloor
From: Andrew Zaborowski This change implements the COMMON_P2P DM by issuing a request to the CMLDS for CommonMeanLinkDelayInformation upon expiry of the delay timer and handles the response to assimilate the received meanPathDelay and NRR. Signed-off-by: Andrew Zaborowski --- port.c | 35

[Linuxptp-devel] [RFC PATCH v2 2/9] Add configuration options for CMLDS

2023-05-15 Thread Kishen Maloor
This change adds cofig file parameters to configure CMLDS support and access in PTP instances. 'cmlds_clockIdentity': This global setting assigns a CMLDS clockIdentity to be used by a ptp4l instance on a PTP node that exposes CMLDS over one or more links. 'run_cmlds': This per-port setting (0/1)

[Linuxptp-devel] [RFC PATCH v2 6/9] Add plumbing for interacting with the CMLDS

2023-05-15 Thread Kishen Maloor
This change furnishes the plumbing for interacting with CMLDS Link Ports (i.e. ports with "run_cmlds=1"). It adds internal functions for PTP Ports which employ the COMMON_P2P delay mechanism to issue requests to a CMLDS Link Port at MID_CMLDS_INFO_NP and handle the response.