- 04 Sep, 2019 1 commit
-
-
Tomasz Wlostowski authored
-
- 29 Aug, 2019 9 commits
-
-
Adam Wujek authored
Signed-off-by: Adam Wujek <adam.wujek@cern.ch>
-
Tomasz Wlostowski authored
userspace: add optional Makefile.specific included in the main makefiles to provide user-specific build configuration
-
Maciej Lipinski authored
This is copy+paste+cleanup/fixes of what Tom developed in the branch tom-v6-determinism-5.0.1.
-
Maciej Lipinski authored
-
Maciej Lipinski authored
[HAL] remove HAL_PORT_RX_SETUP_STATE_CALIB_NO_LPDC from hal_port_fsm_rx and move bitslide measurement Rational: when LPDC is done, we need to wait for link_up (the early_link_up is already set). There can be potentially time when we are in the HAL_PORT_RX_SETUP_STATE_DONE done state and the early_link_up=1 while link_up=0. This forces a bit different behavior for the LPDC and non-LPDC behavior. The new approarch: - if no LPDC, go directly to HAL_PORT_RX_SETUP_STATE_DONE and wait there for link_up - if LPDC, do the all the necessary stuff and then wait for link_up in HAL_PORT_RX_SETUP_STATE_DONE The bitslide measurement could be done only for non-LPDC, yet there is no harm in reading the bitslide register in all cases, it is hardcoded to zero when LPDC is supported. Doing it outside the hal_port_fsm_rx is more similar to what was in the original HAL, furthermore, bitslide measurement was there before LPDC, so it can be considered somehow independent
-
Maciej Lipinski authored
As it is now, once the port with index=0 is calibrated, the _pll_state is never updated. Also, since the states are called recursively in case new state is entered, the _pll_state is not updated unless this is called on port with index=0. Trying to call it regardless of the port before implementing complicated mechanism to manage updates once per all ports under calibration.
-
Maciej Lipinski authored
- add timeout for tx calibration to overcome bugs in reading info from SoftPLL - change initial calibration tolerance - come changes in prints
-
Maciej Lipinski authored
-
Maciej Lipinski authored
- changed update of _pll_state to be done when the FSM is called on the first LPCD-supported port, not assuming its index is 0 - added disabling of phase tracking that was missing
-
- 28 Aug, 2019 2 commits
-
-
Maciej Lipinski authored
- use the global LPDC structure to know whether the file is read/synched (instead of the hack that was used so far) - rename the variables/function name to be more self-explanatory
-
Maciej Lipinski authored
- for tx setup, we need to do some stuff for only one port and we need to do other stuff when all ports are calibrated, yet we need to know this global information when executing on a port. - Added structure to the hal_ports_t that is pointed to from each port that supports LPDC. This structure is then updated and checked. - use this stucture to do the following: * execute update of _pll_state only when hal_port_fsm_tx is executed on the first port that supports LPDC (it does not need to be port with index 0) * execute writing configuration file when all LPDC-supporting port has finished the tx_setup
-
- 27 Aug, 2019 5 commits
-
-
Maciej Lipinski authored
If already exists, the file needs to be read once for all ports and the structures of the ports need to be updated. this is better done at the very begining for all ports rather then making a hack and executing it when port_index=0. Thus, move the thing to the initial global init.
-
Maciej Lipinski authored
-
Maciej Lipinski authored
-
Maciej Lipinski authored
These defines are used only in HAL
-
Maciej Lipinski authored
- regardless whether LPDC is supported or not, some calibration flags need to be set, more over some of them have tx in name, so setting them in hal_port_rx_setup_state_fsm() is messy. So.. - set any LPDC-irrelevant flags in the port_fsm when link_up - make sure the value of bitslide is cleared when link_down - measure bitslide only in NO_LPDC state, otherwise leave it zero
-
- 26 Aug, 2019 7 commits
-
-
Maciej Lipinski authored
-
Maciej Lipinski authored
needed for wr_mon to display things correctly
-
Jean-Claude BAU authored
This is a implementation of the Low Phase Drift Calibration based on Tom's work (branch tom-v6-determinism-5.0.1) This commit has not been tested. It just compiles.
-
Jean-Claude BAU authored
NOTE: work ported from Tom's commits on Low Phase Drift Calibration
-
Maciej Lipinski authored
the update includes - some new registers that were added long time ago to HDL but the headers in SW were not updated - Low Phase Drift configuration in MDIO/PCS and EP regs
-
Tomasz Wlostowski authored
NOTE: consider merging with dot-config.c
-
Maciej Lipinski authored
-
- 23 Aug, 2019 2 commits
-
-
Maciej Lipinski authored
Despite corrupted header, we still want to use this SFP because it can actually be functional. We have copper SFPs with such problem that are fully functional (and did work with the previous version of HAL, by chance). So, we now detect insertion of such SFP (with unreadable header), yet we make sure that such SFP is declared unrecognized (zero header data) such that SNMP complains.
-
Maciej Lipinski authored
-
- 22 Aug, 2019 2 commits
-
-
Maciej Lipinski authored
Two issues: 1) the update function of sync led had a bug (wrong structure updated) 2) the leds were not reseted when on link_down Also, in the "old HAL", the wrmode LED was set to SFP_LED_WRMODE_OFF, so I updated the code accordingly.
-
Maciej Lipinski authored
- phase value was printed too often, should be done only if debugging - printf() should be avoided, changed to proper macros
-
- 15 Aug, 2019 2 commits
-
-
Jean-Claude BAU authored
-
Jean-Claude BAU authored
-
- 14 Aug, 2019 1 commit
-
-
Jean-Claude BAU authored
- Change method names - Change variable location - Change includes - ...
-
- 13 Aug, 2019 1 commit
-
-
Jean-Claude BAU authored
New implementation of HAL using sub state machines. The objective is to facilitate the integration of the new feature "Low Phase Drift Calibration" which needs two new state machines. The HAL state machine is available by opening the hal.html file
-
- 02 Aug, 2019 1 commit
-
-
Jean-Claude BAU authored
Some scripts write to files to pass information to SNMP. To avoid read access failure from SNMP, the previous file is copied to a .old file then the new one is created.
-
- 12 Jul, 2019 2 commits
-
-
Maciej Lipinski authored
If a static entry is in the HASH table, this is for a reason. In the very unlikely event, when the same MAC is seen on another port, the static entry should not be overriden by the learned (dynamic). This was not the case. This commit prevents static MAC entries from being overriden by dynamic entries.
-
Maciej Lipinski authored
Shmem is locked for the entire execution of the rtu_fd_init() function. Yet, this function call few clean_*() functions that attempt to lock shmem before cleaning... this caused shmem errors. It was fixed by specifying input parameter to clean_*() functions. The parameter specifies whether locking is required or not.
-
- 04 Jul, 2019 1 commit
-
-
Grzegorz Daniluk authored
-
- 03 Jul, 2019 3 commits
-
-
Jean-Claude BAU authored
The update is related to the new feature introduced in Kconfig for the logging of messages (default_syslog)
-
Jean-Claude BAU authored
The system clock monitor measures the offset between the local time and the NTP time. If this offset exceed a given threshold an alarm will be raised .
-
Jean-Claude BAU authored
KConfig has been improved adding new extra constraints when the timing mode is changed. It has an impact on port configuration (externalPortConfiguration & default bmc mode) and also on the overwritten clock class.
-
- 26 Jun, 2019 1 commit
-
-
Maciej Lipinski authored
Using date was not a good ideal (i.e. format "file_name-date") because the date on the switch can change due to PTP synchronization. Now, files are indexed with number
-