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
[email protected]
https://lists.sourceforge.net/lists/listinfo/linuxptp-devel