- 01 Dec, 2016 3 commits
-
-
Adam Wujek authored
update: include/libwr/sfp_lib.h include/libwr/util.h shmem.c util.c Signed-off-by: Adam Wujek <adam.wujek@cern.ch>
-
Alessandro Rubini authored
Signed-off-by: Alessandro Rubini <rubini@gnudd.com>
-
Adam Wujek authored
update: include/libwr/sfp_lib.h include/libwr/util.h shmem.c util.c Signed-off-by: Adam Wujek <adam.wujek@cern.ch>
-
- 21 Nov, 2016 8 commits
-
-
Adam Wujek authored
On the switch, there is no need for the ppsi to use config file in the /wr/etc/ppsi.conf. Signed-off-by: Adam Wujek <adam.wujek@cern.ch>
-
Alessandro Rubini authored
Signed-off-by: Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
As a side effect, we get a reported "enter initializing" message when wrs has a link-up event (because in that case state-change is performed externally, not by a state that switches to another). Signed-off-by: Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
Commit d2b2c636 introduced a caching of the current state structure. The "current" structure, as long as not null, is considered valid. arch-wrs, just sets ppi->state to initializing on link-up, without clearing the cached pointer, so fsm.c was using the old pointer, resulting in use of closed file descriptors, as no init was performed. This doesn't apply to change from withing the states themselves, as fsm.c manages the state change. As a side effect, now that we check the state numberm there's no need to zero the pointer on state leave. (And while a it another trivial detail...). Signed-off-by: Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
Signed-off-by: Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
Signed-off-by: Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
Signed-off-by: Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
Some arguments are not needed any more. Removed. Signed-off-by: Alessandro Rubini <rubini@gnudd.com>
-
- 04 Nov, 2016 14 commits
-
-
Alessandro Rubini authored
Most arguments of net->send are redundant, as the ppi includes all info. In particular, chtype and "is_pdelay_addr" derive from the message type. And the timestamp is always internal. I chose not to remove message, len and msgtype because the message being sent includes the header (ppi->tx_offset), so there's some calculation to extract them. This may happen in a later commit, if I find that is a size improvement. Bugs fixed as a side effect: - the "if" for "is_pelay" missed PDELAY_RESP_F_UP (now it's in msgtype.c) - wrpc pdelay was always using the e2e mac address This commit decreases the size of all archs by 60 bytes, but increases wrpc by 20 bytes because of the fix above Signed-off-by: Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
Signed-off-by: Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
Most stuff in the header can be factorized. The commit does so. Some fixme's are removed (about correctionField for example) but we know they still apply. Signed-off-by: Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
Signed-off-by: Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
Signed-off-by: Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
This was my fault. The initial time jump was based on "T4 + MPD". This on the assumption that T4 is sharper then time->get(). At least this is true for White Rabbit systems, where time->get() was not even correct when I started the project. As a result, the initial jump for a p2p slave was always wrong, because it referred to an old timestamp. We ended up a few hundreds ms off the master, to the start a long steering. We now add ofm to the current time, and the result is good in both case. WR systems have their own servo anyways, but even a slave to non-wr masters should behave well, because time->set now works. Signed-off-by: Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
The idea that somebody wants to steer time for >1s offsets is perverse. Let's simplify (if any, we may want to jump for <1s offsets that are bigger than a few milliseconds). Signed-off-by: Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
Signed-off-by: Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
Signed-off-by: Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
Signed-off-by: Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
The reshaping for pdelay broke the idea that if the offset is more than one second we don't run the PI at all (to avoid effects of the I part after the jump). This restores the early-exit from the servo when a jump in time happens. Signed-off-by: Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
Also, two functions that were needlessly public are now static. Signed-off-by: Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
This commit assumes that "transportSpefic" in header byte 0 and "reserved" in header byte 1 are always 0. Thus, it removes unneeded bitmasking and while at it uses names for message types. It also removes redundant assignments and adds a few missing ones. The commit simplifies all the "pack" functions; it makes them consistent by setting all header fields in transmit order, and marking unclean spots (i.e. correctionField assignment). Buglets fixed in the process; - correctionField was not cleared in follow_up - pdelay_resp_f_up was using the wrong length name - pdelay_resp_f_up was not setting controlField and logMessageInterval - delay_req was not clearing flags - pdelay_req was not blanking the trailing bytes - pdelay_resp was not setting controlField and logMessageInterval Signed-off-by: Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
Signed-off-by: Alessandro Rubini <rubini@gnudd.com>
-
- 03 Nov, 2016 3 commits
-
-
Adam Wujek authored
This commit is required to uplift a wr-switch kernel version Since the kernel commit 850a545bd net: validate HWTSTAMP ioctl parameters Follows: v3.1-rc9 Precedes: v3.2-rc1 SIOCSHWTSTAMP ioctl check whether field "flags" of struct hwtstamp_config is empty, otherwise ioctl returns -EINVAL Signed-off-by: Adam Wujek <adam.wujek@cern.ch>
-
Adam Wujek authored
Update sfp_lib.h and hal_shmem.h to support diagnostics (DOM) in SFPs. Changes not affecting PPSI code. Signed-off-by: Adam Wujek <adam.wujek@cern.ch>
-
Adam Wujek authored
There were many changes to the ppsi structures in few previous commits. Signed-off-by: Adam Wujek <adam.wujek@cern.ch>
-
- 25 Oct, 2016 7 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
The function has gone big over time, it's better not inline any more. The change saves 230 byte in wrpc builds. Signed-off-by: Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
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
Now this is the behaviour for the choice: arch-bare-* if you select P2P, it's built and selected. Default is E2E_ONLY. arch-sim arch-unix arch-wrs The P2P is built by default configuration, and the mechanism is selected at configuration time. Default is E2E. If you choose E2E_ONLY and configure pdelay, it will ignore the config. (Suboptimal but I'm lazy: do *not* use E2E_ONLY for those archs. arch-wrpc The default is e2e until changed at run time. Signed-off-by: Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
Signed-off-by: Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
Signed-off-by: Alessandro Rubini <rubini@gnudd.com>
-
- 30 Sep, 2016 4 commits
-
-
Adam Wujek authored
Uplift shmem from wr-switch-sw repo. Fix previous uplift of shmem and improve debug printout. Signed-off-by: Adam Wujek <adam.wujek@cern.ch>
-
Adam Wujek authored
Commit based on the commit from wrs-switch-sw described below. userspace/libwr: printout more details when wrs_shm_write is called It might be usefull to know whether caller wanted to lock or unlock the shmem and which shmem. Signed-off-by: Adam Wujek <adam.wujek@cern.ch>
-
Adam Wujek authored
Commit based on the commit from wrs-switch-sw described below. Apply changes to the arch-wrs/wrs-startup.c to follow declaration change of wrs_shm_alloc. userspace/libwr: in shmem, use pointers to structs intead of void pointers In shared memory functions take as parameters pinters to structures instead of void pointers. By this compiler will warn when wrong type of pointer is passed. For example when pointer to the data in shmem is passed instead of pointer to the header. Signed-off-by: Adam Wujek <adam.wujek@cern.ch>
-
Adam Wujek authored
The commit: 15076cb6 arch-wrs: improve locking of shmem didn't fully apply the patch from the wr-switch repo. This commit apply changes to arch-wrs/shmem.c that were missed Signed-off-by: Adam Wujek <adam.wujek@cern.ch>
-
- 20 Sep, 2016 1 commit
-
-
Alessandro Rubini authored
This shrinks p2p builds by 100 bytes, but increases by 100 bytes the wrpc defconfig (the one withouth P2P code). Signed-off-by: Alessandro Rubini <rubini@gnudd.com>
-