Commit Graph

1122 Commits (3c7e4947e4e471de56ced82323f89732ef9a774f)

Author SHA1 Message Date
Richard Cochran 429c126b58 Select the system clock whenever legacy hardware time stamps are used.
Signed-off-by: Richard Cochran <richardcochran@gmail.com>
2011-11-27 14:24:03 +01:00
Richard Cochran 56a5adc1cc Smooth the path delay estimate with a moving average.
This is really just a first attempt using a hard coded length. Probably
it will be necessary to let the length be configurable and/or adaptable.

Signed-off-by: Richard Cochran <richardcochran@gmail.com>
2011-11-27 14:24:03 +01:00
Richard Cochran 68aea3058c Use the timeout table for the delay request messages.
Signed-off-by: Richard Cochran <richardcochran@gmail.com>
2011-11-27 14:24:03 +01:00
Richard Cochran 1d6737b75c Add a time out table for delay requests.
We can pre-compute a table of suitable values in order to simplify the
run time random delay selection.

Signed-off-by: Richard Cochran <richardcochran@gmail.com>
2011-11-22 05:40:50 +01:00
Richard Cochran 2fd7a1c18f Use the correct slave-only clock class.
If we are going to be slave-only, then we should also advertise the
correct clock class.

Signed-off-by: Richard Cochran <richardcochran@gmail.com>
2011-11-20 18:53:38 +01:00
Richard Cochran 5f7facdc63 Bind transmitted packets to the port's network interface.
Even though the MCAST_JOIN_GROUP socket option includes the interface
index, this applies to the received packets only. To bind the outgoing
packets to a particular interface, the IP_MULTICAST_IF option is needed.

Signed-off-by: Richard Cochran <richardcochran@gmail.com>
2011-11-20 18:31:33 +01:00
Richard Cochran ebd353aff6 Link it all together, but in slave-only mode.
Since the master implementation is still lacking, we will just keep
the slave-only flag hard coded for now.

Signed-off-by: Richard Cochran <richardcochran@gmail.com>
2011-11-13 12:39:49 +01:00
Richard Cochran dae76b951a Implement the port layer.
Signed-off-by: Richard Cochran <richardcochran@gmail.com>
2011-11-13 08:41:05 +01:00
Richard Cochran 49cd10e678 Implement the PTP clock.
Signed-off-by: Richard Cochran <richardcochran@gmail.com>
2011-11-12 18:59:13 +01:00
Richard Cochran 5b8fa684ae phc: Add a method to query the maximum adjustment.
Signed-off-by: Richard Cochran <richardcochran@gmail.com>
2011-11-12 18:58:59 +01:00
Richard Cochran 150897669e Add the main program.
Signed-off-by: Richard Cochran <richardcochran@gmail.com>
2011-11-12 17:41:20 +01:00
Richard Cochran 2a8711a125 Fix a misplaced doxygen comment.
Signed-off-by: Richard Cochran <richardcochran@gmail.com>
2011-11-12 17:35:14 +01:00
Richard Cochran fc378711d8 Add an abstract time value type.
Signed-off-by: Richard Cochran <richardcochran@gmail.com>
2011-11-12 13:58:28 +01:00
Richard Cochran 5c010351c0 Add a modular clock servo interface with a PI controller.
Signed-off-by: Richard Cochran <richardcochran@gmail.com>
2011-11-12 12:31:18 +01:00
Richard Cochran edcb731cc2 Add a message layer.
Note that only some of the message types are implemented.

Signed-off-by: Richard Cochran <richardcochran@gmail.com>
2011-11-06 09:02:57 +01:00
Richard Cochran 60f3a85463 Add transport over UDP IPv4.
Signed-off-by: Richard Cochran <richardcochran@gmail.com>
2011-11-06 08:16:19 +01:00
Richard Cochran e930bc4e11 Add utility functions for obtaining human readable strings.
Signed-off-by: Richard Cochran <richardcochran@gmail.com>
2011-11-06 07:37:06 +01:00
Richard Cochran c9a15e6094 Add the best master clock algorithm.
This commit also introduces clock and port objects, but only with the
minimal interface needed by the BMC.

Signed-off-by: Richard Cochran <richardcochran@gmail.com>
2011-11-04 19:20:23 +01:00
Richard Cochran f5ef4a3d3d Add the state machine.
Signed-off-by: Richard Cochran <richardcochran@gmail.com>
2011-11-04 18:28:29 +01:00
Richard Cochran bb1f18d87b Add functions for logging messages in kernel style.
Signed-off-by: Richard Cochran <richardcochran@gmail.com>
2011-11-01 18:12:09 +01:00
Richard Cochran 11e0446c0e Add code to open and close PHC devices.
Signed-off-by: Richard Cochran <richardcochran@gmail.com>
2011-11-01 18:00:16 +01:00
Richard Cochran af380e8617 Add the license, a readme, and some header files.
This commit gets the project off to a good start. The header files provide
some basic data types and definitions.

The README file will most probably grow over time.

Signed-off-by: Richard Cochran <richardcochran@gmail.com>
2011-11-01 17:39:14 +01:00