DPDK patches and discussions
 help / color / mirror / Atom feed
* [PATCH] ptp: replace terms master/slave
@ 2023-05-19 18:15 Stephen Hemminger
  2023-05-19 20:06 ` Tyler Retzlaff
                   ` (2 more replies)
  0 siblings, 3 replies; 6+ messages in thread
From: Stephen Hemminger @ 2023-05-19 18:15 UTC (permalink / raw)
  To: dev; +Cc: Stephen Hemminger, Ajit Khaparde, Somnath Kotur, Kirill Rybalchenko

The IEEE has revised the naming in PTP protocol.
Use these new terms to replace master and slave.

Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
---
 doc/guides/nics/bnxt.rst                   |  7 +--
 doc/guides/sample_app_ug/img/ptpclient.svg |  4 +-
 doc/guides/sample_app_ug/intro.rst         |  4 +-
 doc/guides/sample_app_ug/ptpclient.rst     | 29 +++++------
 examples/ptpclient/ptpclient.c             | 56 +++++++++++-----------
 5 files changed, 51 insertions(+), 49 deletions(-)

diff --git a/doc/guides/nics/bnxt.rst b/doc/guides/nics/bnxt.rst
index 0b09b0c50a7b..bb126689c204 100644
--- a/doc/guides/nics/bnxt.rst
+++ b/doc/guides/nics/bnxt.rst
@@ -538,10 +538,11 @@ Time Synchronization
 ~~~~~~~~~~~~~~~~~~~~
 
 System operators may run a PTP (Precision Time Protocol) client application to
-synchronize the time on the NIC (and optionally, on the system) to a PTP master.
+synchronize the time on the NIC (and optionally, on the system) to a PTP time transmitter.
 
-The BNXT PMD supports a PTP client application to communicate with a PTP master
-clock using DPDK IEEE1588 APIs. Note that the PTP client application needs to
+The BNXT PMD supports a PTP client application to communicate with a PTP time
+transmitter using DPDK IEEE1588 APIs.
+Note that the PTP client application needs to
 run on PF and vector mode needs to be disabled.
 
 .. code-block:: console
diff --git a/doc/guides/sample_app_ug/img/ptpclient.svg b/doc/guides/sample_app_ug/img/ptpclient.svg
index fd78ef839b91..aaf49ea274b1 100644
--- a/doc/guides/sample_app_ug/img/ptpclient.svg
+++ b/doc/guides/sample_app_ug/img/ptpclient.svg
@@ -488,7 +488,7 @@
          sodipodi:role="line"
          id="tspan7096"
          x="38.764343"
-         y="590.47479">master</tspan></text>
+         y="590.47479">sender</tspan></text>
     <text
        xml:space="preserve"
        style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:47.51625061px;line-height:100%;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Normal';text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
@@ -510,7 +510,7 @@
          sodipodi:role="line"
          id="tspan7104"
          x="271.23392"
-         y="593.71478">slave</tspan></text>
+         y="593.71478">receiver</tspan></text>
     <text
        xml:space="preserve"
        style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:20.3917141px;line-height:125%;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Normal';text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#800080;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
diff --git a/doc/guides/sample_app_ug/intro.rst b/doc/guides/sample_app_ug/intro.rst
index e765f1fd6b12..aaa064ea63d6 100644
--- a/doc/guides/sample_app_ug/intro.rst
+++ b/doc/guides/sample_app_ug/intro.rst
@@ -85,8 +85,8 @@ examples are highlighted below.
 * :doc:`Precision Time Protocol (PTP) client<ptpclient>`: The PTP
   client is another minimal implementation of a real world application.
   In this case the application is a PTP client that communicates with a PTP
-  master clock to synchronize time on a Network Interface Card (NIC) using the
-  IEEE1588 protocol.
+  time transmitter to synchronize time on a Network Interface Card (NIC)
+  using the IEEE1588 protocol.
 
 * :doc:`Quality of Service (QoS) Scheduler<qos_scheduler>`: The QoS
   Scheduler application demonstrates the use of DPDK to provide QoS scheduling.
diff --git a/doc/guides/sample_app_ug/ptpclient.rst b/doc/guides/sample_app_ug/ptpclient.rst
index d47e942738d0..ef8846f27436 100644
--- a/doc/guides/sample_app_ug/ptpclient.rst
+++ b/doc/guides/sample_app_ug/ptpclient.rst
@@ -5,8 +5,9 @@ PTP Client Sample Application
 =============================
 
 The PTP (Precision Time Protocol) client sample application is a simple
-example of using the DPDK IEEE1588 API to communicate with a PTP master clock
-to synchronize the time on the NIC and, optionally, on the Linux system.
+example of using the DPDK IEEE1588 API to communicate with a PTP time
+transmitter to synchronize the time on the NIC and, optionally,
+on the Linux system.
 
 Note, PTP is a time syncing protocol and cannot be used within DPDK as a
 time-stamping mechanism. See the following for an explanation of the protocol:
@@ -21,10 +22,10 @@ The PTP sample application is intended as a simple reference implementation of
 a PTP client using the DPDK IEEE1588 API.
 In order to keep the application simple the following assumptions are made:
 
-* The first discovered master is the main for the session.
+* The first discovered transmitter is the main for the session.
 * Only L2 PTP packets are supported.
 * Only the PTP v2 protocol is supported.
-* Only the slave clock is implemented.
+* Only the time receiver clock is implemented.
 
 
 How the Application Works
@@ -38,12 +39,12 @@ How the Application Works
 
 The PTP synchronization in the sample application works as follows:
 
-* Master sends *Sync* message - the slave saves it as T2.
-* Master sends *Follow Up* message and sends time of T1.
-* Slave sends *Delay Request* frame to PTP Master and stores T3.
-* Master sends *Delay Response* T4 time which is time of received T3.
+* TimeTransmitter sends *Sync* message - the TimeReceiver saves it as T2.
+* TimeTransmitter sends *Follow Up* message and sends time of T1.
+* TimeReceiver sends *Delay Request* frame to PTP TimeTransmitter and stores T3.
+* TimeTransmitter sends *Delay Response* T4 time which is time of received T3.
 
-The adjustment for slave can be represented as:
+The adjustment for time receiver can be represented as:
 
    adj = -[(T2-T1)-(T4 - T3)]/2
 
@@ -71,8 +72,8 @@ Refer to *DPDK Getting Started Guide* for general information on running
 applications and the Environment Abstraction Layer (EAL) options.
 
 * ``-p portmask``: Hexadecimal portmask.
-* ``-T 0``: Update only the PTP slave clock.
-* ``-T 1``: Update the PTP slave clock and synchronize the Linux Kernel to the PTP clock.
+* ``-T 0``: Update only the PTP time receiver clock.
+* ``-T 1``: Update the PTP time receiver clock and synchronize the Linux Kernel to the PTP clock.
 
 
 Code Explanation
@@ -178,7 +179,7 @@ The forwarding loop can be interrupted and the application closed using
 PTP parsing
 ~~~~~~~~~~~
 
-The ``parse_ptp_frames()`` function processes PTP packets, implementing slave
+The ``parse_ptp_frames()`` function processes PTP packets, implementing time receiver
 PTP IEEE1588 L2 functionality.
 
 .. literalinclude:: ../../../examples/ptpclient/ptpclient.c
@@ -187,11 +188,11 @@ PTP IEEE1588 L2 functionality.
     :end-before:  >8 End of function processes PTP packets.
 
 There are 3 types of packets on the RX path which we must parse to create a minimal
-implementation of the PTP slave client:
+implementation of the PTP time receiver client:
 
 * SYNC packet.
 * FOLLOW UP packet
 * DELAY RESPONSE packet.
 
 When we parse the *FOLLOW UP* packet we also create and send a *DELAY_REQUEST* packet.
-Also when we parse the *DELAY RESPONSE* packet, and all conditions are met we adjust the PTP slave clock.
+Also when we parse the *DELAY RESPONSE* packet, and all conditions are met we adjust the PTP time receiver clock.
diff --git a/examples/ptpclient/ptpclient.c b/examples/ptpclient/ptpclient.c
index cdf2da64dfee..d87d19c74e2f 100644
--- a/examples/ptpclient/ptpclient.c
+++ b/examples/ptpclient/ptpclient.c
@@ -116,14 +116,14 @@ struct ptp_message {
 	} __rte_packed;
 };
 
-struct ptpv2_data_slave_ordinary {
+struct ptpv2_receiver_ordinary {
 	struct rte_mbuf *m;
 	struct timespec tstamp1;
 	struct timespec tstamp2;
 	struct timespec tstamp3;
 	struct timespec tstamp4;
 	struct clock_id client_clock_id;
-	struct clock_id master_clock_id;
+	struct clock_id sender_clock_id;
 	struct timeval new_adj;
 	int64_t delta;
 	uint16_t portid;
@@ -134,7 +134,7 @@ struct ptpv2_data_slave_ordinary {
 	uint16_t current_ptp_port;
 };
 
-static struct ptpv2_data_slave_ordinary ptp_data;
+static struct ptpv2_receiver_ordinary ptp_data;
 
 static inline uint64_t timespec64_to_ns(const struct timespec *ts)
 {
@@ -263,38 +263,38 @@ port_init(uint16_t port, struct rte_mempool *mbuf_pool)
 }
 
 static void
-print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
+print_clock_info(struct ptpv2_receiver_ordinary *ptp_data)
 {
 	int64_t nsec;
 	struct timespec net_time, sys_time;
 
-	printf("Master Clock id: %02x:%02x:%02x:%02x:%02x:%02x:%02x:%02x",
-		ptp_data->master_clock_id.id[0],
-		ptp_data->master_clock_id.id[1],
-		ptp_data->master_clock_id.id[2],
-		ptp_data->master_clock_id.id[3],
-		ptp_data->master_clock_id.id[4],
-		ptp_data->master_clock_id.id[5],
-		ptp_data->master_clock_id.id[6],
-		ptp_data->master_clock_id.id[7]);
-
-	printf("\nT2 - Slave  Clock.  %lds %ldns",
+	printf("Transmitter id: %02x:%02x:%02x:%02x:%02x:%02x:%02x:%02x",
+		ptp_data->sender_clock_id.id[0],
+		ptp_data->sender_clock_id.id[1],
+		ptp_data->sender_clock_id.id[2],
+		ptp_data->sender_clock_id.id[3],
+		ptp_data->sender_clock_id.id[4],
+		ptp_data->sender_clock_id.id[5],
+		ptp_data->sender_clock_id.id[6],
+		ptp_data->sender_clock_id.id[7]);
+
+	printf("\nT2 - Receiver.    %lds %ldns",
 			(ptp_data->tstamp2.tv_sec),
 			(ptp_data->tstamp2.tv_nsec));
 
-	printf("\nT1 - Master Clock.  %lds %ldns ",
+	printf("\nT1 - Transmitter. %lds %ldns ",
 			ptp_data->tstamp1.tv_sec,
 			(ptp_data->tstamp1.tv_nsec));
 
-	printf("\nT3 - Slave  Clock.  %lds %ldns",
+	printf("\nT3 - Receiver.    %lds %ldns",
 			ptp_data->tstamp3.tv_sec,
 			(ptp_data->tstamp3.tv_nsec));
 
-	printf("\nT4 - Master Clock.  %lds %ldns ",
+	printf("\nT4 - Transmitter. %lds %ldns ",
 			ptp_data->tstamp4.tv_sec,
 			(ptp_data->tstamp4.tv_nsec));
 
-	printf("\nDelta between master and slave clocks:%"PRId64"ns\n",
+	printf("\nDelta between transmitter and receiver clocks:%"PRId64"ns\n",
 			ptp_data->delta);
 
 	clock_gettime(CLOCK_REALTIME, &sys_time);
@@ -328,7 +328,7 @@ print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
 }
 
 static int64_t
-delta_eval(struct ptpv2_data_slave_ordinary *ptp_data)
+delta_eval(struct ptpv2_receiver_ordinary *ptp_data)
 {
 	int64_t delta;
 	uint64_t t1 = 0;
@@ -350,7 +350,7 @@ delta_eval(struct ptpv2_data_slave_ordinary *ptp_data)
  * Parse the PTP SYNC message.
  */
 static void
-parse_sync(struct ptpv2_data_slave_ordinary *ptp_data, uint16_t rx_tstamp_idx)
+parse_sync(struct ptpv2_receiver_ordinary *ptp_data, uint16_t rx_tstamp_idx)
 {
 	struct ptp_header *ptp_hdr;
 
@@ -359,7 +359,7 @@ parse_sync(struct ptpv2_data_slave_ordinary *ptp_data, uint16_t rx_tstamp_idx)
 	ptp_data->seqID_SYNC = rte_be_to_cpu_16(ptp_hdr->seq_id);
 
 	if (ptp_data->ptpset == 0) {
-		rte_memcpy(&ptp_data->master_clock_id,
+		rte_memcpy(&ptp_data->sender_clock_id,
 				&ptp_hdr->source_port_id.clock_id,
 				sizeof(struct clock_id));
 		ptp_data->ptpset = 1;
@@ -380,7 +380,7 @@ parse_sync(struct ptpv2_data_slave_ordinary *ptp_data, uint16_t rx_tstamp_idx)
  * Parse the PTP FOLLOWUP message and send DELAY_REQ to the main clock.
  */
 static void
-parse_fup(struct ptpv2_data_slave_ordinary *ptp_data)
+parse_fup(struct ptpv2_receiver_ordinary *ptp_data)
 {
 	struct rte_ether_hdr *eth_hdr;
 	struct rte_ether_addr eth_addr;
@@ -399,7 +399,7 @@ parse_fup(struct ptpv2_data_slave_ordinary *ptp_data)
 	eth_hdr = rte_pktmbuf_mtod(m, struct rte_ether_hdr *);
 	ptp_hdr = (struct ptp_header *)(rte_pktmbuf_mtod(m, char *)
 			+ sizeof(struct rte_ether_hdr));
-	if (memcmp(&ptp_data->master_clock_id,
+	if (memcmp(&ptp_data->sender_clock_id,
 			&ptp_hdr->source_port_id.clock_id,
 			sizeof(struct clock_id)) != 0)
 		return;
@@ -530,7 +530,7 @@ update_kernel_time(void)
  * Parse the DELAY_RESP message.
  */
 static void
-parse_drsp(struct ptpv2_data_slave_ordinary *ptp_data)
+parse_drsp(struct ptpv2_receiver_ordinary *ptp_data)
 {
 	struct rte_mbuf *m = ptp_data->m;
 	struct ptp_message *ptp_msg;
@@ -568,8 +568,8 @@ parse_drsp(struct ptpv2_data_slave_ordinary *ptp_data)
 	}
 }
 
-/* This function processes PTP packets, implementing slave PTP IEEE1588 L2
- * functionality.
+/* This function processes PTP packets,
+ * implementing receiver PTP IEEE1588 L2 functionality.
  */
 
 /* Parse ptp frames. 8< */
@@ -753,7 +753,7 @@ main(int argc, char *argv[])
 		rte_exit(EXIT_FAILURE, "Error with EAL initialization\n");
 	/* >8 End of initialization of EAL. */
 
-	memset(&ptp_data, '\0', sizeof(struct ptpv2_data_slave_ordinary));
+	memset(&ptp_data, '\0', sizeof(struct ptpv2_receiver_ordinary));
 
 	/* Parse specific arguments. 8< */
 	argc -= ret;
-- 
2.39.2


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] ptp: replace terms master/slave
  2023-05-19 18:15 [PATCH] ptp: replace terms master/slave Stephen Hemminger
@ 2023-05-19 20:06 ` Tyler Retzlaff
  2023-05-19 20:08   ` Ajit Khaparde
  2023-07-05 17:27 ` Stephen Hemminger
  2023-11-29 16:43 ` [PATCH v2] examples/ptp: replace terms master and slave Stephen Hemminger
  2 siblings, 1 reply; 6+ messages in thread
From: Tyler Retzlaff @ 2023-05-19 20:06 UTC (permalink / raw)
  To: Stephen Hemminger; +Cc: dev, Ajit Khaparde, Somnath Kotur, Kirill Rybalchenko

On Fri, May 19, 2023 at 11:15:49AM -0700, Stephen Hemminger wrote:
> The IEEE has revised the naming in PTP protocol.
> Use these new terms to replace master and slave.
> 
> Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
> ---

Acked-by: Tyler Retzlaff <roretzla@linux.microsoft.com>


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] ptp: replace terms master/slave
  2023-05-19 20:06 ` Tyler Retzlaff
@ 2023-05-19 20:08   ` Ajit Khaparde
  0 siblings, 0 replies; 6+ messages in thread
From: Ajit Khaparde @ 2023-05-19 20:08 UTC (permalink / raw)
  To: Tyler Retzlaff; +Cc: Stephen Hemminger, dev, Somnath Kotur, Kirill Rybalchenko

[-- Attachment #1: Type: text/plain, Size: 472 bytes --]

On Fri, May 19, 2023 at 1:06 PM Tyler Retzlaff
<roretzla@linux.microsoft.com> wrote:
>
> On Fri, May 19, 2023 at 11:15:49AM -0700, Stephen Hemminger wrote:
> > The IEEE has revised the naming in PTP protocol.
> > Use these new terms to replace master and slave.
> >
> > Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
> > ---
>
> Acked-by: Tyler Retzlaff <roretzla@linux.microsoft.com>
Acked-by: Ajit Khaparde <ajit.khaparde@broadcom.com>

>

[-- Attachment #2: S/MIME Cryptographic Signature --]
[-- Type: application/pkcs7-signature, Size: 4218 bytes --]

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] ptp: replace terms master/slave
  2023-05-19 18:15 [PATCH] ptp: replace terms master/slave Stephen Hemminger
  2023-05-19 20:06 ` Tyler Retzlaff
@ 2023-07-05 17:27 ` Stephen Hemminger
  2023-11-29 16:43 ` [PATCH v2] examples/ptp: replace terms master and slave Stephen Hemminger
  2 siblings, 0 replies; 6+ messages in thread
From: Stephen Hemminger @ 2023-07-05 17:27 UTC (permalink / raw)
  To: Ajit Khaparde; +Cc: dev, Somnath Kotur, Kirill Rybalchenko

On Fri, 19 May 2023 11:15:49 -0700
Stephen Hemminger <stephen@networkplumber.org> wrote:

> The IEEE has revised the naming in PTP protocol.
> Use these new terms to replace master and slave.
> 
> Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>

This patch has several acks but is still not merged.
Since it is examples, no API/ABI deprecation needed.

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [PATCH v2] examples/ptp: replace terms master and slave
  2023-05-19 18:15 [PATCH] ptp: replace terms master/slave Stephen Hemminger
  2023-05-19 20:06 ` Tyler Retzlaff
  2023-07-05 17:27 ` Stephen Hemminger
@ 2023-11-29 16:43 ` Stephen Hemminger
  2023-11-30  3:30   ` Somnath Kotur
  2 siblings, 1 reply; 6+ messages in thread
From: Stephen Hemminger @ 2023-11-29 16:43 UTC (permalink / raw)
  To: dev; +Cc: Stephen Hemminger, Ajit Khaparde, Somnath Kotur, Kirill Rybalchenko

The IEEE 1588 standard has been updated to remove the use
of master-slave terminolgy. Use the terms recommended by
IEEE 1588g-2022 amendment:

  In place of the term “master”, use the term “timeTransmitter”.
  In place of the term “slave”, use the term “timeReceiver”.

Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
---
 doc/guides/nics/bnxt.rst                   |  8 ++--
 doc/guides/sample_app_ug/img/ptpclient.svg |  4 +-
 doc/guides/sample_app_ug/intro.rst         |  4 +-
 doc/guides/sample_app_ug/ptpclient.rst     | 29 +++++------
 examples/ptpclient/ptpclient.c             | 56 +++++++++++-----------
 5 files changed, 52 insertions(+), 49 deletions(-)

diff --git a/doc/guides/nics/bnxt.rst b/doc/guides/nics/bnxt.rst
index 6db880d632f8..8b9fcd25583d 100644
--- a/doc/guides/nics/bnxt.rst
+++ b/doc/guides/nics/bnxt.rst
@@ -538,10 +538,12 @@ Time Synchronization
 ~~~~~~~~~~~~~~~~~~~~
 
 System operators may run a PTP (Precision Time Protocol) client application to
-synchronize the time on the NIC (and optionally, on the system) to a PTP master.
+synchronize the time on the NIC (and optionally, on the system) to a
+PTP timeTransmitter.
 
-The BNXT PMD supports a PTP client application to communicate with a PTP master
-clock using DPDK IEEE1588 APIs. Note that the PTP client application needs to
+The BNXT PMD supports a PTP client application to communicate with a
+PTP timeTransmitter using DPDK IEEE1588 APIs.
+Note that the PTP client application needs to
 run on PF and vector mode needs to be disabled.
 
 .. code-block:: console
diff --git a/doc/guides/sample_app_ug/img/ptpclient.svg b/doc/guides/sample_app_ug/img/ptpclient.svg
index fd78ef839b91..41869bc4c959 100644
--- a/doc/guides/sample_app_ug/img/ptpclient.svg
+++ b/doc/guides/sample_app_ug/img/ptpclient.svg
@@ -488,7 +488,7 @@
          sodipodi:role="line"
          id="tspan7096"
          x="38.764343"
-         y="590.47479">master</tspan></text>
+         y="590.47479">timeTransmitter</tspan></text>
     <text
        xml:space="preserve"
        style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:47.51625061px;line-height:100%;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Normal';text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
@@ -510,7 +510,7 @@
          sodipodi:role="line"
          id="tspan7104"
          x="271.23392"
-         y="593.71478">slave</tspan></text>
+         y="593.71478">timeReceiver</tspan></text>
     <text
        xml:space="preserve"
        style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:20.3917141px;line-height:125%;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Normal';text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#800080;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
diff --git a/doc/guides/sample_app_ug/intro.rst b/doc/guides/sample_app_ug/intro.rst
index e765f1fd6b12..5453df57667a 100644
--- a/doc/guides/sample_app_ug/intro.rst
+++ b/doc/guides/sample_app_ug/intro.rst
@@ -85,8 +85,8 @@ examples are highlighted below.
 * :doc:`Precision Time Protocol (PTP) client<ptpclient>`: The PTP
   client is another minimal implementation of a real world application.
   In this case the application is a PTP client that communicates with a PTP
-  master clock to synchronize time on a Network Interface Card (NIC) using the
-  IEEE1588 protocol.
+  timeTransmitter to synchronize time on a Network Interface Card (NIC)
+  using the IEEE1588 protocol.
 
 * :doc:`Quality of Service (QoS) Scheduler<qos_scheduler>`: The QoS
   Scheduler application demonstrates the use of DPDK to provide QoS scheduling.
diff --git a/doc/guides/sample_app_ug/ptpclient.rst b/doc/guides/sample_app_ug/ptpclient.rst
index d47e942738d0..242c9628eaff 100644
--- a/doc/guides/sample_app_ug/ptpclient.rst
+++ b/doc/guides/sample_app_ug/ptpclient.rst
@@ -5,8 +5,9 @@ PTP Client Sample Application
 =============================
 
 The PTP (Precision Time Protocol) client sample application is a simple
-example of using the DPDK IEEE1588 API to communicate with a PTP master clock
-to synchronize the time on the NIC and, optionally, on the Linux system.
+example of using the DPDK IEEE1588 API to communicate with a PTP
+timeTransmitter to synchronize the time on the NIC and, optionally,
+on the Linux system.
 
 Note, PTP is a time syncing protocol and cannot be used within DPDK as a
 time-stamping mechanism. See the following for an explanation of the protocol:
@@ -21,10 +22,10 @@ The PTP sample application is intended as a simple reference implementation of
 a PTP client using the DPDK IEEE1588 API.
 In order to keep the application simple the following assumptions are made:
 
-* The first discovered master is the main for the session.
+* The first discovered timeTransmitter is the main for the session.
 * Only L2 PTP packets are supported.
 * Only the PTP v2 protocol is supported.
-* Only the slave clock is implemented.
+* Only the timeReceiver clock is implemented.
 
 
 How the Application Works
@@ -38,12 +39,12 @@ How the Application Works
 
 The PTP synchronization in the sample application works as follows:
 
-* Master sends *Sync* message - the slave saves it as T2.
-* Master sends *Follow Up* message and sends time of T1.
-* Slave sends *Delay Request* frame to PTP Master and stores T3.
-* Master sends *Delay Response* T4 time which is time of received T3.
+* TimeTransmitter sends *Sync* message - the TimeReceiver saves it as T2.
+* TimeTransmitter sends *Follow Up* message and sends time of T1.
+* TimeReceiver sends *Delay Request* frame to PTP TimeTransmitter and stores T3.
+* TimeTransmitter sends *Delay Response* T4 time which is time of received T3.
 
-The adjustment for slave can be represented as:
+The adjustment for timeReceiver can be represented as:
 
    adj = -[(T2-T1)-(T4 - T3)]/2
 
@@ -71,8 +72,8 @@ Refer to *DPDK Getting Started Guide* for general information on running
 applications and the Environment Abstraction Layer (EAL) options.
 
 * ``-p portmask``: Hexadecimal portmask.
-* ``-T 0``: Update only the PTP slave clock.
-* ``-T 1``: Update the PTP slave clock and synchronize the Linux Kernel to the PTP clock.
+* ``-T 0``: Update only the PTP timeReceiver clock.
+* ``-T 1``: Update the PTP timeReceiver clock and synchronize the Linux Kernel to the PTP clock.
 
 
 Code Explanation
@@ -178,7 +179,7 @@ The forwarding loop can be interrupted and the application closed using
 PTP parsing
 ~~~~~~~~~~~
 
-The ``parse_ptp_frames()`` function processes PTP packets, implementing slave
+The ``parse_ptp_frames()`` function processes PTP packets, implementing timeReceiver
 PTP IEEE1588 L2 functionality.
 
 .. literalinclude:: ../../../examples/ptpclient/ptpclient.c
@@ -187,11 +188,11 @@ PTP IEEE1588 L2 functionality.
     :end-before:  >8 End of function processes PTP packets.
 
 There are 3 types of packets on the RX path which we must parse to create a minimal
-implementation of the PTP slave client:
+implementation of the PTP timeReceiver client:
 
 * SYNC packet.
 * FOLLOW UP packet
 * DELAY RESPONSE packet.
 
 When we parse the *FOLLOW UP* packet we also create and send a *DELAY_REQUEST* packet.
-Also when we parse the *DELAY RESPONSE* packet, and all conditions are met we adjust the PTP slave clock.
+Also when we parse the *DELAY RESPONSE* packet, and all conditions are met we adjust the PTP timeReceiver clock.
diff --git a/examples/ptpclient/ptpclient.c b/examples/ptpclient/ptpclient.c
index cdf2da64dfee..eb34ab8621cc 100644
--- a/examples/ptpclient/ptpclient.c
+++ b/examples/ptpclient/ptpclient.c
@@ -116,14 +116,14 @@ struct ptp_message {
 	} __rte_packed;
 };
 
-struct ptpv2_data_slave_ordinary {
+struct ptpv2_timeReceiver_ordinary {
 	struct rte_mbuf *m;
 	struct timespec tstamp1;
 	struct timespec tstamp2;
 	struct timespec tstamp3;
 	struct timespec tstamp4;
 	struct clock_id client_clock_id;
-	struct clock_id master_clock_id;
+	struct clock_id transmitter_clock_id;
 	struct timeval new_adj;
 	int64_t delta;
 	uint16_t portid;
@@ -134,7 +134,7 @@ struct ptpv2_data_slave_ordinary {
 	uint16_t current_ptp_port;
 };
 
-static struct ptpv2_data_slave_ordinary ptp_data;
+static struct ptpv2_timeReceiver_ordinary ptp_data;
 
 static inline uint64_t timespec64_to_ns(const struct timespec *ts)
 {
@@ -263,38 +263,38 @@ port_init(uint16_t port, struct rte_mempool *mbuf_pool)
 }
 
 static void
-print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
+print_clock_info(struct ptpv2_timeReceiver_ordinary *ptp_data)
 {
 	int64_t nsec;
 	struct timespec net_time, sys_time;
 
-	printf("Master Clock id: %02x:%02x:%02x:%02x:%02x:%02x:%02x:%02x",
-		ptp_data->master_clock_id.id[0],
-		ptp_data->master_clock_id.id[1],
-		ptp_data->master_clock_id.id[2],
-		ptp_data->master_clock_id.id[3],
-		ptp_data->master_clock_id.id[4],
-		ptp_data->master_clock_id.id[5],
-		ptp_data->master_clock_id.id[6],
-		ptp_data->master_clock_id.id[7]);
-
-	printf("\nT2 - Slave  Clock.  %lds %ldns",
+	printf("TimeTransmitter Clock id: %02x:%02x:%02x:%02x:%02x:%02x:%02x:%02x",
+		ptp_data->transmitter_clock_id.id[0],
+		ptp_data->transmitter_clock_id.id[1],
+		ptp_data->transmitter_clock_id.id[2],
+		ptp_data->transmitter_clock_id.id[3],
+		ptp_data->transmitter_clock_id.id[4],
+		ptp_data->transmitter_clock_id.id[5],
+		ptp_data->transmitter_clock_id.id[6],
+		ptp_data->transmitter_clock_id.id[7]);
+
+	printf("\nT2 - TimeReceiver  Clock.  %lds %ldns",
 			(ptp_data->tstamp2.tv_sec),
 			(ptp_data->tstamp2.tv_nsec));
 
-	printf("\nT1 - Master Clock.  %lds %ldns ",
+	printf("\nT1 - TimeTransmitter Clock.  %lds %ldns ",
 			ptp_data->tstamp1.tv_sec,
 			(ptp_data->tstamp1.tv_nsec));
 
-	printf("\nT3 - Slave  Clock.  %lds %ldns",
+	printf("\nT3 - TimeReceiver  Clock.  %lds %ldns",
 			ptp_data->tstamp3.tv_sec,
 			(ptp_data->tstamp3.tv_nsec));
 
-	printf("\nT4 - Master Clock.  %lds %ldns ",
+	printf("\nT4 - TimeTransmitter Clock.  %lds %ldns ",
 			ptp_data->tstamp4.tv_sec,
 			(ptp_data->tstamp4.tv_nsec));
 
-	printf("\nDelta between master and slave clocks:%"PRId64"ns\n",
+	printf("\nDelta between timeTransmitter and timeReceiver clocks:%"PRId64"ns\n",
 			ptp_data->delta);
 
 	clock_gettime(CLOCK_REALTIME, &sys_time);
@@ -328,7 +328,7 @@ print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
 }
 
 static int64_t
-delta_eval(struct ptpv2_data_slave_ordinary *ptp_data)
+delta_eval(struct ptpv2_timeReceiver_ordinary *ptp_data)
 {
 	int64_t delta;
 	uint64_t t1 = 0;
@@ -350,7 +350,7 @@ delta_eval(struct ptpv2_data_slave_ordinary *ptp_data)
  * Parse the PTP SYNC message.
  */
 static void
-parse_sync(struct ptpv2_data_slave_ordinary *ptp_data, uint16_t rx_tstamp_idx)
+parse_sync(struct ptpv2_timeReceiver_ordinary *ptp_data, uint16_t rx_tstamp_idx)
 {
 	struct ptp_header *ptp_hdr;
 
@@ -359,7 +359,7 @@ parse_sync(struct ptpv2_data_slave_ordinary *ptp_data, uint16_t rx_tstamp_idx)
 	ptp_data->seqID_SYNC = rte_be_to_cpu_16(ptp_hdr->seq_id);
 
 	if (ptp_data->ptpset == 0) {
-		rte_memcpy(&ptp_data->master_clock_id,
+		rte_memcpy(&ptp_data->transmitter_clock_id,
 				&ptp_hdr->source_port_id.clock_id,
 				sizeof(struct clock_id));
 		ptp_data->ptpset = 1;
@@ -380,7 +380,7 @@ parse_sync(struct ptpv2_data_slave_ordinary *ptp_data, uint16_t rx_tstamp_idx)
  * Parse the PTP FOLLOWUP message and send DELAY_REQ to the main clock.
  */
 static void
-parse_fup(struct ptpv2_data_slave_ordinary *ptp_data)
+parse_fup(struct ptpv2_timeReceiver_ordinary *ptp_data)
 {
 	struct rte_ether_hdr *eth_hdr;
 	struct rte_ether_addr eth_addr;
@@ -399,8 +399,8 @@ parse_fup(struct ptpv2_data_slave_ordinary *ptp_data)
 	eth_hdr = rte_pktmbuf_mtod(m, struct rte_ether_hdr *);
 	ptp_hdr = (struct ptp_header *)(rte_pktmbuf_mtod(m, char *)
 			+ sizeof(struct rte_ether_hdr));
-	if (memcmp(&ptp_data->master_clock_id,
-			&ptp_hdr->source_port_id.clock_id,
+	if (memcmp(&ptp_data->transmitter_clock_id,
+		   &ptp_hdr->source_port_id.clock_id,
 			sizeof(struct clock_id)) != 0)
 		return;
 
@@ -530,7 +530,7 @@ update_kernel_time(void)
  * Parse the DELAY_RESP message.
  */
 static void
-parse_drsp(struct ptpv2_data_slave_ordinary *ptp_data)
+parse_drsp(struct ptpv2_timeReceiver_ordinary *ptp_data)
 {
 	struct rte_mbuf *m = ptp_data->m;
 	struct ptp_message *ptp_msg;
@@ -568,7 +568,7 @@ parse_drsp(struct ptpv2_data_slave_ordinary *ptp_data)
 	}
 }
 
-/* This function processes PTP packets, implementing slave PTP IEEE1588 L2
+/* This function processes PTP packets, implementing timeReceiver PTP IEEE1588 L2
  * functionality.
  */
 
@@ -753,7 +753,7 @@ main(int argc, char *argv[])
 		rte_exit(EXIT_FAILURE, "Error with EAL initialization\n");
 	/* >8 End of initialization of EAL. */
 
-	memset(&ptp_data, '\0', sizeof(struct ptpv2_data_slave_ordinary));
+	memset(&ptp_data, 0, sizeof(struct ptpv2_timeReceiver_ordinary));
 
 	/* Parse specific arguments. 8< */
 	argc -= ret;
-- 
2.42.0


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH v2] examples/ptp: replace terms master and slave
  2023-11-29 16:43 ` [PATCH v2] examples/ptp: replace terms master and slave Stephen Hemminger
@ 2023-11-30  3:30   ` Somnath Kotur
  0 siblings, 0 replies; 6+ messages in thread
From: Somnath Kotur @ 2023-11-30  3:30 UTC (permalink / raw)
  To: Stephen Hemminger; +Cc: dev, Ajit Khaparde, Kirill Rybalchenko

[-- Attachment #1: Type: text/plain, Size: 15111 bytes --]

On Wed, Nov 29, 2023 at 10:14 PM Stephen Hemminger
<stephen@networkplumber.org> wrote:
>
> The IEEE 1588 standard has been updated to remove the use
> of master-slave terminolgy. Use the terms recommended by
> IEEE 1588g-2022 amendment:
>
>   In place of the term “master”, use the term “timeTransmitter”.
>   In place of the term “slave”, use the term “timeReceiver”.
>
> Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
> ---
>  doc/guides/nics/bnxt.rst                   |  8 ++--
>  doc/guides/sample_app_ug/img/ptpclient.svg |  4 +-
>  doc/guides/sample_app_ug/intro.rst         |  4 +-
>  doc/guides/sample_app_ug/ptpclient.rst     | 29 +++++------
>  examples/ptpclient/ptpclient.c             | 56 +++++++++++-----------
>  5 files changed, 52 insertions(+), 49 deletions(-)
>
> diff --git a/doc/guides/nics/bnxt.rst b/doc/guides/nics/bnxt.rst
> index 6db880d632f8..8b9fcd25583d 100644
> --- a/doc/guides/nics/bnxt.rst
> +++ b/doc/guides/nics/bnxt.rst
> @@ -538,10 +538,12 @@ Time Synchronization
>  ~~~~~~~~~~~~~~~~~~~~
>
>  System operators may run a PTP (Precision Time Protocol) client application to
> -synchronize the time on the NIC (and optionally, on the system) to a PTP master.
> +synchronize the time on the NIC (and optionally, on the system) to a
> +PTP timeTransmitter.
>
> -The BNXT PMD supports a PTP client application to communicate with a PTP master
> -clock using DPDK IEEE1588 APIs. Note that the PTP client application needs to
> +The BNXT PMD supports a PTP client application to communicate with a
> +PTP timeTransmitter using DPDK IEEE1588 APIs.
> +Note that the PTP client application needs to
>  run on PF and vector mode needs to be disabled.
>
>  .. code-block:: console
> diff --git a/doc/guides/sample_app_ug/img/ptpclient.svg b/doc/guides/sample_app_ug/img/ptpclient.svg
> index fd78ef839b91..41869bc4c959 100644
> --- a/doc/guides/sample_app_ug/img/ptpclient.svg
> +++ b/doc/guides/sample_app_ug/img/ptpclient.svg
> @@ -488,7 +488,7 @@
>           sodipodi:role="line"
>           id="tspan7096"
>           x="38.764343"
> -         y="590.47479">master</tspan></text>
> +         y="590.47479">timeTransmitter</tspan></text>
>      <text
>         xml:space="preserve"
>         style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:47.51625061px;line-height:100%;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Normal';text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
> @@ -510,7 +510,7 @@
>           sodipodi:role="line"
>           id="tspan7104"
>           x="271.23392"
> -         y="593.71478">slave</tspan></text>
> +         y="593.71478">timeReceiver</tspan></text>
>      <text
>         xml:space="preserve"
>         style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:20.3917141px;line-height:125%;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Normal';text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#800080;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
> diff --git a/doc/guides/sample_app_ug/intro.rst b/doc/guides/sample_app_ug/intro.rst
> index e765f1fd6b12..5453df57667a 100644
> --- a/doc/guides/sample_app_ug/intro.rst
> +++ b/doc/guides/sample_app_ug/intro.rst
> @@ -85,8 +85,8 @@ examples are highlighted below.
>  * :doc:`Precision Time Protocol (PTP) client<ptpclient>`: The PTP
>    client is another minimal implementation of a real world application.
>    In this case the application is a PTP client that communicates with a PTP
> -  master clock to synchronize time on a Network Interface Card (NIC) using the
> -  IEEE1588 protocol.
> +  timeTransmitter to synchronize time on a Network Interface Card (NIC)
> +  using the IEEE1588 protocol.
>
>  * :doc:`Quality of Service (QoS) Scheduler<qos_scheduler>`: The QoS
>    Scheduler application demonstrates the use of DPDK to provide QoS scheduling.
> diff --git a/doc/guides/sample_app_ug/ptpclient.rst b/doc/guides/sample_app_ug/ptpclient.rst
> index d47e942738d0..242c9628eaff 100644
> --- a/doc/guides/sample_app_ug/ptpclient.rst
> +++ b/doc/guides/sample_app_ug/ptpclient.rst
> @@ -5,8 +5,9 @@ PTP Client Sample Application
>  =============================
>
>  The PTP (Precision Time Protocol) client sample application is a simple
> -example of using the DPDK IEEE1588 API to communicate with a PTP master clock
> -to synchronize the time on the NIC and, optionally, on the Linux system.
> +example of using the DPDK IEEE1588 API to communicate with a PTP
> +timeTransmitter to synchronize the time on the NIC and, optionally,
> +on the Linux system.
>
>  Note, PTP is a time syncing protocol and cannot be used within DPDK as a
>  time-stamping mechanism. See the following for an explanation of the protocol:
> @@ -21,10 +22,10 @@ The PTP sample application is intended as a simple reference implementation of
>  a PTP client using the DPDK IEEE1588 API.
>  In order to keep the application simple the following assumptions are made:
>
> -* The first discovered master is the main for the session.
> +* The first discovered timeTransmitter is the main for the session.
>  * Only L2 PTP packets are supported.
>  * Only the PTP v2 protocol is supported.
> -* Only the slave clock is implemented.
> +* Only the timeReceiver clock is implemented.
>
>
>  How the Application Works
> @@ -38,12 +39,12 @@ How the Application Works
>
>  The PTP synchronization in the sample application works as follows:
>
> -* Master sends *Sync* message - the slave saves it as T2.
> -* Master sends *Follow Up* message and sends time of T1.
> -* Slave sends *Delay Request* frame to PTP Master and stores T3.
> -* Master sends *Delay Response* T4 time which is time of received T3.
> +* TimeTransmitter sends *Sync* message - the TimeReceiver saves it as T2.
> +* TimeTransmitter sends *Follow Up* message and sends time of T1.
> +* TimeReceiver sends *Delay Request* frame to PTP TimeTransmitter and stores T3.
> +* TimeTransmitter sends *Delay Response* T4 time which is time of received T3.
>
> -The adjustment for slave can be represented as:
> +The adjustment for timeReceiver can be represented as:
>
>     adj = -[(T2-T1)-(T4 - T3)]/2
>
> @@ -71,8 +72,8 @@ Refer to *DPDK Getting Started Guide* for general information on running
>  applications and the Environment Abstraction Layer (EAL) options.
>
>  * ``-p portmask``: Hexadecimal portmask.
> -* ``-T 0``: Update only the PTP slave clock.
> -* ``-T 1``: Update the PTP slave clock and synchronize the Linux Kernel to the PTP clock.
> +* ``-T 0``: Update only the PTP timeReceiver clock.
> +* ``-T 1``: Update the PTP timeReceiver clock and synchronize the Linux Kernel to the PTP clock.
>
>
>  Code Explanation
> @@ -178,7 +179,7 @@ The forwarding loop can be interrupted and the application closed using
>  PTP parsing
>  ~~~~~~~~~~~
>
> -The ``parse_ptp_frames()`` function processes PTP packets, implementing slave
> +The ``parse_ptp_frames()`` function processes PTP packets, implementing timeReceiver
>  PTP IEEE1588 L2 functionality.
>
>  .. literalinclude:: ../../../examples/ptpclient/ptpclient.c
> @@ -187,11 +188,11 @@ PTP IEEE1588 L2 functionality.
>      :end-before:  >8 End of function processes PTP packets.
>
>  There are 3 types of packets on the RX path which we must parse to create a minimal
> -implementation of the PTP slave client:
> +implementation of the PTP timeReceiver client:
>
>  * SYNC packet.
>  * FOLLOW UP packet
>  * DELAY RESPONSE packet.
>
>  When we parse the *FOLLOW UP* packet we also create and send a *DELAY_REQUEST* packet.
> -Also when we parse the *DELAY RESPONSE* packet, and all conditions are met we adjust the PTP slave clock.
> +Also when we parse the *DELAY RESPONSE* packet, and all conditions are met we adjust the PTP timeReceiver clock.
> diff --git a/examples/ptpclient/ptpclient.c b/examples/ptpclient/ptpclient.c
> index cdf2da64dfee..eb34ab8621cc 100644
> --- a/examples/ptpclient/ptpclient.c
> +++ b/examples/ptpclient/ptpclient.c
> @@ -116,14 +116,14 @@ struct ptp_message {
>         } __rte_packed;
>  };
>
> -struct ptpv2_data_slave_ordinary {
> +struct ptpv2_timeReceiver_ordinary {
>         struct rte_mbuf *m;
>         struct timespec tstamp1;
>         struct timespec tstamp2;
>         struct timespec tstamp3;
>         struct timespec tstamp4;
>         struct clock_id client_clock_id;
> -       struct clock_id master_clock_id;
> +       struct clock_id transmitter_clock_id;
>         struct timeval new_adj;
>         int64_t delta;
>         uint16_t portid;
> @@ -134,7 +134,7 @@ struct ptpv2_data_slave_ordinary {
>         uint16_t current_ptp_port;
>  };
>
> -static struct ptpv2_data_slave_ordinary ptp_data;
> +static struct ptpv2_timeReceiver_ordinary ptp_data;
>
>  static inline uint64_t timespec64_to_ns(const struct timespec *ts)
>  {
> @@ -263,38 +263,38 @@ port_init(uint16_t port, struct rte_mempool *mbuf_pool)
>  }
>
>  static void
> -print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
> +print_clock_info(struct ptpv2_timeReceiver_ordinary *ptp_data)
>  {
>         int64_t nsec;
>         struct timespec net_time, sys_time;
>
> -       printf("Master Clock id: %02x:%02x:%02x:%02x:%02x:%02x:%02x:%02x",
> -               ptp_data->master_clock_id.id[0],
> -               ptp_data->master_clock_id.id[1],
> -               ptp_data->master_clock_id.id[2],
> -               ptp_data->master_clock_id.id[3],
> -               ptp_data->master_clock_id.id[4],
> -               ptp_data->master_clock_id.id[5],
> -               ptp_data->master_clock_id.id[6],
> -               ptp_data->master_clock_id.id[7]);
> -
> -       printf("\nT2 - Slave  Clock.  %lds %ldns",
> +       printf("TimeTransmitter Clock id: %02x:%02x:%02x:%02x:%02x:%02x:%02x:%02x",
> +               ptp_data->transmitter_clock_id.id[0],
> +               ptp_data->transmitter_clock_id.id[1],
> +               ptp_data->transmitter_clock_id.id[2],
> +               ptp_data->transmitter_clock_id.id[3],
> +               ptp_data->transmitter_clock_id.id[4],
> +               ptp_data->transmitter_clock_id.id[5],
> +               ptp_data->transmitter_clock_id.id[6],
> +               ptp_data->transmitter_clock_id.id[7]);
> +
> +       printf("\nT2 - TimeReceiver  Clock.  %lds %ldns",
>                         (ptp_data->tstamp2.tv_sec),
>                         (ptp_data->tstamp2.tv_nsec));
>
> -       printf("\nT1 - Master Clock.  %lds %ldns ",
> +       printf("\nT1 - TimeTransmitter Clock.  %lds %ldns ",
>                         ptp_data->tstamp1.tv_sec,
>                         (ptp_data->tstamp1.tv_nsec));
>
> -       printf("\nT3 - Slave  Clock.  %lds %ldns",
> +       printf("\nT3 - TimeReceiver  Clock.  %lds %ldns",
>                         ptp_data->tstamp3.tv_sec,
>                         (ptp_data->tstamp3.tv_nsec));
>
> -       printf("\nT4 - Master Clock.  %lds %ldns ",
> +       printf("\nT4 - TimeTransmitter Clock.  %lds %ldns ",
>                         ptp_data->tstamp4.tv_sec,
>                         (ptp_data->tstamp4.tv_nsec));
>
> -       printf("\nDelta between master and slave clocks:%"PRId64"ns\n",
> +       printf("\nDelta between timeTransmitter and timeReceiver clocks:%"PRId64"ns\n",
>                         ptp_data->delta);
>
>         clock_gettime(CLOCK_REALTIME, &sys_time);
> @@ -328,7 +328,7 @@ print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
>  }
>
>  static int64_t
> -delta_eval(struct ptpv2_data_slave_ordinary *ptp_data)
> +delta_eval(struct ptpv2_timeReceiver_ordinary *ptp_data)
>  {
>         int64_t delta;
>         uint64_t t1 = 0;
> @@ -350,7 +350,7 @@ delta_eval(struct ptpv2_data_slave_ordinary *ptp_data)
>   * Parse the PTP SYNC message.
>   */
>  static void
> -parse_sync(struct ptpv2_data_slave_ordinary *ptp_data, uint16_t rx_tstamp_idx)
> +parse_sync(struct ptpv2_timeReceiver_ordinary *ptp_data, uint16_t rx_tstamp_idx)
>  {
>         struct ptp_header *ptp_hdr;
>
> @@ -359,7 +359,7 @@ parse_sync(struct ptpv2_data_slave_ordinary *ptp_data, uint16_t rx_tstamp_idx)
>         ptp_data->seqID_SYNC = rte_be_to_cpu_16(ptp_hdr->seq_id);
>
>         if (ptp_data->ptpset == 0) {
> -               rte_memcpy(&ptp_data->master_clock_id,
> +               rte_memcpy(&ptp_data->transmitter_clock_id,
>                                 &ptp_hdr->source_port_id.clock_id,
>                                 sizeof(struct clock_id));
>                 ptp_data->ptpset = 1;
> @@ -380,7 +380,7 @@ parse_sync(struct ptpv2_data_slave_ordinary *ptp_data, uint16_t rx_tstamp_idx)
>   * Parse the PTP FOLLOWUP message and send DELAY_REQ to the main clock.
>   */
>  static void
> -parse_fup(struct ptpv2_data_slave_ordinary *ptp_data)
> +parse_fup(struct ptpv2_timeReceiver_ordinary *ptp_data)
>  {
>         struct rte_ether_hdr *eth_hdr;
>         struct rte_ether_addr eth_addr;
> @@ -399,8 +399,8 @@ parse_fup(struct ptpv2_data_slave_ordinary *ptp_data)
>         eth_hdr = rte_pktmbuf_mtod(m, struct rte_ether_hdr *);
>         ptp_hdr = (struct ptp_header *)(rte_pktmbuf_mtod(m, char *)
>                         + sizeof(struct rte_ether_hdr));
> -       if (memcmp(&ptp_data->master_clock_id,
> -                       &ptp_hdr->source_port_id.clock_id,
> +       if (memcmp(&ptp_data->transmitter_clock_id,
> +                  &ptp_hdr->source_port_id.clock_id,
>                         sizeof(struct clock_id)) != 0)
>                 return;
>
> @@ -530,7 +530,7 @@ update_kernel_time(void)
>   * Parse the DELAY_RESP message.
>   */
>  static void
> -parse_drsp(struct ptpv2_data_slave_ordinary *ptp_data)
> +parse_drsp(struct ptpv2_timeReceiver_ordinary *ptp_data)
>  {
>         struct rte_mbuf *m = ptp_data->m;
>         struct ptp_message *ptp_msg;
> @@ -568,7 +568,7 @@ parse_drsp(struct ptpv2_data_slave_ordinary *ptp_data)
>         }
>  }
>
> -/* This function processes PTP packets, implementing slave PTP IEEE1588 L2
> +/* This function processes PTP packets, implementing timeReceiver PTP IEEE1588 L2
>   * functionality.
>   */
>
> @@ -753,7 +753,7 @@ main(int argc, char *argv[])
>                 rte_exit(EXIT_FAILURE, "Error with EAL initialization\n");
>         /* >8 End of initialization of EAL. */
>
> -       memset(&ptp_data, '\0', sizeof(struct ptpv2_data_slave_ordinary));
> +       memset(&ptp_data, 0, sizeof(struct ptpv2_timeReceiver_ordinary));
>
>         /* Parse specific arguments. 8< */
>         argc -= ret;
> --
> 2.42.0
>
Reviewed-by: Somnath Kotur <somnath.kotur@broadcom.com>

[-- Attachment #2: S/MIME Cryptographic Signature --]
[-- Type: application/pkcs7-signature, Size: 4212 bytes --]

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2023-11-30  3:30 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-05-19 18:15 [PATCH] ptp: replace terms master/slave Stephen Hemminger
2023-05-19 20:06 ` Tyler Retzlaff
2023-05-19 20:08   ` Ajit Khaparde
2023-07-05 17:27 ` Stephen Hemminger
2023-11-29 16:43 ` [PATCH v2] examples/ptp: replace terms master and slave Stephen Hemminger
2023-11-30  3:30   ` Somnath Kotur

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).