On Fri, Sep 02, 2022 at 12:26:12PM +0530, SyncMonk Technologies wrote: > +static int ts2phc_vport_init_sync(struct ts2phc_vport *p, > + struct address address) > +{ > + > + struct ptp_message *msg; > + > + msg = msg_allocate(); > + if (!msg) { > + return -1; > + } > + msg->hwts.type = TS_ONESTEP; > + msg->header.tsmt = SYNC | p->transportSpecific; > + msg->header.ver = PTP_VERSION; > + msg->header.messageLength = sizeof(struct sync_msg); > + msg->header.domainNumber = p->domainNumber; > + msg->header.sourcePortIdentity = p->portIdentity; > + msg->header.sequenceId = p->seqnum.sync++;
The sequence number never increases? The only caller is ts2phc_vport_create(); > + msg->header.control = CTL_SYNC; > + msg->header.logMessageInterval = p->logSyncInterval; > + msg->address = address; > + > + p->sync.msg = msg; > + > + return 0; > +} > +int ts2phc_vport_tx_sync(struct ts2phc_vport *ts2phc_vport, > + tmv_t t1, tmv_t corr, tmv_t t2) > +{ > + struct ptp_message *msg; > + int err; > + struct address address; > + > + if (!ts2phc_vport_active(ts2phc_vport)) { > + return 0; > + } > + > + msg = ts2phc_vport->sync.msg; > + address = msg->address; > + ts2phc_vport->sync.count++; > + > + err = ts2phc_vport_forward(ts2phc_vport, msg); > + msg_put(msg); > + ts2phc_vport_init_announce(ts2phc_vport, address); > + return err; > +} What is the point of sending a Sync message on the virtual port? After all, you never send the Tx time stamp in a Follow Up. Thanks, Richard _______________________________________________ Linuxptp-devel mailing list Linuxptp-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/linuxptp-devel