On 10/13/2021 12:50 AM, Peter Bergin wrote: > Hi, > > On 2021-10-13 00:19, Richard Cochran wrote: >> On Tue, Oct 12, 2021 at 09:47:21PM +0200, Peter Bergin wrote: >>> Hi, >>> >>> I'm currently working on a network product using gPTP configuration for PTP >>> sync. The device shall be a AVB endpoint handling audio and according to >>> Avnu specifications all endpoint shall be capable of being master on the >>> network. Some plugins for AVB (such as gstreamer and alsa-plugins) require >>> that system time (CLOCK_REALTIME) is in sync with PHC to get correct timing. >>> I see different cases depending on if the device is master or slave. If the >>> device is slave I would like to sync PHC to CLOCK_REALTIME. The other way >>> around, if device is master I would like to sync CLOCK_REALTIME to PHC. >>> >>> To the question; is there a way to use phc2sys and handle this >>> automatically? >> phc2sys has an automatic mode. See the man page for details. >> > Thanks! My bad, should have read man pages better. And I did try '-a' > but had issues with it. To summarize for other users: > > $ ./phc2sys -a -r -r -q -m > phc2sys[412816.955]: Waiting for ptp4l... > phc2sys[412817.956]: Waiting for ptp4l... > > I had trouble communicating over UDS between ptp4l and phc2sys. The > problem was that I'm working with gPTP (IEEE 802.11AS) and the setting > transportSpecific didn't match between ptp4l and phc2sys. So the > solution was, as stated in the man page, to add '--transportSpecific=1' > when starting phc2sys and the issue was solved. > > ptp4l just silently drops messages if transportSpecific don't match (and > ignore_transport_specific=0). I tried to debug this issue with help of > debug messages (-l 7) but couldn't find it that way. Would it be a good > thing to add debug prints when that happens to improve visibility? Or > would that flood the log in some cases? > > diff --git a/port.c b/port.c > index fa49663..1c04fc5 100644 > --- a/port.c > +++ b/port.c > @@ -699,6 +699,8 @@ static int port_ignore(struct port *p, struct > ptp_message *m) > } > if (p->match_transport_specific && > msg_transport_specific(m) != p->transportSpecific) { > + pr_debug("port %hu: transport_specific did not match, > will drop message", > + portnum(p)); > return 1; > } > if (pid_eq(&m->header.sourcePortIdentity, &p->portIdentity)) { > diff --git a/tc.c b/tc.c > index 0346ba9..705f54c 100644 > --- a/tc.c > +++ b/tc.c > @@ -478,6 +478,8 @@ int tc_ignore(struct port *p, struct ptp_message *m) > > if (p->match_transport_specific && > msg_transport_specific(m) != p->transportSpecific) { > + pr_debug("port %hu: transport_specific did not match, > will drop message", > + portnum(p)); > return 1; > } > if (pid_eq(&m->header.sourcePortIdentity, &p->portIdentity)) { > > > Thanks, > /Peter >
I'm ok with the debug prints. These would only display at the highest log level, so it would only clutter logs for those who are already debugging. Thanks, Jake > > > _______________________________________________ > Linuxptp-users mailing list > Linuxptp-users@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/linuxptp-users > _______________________________________________ Linuxptp-users mailing list Linuxptp-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/linuxptp-users