Skip to content

Commit

Permalink
Add synce_port_ctrl interface
Browse files Browse the repository at this point in the history
Used by synce_port to create, control and destroy RX/TX threads.
Ports in sync mode can use only TX thread (device in external input
mode) or both RX and TX threads (device in internal input mode).

RX thread is responsible for:
- receiving ESMC frames
- verifying received QL
- storing last received valid QL and time it was received
- determining if QL-failed state occurred or port recovered from
  QL-failed state.

TX thread is responsible for:
- building new TX ESMC if requested
- sending ESMC on timer.

synce_port_ctrl interface allows:
- initialize threads
- obtain last received valid QL
- compare QL's between 2 ports
- check if RX QL has changed
- check if RX QL has Do Not Use QL
- check if RX QL-failed state occurred
- invalidate RX QL's.

Co-developed-by: Anatolii Gerasymenko <[email protected]>
Signed-off-by: Anatolii Gerasymenko <[email protected]>
Co-developed-by: Michal Michalik <[email protected]>
Signed-off-by: Michal Michalik <[email protected]>
Signed-off-by: Arkadiusz Kubalewski <[email protected]>
  • Loading branch information
kubalewski authored and mmichaliINTC committed Oct 31, 2022
1 parent 0e26dba commit 1760167
Show file tree
Hide file tree
Showing 2 changed files with 1,394 additions and 0 deletions.
Loading

0 comments on commit 1760167

Please sign in to comment.