- 25 Oct, 2016 3 commits
-
-
Alessandro Rubini authored
bug introduced in 4126868c, we were incrementing the delay-request sequence number instead of ours. Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
While it may make sense to setup constant delay somewhere (for WR we define them, for instance), the legacy implementation was unused and wrong. Unused because nobody sets it (even if we could do it in the config file). Wrong because inbound is never used, and both are global and not per-port. Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
- 20 Sep, 2016 8 commits
-
-
Alessandro Rubini authored
Here in ppsi, ./MAKEALL wrpc_defconfig wrpc_pdelay_defconfig shows a very small difference, but most pdelay code is then discarded by the wrpc-sw link time, due to --gc-sections. This is the result: laptopo% ./MAKEALL spec_defconfig spec_pdelay_defconfig ##### Building with 'spec_defconfig' /opt/lm32-gcc-4.5.3/bin/lm32-elf-ar: creating libsdbfs.a text data bss dec hex filename 87688 3492 6352 97532 17cfc wrc.elf ##### Building with 'spec_pdelay_defconfig' /opt/lm32-gcc-4.5.3/bin/lm32-elf-ar: creating libsdbfs.a text data bss dec hex filename 93140 3492 6360 102992 19250 wrc.elf What is missing now is the run-time choice between e2e and p2p. Later.... Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
Davide Ciminaghi authored
A function should only do what it promises, so msg_unpack_header should just unpack. This move also gets also us ready for fixing compliance to 9.5.2.3.
-
Davide Ciminaghi authored
-
Davide Ciminaghi authored
See Table 20.
-
Davide Ciminaghi authored
We don't support alternate masters at present.
-
Davide Ciminaghi authored
-
Davide Ciminaghi authored
-
- 16 Jun, 2016 1 commit
-
-
Alessandro Rubini authored
Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
- 16 May, 2016 5 commits
-
-
Alessandro Rubini authored
Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
Cesar Prados authored
Signed-off-by:
C.Prados <c.prados@gsi.de>
-
Cesar Prados authored
Signed-off-by:
C.Prados <c.prados@gsi.de>
-
Cesar Prados authored
In PDelay mechanism, the Master has to reply to PDelay_Req from pclocks with PDelay_respond and PDelay_follow_up. Add pack/issue functions for this messages Signed-off-by:
C.Prados <c.prados@gsi.de> [WARNING: this commit was changed by Alessandro, adding a missing "pdelay_req_hdr" field in pp_instance, and exporting msg_copy_header that had been turned to static -- this must be fixed]
-
- 13 Mar, 2015 1 commit
-
-
Maciej Lipinski authored
instead of GM clockQuality info, the information from Default DS was sent in announce. Corrected according to Table 25, p129 of PTP
-
- 13 Nov, 2014 4 commits
-
-
Alessandro Rubini authored
All functions in msg.c that are used locally are now static. There is one that is never used at all (msg_unpack_delay_req) but I fear I need more auditing before removing it. It may be something we need to do, I'm not sure. Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
This field is not needed, because we issue the response immediately, using the last received header. The copy is not needed, nor the field. Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
We always send them in pair, so use a single function to do it. This simplifies the code a little, but most of al it allows later interoduction of mandated masters on multiple vlans. Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
- 07 Nov, 2014 1 commit
-
-
Alessandro Rubini authored
Bitfields are bad, so this turns them into flags and constants. There should be no change at all in behaviour (although the code is a little smaller). The next commit does a change for real. Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
- 06 Nov, 2013 1 commit
-
-
Alessandro Rubini authored
This works around a design problem that must be checked carefully. The "is from current parent" flags set at receive time reveales bad, as we should only check when needed. So by now just say it is the current parent if we don't have a current parent yet (i.e., we are not in error, even if it is not from current parent). Also, forget about current parent and foreign masters when the servo is initialized (e.g., at link-up on the wr node). Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
- 24 Sep, 2013 1 commit
-
-
Alessandro Rubini authored
Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
- 31 Jul, 2013 1 commit
-
-
Alessandro Rubini authored
This changes all "Name Surname for CERN" to "Copyright CERN, author Name Surname". This is trivial and makes no change, with a few expections: - all trivial Makefiles that had "for CERN" lines have now no attributions, as they are trivial anyways. - a few unrepresented files have not the copyright notice (especially ptpdump, that I wrote in 2012). - a few "for CERN" remain in subprojects, where I didn't touch anyrhing Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
- 03 May, 2013 1 commit
-
-
Aurelio Colosimo authored
Signed-off-by:
Aurelio Colosimo <aurelio@aureliocolosimo.it>
-
- 19 Mar, 2013 1 commit
-
-
Alessandro Rubini authored
This was an error on my side. The result may be undefined in "ntohs(++x)". It had not bad effects so far, but newer compilers correctly warn about it, and this commit fixes the error. Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
- 14 Mar, 2013 2 commits
-
-
Alessandro Rubini authored
The new diagnostics for frame input/output, based on tools/dump-funcs.c, reports all information, more orderly. The diagnostic prints in msg.c are thus duplicates (provided all architectures use the new diagnostics in ->recv), and this commit removes them. Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
I'm adding generic dump code to the receive and send code paths, so I need the length of the incoming frame when first "unpacking" it, to dump the whole frame using code from tools/dump-funcs.c Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
- 07 Mar, 2013 4 commits
-
-
Alessandro Rubini authored
This "type" was the only type represented as an array instead of being a structure. This leads to inconsistent use: if you memcpy the other ones you need "&", but not here. So this commit uses an encompassing structure, to have ClockIdentity behave like other composite fields. The commit has no effect at all on the generated binary files for wrpc but it unexpectedly reduces the size of the output on the PC. Anyways, the commit is trivial, and all changes can be easily verified to have no effect. While this increases entropy, the reasoning is that I want to assign structures instead of running zillions of memcpy functions, with the hairy PP_CLOCK_IDENTITY_LENGTH. So later commits, based on this one, reduce entropy. Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
Unfortunately, we need to pass ppi to the time operations, so we can have per-instance logging options. This is the second time I found the need for such extra argument: the first time I worked it around, now I surrender. Actually, I don't find it unlikely for a multi-instance process to spit a lot of diagnostics about timestamps. A developer may need to filter messages according to who is tiemstamping/timing out etc. Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
This kills the global build-time macro pp_verbose_dump to use flags instead. In msg.c this commit fakes the old pp_verbose_dump, which however is extracted from the global flags. So, setting "frames" level to 2 prints information on frames being received ("-d 002"). Until I get to integrate tools/ptpdump in the daemon itself, we have no instance-specific dump, nor symmetric dumping of input and output. Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
- 04 Mar, 2013 3 commits
-
-
Alessandro Rubini authored
By post-incrementing sent_seq we had a value that was not really the "last sent" as the comment claims. Thus, pre-increment it instead, so readers find the "last sent" value and don't need to subtract 1. Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
This changes some things to make code more readable (I really didn't know what the tmp_header was: now it is the "received_ptp_header". The commit simplifies allocation, because the tx and rx buffers are now part of ppi itself. We now have tx_ptp and tx_frame, both pointing within tx_buffer (and the same for rx). The pointers are the protocol side (aligned) and the argument passed to send/recv (which may be not be 4-aligned). At this point nothing changes, i.e. both gnu-linux flavours work and bare-i386 is not able to received.
-
Alessandro Rubini authored
This commit moves the time operations inside the instance. It allows to have different time operations for each instance, which will be useful in the future. For example, one ethernet card may White Rabbit, and another may not be. This commit, like moving network operations inside ppi, requires a change in wrpc-sw. Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
- 02 Mar, 2013 1 commit
-
-
Alessandro Rubini authored
The structure was separately allocated with a size of 16. This avoids the alloc and makes the array the right size from the enum of message types. We thus a remove a number of magic "16" in the code. wrpc-sw must be updated too, in order to use this commit. There's still a problem: the code claims the number to be "last sent", but actually the value is incremented after sending. I'll need to pass again on this thing. ps: I changed name from "sent_seq_id" to "sent_seq" to the compiler complains for previous users, otherwise undetectable. Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
- 01 Mar, 2013 2 commits
-
-
Alessandro Rubini authored
This removes the unmanageable MSG_SEND_AND_RET macro, turning it to a normal function (inline, at the time being, to avoid moving from the header to a different place). The function is called __send_and_log because it logs too, but I'd better move logging to the actual send and recv methods. BTW: the message "-> FAULTY" (now removed) was wrong, because not all errors of this function result in FAULTY state in the fsm. Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
This kills MSG_SEND_AND_RET_VARLEN, turning everything into MSG_SEND_AND_RET. Such macro now receives the length argument and doesn't receive the "pdelay" argument any more, because it is zero by design in this implementation. This commit has no effect on the compiled files. Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-