1. 13 Sep, 2019 1 commit
    • Jean-Claude BAU's avatar
      Add new timer facility · ca58b912
      Jean-Claude BAU authored
      New facility added to control a timer used to schedule the different
      action in HAL. This facility is used to accelerate the processing of the
      FSM during the TX and RX calibrations.
      ca58b912
  2. 12 Sep, 2019 4 commits
  3. 11 Sep, 2019 3 commits
  4. 10 Sep, 2019 2 commits
    • Jean-Claude BAU's avatar
      Missing returned value · 0a50b967
      Jean-Claude BAU authored
      _hal_port_tx_setup_state_wait_other_ports() was not returning a value.
      0a50b967
    • Maciej Lipinski's avatar
      [HAL] fix bug when writing tx_calibration file. · 7e2d6385
      Maciej Lipinski authored
      The writing must be done by the first LPDC-supporting port after all
      the LPDC-supporting ports have been calibrated. Thus, this must be
      done in the new state HAL_PORT_TX_SETUP_STATE_WAIT_OTHER_PORTS and
      only the first port. Otherwise, we have problem when looping through
      all the supporting ports. In particular, the writing must be done for
      all LPDC-supporting ports, if we start looping on port N (by ++pointer),
      then we will not cover all ports, unless we loop up (++) and (--)
      down.
      7e2d6385
  5. 09 Sep, 2019 4 commits
  6. 06 Sep, 2019 2 commits
    • Maciej Lipinski's avatar
      [HAL] add timer in rx_setup FSM to wait for early_link_up to be cleared. · 1d9f2386
      Maciej Lipinski authored
      After unplugging fiber, the early_link_up flag is cleared a bit later
      than the detection of link_down happens. This resulted in the tx_setup
      state machine trying to calibrate unplugged link. The things worked
      because the FSM would hang in wait_lock state and then timeout. Yet,
      this did not seem the best solution. So, I added timeout to wait
      for the early_link_up bit to be cleared
      1d9f2386
    • Maciej Lipinski's avatar
      [HAL] bugfix: prevent reseting TIMING_MODE if non-slave port is unplugged · 072d01aa
      Maciej Lipinski authored
      If there were more ports connected than just slave port, unplugging any
      of the ports would result (on BC) the timing_mode to be changed to
      FREE_MASTER. As a consquence, the port in slave state was reseted and
      would re-establishs sync. It was fixed by checking whether the unplugged
      port was slave (i.e. was locked)
      072d01aa
  7. 04 Sep, 2019 4 commits
  8. 29 Aug, 2019 9 commits
  9. 28 Aug, 2019 2 commits
    • Maciej Lipinski's avatar
      [HAL] updated how tx calibration file is written · abc3fa30
      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
      abc3fa30
    • Maciej Lipinski's avatar
      [HAL] Add global (to all ports) structure for LPDC and use it · 452289c4
      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
      452289c4
  10. 27 Aug, 2019 5 commits
  11. 26 Aug, 2019 4 commits