PPSi:8ad3f411b7b78e2f438df978062296ce5752ea97 commitshttps://ohwr.org/project/ppsi/commits/8ad3f411b7b78e2f438df978062296ce5752ea972012-01-19T16:55:31Zhttps://ohwr.org/project/ppsi/commit/8ad3f411b7b78e2f438df978062296ce5752ea97PP_ADJ_FREQ_MAX exported in pptp.h2012-01-19T16:55:31ZAurelio Colosimoaurelio@aureliocolosimo.it
ADJ_FREQ_MAX is machine-dependent, but is used by servo.c too, so
I declare it in pptp.h as extern and define it for each platform.
Only gnu-linux is currently supportedhttps://ohwr.org/project/ppsi/commit/7f163d5b15a17db547e44cb7ed3e1c7d1c10a982servo partially implemented2012-01-18T08:31:50ZAurelio Colosimoaurelio@aureliocolosimo.it
All structs defined; pp_update_delay and pp_init_clock are the
first implemented servo functionshttps://ohwr.org/project/ppsi/commit/fa0377e2c76cd1002c575781abdf6b67544e135aOPTS(x) macro as shortcut for ppi->rt_opts2012-01-18T08:27:02ZAurelio Colosimoaurelio@aureliocolosimo.it
From now on, this macro will be used instead of ppi->rt_opts.
Old src code should be fixed too.https://ohwr.org/project/ppsi/commit/e12294845027f741116c1e98fa4334d42cdeb8a3pp_adj_freq implemented2012-01-18T08:26:15ZAurelio Colosimoaurelio@aureliocolosimo.it
virtualization of Linux adjtimex system clock time adjustmenthttps://ohwr.org/project/ppsi/commit/df37686380eb3037fac9b14680d46e4a45450842state-slave.c fixed 'time' parameter (wrong pointer)2012-01-18T07:51:32ZAurelio Colosimoaurelio@aureliocolosimo.ithttps://ohwr.org/project/ppsi/commit/05e49d81ced009642ee418718e185cb93c4b6d4ahandling of recv packet timestamp2012-01-17T09:25:10ZAurelio Colosimoaurelio@aureliocolosimo.ithttps://ohwr.org/project/ppsi/commit/41bbe03b0220154eb401278ae20238b1b106bf12passive and listening state: handle SYNC msg2012-01-17T08:51:06ZAurelio Colosimoaurelio@aureliocolosimo.ithttps://ohwr.org/project/ppsi/commit/58f064cc8d15ba57e8b9e3b805786ed2197a5184pp_get_tstamp and new pp_set_tstamp implemented2012-01-17T08:00:23ZAurelio Colosimoaurelio@aureliocolosimo.ithttps://ohwr.org/project/ppsi/commit/0426fd59b12d338204b688bf0b780cd90989dbd5fix msg_issue_pdelay_resp call (there was a wrong pointer)2012-01-17T07:58:28ZAurelio Colosimoaurelio@aureliocolosimo.ithttps://ohwr.org/project/ppsi/commit/33821404417277747b4035022ece7b8f4c31a1a6msg sending implemented2012-01-16T10:47:53ZAurelio Colosimoaurelio@aureliocolosimo.it
msg_issue_xxx functions declared, implemented and used
See that pp_get_tstamp now returns a TimeInternal struct.
Actually timestamp struct might be defined outside of ieee_1588_types.h
file, since it is not defined in the spec. For the moment, I leave
it there, but in the future it must be redefined for our purposes (and
in standard_c_notation)https://ohwr.org/project/ppsi/commit/2e75584096cf0648e2b148642439e424f845583fdefined and used NP macro as ppi->net_path shortcut2012-01-16T10:47:53ZAurelio Colosimoaurelio@aureliocolosimo.ithttps://ohwr.org/project/ppsi/commit/5ad45baf4de5a8dd366c0a6b4dcbbfe681dbf277evt_ch and gen_ch substituted by ch[2] array2012-01-16T10:47:53ZAurelio Colosimoaurelio@aureliocolosimo.it
As a consequence, pp_send_packet is now correctly defined by accepting
as input the desired channel type. This leads to an incoherence between
send and receive, since in receive we are not interested in which
socket received the packet, whereas in send we need to specify it.https://ohwr.org/project/ppsi/commit/33a26719c78ad2fe239fc0b56a641200564a3cccst_com_add_foreign function rewritten without empty if branches2012-01-10T10:32:17ZAurelio Colosimoaurelio@aureliocolosimo.ithttps://ohwr.org/project/ppsi/commit/ae2896328be9fb179c970898a019b57e3fcc4156trivial: added a comment about *_handle_* functions return value2012-01-10T10:24:38ZAurelio Colosimoaurelio@aureliocolosimo.ithttps://ohwr.org/project/ppsi/commit/522aad5400f330a847fd1479f7ef5240a4ddc056flagField bits now handled in a more readable way and by using symbolic names2012-01-10T10:23:56ZAurelio Colosimoaurelio@aureliocolosimo.ithttps://ohwr.org/project/ppsi/commit/9d478441b801c85c02ec5362ac158c28cd1abb94authors and license now specified at top of each file2012-01-10T10:21:32ZAurelio Colosimoaurelio@aureliocolosimo.it
a general notice is also put in AUTHORS filehttps://ohwr.org/project/ppsi/commit/184445d499987cf4895223f97262c790c580f45cinclude/pptp/pptp.h: more comments about structs. Comments are to be enhanced2012-01-10T10:19:02ZAurelio Colosimoaurelio@aureliocolosimo.ithttps://ohwr.org/project/ppsi/commit/cba60cfdc0b3018a912b5046144a8f4ac53987ffarith.c: TimeInternal handling function minor fixes2012-01-10T09:59:50ZAurelio Colosimoaurelio@aureliocolosimo.it
to_TimeInternal and from_TimeInternal now return int (0 if no errors, -1 in
case of error
normalize_TimeInternal is now declared as static (was not used externally of
arith.c file)https://ohwr.org/project/ppsi/commit/8b53de8ef1cbef83cf8731a05a368682e821f3dfINT_MAX now included from limits.h file2012-01-10T09:53:51ZAurelio Colosimoaurelio@aureliocolosimo.ithttps://ohwr.org/project/ppsi/commit/0ab63175073ea73d4190a379de9f38bf1d0844d2trivial: remove unused pp_get_default_rt_opts function2012-01-10T09:21:42ZAurelio Colosimoaurelio@aureliocolosimo.ithttps://ohwr.org/project/ppsi/commit/d1121499214bff542aa52a8ef08e5c488613fcaddefault_rt_opts: not explicitly assigned value when it is 0 or FALSE2012-01-10T09:17:43ZAurelio Colosimoaurelio@aureliocolosimo.ithttps://ohwr.org/project/ppsi/commit/da484a7398e99eecf64e6902ffb08bbb12bd163atrivial: add short explanation to TODO comments2012-01-10T09:12:33ZAurelio Colosimoaurelio@aureliocolosimo.ithttps://ohwr.org/project/ppsi/commit/cac91f65c05cac9dbe76a7f9779cb0fa907641e6trivial: comment "int e" variable expliciting it is "error" variable2012-01-10T09:10:01ZAurelio Colosimoaurelio@aureliocolosimo.ithttps://ohwr.org/project/ppsi/commit/f1faad4fa3398174246e7838f94b3587f6eb9fd1trivial: deleted commented out code2012-01-10T08:39:57ZAurelio Colosimoaurelio@aureliocolosimo.it
previously commented "st_com_add_foreign" header is now removed (not used
externally of common-fun.c)https://ohwr.org/project/ppsi/commit/03f5966a07b817e3861404c17d6ee509f08c9adb.gitignore additions2012-01-09T08:37:37ZAlessandro Rubinirubini@gnudd.comSigned-off-by: <span data-trailer="Signed-off-by:" data-user="9028"><a href="https://ohwr.org/rubini" title="rubini@gnudd.com"><img alt="Alessandro Rubini's avatar" src="https://secure.gravatar.com/avatar/18e4fb369cda4873020839db5911d1d1?s=32&d=identicon" class="avatar s16 avatar-inline" title="Alessandro Rubini"></a><a href="https://ohwr.org/rubini" title="rubini@gnudd.com">Alessandro Rubini</a> <<a href="mailto:rubini@gnudd.com" title="rubini@gnudd.com">rubini@gnudd.com</a>></span>https://ohwr.org/project/ppsi/commit/7e5fe21c6f5c369a38c3a38d863ab89767b88ccfarith.c: use __div64_32 from the library2012-01-09T08:36:38ZAlessandro Rubinirubini@gnudd.com
This change is needed to avoid requiring libgcc in freestanding
environments.
The div64 function I copied from the kernel only works with unsigned
numbers, but arth.h had them signed. I'm not sure at this point
whether PTP uses negative nanoseconds in this conversion, so I added a
diagnostic message. If it triggers, I can look for a solution, but I
suspect it doesn't happen.
Please note that a 64-bit arch may define the function as an inline
that does the calculation with C operators, but currently
arch-gnu-linux is used for both 32-bit and 64-bit hosts.
Signed-off-by: <span data-trailer="Signed-off-by:" data-user="9028"><a href="https://ohwr.org/rubini" title="rubini@gnudd.com"><img alt="Alessandro Rubini's avatar" src="https://secure.gravatar.com/avatar/18e4fb369cda4873020839db5911d1d1?s=32&d=identicon" class="avatar s16 avatar-inline" title="Alessandro Rubini"></a><a href="https://ohwr.org/rubini" title="rubini@gnudd.com">Alessandro Rubini</a> <<a href="mailto:rubini@gnudd.com" title="rubini@gnudd.com">rubini@gnudd.com</a>></span>https://ohwr.org/project/ppsi/commit/205d324eed65ca717e2ff8c798cbd18828c7d8d2lib/div64.c: new file2012-01-09T08:20:02ZAlessandro Rubinirubini@gnudd.com
This is the 64-bit unsigned division and remainder from the Linux
kernel, for 32-bit host systems.
The new lib/ directory can be used by archs to pick files, and that's
already exemplified by arch-gnu-linux and arch-bare-linux.
Signed-off-by: <span data-trailer="Signed-off-by:" data-user="9028"><a href="https://ohwr.org/rubini" title="rubini@gnudd.com"><img alt="Alessandro Rubini's avatar" src="https://secure.gravatar.com/avatar/18e4fb369cda4873020839db5911d1d1?s=32&d=identicon" class="avatar s16 avatar-inline" title="Alessandro Rubini"></a><a href="https://ohwr.org/rubini" title="rubini@gnudd.com">Alessandro Rubini</a> <<a href="mailto:rubini@gnudd.com" title="rubini@gnudd.com">rubini@gnudd.com</a>></span>https://ohwr.org/project/ppsi/commit/1ccf1d9ecd2e98d56e14ae18d9017f0b3a6b8556bare-linux/bare-io.c: added missing lib functions2012-01-09T08:17:29ZAlessandro Rubinirubini@gnudd.com
Maybe we should consider some generic lib, as most of this can be
shared across freestanding archs (we must check whether other
freestanding places are really so lib-less os they have these minimal
functions for example from newlib)
Signed-off-by: <span data-trailer="Signed-off-by:" data-user="9028"><a href="https://ohwr.org/rubini" title="rubini@gnudd.com"><img alt="Alessandro Rubini's avatar" src="https://secure.gravatar.com/avatar/18e4fb369cda4873020839db5911d1d1?s=32&d=identicon" class="avatar s16 avatar-inline" title="Alessandro Rubini"></a><a href="https://ohwr.org/rubini" title="rubini@gnudd.com">Alessandro Rubini</a> <<a href="mailto:rubini@gnudd.com" title="rubini@gnudd.com">rubini@gnudd.com</a>></span>https://ohwr.org/project/ppsi/commit/e5d7101f16ffb6647e1a19cd141c3ba332e0e75dpptp/lib.h and posix-io.c: minor fix: missing const in prototype2012-01-09T08:13:20ZAlessandro Rubinirubini@gnudd.comSigned-off-by: <span data-trailer="Signed-off-by:" data-user="9028"><a href="https://ohwr.org/rubini" title="rubini@gnudd.com"><img alt="Alessandro Rubini's avatar" src="https://secure.gravatar.com/avatar/18e4fb369cda4873020839db5911d1d1?s=32&d=identicon" class="avatar s16 avatar-inline" title="Alessandro Rubini"></a><a href="https://ohwr.org/rubini" title="rubini@gnudd.com">Alessandro Rubini</a> <<a href="mailto:rubini@gnudd.com" title="rubini@gnudd.com">rubini@gnudd.com</a>></span>https://ohwr.org/project/ppsi/commit/6732723d8ed15d69355e241da4219618ff4d458cMakefile: fix a filename in a comment2012-01-09T08:12:45ZAlessandro Rubinirubini@gnudd.comSigned-off-by: <span data-trailer="Signed-off-by:" data-user="9028"><a href="https://ohwr.org/rubini" title="rubini@gnudd.com"><img alt="Alessandro Rubini's avatar" src="https://secure.gravatar.com/avatar/18e4fb369cda4873020839db5911d1d1?s=32&d=identicon" class="avatar s16 avatar-inline" title="Alessandro Rubini"></a><a href="https://ohwr.org/rubini" title="rubini@gnudd.com">Alessandro Rubini</a> <<a href="mailto:rubini@gnudd.com" title="rubini@gnudd.com">rubini@gnudd.com</a>></span>https://ohwr.org/project/ppsi/commit/4f40367e0a524a69934e4d763ac431a360d98990proto-standard: uncomment all DBGV lines2012-01-09T08:12:24ZAlessandro Rubinirubini@gnudd.comSigned-off-by: <span data-trailer="Signed-off-by:" data-user="9028"><a href="https://ohwr.org/rubini" title="rubini@gnudd.com"><img alt="Alessandro Rubini's avatar" src="https://secure.gravatar.com/avatar/18e4fb369cda4873020839db5911d1d1?s=32&d=identicon" class="avatar s16 avatar-inline" title="Alessandro Rubini"></a><a href="https://ohwr.org/rubini" title="rubini@gnudd.com">Alessandro Rubini</a> <<a href="mailto:rubini@gnudd.com" title="rubini@gnudd.com">rubini@gnudd.com</a>></span>https://ohwr.org/project/ppsi/commit/f4ef86832357a11134e44c488756372ce7d45049diag.h: temporarily define DBGV and DBGV_ARGS2012-01-09T08:11:58ZAlessandro Rubinirubini@gnudd.com
This allows to uncomment the original DBGV in ptp code, until they are
turned to serious diagnostic messages. Then these two functions should
disappear, in my opinion.
Most DBGV use no arguments, so the default function is smaller; and
printf-like DBGV can be turned to DBGV_ARGS instead.
Signed-off-by: <span data-trailer="Signed-off-by:" data-user="9028"><a href="https://ohwr.org/rubini" title="rubini@gnudd.com"><img alt="Alessandro Rubini's avatar" src="https://secure.gravatar.com/avatar/18e4fb369cda4873020839db5911d1d1?s=32&d=identicon" class="avatar s16 avatar-inline" title="Alessandro Rubini"></a><a href="https://ohwr.org/rubini" title="rubini@gnudd.com">Alessandro Rubini</a> <<a href="mailto:rubini@gnudd.com" title="rubini@gnudd.com">rubini@gnudd.com</a>></span>https://ohwr.org/project/ppsi/commit/f2eeb7b840993b9ecb72c10616d9f84c109d8cd6diag: export pp_vprintf, add it to diag-no.c2012-01-09T08:10:52ZAlessandro Rubinirubini@gnudd.comSigned-off-by: <span data-trailer="Signed-off-by:" data-user="9028"><a href="https://ohwr.org/rubini" title="rubini@gnudd.com"><img alt="Alessandro Rubini's avatar" src="https://secure.gravatar.com/avatar/18e4fb369cda4873020839db5911d1d1?s=32&d=identicon" class="avatar s16 avatar-inline" title="Alessandro Rubini"></a><a href="https://ohwr.org/rubini" title="rubini@gnudd.com">Alessandro Rubini</a> <<a href="mailto:rubini@gnudd.com" title="rubini@gnudd.com">rubini@gnudd.com</a>></span>https://ohwr.org/project/ppsi/commit/612ae4ebfeeed4e03404cf4bad69d624e8148b5earch-spec: make it compile (but not link yet)2012-01-09T08:10:06ZAlessandro Rubinirubini@gnudd.comSigned-off-by: <span data-trailer="Signed-off-by:" data-user="9028"><a href="https://ohwr.org/rubini" title="rubini@gnudd.com"><img alt="Alessandro Rubini's avatar" src="https://secure.gravatar.com/avatar/18e4fb369cda4873020839db5911d1d1?s=32&d=identicon" class="avatar s16 avatar-inline" title="Alessandro Rubini"></a><a href="https://ohwr.org/rubini" title="rubini@gnudd.com">Alessandro Rubini</a> <<a href="mailto:rubini@gnudd.com" title="rubini@gnudd.com">rubini@gnudd.com</a>></span>https://ohwr.org/project/ppsi/commit/fe3ed1778a023bb31041c41cfbe6342323490351timer names: reduced in length2012-01-09T08:09:14ZAlessandro Rubinirubini@gnudd.com
I removed the trailing "interval" in all of them but announce, that
has both receipt and interval. This shortens some almost-80-cols
lines. I'm not sure it's the right thing to do, but timer names are
unreadable anyways.
Signed-off-by: <span data-trailer="Signed-off-by:" data-user="9028"><a href="https://ohwr.org/rubini" title="rubini@gnudd.com"><img alt="Alessandro Rubini's avatar" src="https://secure.gravatar.com/avatar/18e4fb369cda4873020839db5911d1d1?s=32&d=identicon" class="avatar s16 avatar-inline" title="Alessandro Rubini"></a><a href="https://ohwr.org/rubini" title="rubini@gnudd.com">Alessandro Rubini</a> <<a href="mailto:rubini@gnudd.com" title="rubini@gnudd.com">rubini@gnudd.com</a>></span>https://ohwr.org/project/ppsi/commit/f7a6b4e56a0e6a249bf87f5f617ad681b614d7a1general: ppi must be first argument2012-01-09T08:08:38ZAlessandro Rubinirubini@gnudd.com
the "ppi" object instance should consistently be the first argument of
functions that receive it. Besides being more consistent, it's smaller
and faster too (on processors with more than 4 registers, I mean).
Signed-off-by: <span data-trailer="Signed-off-by:" data-user="9028"><a href="https://ohwr.org/rubini" title="rubini@gnudd.com"><img alt="Alessandro Rubini's avatar" src="https://secure.gravatar.com/avatar/18e4fb369cda4873020839db5911d1d1?s=32&d=identicon" class="avatar s16 avatar-inline" title="Alessandro Rubini"></a><a href="https://ohwr.org/rubini" title="rubini@gnudd.com">Alessandro Rubini</a> <<a href="mailto:rubini@gnudd.com" title="rubini@gnudd.com">rubini@gnudd.com</a>></span>https://ohwr.org/project/ppsi/commit/55129ce99b7b573cdeabbcfe2c112a6e3e30134cproto-standard/common-fun: turn Boolean to int2012-01-09T08:07:46ZAlessandro Rubinirubini@gnudd.com
Boolean is braindead. We decided to leave them in the mandated
structures by now (until we discover they are not really mandated) but
not use them ourselves. This "found" variable wanted to be int, so be
it int.
Signed-off-by: <span data-trailer="Signed-off-by:" data-user="9028"><a href="https://ohwr.org/rubini" title="rubini@gnudd.com"><img alt="Alessandro Rubini's avatar" src="https://secure.gravatar.com/avatar/18e4fb369cda4873020839db5911d1d1?s=32&d=identicon" class="avatar s16 avatar-inline" title="Alessandro Rubini"></a><a href="https://ohwr.org/rubini" title="rubini@gnudd.com">Alessandro Rubini</a> <<a href="mailto:rubini@gnudd.com" title="rubini@gnudd.com">rubini@gnudd.com</a>></span>
Acked-by: <span data-trailer="Acked-by:" data-user="9330"><a href="https://ohwr.org/colosimo" title="aurelio@aureliocolosimo.it"><img alt="Aurelio Colosimo's avatar" src="https://secure.gravatar.com/avatar/ea28c1ebbd590d5c6a0a917817345c16?s=32&d=identicon" class="avatar s16 avatar-inline" title="Aurelio Colosimo"></a><a href="https://ohwr.org/colosimo" title="aurelio@aureliocolosimo.it">Aurelio Colosimo</a> <<a href="mailto:aurelio@aureliocolosimo.it" title="aurelio@aureliocolosimo.it">aurelio@aureliocolosimo.it</a>></span>https://ohwr.org/project/ppsi/commit/d341232c248dab2b25573ae07c038ce15824d637include: checkpatch changes (and tabify 1588 structures)2012-01-09T08:07:00ZAlessandro Rubinirubini@gnudd.com
This only applies checkpatch stuff, but I took the freedom to
add tabs to the stuctures in ieee1588_types.h, to make them more
readable.
Signed-off-by: <span data-trailer="Signed-off-by:" data-user="9028"><a href="https://ohwr.org/rubini" title="rubini@gnudd.com"><img alt="Alessandro Rubini's avatar" src="https://secure.gravatar.com/avatar/18e4fb369cda4873020839db5911d1d1?s=32&d=identicon" class="avatar s16 avatar-inline" title="Alessandro Rubini"></a><a href="https://ohwr.org/rubini" title="rubini@gnudd.com">Alessandro Rubini</a> <<a href="mailto:rubini@gnudd.com" title="rubini@gnudd.com">rubini@gnudd.com</a>></span>https://ohwr.org/project/ppsi/commit/8ee159a478dc0a2fbef0ec812ca18a752887cd97ieee1588_types.h: Octet is better uint8_t than char2012-01-09T08:05:44ZAlessandro Rubinirubini@gnudd.com
char may be signed or unsigned, so I'd better be safe here.
Meanwhile, I added some tabs to better line up the typedef stanza.
Signed-off-by: <span data-trailer="Signed-off-by:" data-user="9028"><a href="https://ohwr.org/rubini" title="rubini@gnudd.com"><img alt="Alessandro Rubini's avatar" src="https://secure.gravatar.com/avatar/18e4fb369cda4873020839db5911d1d1?s=32&d=identicon" class="avatar s16 avatar-inline" title="Alessandro Rubini"></a><a href="https://ohwr.org/rubini" title="rubini@gnudd.com">Alessandro Rubini</a> <<a href="mailto:rubini@gnudd.com" title="rubini@gnudd.com">rubini@gnudd.com</a>></span>https://ohwr.org/project/ppsi/commit/f1dbdca0075519ff0a54af510f0f8dd5f3d39982trivial: ieee1588_types.h: use "PPTP" in internal macro2012-01-09T08:04:51ZAlessandro Rubinirubini@gnudd.comSigned-off-by: <span data-trailer="Signed-off-by:" data-user="9028"><a href="https://ohwr.org/rubini" title="rubini@gnudd.com"><img alt="Alessandro Rubini's avatar" src="https://secure.gravatar.com/avatar/18e4fb369cda4873020839db5911d1d1?s=32&d=identicon" class="avatar s16 avatar-inline" title="Alessandro Rubini"></a><a href="https://ohwr.org/rubini" title="rubini@gnudd.com">Alessandro Rubini</a> <<a href="mailto:rubini@gnudd.com" title="rubini@gnudd.com">rubini@gnudd.com</a>></span>