1man(8)                         synce4l man page                         man(8)
2
3
4

NAME

6       synce4l - Synchronous Ethernet (SyncE) controller application
7
8

SYNOPSIS

10       synce4l -f [file] [-l <num>] [-m] [-q] [-v] [-h]
11
12

DESCRIPTION

14       synce4l is an implementation of the Synchronous Ethernet (SyncE) proto‐
15       col according to ITU-T Rec. G.8264. The design goal is to provide logic
16       to  supported hardware by processing Ethernet Synchronization Messaging
17       Channel (ESMC) and control Ethernet Equipment Clock  (EEC)  on  Network
18       Card Interface (NIC).
19
20       Application can operate in two mutually exclusive modes: line or exter‐
21       nal.
22
23
24       External input mode
25              If `synce4l` is configured to run in external  input  mode  then
26              EEC  needs  to  have external 1PPS source attached (GPS or other
27              generator).  In this scenario `synce4l` always broadcasts  clock
28              quality  level (QL) defined in configuration file. Additionally,
29              for external input mode incoming SyncE frames do not participate
30              in best source selection algorithm for EEC.
31
32
33       Line input mode
34              In  line input mode incoming SyncE frames are processed and best
35              clock source is extracted from the link having the best  quality
36              level.   `synce4l`  configures  such  "best  quality"  port as a
37              source to recover clock for EEC. The recovered QL is broadcasted
38              to  all  other interfaces then.  An external clock source cannot
39              be used in this mode.
40
41

OPTIONS

43       -f [file]
44              read configuration from 'file'  (config  file  takes  precedence
45              over command line arguments)
46
47       -l [num]
48              set  the  logging level to 'num' (0: least detailed, 7: most de‐
49              tailed)
50
51       -m     print messages to stdout
52
53       -q     do not print messages to the syslog
54
55       -v     print synce4l version and exit
56
57       -h     print this message and exit
58
59

CONFIGURATION FILE

61       Configuration file contains three sections:
62
63       -      global,
64
65       -      device,
66
67       -      port.
68
69
70   Global section
71       This section starts with `[global]` keyword. It sets  the  logging  op‐
72       tions.
73              Available options:
74
75              logging_level
76                     Minimum log level required to appear in a log.
77
78                     Defaults to 6, valid values are 0 - 7
79
80              message_tag
81                     Tag reported in a log.
82
83              use_syslog
84                     Set to 1 if `syslog` should be used.
85
86                     Defaults to 1, valid values are 0 or 1
87
88              verbose
89                     Set to 1 to log extra information.
90
91                     Defaults to 0, valid values are 0 or 1
92
93
94   Device section
95       This  section  specifies the configuration of a one logical device e.g.
96       'synce1'.  The name is defined by the user. The name has no impact  for
97       any  functionality  except  traces.  The name must be enclosed in extra
98       angle bracket when defining new device section  e.g.  [<synce1>].   All
99       ports defined by port sections after the device section will create one
100       SyncE device (until next device section).
101              Available options:
102
103              input_mode
104                     Set to "line" to enable line input mode,  set  "external"
105                     for external input mode.
106
107                     Defaults to "line", valid values are "line" or "external"
108
109              external_input_QL
110                     Quality Level (QL) for "external input" mode.
111
112                     Valid values specified in ITU-T Recommendations
113
114              external_input_ext_QL
115                     Extended Quality Level for "external input" mode.
116
117                     Valid values specified in ITU-T Recommendations
118
119              extended_tlv
120                     Set to 1 to enable extended QL.
121
122                     Defaults to 0, valid values are 0 or 1
123
124              network_option
125                     Network  option according to T-REC-G.8264. All devices in
126                     SyncE domain should have the same option configured.
127
128                     Defaults to 1, valid values are 1 or 2
129
130              recover_time
131                     Seconds indicating the minimum time to recover  from  the
132                     QL-failed state on the port.
133
134                     Defaults to 60, valid values are 10 - 720
135
136              get_eec_state_cmd
137                     Defines a shell command which will be executed by synce4l
138                     to acquire current state of a SyncE EEC  on  the  device.
139                     Separated  command  must be provided by the user for each
140                     device confgured for frequency synchronization. The  com‐
141                     mand  shall  output  current  state of EEC to stdout, ex‐
142                     pected values are defined (also by the user) with follow‐
143                     ing      configuration     items:     eec_holdover_value,
144                     eec_locked_ho_value, eec_locked_value, eec_freerun_value,
145                     eec_invalid_value.
146
147              eec_holdover_value
148                     Defines a string value expected on stdout stream when EEC
149                     is in HOLDOVER state.
150
151              eec_locked_ho_value
152                     Defines a string value expected on stdout stream when EEC
153                     is in LOCKED HOLDOVER state.
154
155              eec_locked_value
156                     Defines a string value expected on stdout stream when EEC
157                     is in LOCKED state.
158
159              eec_freerun_value
160                     Defines a string value expected on stdout stream when EEC
161                     is in FREERUN state.
162
163              eec_invalid_value
164                     Defines a string value expected on stdout stream when EEC
165                     is in INVALID state.
166
167   Port section
168       Any other section not starting with `<` (e.g. [eth0]) is the port  sec‐
169       tion.   Multiple  port  sections are allowed. Each port participates in
170       SyncE communication.
171              Available options:
172
173              tx_heartbeat_msec
174                     Interval between consecutive  SyncE  frame  transmissions
175                     (1000ms recommended).
176
177                     Defaults to 1000, valid values are 100 - 3000
178
179              rx_heartbeat_msec
180                     Interval  between  consecutive  SyncE socket polls (frame
181                     receive).
182
183                     Defaults to 50, valid values are 10 - 500
184
185              recover_clock_enable_cmd
186                     A shell command which enables PHY port  pointed  by  this
187                     Port  section  as a source of frequency for the SyncE EEC
188                     on this device (required only in "internal input" mode).
189
190              recover_clock_disable_cmd
191                     A shell command which disables PHY port pointed  by  this
192                     Port  section  as a source of frequency for the SyncE EEC
193                     on this device (required only in "internal input" mode).
194
195              allowed_qls
196                     List of integers containing allowed SSM QLs separated  by
197                     comma  (`,`),  other received ones would be discarded. If
198                     parameter is not provided, all QLs will be accepted.
199
200              allowed_ext_qls
201                     List of integers containing allowed extended SSM QLs sep‐
202                     arated  by comma (`,`), other received ones would be dis‐
203                     carded. If parameter is not provided, all QLs will be ac‐
204                     cepted.
205

BUGS

207       No known bugs.
208
209

AUTHOR

211       Arkadiusz Kubalewski <arkadiusz.kubalewski@intel.com>
212
213       Michal Michalik <michal.michalik@intel.com>
214
215
216
2171.0                               27 Oct 2022                           man(8)
Impressum