1. 25 Mar, 2020 1 commit
  2. 06 Mar, 2020 1 commit
  3. 20 Feb, 2020 1 commit
    • Jean-Claude BAU's avatar
      Fix issue: up/down/up interface transition · 6239ca56
      Jean-Claude BAU authored
      When a transition of a interface form up->down->up occured, the Slave port was restarted sometimes with the extension OFF.
      It has been fixed by re-enabling the extension when a transition state from SLAVE to UNCALIBRATED is detected.
  4. 03 Feb, 2020 3 commits
    • Jean-Claude BAU's avatar
      WR extension: Change how a new parent is detected · 39244edb
      Jean-Claude BAU authored
      The detection of a new parent has been moved in a call back of the S1
      treatment. The previous implementation had some side effect due to the
      fact that the detection was coming too late in some cases (pb with
      erbest calculation)
      The doRestart called by the servo is now extension specific. It help to
      make a more cleaner restart.
    • Jean-Claude BAU's avatar
      Improve WR handshake in case of failure · 2d55a960
      Jean-Claude BAU authored
    • Jean-Claude BAU's avatar
      WR handshake improvements · d4930dda
      Jean-Claude BAU authored
      - In case of handshake failure due to the reception of an unexpected
      message, execute the same procedure executed in case of time-out. The
      behavior will be more coherent.
      - better diagnostics
  5. 19 Dec, 2019 1 commit
  6. 13 Dec, 2019 1 commit
  7. 04 Nov, 2019 1 commit
  8. 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
  9. 06 Jun, 2019 1 commit
  10. 05 Jun, 2019 1 commit
  11. 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).
  12. 28 May, 2019 1 commit
  13. 27 May, 2019 1 commit
  14. 24 May, 2019 2 commits
  15. 14 May, 2019 1 commit
  16. 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
  17. 07 May, 2019 1 commit
  18. 30 Apr, 2019 1 commit
  19. 09 Apr, 2019 2 commits
    • baujc's avatar
      Review of WR protocol implementation (2) · f7205dab
      baujc authored
      - Has Hal is no longer used for ingress/egress latencies, we must then
      take them from the configuration file
      - Definition used by the common servo (WR & HA)
      - Implementation of the IDLE state
      See previous commit 'Review of WR protocol implementation'
    • 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.
  20. 29 Mar, 2019 1 commit
  21. 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.
  22. 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
  23. 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
  24. 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()
  25. 25 Jan, 2019 1 commit
  26. 24 Jan, 2019 4 commits
  27. 03 Dec, 2018 1 commit
  28. 27 Nov, 2018 2 commits
  29. 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.
  30. 20 Nov, 2018 1 commit