- 27 Nov, 2018 1 commit
-
-
Jean-Claude BAU authored
-
- 21 Nov, 2018 38 commits
-
-
Adam Wujek authored
Fix warning introduced in the commit: Implement one-step clock for HA & WR profiles Signed-off-by: Adam Wujek <adam.wujek@cern.ch>
-
Jean-Claude BAU authored
- Many information were store in a common static structure (to_config). However depending on the PPSI instance configuration these information need to be stored per instance. Mainly it concerns the rand value (which_rand and the counter reset value). Only the timer name stay now in a common arrea.
-
Adam Wujek authored
Signed-off-by: Adam Wujek <adam.wujek@cern.ch>
-
Jean-Claude BAU authored
According to the clause 9.3.2.3, the qualification is now not evaluated for the ErBest foreign master. On ANN_RECEIPT timout, the ErBest is removed from the list of foreign master to avoid to jump immediately to SLAVE state
-
Jean-Claude BAU authored
- Add new config parameters (l1SyncRxCoherencyIsRequired,...) - Add new profile: CUSTOM. It will be mostly used for testing - Fix issue on state name: "pre_master" instead of "pre-master"
-
Jean-Claude BAU authored
- Add new config parameters (l1SyncRxCoherencyIsRequired,...) - Add new profile: CUSTOM. It will be mostly used for testing - Fix issue on state name: "pre_master" instead of "pre-master"
-
Jean-Claude BAU authored
According to the clause 9.3.2.3, the quualification is now not evaluated for the ErBest foreign master.
-
Jean-Claude BAU authored
-
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 authored
- Fix issues introduced in last commit "Timeout management correction" - Code optimization - Protect FAULT timeout in case of timeout overload. It can append because the logMinDelayResponse can be changed on real-time by the received DELAY_RESP message
-
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 authored
Change the default value of "alarmDetected" to force execution of fsm the first time.
-
Jean-Claude BAU authored
When received frames are displayed (diagnostic mode), PPSI was staying forever in a loop due to unexpected TLV received in the frame.
-
Jean-Claude BAU authored
-
Jean-Claude BAU authored
This was due to the introduction of system timers in the main loop of the switch. In minirpc the pool() system call exited sometime when the timer fired. Some other problems have been found during the debugging process. Some of them have been already adressed : - In minirpc, loop on pool() system call if the call is interrupted. - Wrong check in function wrs_locking_poll(). Was working by chance. - L12_state_machine() was calling to many often the state handle. It was increasing the number of hardware calls for nothing. TODO: The returned values for the function wrs_locking_poll(), halexp_lock_cmd(), and hal_port_check_lock() should be reviewed to be more consistent.
-
Adam Wujek authored
based on jcb's commit from wrs Signed-off-by: Adam Wujek <adam.wujek@cern.ch>
-
Adam Wujek authored
Signed-off-by: Adam Wujek <adam.wujek@cern.ch>
-
Jean-Claude BAU authored
- This function checks now the minimum and maximum values which can be encoded into a RelativeDifference type. - Bux fix for the calculation of min/max value conversion (special cases)
-
Jean-Claude BAU authored
- The origin timestamp sent in SYNC and DELAY_REQ messages is corrected with the egressTimestampLatency.
-
Jean-Claude BAU authored
- The timeout expressed in ms is stored in an integer value. A Log interval may have a value in the range -128,127. The timeout cannot covers all this range. A protection as been added to avoid wrong timeout calculation which might generate a crash of PPSI. - A new function is also added pp_timeout_log_to_ms() to verify the log Interval and calculate the timeout. - Optimize the execution of pp_timeout_set()
-
Jean-Claude BAU authored
- We do not wait the L1SYNC state UP before to go from UNCALIBRATED to SLAVE state. - When the link goes down, we force the next state to DISABLE
-
Jean-Claude BAU authored
- Set the minimum and maximum values of some parameters - Fix format issues in pp_printf and sscanf
-
Jean-Claude BAU authored
- Force to stay on UNCALIBRATED state (was going to slave state) - Force to stay on PRE-MASTER state (was going to master state)
-
Adam Wujek authored
Signed-off-by: Adam Wujek <adam.wujek@cern.ch>
-
Jean-Claude BAU authored
- Reset local remaining time-out when 'select' exits due to a signal
-
Jean-Claude BAU authored
- Change calculation of delayAsymmetry - Set offsetFromMaster (generic servo) - Set meanDelay (generic servo)
-
Jean-Claude BAU authored
-
Jean-Claude BAU authored
- The %f format is not supported in pp_printf. So we will not display the float value in error messages. - Change DBL_MIN by -DBL_MAX to have the minimum value of a double
-
Jean-Claude BAU authored
- Optimize the scheduler (main_loop) using system timer. It makes the calculation of the timeout more precise taking into account execution time of some part of the code - Optimize the L1SYNC sent messages too take into account the time spent to send an frame
-
Jean-Claude BAU authored
- Move initialization of configurable parameters in L1SYNC init hook - Set the L1SYNC state to DISABLE in the startup otherwise the state is not set if the port is not connected - Remove time printing in diag messages - restrict call to servo only when the state is UP - Adjust properly the delay returned by each l1sync state functions - Set REQUEST timeout value dependent of the delay mechanism (E2E/P2P) - Bug fix: PP_P2P_MECH used instead of P2P - Optimize the REQUEST timeout to generate asap a DelayReq message after the first SYNC message received
-
Jean-Claude BAU authored
The default configuration was not copied in the right place in PPSI instance.
-
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 readable. - 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.
-
Jean-Claude BAU authored
- This structure is changed in order to be able to use SIGNALING messages with non-fowardable MAC address. This have an impact on many places as we have to distinguish two kind of signaling messages
-
Jean-Claude BAU authored
- New parameters added - Parameter check with min/max values - Updated fied mask suppressed: At startup the conf structure in each ppsi instance must be initialized with the default values.
-
Jean-Claude BAU authored
This arguement was used to set all ports to slave role. As it may be on conflict with the ppsi configuration, this parameter has been suppressed.
-
Jean-Claude BAU authored
Missing file commit.
-
Jean-Claude BAU authored
For the calculation of the delay MS, we use now asymmetryCorrectionPortDS.scaledDelayCoefficient (fpa:2^62) instead of fiber_fix_alpha.
-
Adam Wujek authored
Signed-off-by: Adam Wujek <adam.wujek@cern.ch>
-
- 20 Nov, 2018 1 commit
-
-
Jean-Claude BAU authored
This will be needed when switchover will be implemented. Then 2 servos will be needed (an active amd passive one). Also the servo state has been moved in the common servo DS.
-