1. 18 Jun, 2015 4 commits
    • Maciej Lipinski's avatar
      bmc: bugfix, calculate compres before using · 86fdf30c
      Maciej Lipinski authored
      Port configured to PPSI_ROLE_MASTER must do m1() update of data set
      only if it is a port of a GM. We need the dataSet comparision to
      know this (thus we calculate the compres value) even on the ports
      forced to be masters by default
      86fdf30c
    • Alessandro Rubini's avatar
      protocols: handle PP_SEND_NO_STAMP specially · 7c62f416
      Alessandro Rubini authored
      This is the result of an audit of all send functions. Most are not
      affected, because they send on the "general" channel. But when event
      messages are sent, an error of SEND_NO_STAMP must not be fatal.
      In WR, for example, after a sync the stamping engine reports invalid
      stamps for a second.
      
      I chose not to change the return type of the sending function and have
      the compiler help me, because my mates are working on peer-delay and I'd
      better not make the merge more difficult for us.
      
      Unfortunately, my wrs is still not syncing with this patch, as it remains
      stuck in SYNC_NSEC (in the state machine within the WR servo). See
      next commit....
      Signed-off-by: Alessandro Rubini's avatarAlessandro Rubini <rubini@gnudd.com>
      7c62f416
    • Alessandro Rubini's avatar
      send functions: return -1 on error and 1 on stamping error (stamp invalid) · 9e78f4ac
      Alessandro Rubini authored
      This is the first step to fix a problem introduced by commit 79ffd673
      (a fix to release 4.1.2 forward ported to master).
      
      When we get a bad timestamp in sending sync, we should not return "error"
      but a special value for "no timestamp". Otherwise the caller goes to
      "faulty" state and can't sync any more (this situation loops over).
      
      Also, check for timestamp errors only for event message, or we break
      out of the messaging loop during wr synchronization (when we get bad
      timestamps for frames whose timestamp we don't care about).
      Signed-off-by: Alessandro Rubini's avatarAlessandro Rubini <rubini@gnudd.com>
      9e78f4ac
    • Alessandro Rubini's avatar
      Makefile: enable 64-bit pp_printf · 4c16bad8
      Alessandro Rubini authored
      Signed-off-by: Alessandro Rubini's avatarAlessandro Rubini <rubini@gnudd.com>
      4c16bad8
  2. 04 Jun, 2015 1 commit
  3. 20 Apr, 2015 5 commits
  4. 19 Mar, 2015 1 commit
    • Alessandro Rubini's avatar
      white-rabbit: change the wr-servo string being reported · 0250bb3b
      Alessandro Rubini authored
      When the servo is tracking, it oscillates between two states:
      track_phase and wait_sync_idle.  Users should better not see
      the "wait_sync_idle", becuase it look problematic but it is not
      (earlier, the state was entered in the same way but not shown).
      
      We are going to change the thing, and speed-up the servo as a side
      effect, but meanwhile we'd better do this so ppsi's master can be
      picked as the wrpc-sw submodule
      
      Please note that state reported as number and string via SNMP may be
      inconsistent.
      Signed-off-by: Alessandro Rubini's avatarAlessandro Rubini <rubini@gnudd.com>
      0250bb3b
  5. 13 Mar, 2015 4 commits
  6. 26 Feb, 2015 9 commits
  7. 11 Feb, 2015 4 commits
  8. 05 Feb, 2015 1 commit
  9. 16 Jan, 2015 5 commits
  10. 09 Jan, 2015 1 commit
  11. 08 Jan, 2015 1 commit
    • Alessandro Rubini's avatar
      time-wrs: fix for a mishap when WR time starts at 0. · 4dbc6b0b
      Alessandro Rubini authored
      System time is used for log messages and nothing critical, so we'd
      better have it different from WR time, when WR time is clearly wrong.
      This commit avoids setting Unix time from WR time when WR time is
      clearly wrong (i.e. earlier than today).
      
      This, among other things, fixes a "fatal error" startup failure when
      two free-running WRS devices are turned one at the same time
      (noted by Adam Wujek).
      
      This is because the master was counting from zero and the slave,
      was setting system time accordingly; but the slave's boot procedure
      already used wr_date to set the utc/tai offset, and system time
      as a result  was being set to a negative value -- tai's being small,
      "tai - 35" was negative.
      Signed-off-by: Alessandro Rubini's avatarAlessandro Rubini <rubini@gnudd.com>
      4dbc6b0b
  12. 03 Jan, 2015 1 commit
  13. 18 Dec, 2014 1 commit
  14. 05 Dec, 2014 2 commits