- 21 Nov, 2018 26 commits
-
-
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 14 commits
-
-
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.
-
Jean-Claude BAU authored
- We can declare now a list of keyword for the parameter name : it make the declaration of keywords more compact in conf.c and use less memory (eg. "extension profile" ) - We can declare also a list of keywords for the parameter value (eg. "true 1 on" = 1) - Add the possibility to mark parameters set in the config file. It is very important to know in some cases in order to apply the default value or not. - Decode other parameter types: boolean, double
-
Jean-Claude BAU authored
This happens whith BMCA time-out because it is initialized to 0. Then the check of the time-out returns always 0. BMCA is then never called.
-
Jean-Claude BAU authored
This implementation works on a WR Switch but does not yet integrate all required functionalities. List of current modifications : - Implementation of the L1SYNC protocol - Modifications of the standard protocol: new hook, TS calculation - Change WRS to integrate HA - HAL adaptations - ...
-
Jean-Claude BAU authored
standard IEEE1588-2018 We bring here a lot of changes to : - make the implementation more complaiant with the standard IEEE1588-2018. We introduce new structures for the time (TimeInterval, Relative difference) Named used in structures are aligned to the standard, ... It is just a first step. More work is needed - be able to use more than one protocol extension at the same time (configurations, structures, ...) - add the concept of profile - increase diagnostics by displaying also standard PTP servo informations
-
Jean-Claude BAU authored
independant of a pp_instance. Also add wrh_servo_head for wr_mon.
-
Jean-Claude BAU authored
-
Jean-Claude BAU authored
extensions
-
Adam Wujek authored
Signed-off-by: Adam Wujek <adam.wujek@cern.ch>
-
Jean-Claude BAU authored
-
Jean-Claude BAU authored
-
Jean-Claude BAU authored
calibration
-
Jean-Claude BAU authored
-
Jean-Claude BAU authored
-