On 18/03/2016 1:20 AM, Miroslav Lichvar wrote:
> I'm wondering what changes would ptp4l need in the kernel in order to
> support operation with bonded interfaces as a PTP slave. Currently, as
> I understand it, it doesn't work at all, at least with the UDP
> transports. I'm not very familiar with the kernel code, please tell me
> if what I say doesn't make any sense.
>
> I think there are at least two possible approaches. One would be to
> add support for timestamping on the master interface and the kernel
> would send to sockets bound to the interface timestamps from
> interfaces that are currently active. As each slave interface may have
> its own clock, ptp4l would need to know from which interface the
> timestamp is. When that source changes, ptp4l would need to update its
> state and restart the servo. phc2sys would need to know about all
> interfaces and select the one which is currently synchronized.
>
> A simpler approach (at least on the ptp4l side) would be to allow
> receiving and sending multicast packets on sockets bound to the slave
> interfaces. For each slave interface there would be a separate ptp4l
> instance running which would synchronize the clock when the interface
> is active and is actually receiving/sending packets. For each ptp4l
> there would be a phc2sys instance writing measurements to SHM or
> phc2sys could be improved to support multiple ptp4l sources.
>
> Would this require more than a new socket option in the kernel?
>
> FWIW, in a test I did with a single bonded interface and the L2 transport
> ptp4l was able to bind to the slave interface, send and receive
> packets, and synchronize the clock. I didn't have a chance to try it
> with multiple interfaces and other bonding modes. Does anyone know if
> it would work?
>
> Thoughts?
>

Not sure if I've got exactly the same setup as you but I think its similar.
I've got a EMAC with PTP hardware connected on a fixed link to a ethernet 
switch.
Which also has PTP timestamping, however no drivers exist for this feature as 
yet.

Anyway the EMAC PTP hardware (sync, PPS etc) works when the switch is configured
as a transarent device and the EMAC port has an IP address.

Hoever when configured using the Distributed Switch Architecture (DSA) driver 
the
PTP functionality doesn't work. If tried 802.3 transport with no effect. The
virtual ports on the DSA chip  currently report:
interface 'lan1' does not support requested timestamping mode.
For all stamping options H/S/L options.

Just started looking at my options.
I was hoping to be able to use eth0 to stamp packets going out on virtual lan1, 
lan2
ports but so far no luck.


-- 
Regards
Phil Reid


------------------------------------------------------------------------------
Transform Data into Opportunity.
Accelerate data analysis in your applications with
Intel Data Analytics Acceleration Library.
Click to learn more.
http://pubads.g.doubleclick.net/gampad/clk?id=278785231&iu=/4140
_______________________________________________
Linuxptp-devel mailing list
Linuxptp-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxptp-devel

Reply via email to