1. 19 Dec, 2019 1 commit
  2. 13 Dec, 2019 1 commit
  3. 04 Nov, 2019 1 commit
  4. 14 Aug, 2019 1 commit
    • Jean-Claude BAU's avatar
      Fix PPS missing issue · ec89448c
      Jean-Claude BAU authored
      After around 36 hours, one PPS was missing. This was due to an issue in
      the WR extension. When the sequence id in the announce message was
      moving from 65535 to 0, the WR handshake was restarted. As a result of
      that, the side effects would be :
      - a missing PPS
      - an unlock of the PLL
  5. 06 Jun, 2019 1 commit
  6. 04 Jun, 2019 1 commit
    • Jean-Claude BAU's avatar
      Improve behavior when link up->down->up not detected. · 420da467
      Jean-Claude BAU authored
      When the link state changes rapidly, it can't be detected by PPSi. This
      is the case with the BTrain configuration. So we must detect that the
      peer has changed and restart the servo for a slave and use the right
      protocol (extension/ptp).
  7. 24 May, 2019 1 commit
  8. 14 May, 2019 1 commit
  9. 09 May, 2019 1 commit
    • Jean-Claude BAU's avatar
      WR/PTP protocol detection + WR protocol improvement · 59838a0d
      Jean-Claude BAU authored
      - Simplify how an instance switch from WR to PTP protocol and vice-versa
      - Change the WR state machine: When an unexpected WR signaling message
      is received, the state is forced to IDLE. Solve handshake issue when
      instance is waiting for an answer with a long time-out and in the other
      side the PPSi process is restarted. In this use case the handshake will
  10. 09 Apr, 2019 1 commit
    • baujc's avatar
      Review of WR protocol implementation · 0b031b22
      baujc authored
      - It has now its own state table
      - The servo is shared with L1Sync extension. It means that servo
      calculation is now following the new standard IEEE 1588
      - It stay compatible with older versions of the switch. The correction
      field value in the exchange messages are still not compliant with the
      standard to keep the compatibility.
  11. 29 Mar, 2019 1 commit
  12. 05 Mar, 2019 1 commit
    • baujc's avatar
      Suppress timer PP_TO_FAULT · 765c661b
      baujc authored
      After reviewing the code with Maciej, this time-out does not seem to be
      used in a very coherent way. We decided then to remove it.
  13. 01 Mar, 2019 1 commit
    • baujc's avatar
      Code optimization · 25692a35
      baujc authored
      - Make externalPortConfiguration compliant with the PTP specifications
      - Optimize code for externalPortConfiguration
      - Optimize code for slaveOnly
      - Replace "CONFIG_HAS_P2P && ppi->delayMechanism==P2P" by an inline
  14. 25 Feb, 2019 1 commit
    • baujc's avatar
      Big update 2 · 515af578
      baujc authored
      . Better integrate of code optimization with PPSi Kconfig
      . PPSi Kconfig changes to simplify the code in PPSi and avoid #ifdef ..
      . Improve code optimization
      . Move some declaration in ppsi.h in other files to ligthen ppsi.h
      . Improvement of timers: global or instance dependent, dyn. allocation,
      renaming for better diagnostics, disabling allowed, ...
      . New behaviour for the PPS output generation (configurable,...)
      . Move control of the timing mode from HAL to PPSi
      . Optimization of code when a Protocol extension is not available
      . BMCA: Calculate the ebest,... only one time and then trigger all
      instances to execute the bmca state descision
      . Fix bug in the calculation of the clockIdentity to bring it into
      compliance with PTP spec 2008 document
      . Fix a bug related to Announce message received in SLAVE/UNCALIB
      . WR ext: use dynamic timer and adapt to new PPS generation
      . HA ext: Fix bug in fault injection mechanism
  15. 29 Jan, 2019 1 commit
    • baujc's avatar
      Big update ... · c81db09e
      baujc authored
      - New L1Sync and PTP servo calculation (delayAsym,...)
      - Make function calls more uniforms between extensions
      - refactoring
      - Add a new state machine to enable/disable an extension and provide
      only PTP support: New timer, new hooks, ...
      - Fix bug in time format conversion
      - Code removed when an extension is not required (#ifdef XXX )
      - Align the PTP and L1Sync servo calculation (shared fct, same
      - Force only one servo running at a given time for a given instance
      - New servo reset hook : called by main loop
      - Add function to converte a time into a string
      - Force to stay in FAULTY state during 60s
      - Optimise function wrs_enable_timing_output()
  16. 25 Jan, 2019 1 commit
  17. 27 Nov, 2018 1 commit
  18. 21 Nov, 2018 3 commits
    • Jean-Claude BAU's avatar
      Implement one-step clock for HA & WR profiles · cd3ee739
      Jean-Claude BAU authored
      The one-step clock didn't work for HA & WR profiles. This new
      implementation is based on a new hook "handle_sync" called in case of
      one-step clock mode.
    • Jean-Claude BAU's avatar
      Fix issues with standart ptp (e2e & p2p) · ada5fb06
      Jean-Claude BAU authored
      In the ptp servo the adjustment of the time was too slow. When the
      difference of the time with the master was less than 1 second, the
      adjustment was done only with the frequency. In case if the difference
      is 0.999s, it can take a very long time to adjust the time.
      Changes made :
      - Adjust with frequency only when time difference is below 20ms
      - Check the timestamp validity before each calculation
      - Create a new function to check the timestamps and use it on all
      servos. This improve significantly the size of the code.
      - Add verification in order not to set an invalid UNIX time
    • Jean-Claude BAU's avatar
      High Accuracy - Second implementation · a45008ca
      Jean-Claude BAU authored
      This implementation does not include yet the possibility to declare 2
      exclusive instances on a same port (WR & HA)
      - Some structures are renamed with the suffix _t to make it more
      - Some variables are renamed  to be more clear
      - Implementation of masterOnly, slaveOnly and externalPortConfiguration
      - All extension specific includes (XX-api.h) is now automatically
      included in ppsi.h and do not need to be included in other files.
  19. 20 Nov, 2018 4 commits
  20. 02 Aug, 2018 1 commit
  21. 11 Aug, 2017 1 commit
    • Sven Meier's avatar
      msg: reset ext_specific flags in the announce to zero when either no TLV is… · 8249256f
      Sven Meier authored
      msg: reset ext_specific flags in the announce to zero when either no TLV is appended or the TLV is not a WR TLV
      The flags was not set to any value when no TLV was appended or a wrong TLV was appended, in that
      case the RAM content was wrongly propagated as WR flags which may caused that a node is going into
      a wrong state.
  22. 03 Aug, 2017 1 commit
  23. 28 Jul, 2017 1 commit
  24. 26 Jul, 2017 1 commit
  25. 21 Jul, 2017 2 commits
  26. 20 Jul, 2017 2 commits
    • Sven Meier's avatar
      bmc & wr locking: added leap second propagation and added reset of locking · bc586acd
      Sven Meier authored
      Leap seconds are now also fetched from the system in case we are a grandmaster
      A reset of the locking procedure was added so a locked switch can get master again
    • Sven Meier's avatar
      bmc & cleanup: fixes after the audit portings · 8633ced3
      Sven Meier authored
      The audit portings changed the timely behaviour of the ppsi which cause wrong behaviours,
      the timeout scheme was changed to only reset timeouts where needed and in all non PTP
      states. UTC offset is now fetched from the system where supported, link up/down is now
      considered in the BMC, also some state changes where cleaned up to be out of the BMC, e.g.
      state changes based on timeouts between PreMaster and Master or between Uncalibrated and Slave.
  27. 12 Jul, 2017 5 commits
  28. 05 Apr, 2017 2 commits