mbgtools-lx  4.2.8
gpsdefs.h
Go to the documentation of this file.
1 
2 /**************************************************************************
3  *
4  * $Id: gpsdefs.h 1.126 2018/07/05 10:18:34 martin REL_M $
5  *
6  * Copyright (c) Meinberg Funkuhren, Bad Pyrmont, Germany
7  *
8  * Description:
9  * General definitions to be used with Meinberg clocks.
10  * These definitions have initially be used with GPS devices only.
11  * However, more and more Meinberg non-GPS devices also use some of
12  * these definitions.
13  *
14  * -----------------------------------------------------------------------
15  * $Log: gpsdefs.h $
16  * Revision 1.126 2018/07/05 10:18:34 martin
17  * New models GPS_MODEL_PIO180, GPS_MODEL_FCM180, GPS_MODEL_TCR180USB,
18  * GPS_MODEL_SSP100, GPS_MODEL_GNS165, GPS_MODEL_RSC180RDMP,
19  * GPS_MODEL_GPS16X, GPS_MODEL_MSHPS100.
20  * New builtin features .._MODEL_HAS_UP_CONV, .._MODEL_HAS_MBG_OS.
21  * BUILTIN_FEAT_DCF_PZF_2 includes GPS_MODEL_IS_DCF_AM.
22  * Builtin features of some models were updated.
23  * Removed obsolete MBG_XFEATURE_USB_LOCK.
24  * New extended features MBG_XFEATURE_TAINTED_CFG, MBG_XFEATURE_PUSH_MSGS,
25  * MBG_XFEATURE_USER_AUTH, MBG_XFEATURE_USER_MNGMNT, MBG_XFEATURE_SERVICE,
26  * MBG_XFEATURE_UP_CONV, MBG_XFEATURE_FW_MNGMNT, MBG_XFEATURE_DAC_CTRL_PCI,
27  * MBG_XFEATURE_DATABASE, MBG_XFEATURE_GNSS_MODE.
28  * New string mode STR_CR_ON_SEC.
29  * Renamed legacy string modes to LGCY_STR_ON_REQ, etc. and provided
30  * compatibility definitions for old firmware builds.
31  * New XMR_SETTINGS_FLAG_BITS: XMRSF_BIT_IS_TRUSTED_SRC,
32  * XMRSF_BIT_USE_TRUSTED_SRC, XMRSF_BIT_IS_TIME_OF_DAY_SRC,
33  * XMRSF_BIT_IS_PHASE_SRC.
34  * New XMR_REF_STATUS_BITS: XMRS_BIT_TRS_LIMIT_VIOLATED.
35  * New XMR_INST_FLAGS: XMRIF_BIT_GNSS_BIAS_SUPP.
36  * New XMR_EXT_SRC_FEAT_FLAG_BITS: XMR_EXT_SRC_FEAT_FLAG_BIT_COASTING.
37  * Some MBG_EVT_IDS numbers were added.
38  * Some MBG_IMS_SENSORS were added.
39  * New MBG_NET_GLB_CFG_INFO_FLAGS: MBG_NET_GLB_SUPP_ADD_CONF,
40  * MBG_NET_GLB_SUPP_EXT_ROUTING.
41  * New MBG_NET_INTF_ADDR_BITS: MBG_NET_INTF_ADDR_BIT_AUTOCONF.
42  * Former PTP_CFG_SETTINGS::reserved field was split into
43  * PTP_CFG_SETTINGS::delay_asymmetry and PTP_CFG_SETTINGS::flags_ex.
44  * Former PTP_CFG_INFO::reserved_2 field was renmamed to
45  * PTP_CFG_INFO::supp_flags_ex.
46  * New PTP_CFG_FLAGS: PTP_CFG_ATOI, PTP_CFG_HAS_SMPTE_TLV_STATE,
47  * PTP_CFG_NTP_SW_SERVER, PTP_CFG_HAS_EXT_SUPP_FLAGS.
48  * New extended flags bits PTP_CFG_FLAGS_EX used with PTP configuration.
49  * New PTP profile ID PTP_OPT_EXT_C37238_2017.
50  * Former PTP_POWER_PROFILE_CFG::reserved_2 renamed to
51  * PTP_POWER_PROFILE_CFG::grandmaster_id_2017.
52  * New NTP_FLAGS: NTP_ADD_CONF and related definitions.
53  * NTP refclock configuration and statistics stuff was added.
54  * Former NTP_SYS_STATE::cfg_counter was renamed to
55  * NTP_SYS_STATE::service_state.
56  * IMS slot types were added.
57  * XBP_NODE_INFO structure was modified.
58  * New MBG_TLV_FEAT_TYPES: MBG_TLV_FEAT_TYPE_TIMEMON_FULL_STATUS.
59  * Some new MBG_EXT_SYS_INFO_BITS.
60  * OS type support was added.
61  * Extended management transactions support.
62  * Lots of new I/O port stuff.
63  * Some new definitions for SNMP support.
64  * New definitions for event logging.
65  * New tainted cfg stuff.
66  * Support for user and permission management.
67  * Support for services control.
68  * Support for firmware updates.
69  * Support for database management.
70  * Revision 1.125 2017/07/05 18:18:27 martin
71  * New models GPS_MODEL_CTC100, GPS_MODEL_TCR180,
72  * GPS_MODEL_LUE180, GPS_MODEL_CPC_01, GPS_MODEL_TSU_01,
73  * GPS_MODEL_CMC_01, GPS_MODEL_SCU_01, GPS_MODEL_FCU_01,
74  * GPS_MODEL_CSM100, GPS_MODEL_LNE180SFP, GPS_MODEL_GTS180,
75  * GPS_MODEL_GPS180CSM, GPS_MODEL_GRC181, GPS_MODEL_N2X180,
76  * GPS_MODEL_GNS181PEX, GPS_MODEL_MDU180, GPS_MODEL_MDU312,
77  * GPS_MODEL_GPS165, GPS_MODEL_GNS181_UC, GPS_MODEL_PSX_4GE,
78  * GPS_MODEL_RSC180RDU, GPS_MODEL_USYNCPWR, GPS_MODEL_FDM180M,
79  * GPS_MODEL_LSG180, GPS_MODEL_GPS190, GPS_MODEL_GNS181 and
80  * associated definitions.
81  * New GPS_BUILTIN_FEATURE_BITS and associated definitions.
82  * New macros _setup_default_receiver_info_dcf() and
83  * _setup_default_receiver_info_gps() as well as associated
84  * definitions which can be used to set up a RECEIVER_INFO
85  * structure for legacy devices which don't provide it.
86  * New Receiver_INO feature bit GPS_FEAT_XFEATURE which
87  * indicates that a new, extended feature set is supported.
88  * Defined a new st of extended features (MBG_XFEATURE_BITS)
89  * and associated definitions.
90  * Moved definitions for NANO_TIME and NANO_TIME_64 to words.h.
91  * New IRIG TX codes ICODE_TX_A006_A136, ICODE_TX_A007_A137,
92  * and associated definitions.
93  * Renamed ICODE_RX_G142_G146 to ICODE_RX_G142, and
94  * ICODE_RX_G002_G006 to ICODE_RX_G002.
95  * New IRIG RX codes ICODE_RX_A136_A137, ICODE_RX_A006_A007,
96  * ICODE_RX_G146, ICODE_RX_G006, and associated definitions.
97  * New union POUT_DATA union used for varying configuration
98  * data in POUT_SETTINGS, depending on the output mode.
99  * New POUT_MODES POUT_PTTI_PPS, POUT_HAVEQUICK, and
100  * associated definitions.
101  * Definitions to support a configurable pulse shift
102  * of some programmable output signals.
103  * New multiref source MULTI_REF_SYNCE and associated
104  * definitions.
105  * Added a number of swab..() macros that were still missing.
106  * XMR statistics, XMR_QL and some other XMR stuff by andre.
107  * New GPIO types including video modes, and associated stuff.
108  * Renamed some structure fields and added some definitions
109  * related to FDM.
110  * Added some SCU_STAT_MASKS.
111  * New GNSS_TYPE_QZSS, and modified MBG_GNSS_MODE_INFO.
112  * New flag MBG_GNSS_FLAG_HAS_SV_STATUS, structure
113  * GNSS_SV_STATUS and associated definitions.
114  * A bunch of new structures and definitions for network
115  * configuration.
116  * Many new structures and definitions for NTP configuration.
117  * New structures and associated definitions used to send
118  * user capture events over the network (ext_ucap).
119  * New PTP_ROLES and associated stuff.
120  * Changed one of PTP_STATE's reserved fields to tsu_secs.
121  * Changed PTP_ANN_RCPT_TIMEOUT_MAX from 255 to 8.
122  * New PTP_CFG_FLAGS, PTP_OPT_EXTS flags, PTP_PRESETS_MASKS
123  * and associated definitions.
124  * Definitions for PTPv1 and v2 data sets, and PTP statistics.
125  * Preliminary definitions to support SMPTE and SDH.
126  * Definition for XBP addressing of devices.
127  * Definitions to support TLVs.
128  * Added LED and LNE API definitions.
129  * MBG_EXT_SYS_INFO_BITS and associated definitions for an
130  * extended sysinfo API.
131  * MBG_CLK_RES_INFO and associated stuff for clock resolution
132  * info.
133  * Definitions for configuration transaction handling.
134  * Definitions for a higher level I/O port API.
135  * Definitions for monitoring / notification.
136  * Definitions for USB locking.
137  * Preliminary licensing stuff.
138  * Defined macros in a safer way.
139  * Revision 1.124 2015/07/14 14:22:46 martin
140  * Doxygen fix.
141  * Revision 1.123 2015/07/06 13:00:10 martin
142  * Added definitions for VSG180, MSF180, WWVB180, and CPC180.
143  * Added definitions for PZF180.
144  * Definitions for SDI and MDU300 added by stephan.
145  * Definitions for HPS100 added by daniel.
146  * FDM180 and associated definitions added by paul.
147  * Started to support eXtended Binary Protocol (XBP).
148  * Merged daniel and gregoire's changes from the 1.120.2.x branch.
149  * Defines for IPv6 multicast scopes added by gregoire.
150  * XMR_EXT_SRC_INFO and associated XMR_SETTINGS_FLAG_MSKS flags
151  * defined by andre.
152  * Support XMULTI_REF_INFO::n_prio field again.
153  * Fixed _mbg_swab_gpio_cfg_limits() macro.
154  * Added MBG_NET_LINK_OPT_MASK_CAN_SYNCE to MBG_NET_LINK_OPT_MASKS.
155  * New PTP_ROLE_MASKS PTP_ROLE_NTP_SERVER and PTP_ROLE_NTP_CLIENT.
156  * Some PTP profile extensions added by daniel.
157  * Added missing defines for SPT.
158  * Added definitions for REL1000.
159  * Moved structure NANO_TIME_64 here.
160  * Revision 1.122 2014/07/29 08:57:44Z martin
161  * Updated doxygen comments.
162  * Revision 1.121 2014/07/17 09:41:50 martin
163  * Introduced XMR_HOLDOVER_STATUS, MBG_GPIO_STATUS,
164  * and associated definitions.
165  * Huge update and cleanup on doxygen comments.
166  * Revision 1.120 2014/05/27 08:34:40 martin
167  * Fixed braces in some _mbg_rcvr_is_..() macros.
168  * Definitions used with extended network cfg, VST, and SHS.
169  * Introduced XMR_HOLDOVER_STATUS.
170  * Introduced programmable output mode POUT_GPIO.
171  * Introduced oscillator type OCXO_SQ.
172  * Defined some new baud rates.
173  * Defines for IEEE C37.118.1-2011 CTQ.
174  * Support for new model SCG by paul.
175  * Support new model PPG180.
176  * New SCU control masks.
177  * New GNSS flag MBG_GNSS_FLAG_SAT_INFO_IDX_SUPP_SER.
178  * DEFAULT_MULTI_REF_NAMES_SHORT added by udo.
179  * Definitions used for NTP configuration by thomas-b and marvin.
180  * MBG_NET_ADDR structures changed to MBG_IP_ADDR, and
181  * associated symbols defined by marvin.
182  * Huge rework of comments in doxygen format.
183  * Revision 1.119 2013/12/05 10:13:13 daniel
184  * Support new PTP_CFG_FLAGS for 1-step-L2 and 1-step-P2P support
185  * Revision 1.118 2013/11/19 13:38:35 martin
186  * Added LAN_IF_TYPE_RSC.
187  * Revision 1.117 2013/11/18 14:13:39 martin
188  * Support model LNE_GB.
189  * Revision 1.116 2013/11/11 09:46:11 martin
190  * New PTP configuration flags PTP_CFG_SUPP_MCAST_SLAVE_FLAG and
191  * PTP_CFG_CAN_BE_MULTICAST_SLAVE, plus associated bit masks.
192  * New XMR_INST_FLAGS and XMR_INST_FLAG_MASKS defined by andre.
193  * Fixes for big-endian targets.
194  * Updated doxygen comments.
195  * Revision 1.115 2013/10/02 15:19:28 martin
196  * Changed PTP_CFG_SETTINGS::vlan_cfg back to a reserved field,
197  * and removed associated flag and flag mask.
198  * Revision 1.114 2013/09/25 11:02:10 martin
199  * Support models MRI, BPE, GLN180PEX, N2X, RSC180.
200  * Added feature bit GPS_FEAT_NTP.
201  * Enhanced VLAN configuration structures.
202  * Started to support IPv6.
203  * Renamed PTP_CFG_SETTINGS field "profile" to "selected_presets".
204  * Renamed PTP_CFG_INFO field "supp_profiles" to "supp_opt_ext".
205  * New PTP role PTP_ROLE_BOTH_MASTER.
206  * New PTP flag PTP_FLAG_ONE_STEP.
207  * Added some new PTP_CFG_FLAGS flags.
208  * Added PTP_OPT_EXTS and associated definitions.
209  * Added PTP_PRESETS and associated definitions.
210  * Added "tzdl" field to PTP_POWER_PROFILE_CFG.
211  * Made reserved PTP_CFG_SETTINGS field to "opt_ext" field.
212  * Made reserved PTP_CFG_SETTINGS field to "vlan_cfg" field.
213  * Made reserved PTP_STATE field to "parent_clock_class" and "parent_clock_accuracy".
214  * Definitions for MULTI_REF_EXT_OSC added by Andre.
215  * String initializers for supported HaveQuick formats added by Gregoire.
216  * Lots of doxygen changes.
217  * Revision 1.113 2013/04/04 09:02:01Z martin
218  * Added definitions to support HaveQuick.
219  * Fixed a typo.
220  * Revision 1.112 2013/02/19 15:39:13 martin
221  * New PTP settings field ann_rcpt_timeout and associated
222  * values PTP_ANN_RCPT_TIMEOUT_LIMITS.
223  * Changed many defines to named enums to simplify references
224  * with doxygen.
225  * Updated doxygen comments.
226  * Revision 1.111 2013/02/01 15:37:36 martin
227  * Added and modified a huge number of doxygen comments.
228  * Revision 1.110 2013/01/16 15:23:25 martin
229  * Fixed 2 comments which were interchanged.
230  * Revision 1.109 2013/01/11 10:39:34 martin
231  * Added definitions for IMS.
232  * Support XMR_HOLDOVER_INTV.
233  * New XMRS status bit XMRS_BIT_LOW_JITTER / XMRS_MSK_LOW_JITTER.
234  * Added framing type 8E2, though most UARTs don't support this.
235  * Added enum names and updated comments for doxygen.
236  * Revision 1.108 2012/10/30 11:31:16 martin
237  * Defined PTP_UC_MSG_DURATION_MIN and PTP_UC_MSG_DURATION_MAX.
238  * Fixed some doxygen comments.
239  * Changes by andre: changed reserved field to ssm and boc in BITS_OUT settings.
240  * Revision 1.107 2012/10/12 07:40:12 martin
241  * New PTP state flags PTP_FLAG_MSK_UTC_VALID and
242  * PTP_CFG_MSK_SUPP_UTC_VALID.
243  * Revision 1.106 2012/10/02 18:22:10 martin
244  * Added default baud rate and framing for binary protocol.
245  * Added definitions for IRIG codes E002/E112 and NASA36.
246  * Reworked GPIO structures.
247  * Added definitions for GRC, LIU, DCF600RS, and DCF600HS.
248  * New flag POUT_FIXED_PULSE_LEN.
249  * New flag POUT_NOT_INVERTIBLE.
250  * Unified capitalization in MBG_XMRS_STATUS_STRS.
251  * Revision 1.105 2012/06/01 16:31:16 martin
252  * Some TIME_SLOT definitions added by marvin.
253  * Moved some PTP configuration defaults and limits to ptpdflts.h.
254  * Revision 1.104 2012/04/11 16:02:55Z martin
255  * Fixed some doxygen comments.
256  * Revision 1.103 2012/04/02 11:08:57Z martin
257  * Extended description of GPS UTC/leap second data.
258  * Revision 1.102 2012/03/16 11:43:31 martin
259  * Fixed a potential compiler warning.
260  * Revision 1.101 2012/03/06 16:56:01Z martin
261  * Added support for PTP multicast auto role.
262  * Merged Daniel's definitions for PTP profile support.
263  * Support time slot mode for programmable pulse outputs.
264  * Support LNO180.
265  * Moved definition of MBG_MAC_ADDR here.
266  * Use MBG_MAC_ADDR in definition of LAN_IF_INFO.
267  * Revision 1.100 2012/01/17 13:33:55 martin
268  * Added new IRIG RX delay compensation code groups for G0xx and G1xx codes.
269  * As a consequence the value of N_IRIG_RX_COMP has changed.
270  * Added definition of IRIG_RX_COMP_MAX.
271  * Updated IRIG code classification macros.
272  * Removed obsolete/unused definition of CAL_REC_INFO.
273  * Added some comments.
274  * Revision 1.99 2011/12/09 09:22:03 martin
275  * Fixed a typo.
276  * Revision 1.98 2011/11/25 14:58:34 martin
277  * Renamed some evt_log definitions.
278  * Revision 1.97 2011/11/25 10:11:17 martin
279  * Initializers for XMRS status bit strings added by gregoire.
280  * New feature GPS_FEAT_EVT_LOG.
281  * Added definitions used with event logs.
282  * Moved cal_reg and gen_io stuff here.
283  * Added macro _mbg_swab_debug_status().
284  * Updated some comments.
285  * Revision 1.96 2011/10/11 13:40:46Z andre
286  * changed reserved field into slot_id in XMULTI_REF_INSTANCES
287  * Revision 1.95.1.1 2011/10/07 09:31:58Z andre
288  * Revision 1.95 2011/10/04 09:35:41Z martin
289  * Added support for ESI180.
290  * Changed RECEIVER_INFO::flags bit GPS_10MHZ_DISBD to a RECEIVER_INFO::features bit.
291  * Support MULTI_REF_INTERNAL, MULTI_REF_LWR and MULTI_REF_PZF.
292  * Added MBG_GPIO_BITS structure and associated definitions.
293  * Revision 1.94 2011/08/25 07:42:43Z martin
294  * Fixed a bug in macro _mbg_swab_pout_settings() where the 16 bit timeout
295  * field was swapped using a macro for 32 bit types.
296  * Use shorter names for some PTP unicast master default values.
297  * Revision 1.93 2011/08/10 08:19:38Z martin
298  * New PORT_INFO and PORT_SETTINGS flag PORT_FLAG_PORT_INVISIBLE.
299  * Revision 1.92 2011/07/29 09:49:35 martin
300  * Support PZF180PEX, MGR180, MSF600, WWVB600, JJY600,
301  * GPS180HS, and GPS180AMC.
302  * Added receiver info features GPS_FEAT_PTP_UNICAST
303  * and GPS_FEAT_XMRS_MULT_INSTC.
304  * Added receiver info flag bit GPS_10MHZ_DISBD.
305  * Added initializers for PTP timescale names.
306  * New PTP_STATE flags bit PTP_FLAG_MSK_IS_UNICAST.
307  * Made unused PTP_STATE fields num_clients and num_masters reserved.
308  * Account for different PTP roles.
309  * Added / renamed some definitions for PTP.
310  * Modified default string for PTP layer 2 protocol.
311  * Support PTP unicast configuration.
312  * Support GPIO configuration.
313  * Introduced XMULTI_REF_INSTANCES.
314  * Moved flags XMRS_..._IS_EXTERNAL and XMRS_..._INSTC_EXCEEDED
315  * to definitions for XMULTI_REF_STATUS::status.
316  * Some comments added, updated, and converted to doxygen style.
317  * Cleaned up handling of pragma pack().
318  * Removed trailing whitespace and hard tabs.
319  * Revision 1.91 2011/01/31 11:23:56Z martin
320  * Added model type name definitions for GPS180PEX and TCR180PEX.
321  * Introduced synthesizer mode for programmable outputs.
322  * Added IRIG-RX code TXC-101 DTR-6.
323  * Fixed missing comma bugs in DEFAULT_GPS_MODEL_NAMES.
324  * Fixed missing comma bugs in some IRIG string initializers.
325  * Fixed AFNOR notation.
326  * Modified some comments for doxygen.
327  * Revision 1.90 2010/10/15 11:47:53 martin
328  * Added definitions POUT_TIMEBASE_UTC and POUT_SUPP_DCF77_UTC.
329  * Added receiver info feature GPS_FEAT_RAW_IRIG_TIME.
330  * Support IRIG format C37.118.
331  * Added initializers for short IRIG code names.
332  * Cleaned up IRIG definitions and comments.
333  * Revision 1.89 2010/09/06 07:40:02Z martin
334  * Picked up Daniel's definitions for multi GNSS support.
335  * Moved MBG_IRIG_CTRL_BITS, MBG_RAW_IRIG_DATA and related definitions
336  * from pcpsdefs.h here.
337  * Added macros _pcps_tfom_from_irig_ctrl_bits()
338  * and _pcps_tfom_from_raw_irig_data().
339  * Added RI_FEATURES type.
340  * Revision 1.88 2010/04/21 13:47:54 daniel
341  * Added support for new model GLN170.
342  * Revision 1.87 2010/03/10 11:29:37Z martin
343  * Added definitions for GPS180.
344  * Added multi ref source 1 PPS plus associated string.
345  * Revision 1.86 2010/02/17 14:16:42 martin
346  * Added definitions for PZF600 and TCR600.
347  * Revision 1.85 2010/02/15 11:34:36 martin
348  * Changed definition of PTP_TABLE::name to const char *.
349  * Added definitions to support new model JJY511.
350  * Revision 1.84 2010/02/01 13:20:50 martin
351  * Support programmable outputs being disabled when sync. is lost.
352  * Revision 1.83 2010/01/28 09:15:50 martin
353  * Added new POUT mode DCF77_M59 and associated definitions.
354  * Revision 1.82 2010/01/07 09:04:55 martin
355  * Added XMR status bit XMRS_BIT_NOT_PHASE_LOCKED.
356  * Revision 1.81 2009/11/09 09:08:24 martin
357  * New TM_GPS status bit TM_INVT.
358  * Added definitions to support VLAN.
359  * Changed DEFAULT_PTP_DELAY_MECH_MASK to include also
360  * PTP_DELAY_MECH_MSK_P2P.
361  * There is now only one type of TCXO supported which matches the former
362  * TCXO HQ, so the default name for TCXO HQ has been changed to TCXO.
363  * TCXO LQ and MQ names are still supported for backward compatibility.
364  * Revision 1.80 2009/09/28 14:55:53 martin
365  * Support IRIG formats G002/G142 and G006/G146.
366  * Modified IRIG format description strings.
367  * Revision 1.79 2009/08/12 14:12:38 daniel
368  * Added definitions to support new model MGR170.
369  * Added definitions and commands to support configuration
370  * of navigation engine (currently supported by u-blox
371  * receivers only).
372  * Renamed simulation values in PTP_SETTINGS to reserved.
373  * Added "UNINITIALIZED" to PTP port state.
374  * Removed obsolete braces in initializer.
375  * Revision 1.78 2009/06/25 15:49:05Z martin
376  * Added macro _nano_time_negative().
377  * Revision 1.77 2009/06/08 19:22:32Z daniel
378  * Added feature GPS_HAS_PTP.
379  * Added preliminary structures and definitions for PTP
380  * configuration and state.
381  * Added IP4_ADDR type.
382  * Added Bitmask IP4_MSK_DHCP.
383  * Added byte swapper macros for LAN and PTP structures.
384  * Moved LAN interface configuration definitions here.
385  * Moved DAC_VAL definition here.
386  * Changed type iof FPGA_INFO::start_addr for non-firmware applications.
387  * Revision 1.76 2009/04/08 08:26:56 daniel
388  * Added feature GPS_FEAT_IRIG_CTRL_BITS.
389  * Revision 1.75 2009/03/19 14:06:39Z martin
390  * Modified string initializer for unknown oscillator type.
391  * Revision 1.74 2009/03/18 13:45:53 daniel
392  * Added missing commas in
393  * MBG_DEBUG_STATUS_STRS initializer.
394  * Adjusted some comments for doxygen parser.
395  * Revision 1.73 2009/03/10 16:55:33Z martin
396  * Support configurable time scales GPS and TAI.
397  * Defined extended TM status type and associated flags.
398  * Added definition TM_MSK_TIME_VALID.
399  * Added some macros to swap endianess of structures.
400  * Revision 1.72 2008/11/28 09:26:21Z daniel
401  * Added definitions to support WWVB511
402  * Revision 1.71 2008/10/31 14:31:44Z martin
403  * Added definitions for TCR170PEX.
404  * Revision 1.70 2008/09/18 11:14:39 martin
405  * Added definitions to support GEN170.
406  * Revision 1.69 2008/09/15 14:16:17 martin
407  * Added more macros to convert the endianess of structures.
408  * Added N_COM_HS to the enumeration of handshake modes.
409  * Added MBG_PS_... codes.
410  * Revision 1.68 2008/08/25 10:51:13 martin
411  * Added definitions for PTP270PEX and FRC511PEX.
412  * Revision 1.67 2008/07/17 08:54:52Z martin
413  * Added macros to convert the endianess of structures.
414  * Added multi ref fixed frequency source.
415  * Revision 1.66 2008/05/19 14:49:07 daniel
416  * Renamed s_addr to start_addr in FPGA_INFO.
417  * Revision 1.65 2008/05/19 09:00:01Z martin
418  * Added definitions for GPS162.
419  * Added FPGA_INFO and GPS_HAS_FPGA.
420  * Added FPGA_START_INFO and associated definitions.
421  * Added new XMRS status XMRS_..._NOT_SETTLED.
422  * Added initializer XMULTI_REF_STATUS_INVALID.
423  * Revision 1.64 2008/01/17 11:50:33Z daniel
424  * Made IGNORE_LOCK bit maskable.
425  * Revision 1.63 2008/01/17 11:42:09Z daniel
426  * Made comments compatible for Doxygen parser.
427  * No sourcecode changes.
428  * Revision 1.62 2007/11/15 13:23:33Z martin
429  * Decide whether other Meinberg headers are to be included depending on whether
430  * CLOCK_MEINBERG is defined (as with NTP) or not. Previous versions checked
431  * for "PACKAGE" which is also defined by the Borland C++ build environment, though.
432  * Revision 1.61 2007/11/13 13:28:54 daniel
433  * Added definitions to support GPS170PEX.
434  * Revision 1.60 2007/09/13 12:37:35Z martin
435  * Modified and added initializers for TZDL.
436  * Added multi ref source PTP over E1.
437  * Added codes for MSF511 and GRC170 devices.
438  * Modified XMULTI_REF_SETTINGS and XMULTI_REF_STATUS structures.
439  * Avoid inclusion of other Meinberg headers in non-Meinberg projects.
440  * Added device classification macros _mbg_rcvr_is_...().
441  * Modified feature name string initializer for non-GPS devices.
442  * Updated some comments.
443  * Removed some obsolete comments.
444  * Revision 1.59 2007/07/19 07:41:56Z martin
445  * Added symbol MBG_REF_OFFS_NOT_CFGD.
446  * Revision 1.58 2007/05/21 15:46:44Z martin
447  * Fixed a typo.
448  * Revision 1.57 2007/03/29 12:20:43 martin
449  * Fixed some TZDL initializers.
450  * Revision 1.56 2007/02/14 14:17:10Z andre
451  * bug fixed in mask XMRS_MSK_NO_CONN
452  * Revision 1.55 2007/02/06 16:23:18Z martin
453  * Added definitions for AM511.
454  * Made SVNO unsigned.
455  * Added support for OPT_SETTINGS.
456  * Added XMULTI_REF_... definitions.
457  * Added string initializer DEFAULT_FREQ_RANGES.
458  * Revision 1.54 2007/01/04 11:39:39Z martin
459  * Added definitions for TCR511.
460  * Added definition GPS_FEAT_5_MHZ.
461  * Updated some comments related to duplicate features/options
462  * IGNORE_LOCK and EMU_SYNC.
463  * Revision 1.53 2006/12/13 09:31:49 martin
464  * Added feature flag for ignore_lock.
465  * Revision 1.52 2006/12/12 15:47:18 martin
466  * Added MBG_DEBUG_STATUS type and associated definitions.
467  * Added definition GPS_HAS_REF_OFFS.
468  * Moved PCPS_REF_OFFS and associated definitions from pcpsdefs.h here
469  * and renamed them to MBG_REF_OFFS, etc.
470  * Revision 1.51 2006/10/23 15:31:27 martin
471  * Added definitions for GPS170.
472  * Added definitions for new multi_ref sources IRIG, NTP, and PTP.
473  * Added some definitions useful when editing synth frequency.
474  * Revision 1.50 2006/08/25 09:29:28Z martin
475  * Added structure NANO_TIME.
476  * Revision 1.49 2006/08/09 07:06:42Z martin
477  * New TM_GPS status flag TM_EXT_SYNC.
478  * Revision 1.48 2006/08/08 12:51:20Z martin
479  * Added definitions for IRIG codes B006/B126 and B007/B127.
480  * Revision 1.47 2006/07/06 08:41:45Z martin
481  * Added definition of MEINBERG_MAGIC.
482  * Revision 1.46 2006/06/21 14:08:53Z martin
483  * Added masks of IRIG codes which contain time zone information.
484  * Revision 1.45 2006/06/15 12:13:32Z martin
485  * Added MULTI_REF_STATUS and associated flags.
486  * Added ROM_CSUM, RCV_TIMEOUT, and IGNORE_LOCK types.
487  * Revision 1.44 2006/05/18 09:34:41Z martin
488  * Added definitions for POUT max. pulse_len and max timeout.
489  * Changed comment for POUT_SETTINGS::timeout.
490  * Units are minutes, not seconds.
491  * Added definition for MAX_POUT_TIME_STR_PORTS.
492  * Added definitions for POUT mode 10MHz.
493  * Added hint strings for POUT modes.
494  * Added definitions for PZF511.
495  * Revision 1.43 2006/01/24 07:53:29Z martin
496  * New TM_GPS status flag TM_HOLDOVER.
497  * Revision 1.42 2005/11/24 14:53:22Z martin
498  * Added definitions for manchester encoded DC IRIG frames.
499  * Added POUT_TIMESTR and related definitions.
500  * Revision 1.41 2005/11/03 15:06:59Z martin
501  * Added definitions to support GPS170PCI.
502  * Revision 1.40 2005/10/28 08:58:29Z martin
503  * Added definitions for OCXO_DHQ.
504  * Revision 1.39 2005/09/08 14:06:00Z martin
505  * Added definition SYNTH_PHASE_SYNC_LIMIT.
506  * Revision 1.38 2005/08/18 10:27:35 andre
507  * added definitions for GPS164,
508  * added POUT_TIMECODE,
509  * struct SCU_STAT changed,
510  * ulong flags changed into two byte clk_info and ushort flags
511  * Revision 1.37 2005/05/02 14:44:55Z martin
512  * Added structure SYNTH_STATE and associated definitions.
513  * Revision 1.36 2005/03/29 12:44:07Z martin
514  * New RECEIVER_INFO::flags code: GPS_IRIG_FO_IN
515  * Revision 1.35 2004/12/09 14:04:38Z martin
516  * Changed max synth freq from 12 MHz to 10 MHz.
517  * Revision 1.34 2004/11/23 16:20:09Z martin
518  * Added bit definitions for the existing TTM status bit masks.
519  * Revision 1.33 2004/11/09 12:39:59Z martin
520  * Redefined interface data types using C99 fixed-size definitions.
521  * Added model code and name for TCR167PCI.
522  * New type GPS_CMD.
523  * Defined type BVAR_STAT and associated flags.
524  * Revision 1.32 2004/09/20 12:46:25 andre
525  * Added structures and definitions for SCU board.
526  * Revision 1.31 2004/07/08 08:30:36Z martin
527  * Added feature GPS_FEAT_RCV_TIMEOUT.
528  * Revision 1.30 2004/06/21 13:38:42 martin
529  * New flag MBG_OPT_BIT_EMU_SYNC/MBG_OPT_FLAG_EMU_SYNC
530  * lets the receicer emulate/pretend to be always synchronized.
531  * Revision 1.30 2004/06/21 13:35:46Z martin
532  * Revision 1.29 2004/06/16 12:47:53Z martin
533  * Moved OPT_SETTINGS related definitions from pcpsdefs.h
534  * here and renamed symbols from PCPS_.. to to MBG_...
535  * Revision 1.28 2004/03/26 10:37:00Z martin
536  * Added definitions to support multiple ref sources.
537  * Added definitions OSC_DAC_RANGE, OSC_DAC_BIAS.
538  * Revision 1.27 2004/03/08 14:06:45Z martin
539  * New model code and name for GPS169PCI.
540  * Existing feature GPS_FEAT_IRIG has been
541  * renamed to GPS_FEAT_IRIG_TX.
542  * Added feature GPS_FEAT_IRIG_RX.
543  * Added IPv4 LAN interface feature flags.
544  * Renamed IFLAGS_IGNORE_TFOM to IFLAGS_DISABLE_TFOM.
545  * Revision 1.26 2003/12/05 12:28:20Z martin
546  * Added some codes used with IRIG cfg.
547  * Revision 1.25 2003/10/29 16:18:14Z martin
548  * Added 7N2 to DEFAULT_GPS_FRAMINGS_GP2021.
549  * Revision 1.24 2003/09/30 08:49:48Z martin
550  * New flag TM_LS_ANN_NEG which is set in addition to
551  * TM_LS_ANN if next leap second is negative.
552  * Revision 1.23 2003/08/26 14:32:33Z martin
553  * Added some initializers for commonly used
554  * TZDL configurations.
555  * Revision 1.22 2003/04/25 10:18:11 martin
556  * Fixed typo inside an IRIG name string initializer.
557  * Revision 1.21 2003/04/15 09:18:48 martin
558  * New typedef ANT_CABLE_LEN.
559  * Revision 1.20 2003/04/03 11:03:44Z martin
560  * Extended definitions for IRIG support.
561  * Revision 1.19 2003/01/31 13:38:20 MARTIN
562  * Modified type of RECEIVER_INFO::fixed_freq field.
563  * Revision 1.18 2002/10/28 09:24:07 MARTIN
564  * Added/renamed some POUT related symbols.
565  * Revision 1.17 2002/09/05 10:58:39 MARTIN
566  * Renamed some symbols related to programmable outputs.
567  * Revision 1.16 2002/08/29 08:04:47 martin
568  * Renamed structure POUT_PROG to POUT_SETTINGS.
569  * New structures POUT_SETTINGS_IDX, POUT_INFO,
570  * POUT_INFO_IDX and associated definitions.
571  * Updated some comments.
572  * Revision 1.15 2002/07/17 07:39:39Z Andre
573  * comma added in definition DEFAULT_GPS_OSC_NAMES
574  * Revision 1.14 2002/06/27 12:17:29Z MARTIN
575  * Added new oscillator code TCXO_MQ.
576  * Added initializer for oscillator names.
577  * Added initializer for oscillator list ordered by quality.
578  * Revision 1.13 2002/05/08 08:16:03 MARTIN
579  * Added GPS_OSC_CFG_SUPP for RECEIVER_INFO::flags.
580  * Fixed some comments.
581  * Revision 1.12 2002/03/14 13:45:56 MARTIN
582  * Changed type CSUM from short to ushort.
583  * Revision 1.11 2002/03/01 12:29:30 Andre
584  * Added GPS_MODEL_GPS161 and GPS_MODEL_NAME_GPS161.
585  * Revision 1.10 2002/02/25 08:02:33Z MARTIN
586  * Added array of chars to union IDENT.
587  * Revision 1.9 2002/01/29 15:21:46 MARTIN
588  * Added new field "reserved" to struct SW_REV to fix C166 data
589  * alignment/structure size. Converted structure IDENT to a union.
590  * The changes above should not affect existing monitoring programs.
591  * New status flag TM_ANT_SHORT.
592  * New structure RECEIVER_INFO and associated definitions to
593  * enhance control from monitoring programs.
594  * New structures PORT_INFO, STR_TYPE_INFO, and associated
595  * definitions to simplify and unify configuration from external programs.
596  * New structures IRIG_INFO and POUT_PROG_IDX to configure an
597  * optional IRIG interface and programmable pulse outputs.
598  * Modified some comments.
599  * Revision 1.8 2001/03/30 11:44:11 MARTIN
600  * Control alignment of structures from new file use_pack.h.
601  * Defined initializers with valid baud rate and framing parameters.
602  * Modified some comments.
603  * Revision 1.7 2001/03/01 08:09:22 MARTIN
604  * Modified preprocessor syntax.
605  * Revision 1.6 2000/07/21 14:04:33 MARTIN
606  * Added som #if directives to protect structures against being multiply
607  * defined.
608  * Modified some comments.
609  * Comments using characters for +/- and degree now include ASCII
610  * characters only.
611  *
612  **************************************************************************/
613 
614 #ifndef _GPSDEFS_H
615 #define _GPSDEFS_H
616 
617 
618 /* Other headers to be included */
619 
620 #if defined( HAVE_CONFIG_H )
621  // this is mainly to simplify usage in non-Meinberg projects
622  #include <config.h>
623 #endif
624 
625 // CLOCK_MEINBERG is defined in NTP's config.h if configured
626 // to support Meinberg clocks.
627 #if !defined( CLOCK_MEINBERG )
628  // avoid having to use these headers in non-Meinberg projects
629  #include <words.h>
630  #include <use_pack.h>
631 #endif
632 
633 
634 
635 /* Start of header body */
636 
637 #if defined( _USE_PACK )
638  #pragma pack( 1 ) // set byte alignment
639  #define _USING_BYTE_ALIGNMENT
640 #endif
641 
642 
643 
644 /* "magic" number */
645 #define MEINBERG_MAGIC 0x6AAC
646 
654 {
657  N_SVNO_GPS = 32,
658 
661  N_SVNO_WAAS = 32,
662 
666 };
667 
668 // for compatibility with GPS-only software:
669 #define MIN_SVNO MIN_SVNO_GPS
670 #define MAX_SVNO MAX_SVNO_GPS
671 #define N_SVNO N_SVNO_GPS
672 
673 
674 
675 #define GPS_ID_STR_LEN 16
676 #define GPS_ID_STR_SIZE ( GPS_ID_STR_LEN + 1 )
677 
678 #define GPS_EPLD_STR_LEN 8
679 #define GPS_EPLD_STR_SIZE ( GPS_EPLD_STR_LEN + 1 )
680 
681 
682 #define DEFAULT_GPS_TICKS_PER_SEC 10000000L
683 
684 #if !defined( GPS_TICKS_PER_SEC )
685  /*
686  * The actual ticks per seconds may vary for different
687  * GPS receiver models. If this is the case, the receiver
688  * model support the ::RECEIVER_INFO structure which contains
689  * the actual value.
690  */
691  #define GPS_TICKS_PER_SEC DEFAULT_GPS_TICKS_PER_SEC
692 
693 #endif
694 
695 
696 typedef uint16_t SVNO;
697 typedef uint16_t HEALTH;
698 typedef uint16_t CFG;
699 typedef uint16_t IOD;
700 
701 
702 /* the type of various checksums */
703 
704 #ifndef _CSUM_DEFINED
705  typedef uint16_t CSUM;
706  #define _CSUM_DEFINED
707 #endif
708 
709 #define _mbg_swab_csum( _p ) _mbg_swab16( _p )
710 
711 
712 
720 
721 #define _mbg_swab_gps_cmd( _p ) _mbg_swab16( _p )
722 
723 
732 typedef struct
733 {
735  char name[GPS_ID_STR_SIZE];
737 
738 } SW_REV;
739 
740 #define _mbg_swab_sw_rev( _p ) \
741 do \
742 { \
743  _mbg_swab16( &(_p)->code ); \
744 } while ( 0 )
745 
746 
747 
771 
772 #define _mbg_swab_bvar_stat( _p ) _mbg_swab16( (_p) )
773 
774 
790 {
797 };
798 
799 
810 {
816 };
817 
818 #define BVAR_MASK ( ( 1UL << N_BVAR_BIT ) - 1 )
819 
820 
828 #define BVAR_FLAG_NAMES \
829 { \
830  "Sat. config and health", \
831  "Almanac", \
832  "UTC offset", \
833  "Ionospheric correction", \
834  "Receiver position" \
835 }
836 
846 typedef struct
847 {
850 
852 
853 #define _mbg_swab_fixed_freq_info( _p ) \
854 do \
855 { \
856  _mbg_swab16( &(_p)->khz_val ); \
857  _mbg_swab16( &(_p)->range ); \
858 } while ( 0 )
859 
860 
864 typedef uint32_t RI_FEATURES;
865 
866 
867 
873 typedef struct
874 {
877  char model_name[GPS_ID_STR_SIZE];
878  char sernum[GPS_ID_STR_SIZE];
879  char epld_name[GPS_EPLD_STR_SIZE];
881  uint32_t ticks_per_sec;
882  RI_FEATURES features;
891 
892 } RECEIVER_INFO;
893 
894 #define _mbg_swab_receiver_info( _p ) \
895 do \
896 { \
897  _mbg_swab16( &(_p)->model_code ); \
898  _mbg_swab_sw_rev( &(_p)->sw_rev ); \
899  _mbg_swab16( &(_p)->ticks_per_sec ); \
900  _mbg_swab32( &(_p)->features ); \
901  _mbg_swab_fixed_freq_info( &(_p)->fixed_freq ); \
902  _mbg_swab16( &(_p)->flags ); \
903 } while ( 0 )
904 
905 
913 {
1004  GPS_MODEL_LSG180, // Line Signal Generator
1007  GPS_MODEL_PIO180, // Programmable I/O module
1008  GPS_MODEL_FCM180, // Fake Clock Module
1010  GPS_MODEL_SSP100, // Secure Sync Processor (HPS with USB-Lock)
1013  GPS_MODEL_GPS16X, // Some legacy GPS receiver
1014  GPS_MODEL_MSHPS100, // microSYNC based on HPS100 hardware (but) as USB host
1016  /* If new model codes are added then care must be taken
1017  * to update the associated string initializers GPS_MODEL_NAMES
1018  * and GPS_MODEL_NAME_TABLE accordingly, and to check whether
1019  * the classification macros also cover the new model names.
1020  *
1021  * CARE MUST BE TAKEN that the name string of bus level devices
1022  * is limited to 9 characters. Longer strings will not fit into
1023  * the name field of the PCPS_DEV_TYPE structure.
1024  */
1025 };
1026 
1027 
1028 
1040 #define GPS_MODEL_NAME_UNKNOWN "Unknown"
1041 #define GPS_MODEL_NAME_GPS166 "GPS166"
1042 #define GPS_MODEL_NAME_GPS167 "GPS167"
1043 #define GPS_MODEL_NAME_GPS167SV "GPS167SV"
1044 #define GPS_MODEL_NAME_GPS167PC "GPS167PC"
1045 #define GPS_MODEL_NAME_GPS167PCI "GPS167PCI"
1046 #define GPS_MODEL_NAME_GPS163 "GPS163"
1047 #define GPS_MODEL_NAME_GPS168PCI "GPS168PCI"
1048 #define GPS_MODEL_NAME_GPS161 "GPS161"
1049 #define GPS_MODEL_NAME_GPS169PCI "GPS169PCI"
1050 #define GPS_MODEL_NAME_TCR167PCI "TCR167PCI"
1051 #define GPS_MODEL_NAME_GPS164 "GPS164"
1052 #define GPS_MODEL_NAME_GPS170PCI "GPS170PCI"
1053 #define GPS_MODEL_NAME_PZF511 "PZF511"
1054 #define GPS_MODEL_NAME_GPS170 "GPS170"
1055 #define GPS_MODEL_NAME_TCR511 "TCR511"
1056 #define GPS_MODEL_NAME_AM511 "AM511"
1057 #define GPS_MODEL_NAME_MSF511 "MSF511"
1058 #define GPS_MODEL_NAME_GRC170 "GRC170"
1059 #define GPS_MODEL_NAME_GPS170PEX "GPS170PEX"
1060 #define GPS_MODEL_NAME_GPS162 "GPS162"
1061 #define GPS_MODEL_NAME_PTP270PEX "PTP270PEX"
1062 #define GPS_MODEL_NAME_FRC511PEX "FRC511PEX"
1063 #define GPS_MODEL_NAME_GEN170 "GEN170"
1064 #define GPS_MODEL_NAME_TCR170PEX "TCR170PEX"
1065 #define GPS_MODEL_NAME_WWVB511 "WWVB511"
1066 #define GPS_MODEL_NAME_MGR170 "MGR170"
1067 #define GPS_MODEL_NAME_JJY511 "JJY511"
1068 #define GPS_MODEL_NAME_PZF600 "PZF600"
1069 #define GPS_MODEL_NAME_TCR600 "TCR600"
1070 #define GPS_MODEL_NAME_GPS180 "GPS180"
1071 #define GPS_MODEL_NAME_GLN170 "GLN170"
1072 #define GPS_MODEL_NAME_GPS180PEX "GPS180PEX"
1073 #define GPS_MODEL_NAME_TCR180PEX "TCR180PEX"
1074 #define GPS_MODEL_NAME_PZF180PEX "PZF180PEX"
1075 #define GPS_MODEL_NAME_MGR180 "MGR180"
1076 #define GPS_MODEL_NAME_MSF600 "MSF600"
1077 #define GPS_MODEL_NAME_WWVB600 "WWVB600"
1078 #define GPS_MODEL_NAME_JJY600 "JJY600"
1079 #define GPS_MODEL_NAME_GPS180HS "GPS180HS"
1080 #define GPS_MODEL_NAME_GPS180AMC "GPS180AMC"
1081 #define GPS_MODEL_NAME_ESI180 "ESI180"
1082 #define GPS_MODEL_NAME_CPE180 "CPE180"
1083 #define GPS_MODEL_NAME_LNO180 "LNO180"
1084 #define GPS_MODEL_NAME_GRC180 "GRC180"
1085 #define GPS_MODEL_NAME_LIU "LIU"
1086 #define GPS_MODEL_NAME_DCF600HS "DCF600HS"
1087 #define GPS_MODEL_NAME_DCF600RS "DCF600RS"
1088 #define GPS_MODEL_NAME_MRI "MRI"
1089 #define GPS_MODEL_NAME_BPE "BPE"
1090 #define GPS_MODEL_NAME_GLN180PEX "GLN180PEX"
1091 #define GPS_MODEL_NAME_N2X "N2X"
1092 #define GPS_MODEL_NAME_RSC180 "RSC180"
1093 #define GPS_MODEL_NAME_LNE_GB "LNE_GB"
1094 #define GPS_MODEL_NAME_PPG180 "PPG180"
1095 #define GPS_MODEL_NAME_SCG "SCG"
1096 #define GPS_MODEL_NAME_MDU300 "MDU300"
1097 #define GPS_MODEL_NAME_SDI "SDI"
1098 #define GPS_MODEL_NAME_FDM180 "FDM180"
1099 #define GPS_MODEL_NAME_SPT "SPT"
1100 #define GPS_MODEL_NAME_PZF180 "PZF180"
1101 #define GPS_MODEL_NAME_REL1000 "REL1000"
1102 #define GPS_MODEL_NAME_HPS100 "HPS100"
1103 #define GPS_MODEL_NAME_VSG180 "VSG180"
1104 #define GPS_MODEL_NAME_MSF180 "MSF180"
1105 #define GPS_MODEL_NAME_WWVB180 "WWVB180"
1106 #define GPS_MODEL_NAME_CPC180 "CPC180"
1107 #define GPS_MODEL_NAME_CTC100 "CTC100"
1108 #define GPS_MODEL_NAME_TCR180 "TCR180"
1109 #define GPS_MODEL_NAME_LUE180 "LUE180"
1110 #define GPS_MODEL_NAME_CPC_01 "CPC_01"
1111 #define GPS_MODEL_NAME_TSU_01 "TSU_01"
1112 #define GPS_MODEL_NAME_CMC_01 "CMC_01"
1113 #define GPS_MODEL_NAME_SCU_01 "SCU_01"
1114 #define GPS_MODEL_NAME_FCU_01 "FCU_01"
1115 #define GPS_MODEL_NAME_CSM100 "CSM100"
1116 #define GPS_MODEL_NAME_LNE180SFP "LNE180SFP"
1117 #define GPS_MODEL_NAME_GTS180 "GTS180"
1118 #define GPS_MODEL_NAME_GPS180CSM "GPS180CSM"
1119 #define GPS_MODEL_NAME_GRC181 "GRC181"
1120 #define GPS_MODEL_NAME_N2X180 "N2X180"
1121 #define GPS_MODEL_NAME_GNS181PEX "GNS181PEX"
1122 #define GPS_MODEL_NAME_MDU180 "MDU180"
1123 #define GPS_MODEL_NAME_MDU312 "MDU312"
1124 #define GPS_MODEL_NAME_GPS165 "GPS165"
1125 #define GPS_MODEL_NAME_GNS181_UC "GNS181_UC"
1126 #define GPS_MODEL_NAME_PSX_4GE "PSX_4GE"
1127 #define GPS_MODEL_NAME_RSC180RDU "RSC180RDU"
1128 #define GPS_MODEL_NAME_USYNCPWR "MICROSYNC-PWR"
1129 #define GPS_MODEL_NAME_FDM180M "FDM180M"
1130 #define GPS_MODEL_NAME_LSG180 "LSG180"
1131 #define GPS_MODEL_NAME_GPS190 "GPS190"
1132 #define GPS_MODEL_NAME_GNS181 "GNS181"
1133 #define GPS_MODEL_NAME_PIO180 "PIO180"
1134 #define GPS_MODEL_NAME_FCM180 "FCM180"
1135 #define GPS_MODEL_NAME_TCR180USB "TCR180USB"
1136 #define GPS_MODEL_NAME_SSP100 "SSP100"
1137 #define GPS_MODEL_NAME_GNS165 "GNS165"
1138 #define GPS_MODEL_NAME_RSC180RDMP "RSC180RDMP"
1139 #define GPS_MODEL_NAME_GPS16X "GPS16x"
1140 #define GPS_MODEL_NAME_MSHPS100 "MSHPS100"
1141 /*
1142  * CARE MUST BE TAKEN that the name string of bus level devices
1143  * is limited to 9 characters. Longer strings will not fit into
1144  * the name field of the PCPS_DEV_TYPE structure.
1145  */
1146 
1163 #define DEFAULT_GPS_MODEL_NAMES \
1164 { \
1165  GPS_MODEL_NAME_UNKNOWN, \
1166  GPS_MODEL_NAME_GPS166, \
1167  GPS_MODEL_NAME_GPS167, \
1168  GPS_MODEL_NAME_GPS167SV, \
1169  GPS_MODEL_NAME_GPS167PC, \
1170  GPS_MODEL_NAME_GPS167PCI, \
1171  GPS_MODEL_NAME_GPS163, \
1172  GPS_MODEL_NAME_GPS168PCI, \
1173  GPS_MODEL_NAME_GPS161, \
1174  GPS_MODEL_NAME_GPS169PCI, \
1175  GPS_MODEL_NAME_TCR167PCI, \
1176  GPS_MODEL_NAME_GPS164, \
1177  GPS_MODEL_NAME_GPS170PCI, \
1178  GPS_MODEL_NAME_PZF511, \
1179  GPS_MODEL_NAME_GPS170, \
1180  GPS_MODEL_NAME_TCR511, \
1181  GPS_MODEL_NAME_AM511, \
1182  GPS_MODEL_NAME_MSF511, \
1183  GPS_MODEL_NAME_GRC170, \
1184  GPS_MODEL_NAME_GPS170PEX, \
1185  GPS_MODEL_NAME_GPS162, \
1186  GPS_MODEL_NAME_PTP270PEX, \
1187  GPS_MODEL_NAME_FRC511PEX, \
1188  GPS_MODEL_NAME_GEN170, \
1189  GPS_MODEL_NAME_TCR170PEX, \
1190  GPS_MODEL_NAME_WWVB511, \
1191  GPS_MODEL_NAME_MGR170, \
1192  GPS_MODEL_NAME_JJY511, \
1193  GPS_MODEL_NAME_PZF600, \
1194  GPS_MODEL_NAME_TCR600, \
1195  GPS_MODEL_NAME_GPS180, \
1196  GPS_MODEL_NAME_GLN170, \
1197  GPS_MODEL_NAME_GPS180PEX, \
1198  GPS_MODEL_NAME_TCR180PEX, \
1199  GPS_MODEL_NAME_PZF180PEX, \
1200  GPS_MODEL_NAME_MGR180, \
1201  GPS_MODEL_NAME_MSF600, \
1202  GPS_MODEL_NAME_WWVB600, \
1203  GPS_MODEL_NAME_JJY600, \
1204  GPS_MODEL_NAME_GPS180HS, \
1205  GPS_MODEL_NAME_GPS180AMC, \
1206  GPS_MODEL_NAME_ESI180, \
1207  GPS_MODEL_NAME_CPE180, \
1208  GPS_MODEL_NAME_LNO180, \
1209  GPS_MODEL_NAME_GRC180, \
1210  GPS_MODEL_NAME_LIU, \
1211  GPS_MODEL_NAME_DCF600HS, \
1212  GPS_MODEL_NAME_DCF600RS, \
1213  GPS_MODEL_NAME_MRI, \
1214  GPS_MODEL_NAME_BPE, \
1215  GPS_MODEL_NAME_GLN180PEX, \
1216  GPS_MODEL_NAME_N2X, \
1217  GPS_MODEL_NAME_RSC180, \
1218  GPS_MODEL_NAME_LNE_GB, \
1219  GPS_MODEL_NAME_PPG180, \
1220  GPS_MODEL_NAME_SCG, \
1221  GPS_MODEL_NAME_MDU300, \
1222  GPS_MODEL_NAME_SDI, \
1223  GPS_MODEL_NAME_FDM180, \
1224  GPS_MODEL_NAME_SPT, \
1225  GPS_MODEL_NAME_PZF180, \
1226  GPS_MODEL_NAME_REL1000, \
1227  GPS_MODEL_NAME_HPS100, \
1228  GPS_MODEL_NAME_VSG180, \
1229  GPS_MODEL_NAME_MSF180, \
1230  GPS_MODEL_NAME_WWVB180, \
1231  GPS_MODEL_NAME_CPC180, \
1232  GPS_MODEL_NAME_CTC100, \
1233  GPS_MODEL_NAME_TCR180, \
1234  GPS_MODEL_NAME_LUE180, \
1235  GPS_MODEL_NAME_CPC_01, \
1236  GPS_MODEL_NAME_TSU_01, \
1237  GPS_MODEL_NAME_CMC_01, \
1238  GPS_MODEL_NAME_SCU_01, \
1239  GPS_MODEL_NAME_FCU_01, \
1240  GPS_MODEL_NAME_CSM100, \
1241  GPS_MODEL_NAME_LNE180SFP, \
1242  GPS_MODEL_NAME_GTS180, \
1243  GPS_MODEL_NAME_GPS180CSM, \
1244  GPS_MODEL_NAME_GRC181, \
1245  GPS_MODEL_NAME_N2X180, \
1246  GPS_MODEL_NAME_GNS181PEX, \
1247  GPS_MODEL_NAME_MDU180, \
1248  GPS_MODEL_NAME_MDU312, \
1249  GPS_MODEL_NAME_GPS165, \
1250  GPS_MODEL_NAME_GNS181_UC, \
1251  GPS_MODEL_NAME_PSX_4GE, \
1252  GPS_MODEL_NAME_RSC180RDU, \
1253  GPS_MODEL_NAME_USYNCPWR, \
1254  GPS_MODEL_NAME_FDM180M, \
1255  GPS_MODEL_NAME_LSG180, \
1256  GPS_MODEL_NAME_GPS190, \
1257  GPS_MODEL_NAME_GNS181, \
1258  GPS_MODEL_NAME_PIO180, \
1259  GPS_MODEL_NAME_FCM180, \
1260  GPS_MODEL_NAME_TCR180USB, \
1261  GPS_MODEL_NAME_SSP100, \
1262  GPS_MODEL_NAME_GNS165, \
1263  GPS_MODEL_NAME_RSC180RDMP, \
1264  GPS_MODEL_NAME_GPS16X, \
1265  GPS_MODEL_NAME_MSHPS100 \
1266 }
1267 
1268 
1269 
1270 
1286 typedef uint32_t BUILTIN_FEATURE_MASK;
1287 
1288 
1296 {
1305 
1314 
1322 
1324 
1325 #if 0 //### TODO This has to be discussed
1326  GPS_BIT_MODEL_IS_LNO,
1327  GPS_BIT_MODEL_IS_SCU,
1328 #endif
1329 
1331 };
1332 
1333 
1334 
1343 #define GPS_MODEL_IS_GPS ( 1UL << GPS_BIT_MODEL_IS_GPS )
1344 #define GPS_MODEL_IS_GNSS ( 1UL << GPS_BIT_MODEL_IS_GNSS )
1345 #define GPS_MODEL_IS_TCR ( 1UL << GPS_BIT_MODEL_IS_TCR )
1346 #define GPS_MODEL_IS_DCF_AM ( 1UL << GPS_BIT_MODEL_IS_DCF_AM )
1347 #define GPS_MODEL_IS_DCF_PZF ( 1UL << GPS_BIT_MODEL_IS_DCF_PZF )
1348 #define GPS_MODEL_IS_MSF ( 1UL << GPS_BIT_MODEL_IS_MSF )
1349 #define GPS_MODEL_IS_JJY ( 1UL << GPS_BIT_MODEL_IS_JJY )
1350 #define GPS_MODEL_IS_WWVB ( 1UL << GPS_BIT_MODEL_IS_WWVB )
1351 
1352 #define GPS_MODEL_IS_BUS_LVL_DEV ( 1UL << GPS_BIT_MODEL_IS_BUS_LVL_DEV )
1353 #define GPS_MODEL_HAS_BVAR_STAT ( 1UL << GPS_BIT_MODEL_HAS_BVAR_STAT )
1354 #define GPS_MODEL_HAS_POS_XYZ ( 1UL << GPS_BIT_MODEL_HAS_POS_XYZ )
1355 #define GPS_MODEL_HAS_POS_LLA ( 1UL << GPS_BIT_MODEL_HAS_POS_LLA )
1356 #define GPS_MODEL_HAS_TIME_TTM ( 1UL << GPS_BIT_MODEL_HAS_TIME_TTM )
1357 #define GPS_MODEL_HAS_TZDL ( 1UL << GPS_BIT_MODEL_HAS_TZDL )
1358 #define GPS_MODEL_HAS_TZCODE ( 1UL << GPS_BIT_MODEL_HAS_TZCODE )
1359 #define GPS_MODEL_HAS_ANT_INFO ( 1UL << GPS_BIT_MODEL_HAS_ANT_INFO )
1360 
1361 #define GPS_MODEL_HAS_ENABLE_FLAGS ( 1UL << GPS_BIT_MODEL_HAS_ENABLE_FLAGS )
1362 #define GPS_MODEL_HAS_STAT_INFO ( 1UL << GPS_BIT_MODEL_HAS_STAT_INFO )
1363 #define GPS_MODEL_HAS_ANT_CABLE_LEN ( 1UL << GPS_BIT_MODEL_HAS_ANT_CABLE_LEN )
1364 #define GPS_MODEL_HAS_SCU_STAT ( 1UL << GPS_BIT_MODEL_HAS_SCU_STAT )
1365 #define GPS_MODEL_HAS_SV_INFO ( 1UL << GPS_BIT_MODEL_HAS_SV_INFO )
1366 #define GPS_MODEL_HAS_UP_CONV ( 1UL << GPS_BIT_MODEL_HAS_UP_CONV )
1367 #define GPS_MODEL_HAS_MBG_OS ( 1UL << GPS_BIT_MODEL_HAS_MBG_OS )
1368 
1369 #if 0 // ### TODO This has to be discussed
1370  #define GPS_MODEL_IS_LNO ( 1UL << GPS_BIT_MODEL_IS_LNO )
1371  #define GPS_MODEL_IS_SCU ( 1UL << GPS_BIT_MODEL_IS_SCU )
1372 #endif
1373 
1374 // ### TODO FIXME do we need the next one? Should be obsolete
1375 // #define GPS_MODEL_HAS_XMR_HOLDOVER_INTV ( 1UL << GPS_BIT_MODEL_HAS_XMR_HOLDOVER_INTV ) ///< see ::GPS_BIT_MODEL_HAS_XMR_HOLDOVER_INTV
1376 
1377 //### TODO: should we use an extra flag?
1378 #define GPS_MODEL_HAS_POS ( GPS_MODEL_HAS_POS_XYZ | GPS_MODEL_HAS_POS_LLA )
1379 
1383 #if 0 //##++ more potential builtin features and classifiers
1384 
1385  GPS_MODEL_HAS_CFGH | \
1386  GPS_MODEL_HAS_ALM | \
1387  GPS_MODEL_HAS_EPH | \
1388  GPS_MODEL_HAS_UTC | \
1389  GPS_MODEL_HAS_IONO \
1390 
1391 #define GPS_MODEL_HAS_AUTO_ON // --
1392 #define GPS_MODEL_HAS_AUTO_OFF // --
1393 #define GPS_MODEL_HAS_SW_REV // deprecated, use only if ri not supported
1394 #define GPS_MODEL_HAS_BVAR_STAT // req
1395 #define GPS_MODEL_HAS_POS_XYZ // GPS_MODEL_IS_GPS, GPS_MODEL_HAS_POS, GPS_MODEL_HAS_POS_XYZ ?
1396 #define GPS_MODEL_HAS_POS_LLA // GPS_MODEL_IS_GPS, GPS_MODEL_HAS_POS, GPS_MODEL_HAS_POS_LLA ?
1397 #define GPS_MODEL_HAS_TZDL // req
1398 #define GPS_MODEL_HAS_PORT_PARM // deprecated, use only if ri not supported
1399 #define GPS_MODEL_HAS_SYNTH // ri GPS_HAS_SYNTH
1400 #define GPS_MODEL_HAS_ANT_INFO // GPS_MODEL_IS_GPS, also GNSS, or req?
1401 #define GPS_MODEL_HAS_UCAP // ri n_ucap
1402 #define GPS_MODEL_HAS_ENABLE_FLAGS // req
1403 #define GPS_MODEL_HAS_STAT_INFO // req
1404 #define GPS_MODEL_HAS_SWITCH_PARMS // deprecated, use ...
1405 #define GPS_MODEL_HAS_STRING_PARMS // deprecated, use ...
1406 #define GPS_MODEL_HAS_ANT_CABLE_LEN // GPS_MODEL_IS_GPS, also GNSS, or req?
1407 #define GPS_MODEL_HAS_SYNC_OUTAGE_DELAY // custom
1408 #define GPS_MODEL_HAS_PULSE_INFO // custom
1409 #define GPS_MODEL_HAS_OPT_FEATURES // deprecated, use ri
1410 #define GPS_MODEL_HAS_IRIG_TX_SETTINGS // ri GPS_HAS_IRIG_TX
1411 #define GPS_MODEL_HAS_RECEIVER_INFO // --
1412 #define GPS_MODEL_HAS_STR_TYPE_INFO_IDX // ri n_str_type
1413 #define GPS_MODEL_HAS_PORT_INFO_IDX // ri n_com
1414 #define GPS_MODEL_HAS_PORT_SETTINGS_IDX // ri n_com
1415 #define GPS_MODEL_HAS_POUT_INFO_IDX // ri n_pout
1416 #define GPS_MODEL_HAS_POUT_SETTINGS_IDX // ri n_pout
1417 #define GPS_MODEL_HAS_IRIG_TX_INFO // ri GPS_HAS_IRIG_TX
1418 #define GPS_MODEL_HAS_MULTI_REF_SETTINGS // ri GPS_HAS_MULTI_REF
1419 #define GPS_MODEL_HAS_MULTI_REF_INFO // ri GPS_HAS_MULTI_REF
1420 #define GPS_MODEL_HAS_ROM_CSUM // ?
1421 #define GPS_MODEL_HAS_MULTI_REF_STATUS // ri ...
1422 #define GPS_MODEL_HAS_RCV_TIMEOUT // ri ...
1423 #define GPS_MODEL_HAS_IRIG_RX_SETTINGS // ri ...
1424 #define GPS_MODEL_HAS_IRIG_RX_INFO // ri ...
1425 #define GPS_MODEL_HAS_REF_OFFS // ri ...
1426 #define GPS_MODEL_HAS_DEBUG_STATUS //
1427 #define GPS_MODEL_HAS_XMR_SETTINGS_IDX //
1428 #define GPS_MODEL_HAS_XMR_INFO_IDX //
1429 #define GPS_MODEL_HAS_XMR_STATUS_IDX //
1430 #define GPS_MODEL_HAS_OPT_SETTINGS //
1431 #define GPS_MODEL_HAS_OPT_INFO //
1432 #define GPS_MODEL_HAS_CLR_UCAP_BUFF //
1433 #define GPS_MODEL_HAS_TIME_SCALE //
1434 #define GPS_MODEL_HAS_NAV_ENG_SETTINGS //
1435 #define GPS_MODEL_HAS_RAW_IRIG_DATA //
1436 #define GPS_MODEL_HAS_GPIO_CFG_LIMITS //
1437 #define GPS_MODEL_HAS_GPIO_INFO_IDX //
1438 #define GPS_MODEL_HAS_GPIO_SETTINGS_IDX //
1439 #define GPS_MODEL_HAS_XMR_INSTANCES //
1440 #define GPS_MODEL_HAS_CLR_EVT_LOG //
1441 #define GPS_MODEL_HAS_NUM_EVT_LOG_ENTRIES //
1442 #define GPS_MODEL_HAS_FIRST_EVT_LOG_ENTRY //
1443 #define GPS_MODEL_HAS_NEXT_EVT_LOG_ENTRY //
1444 #define GPS_MODEL_HAS_LNO_STATUS //
1445 #define GPS_MODEL_HAS_IMS_STATE //
1446 #define GPS_MODEL_HAS_IMS_SENSOR_STATE_IDX //
1447 #define GPS_MODEL_HAS_XMR_HOLDOVER_INTV //
1448 #define GPS_MODEL_HAS_HAVEQUICK_RX_SETTINGS //
1449 #define GPS_MODEL_HAS_HAVEQUICK_RX_INFO //
1450 #define GPS_MODEL_HAS_HAVEQUICK_TX_SETTINGS //
1451 #define GPS_MODEL_HAS_HAVEQUICK_TX_INFO //
1452 #define GPS_MODEL_HAS_PTP_CFG //
1453 #define GPS_MODEL_HAS_PTP_STATE //
1454 #define GPS_MODEL_HAS_PTP_UC_MASTER_CFG_LIMITS //
1455 #define GPS_MODEL_HAS_PTP_UC_MASTER_CFG //
1456 #define GPS_MODEL_HAS_NTP_GLB_CFG //
1457 #define GPS_MODEL_HAS_NTP_CLNT_MODE_CFG //
1458 #define GPS_MODEL_HAS_NTP_SRV_MODE_CFG //
1459 #define GPS_MODEL_HAS_NTP_PEER_SETTINGS_IDX //
1460 #define GPS_MODEL_HAS_NTP_SYS_STATE //
1461 #define GPS_MODEL_HAS_NTP_PEER_STATE_IDX //
1462 #define GPS_MODEL_HAS_SHS //
1463 #define GPS_MODEL_HAS_SHS_STATUS //
1464 #define GPS_MODEL_HAS_NET_GLB_CFG //
1465 #define GPS_MODEL_HAS_NET_DNS_SRVR //
1466 #define GPS_MODEL_HAS_NET_DNS_SRCH_DOM //
1467 #define GPS_MODEL_HAS_NET_STAT_DNS_SRVR //
1468 #define GPS_MODEL_HAS_NET_STAT_DNS_SRCH_DOM //
1469 #define GPS_MODEL_HAS_GNSS_SAT_INFO_IDX //
1470 
1471 #define GPS_MODEL_HAS_CFGH //
1472 #define GPS_MODEL_HAS_ALM //
1473 #define GPS_MODEL_HAS_EPH //
1474 #define GPS_MODEL_HAS_UTC //
1475 #define GPS_MODEL_HAS_IONO //
1476 #define GPS_MODEL_HAS_ASCII_MSG //
1477 
1478 #define GPS_MODEL_HAS_GLNS_ALM //
1479 #define GPS_MODEL_HAS_GNSS_SAT_INFO //
1480 //#define GPS_MODEL_HAS_GNSS_MODE //
1481 
1482 #define GPS_MODEL_HAS_IP4_SETTINGS //
1483 #define GPS_MODEL_HAS_LAN_IF_INFO //
1484 #define GPS_MODEL_HAS_IP4_STATE //
1485 
1486 #define GPS_MODEL_HAS_CRYPTED_PACKET //
1487 #define GPS_MODEL_HAS_CRYPTED_RAW_PACKET //
1488 
1489 #define GPS_MODEL_HAS_SECU_INFO //
1490 #define GPS_MODEL_HAS_SECU_SETTINGS //
1491 #define GPS_MODEL_HAS_SECU_PUBLIC_KEY //
1492 
1493 #endif //##++ more potential builtin features and classifiers
1494 
1495 
1496 
1503 #define BUILTIN_FEAT_GPS \
1504 ( \
1505  GPS_MODEL_IS_GPS | \
1506  GPS_MODEL_HAS_BVAR_STAT | \
1507  GPS_MODEL_HAS_POS_XYZ | \
1508  GPS_MODEL_HAS_POS_LLA | \
1509  GPS_MODEL_HAS_TIME_TTM | \
1510  GPS_MODEL_HAS_TZDL | \
1511  GPS_MODEL_HAS_ANT_INFO | \
1512  GPS_MODEL_HAS_ENABLE_FLAGS | \
1513  GPS_MODEL_HAS_STAT_INFO | \
1514  GPS_MODEL_HAS_ANT_CABLE_LEN | \
1515  GPS_MODEL_HAS_SV_INFO \
1516 )
1517 
1518 
1528 #define BUILTIN_FEAT_GNSS \
1529 ( \
1530  BUILTIN_FEAT_GPS | \
1531  GPS_MODEL_IS_GNSS \
1532 )
1533 
1534 
1535 
1539 #define BUILTIN_FEAT_TCR_1 \
1540 ( \
1541  GPS_MODEL_IS_TCR \
1542 )
1543 
1544 
1548 #define BUILTIN_FEAT_TCR_2 \
1549 ( \
1550  GPS_MODEL_IS_TCR | \
1551  GPS_MODEL_HAS_TIME_TTM | \
1552  GPS_MODEL_HAS_TZDL | \
1553  GPS_MODEL_HAS_ANT_INFO | \
1554  GPS_MODEL_HAS_ENABLE_FLAGS \
1555 )
1556 
1557 
1558 
1562 #define BUILTIN_FEAT_DCF_1 \
1563 ( \
1564  GPS_MODEL_IS_DCF_AM | \
1565  GPS_MODEL_HAS_TZCODE \
1566 )
1567 
1568 
1572 #define BUILTIN_FEAT_DCF_2 \
1573 ( \
1574  GPS_MODEL_IS_DCF_AM | \
1575  GPS_MODEL_HAS_TIME_TTM | \
1576  GPS_MODEL_HAS_TZDL | \
1577  GPS_MODEL_HAS_ANT_INFO | \
1578  GPS_MODEL_HAS_ENABLE_FLAGS \
1579 )
1580 
1581 
1585 #define BUILTIN_FEAT_DCF_PZF_1 \
1586 ( \
1587  GPS_MODEL_IS_DCF_PZF | \
1588  GPS_MODEL_HAS_TZCODE \
1589 )
1590 
1591 
1595 #define BUILTIN_FEAT_DCF_PZF_2 \
1596 ( \
1597  GPS_MODEL_IS_DCF_AM | \
1598  GPS_MODEL_IS_DCF_PZF | \
1599  GPS_MODEL_HAS_TIME_TTM | \
1600  GPS_MODEL_HAS_TZDL | \
1601  GPS_MODEL_HAS_ANT_INFO | \
1602  GPS_MODEL_HAS_ENABLE_FLAGS \
1603 )
1604 
1605 
1606 
1610 #define BUILTIN_FEAT_MSF_1 \
1611 ( \
1612  GPS_MODEL_IS_MSF | \
1613  GPS_MODEL_HAS_TZCODE \
1614 )
1615 
1616 
1620 #define BUILTIN_FEAT_MSF_2 \
1621 ( \
1622  GPS_MODEL_IS_MSF | \
1623  GPS_MODEL_HAS_TIME_TTM | \
1624  GPS_MODEL_HAS_TZDL | \
1625  GPS_MODEL_HAS_ANT_INFO | \
1626  GPS_MODEL_HAS_ENABLE_FLAGS \
1627 )
1628 
1629 
1630 
1634 #define BUILTIN_FEAT_WVB_1 \
1635 ( \
1636  GPS_MODEL_IS_WWVB | \
1637  GPS_MODEL_HAS_TZCODE \
1638 )
1639 
1640 
1644 #define BUILTIN_FEAT_WVB_2 \
1645 ( \
1646  GPS_MODEL_IS_WWVB | \
1647  GPS_MODEL_HAS_TZDL \
1648 )
1649 
1650 
1651 
1655 #define BUILTIN_FEAT_JJY_1 \
1656 ( \
1657  GPS_MODEL_IS_JJY | \
1658  GPS_MODEL_HAS_TZCODE \
1659 )
1660 
1661 
1662 
1666 #define BUILTIN_FEAT_COMM_N2X \
1667 ( \
1668  GPS_MODEL_HAS_TIME_TTM | \
1669  GPS_MODEL_HAS_TZDL | \
1670  GPS_MODEL_HAS_ENABLE_FLAGS \
1671 )
1672 
1673 
1674 
1678 #define BUILTIN_FEAT_GPS_BUS_LVL ( BUILTIN_FEAT_GPS | GPS_MODEL_IS_BUS_LVL_DEV )
1679 
1680 
1684 #define BUILTIN_FEAT_GNSS_BUS_LVL ( BUILTIN_FEAT_GNSS | GPS_MODEL_IS_BUS_LVL_DEV )
1685 
1686 
1690 #define BUILTIN_FEAT_TCR_1_BUS_LVL ( BUILTIN_FEAT_TCR_1 | GPS_MODEL_IS_BUS_LVL_DEV )
1691 
1695 #define BUILTIN_FEAT_TCR_2_BUS_LVL ( BUILTIN_FEAT_TCR_2 | GPS_MODEL_IS_BUS_LVL_DEV )
1696 
1697 
1701 #define BUILTIN_FEAT_DCF_1_BUS_LVL ( BUILTIN_FEAT_DCF_1 | GPS_MODEL_IS_BUS_LVL_DEV )
1702 
1706 #define BUILTIN_FEAT_DCF_2_BUS_LVL ( BUILTIN_FEAT_DCF_2 | GPS_MODEL_IS_BUS_LVL_DEV )
1707 
1711 #define BUILTIN_FEAT_DCF_PZF_2_BUS_LVL ( BUILTIN_FEAT_DCF_PZF_2 | GPS_MODEL_IS_BUS_LVL_DEV )
1712 
1713 
1714 
1723 #define BUILTIN_FEAT_GPS166 ( BUILTIN_FEAT_GPS )
1724 #define BUILTIN_FEAT_GPS167 ( BUILTIN_FEAT_GPS )
1725 #define BUILTIN_FEAT_GPS167SV ( BUILTIN_FEAT_GPS )
1726 #define BUILTIN_FEAT_GPS167PC ( BUILTIN_FEAT_GPS_BUS_LVL )
1727 #define BUILTIN_FEAT_GPS167PCI ( BUILTIN_FEAT_GPS_BUS_LVL )
1728 #define BUILTIN_FEAT_GPS163 ( BUILTIN_FEAT_GPS )
1729 #define BUILTIN_FEAT_GPS168PCI ( BUILTIN_FEAT_GPS_BUS_LVL )
1730 #define BUILTIN_FEAT_GPS161 ( BUILTIN_FEAT_GPS )
1731 #define BUILTIN_FEAT_GPS169PCI ( BUILTIN_FEAT_GPS_BUS_LVL )
1732 #define BUILTIN_FEAT_TCR167PCI ( BUILTIN_FEAT_TCR_2_BUS_LVL )
1733 #define BUILTIN_FEAT_GPS164 ( BUILTIN_FEAT_GPS )
1734 #define BUILTIN_FEAT_GPS170PCI ( BUILTIN_FEAT_GPS_BUS_LVL )
1735 #define BUILTIN_FEAT_PZF511 ( BUILTIN_FEAT_DCF_PZF_1 )
1736 #define BUILTIN_FEAT_GPS170 ( BUILTIN_FEAT_GPS )
1737 #define BUILTIN_FEAT_TCR511 ( BUILTIN_FEAT_TCR_1_BUS_LVL | GPS_MODEL_HAS_TIME_TTM ) //### TODO Or full TCR_2?
1738 #define BUILTIN_FEAT_AM511 ( BUILTIN_FEAT_DCF_1 )
1739 #define BUILTIN_FEAT_MSF511 ( BUILTIN_FEAT_MSF_1 )
1740 #define BUILTIN_FEAT_GRC170 ( BUILTIN_FEAT_GNSS )
1741 #define BUILTIN_FEAT_GPS170PEX ( BUILTIN_FEAT_GPS_BUS_LVL )
1742 #define BUILTIN_FEAT_GPS162 ( BUILTIN_FEAT_GPS )
1743 #define BUILTIN_FEAT_PTP270PEX ( GPS_MODEL_IS_BUS_LVL_DEV )
1744 #define BUILTIN_FEAT_FRC511PEX ( GPS_MODEL_IS_BUS_LVL_DEV )
1745 #define BUILTIN_FEAT_GEN170 ( 0 )
1746 #define BUILTIN_FEAT_TCR170PEX ( BUILTIN_FEAT_TCR_2_BUS_LVL )
1747 #define BUILTIN_FEAT_WWVB511 ( BUILTIN_FEAT_WVB_1 )
1748 #define BUILTIN_FEAT_MGR170 ( 0 )
1749 #define BUILTIN_FEAT_JJY511 ( BUILTIN_FEAT_JJY_1 )
1750 #define BUILTIN_FEAT_PZF600 ( BUILTIN_FEAT_DCF_PZF_1 ) //### TODO Or full PZF_2?
1751 #define BUILTIN_FEAT_TCR600 ( BUILTIN_FEAT_TCR_1 | GPS_MODEL_HAS_TIME_TTM ) //### TODO Or full TCR_2?
1752 #define BUILTIN_FEAT_GPS180 ( BUILTIN_FEAT_GPS )
1753 #define BUILTIN_FEAT_GLN170 ( BUILTIN_FEAT_GNSS)
1754 #define BUILTIN_FEAT_GPS180PEX ( BUILTIN_FEAT_GPS_BUS_LVL )
1755 #define BUILTIN_FEAT_TCR180PEX ( BUILTIN_FEAT_TCR_2_BUS_LVL )
1756 #define BUILTIN_FEAT_PZF180PEX ( BUILTIN_FEAT_DCF_PZF_2_BUS_LVL )
1757 #define BUILTIN_FEAT_MGR180 ( 0 )
1758 #define BUILTIN_FEAT_MSF600 ( BUILTIN_FEAT_MSF_1 ) //### TODO Or full MSF_2?
1759 #define BUILTIN_FEAT_WWVB600 ( BUILTIN_FEAT_WVB_1 ) //### TODO Or full WVB_2?
1760 #define BUILTIN_FEAT_JJY600 ( BUILTIN_FEAT_JJY_1 ) //### TODO Or full JJY_2?
1761 #define BUILTIN_FEAT_GPS180HS ( BUILTIN_FEAT_GPS )
1762 #define BUILTIN_FEAT_GPS180AMC ( BUILTIN_FEAT_GPS_BUS_LVL )
1763 #define BUILTIN_FEAT_ESI180 ( 0 )
1764 #define BUILTIN_FEAT_CPE180 ( 0 )
1765 #define BUILTIN_FEAT_LNO180 ( 0 )
1766 #define BUILTIN_FEAT_GRC180 ( BUILTIN_FEAT_GNSS )
1767 #define BUILTIN_FEAT_LIU ( 0 )
1768 #define BUILTIN_FEAT_DCF600HS ( BUILTIN_FEAT_DCF_2 ) //### TODO
1769 #define BUILTIN_FEAT_DCF600RS ( BUILTIN_FEAT_DCF_2 ) //### TODO
1770 #define BUILTIN_FEAT_MRI ( 0 )
1771 #define BUILTIN_FEAT_BPE ( 0 )
1772 #define BUILTIN_FEAT_GLN180PEX ( BUILTIN_FEAT_GNSS_BUS_LVL )
1773 #define BUILTIN_FEAT_N2X ( BUILTIN_FEAT_COMM_N2X )
1774 #define BUILTIN_FEAT_RSC180 ( GPS_MODEL_HAS_SCU_STAT )
1775 #define BUILTIN_FEAT_LNE_GB ( 0 )
1776 #define BUILTIN_FEAT_PPG180 ( 0 )
1777 #define BUILTIN_FEAT_SCG ( 0 )
1778 #define BUILTIN_FEAT_MDU300 ( 0 )
1779 #define BUILTIN_FEAT_SDI ( 0 )
1780 #define BUILTIN_FEAT_FDM180 ( GPS_MODEL_HAS_TZDL | GPS_MODEL_HAS_ENABLE_FLAGS )
1781 #define BUILTIN_FEAT_SPT ( 0 )
1782 #define BUILTIN_FEAT_PZF180 ( BUILTIN_FEAT_DCF_PZF_2 )
1783 #define BUILTIN_FEAT_REL1000 ( 0 )
1784 #define BUILTIN_FEAT_HPS100 ( 0 )
1785 #define BUILTIN_FEAT_VSG180 ( GPS_MODEL_HAS_TZDL )
1786 #define BUILTIN_FEAT_MSF180 ( BUILTIN_FEAT_MSF_2 )
1787 #define BUILTIN_FEAT_WWVB180 ( BUILTIN_FEAT_WVB_2 )
1788 #define BUILTIN_FEAT_CPC180 ( 0 )
1789 #define BUILTIN_FEAT_CTC100 ( GPS_MODEL_HAS_MBG_OS )
1790 #define BUILTIN_FEAT_TCR180 ( BUILTIN_FEAT_TCR_2 )
1791 #define BUILTIN_FEAT_LUE180 ( 0 )
1792 #define BUILTIN_FEAT_CPC_01 ( 0 )
1793 #define BUILTIN_FEAT_TSU_01 ( 0 )
1794 #define BUILTIN_FEAT_CMC_01 ( 0 )
1795 #define BUILTIN_FEAT_SCU_01 ( 0 )
1796 #define BUILTIN_FEAT_FCU_01 ( 0 )
1797 #define BUILTIN_FEAT_CSM100 ( GPS_MODEL_HAS_MBG_OS )
1798 #define BUILTIN_FEAT_LNE180SFP ( 0 )
1799 #define BUILTIN_FEAT_GTS180 ( 0 )
1800 #define BUILTIN_FEAT_GPS180CSM ( BUILTIN_FEAT_GPS )
1801 #define BUILTIN_FEAT_GRC181 ( BUILTIN_FEAT_GNSS )
1802 #define BUILTIN_FEAT_N2X180 ( BUILTIN_FEAT_COMM_N2X )
1803 #define BUILTIN_FEAT_GNS181PEX ( BUILTIN_FEAT_GNSS_BUS_LVL )
1804 #define BUILTIN_FEAT_MDU180 ( GPS_MODEL_HAS_SCU_STAT )
1805 #define BUILTIN_FEAT_MDU312 ( 0 )
1806 #define BUILTIN_FEAT_GPS165 ( BUILTIN_FEAT_GPS )
1807 #define BUILTIN_FEAT_GNS181_UC ( BUILTIN_FEAT_GNSS | GPS_MODEL_HAS_UP_CONV )
1808 #define BUILTIN_FEAT_PSX_4GE ( GPS_MODEL_HAS_MBG_OS )
1809 #define BUILTIN_FEAT_RSC180RDU ( GPS_MODEL_HAS_SCU_STAT )
1810 #define BUILTIN_FEAT_USYNCPWR ( 0 )
1811 #define BUILTIN_FEAT_FDM180M ( GPS_MODEL_HAS_TZDL | GPS_MODEL_HAS_ENABLE_FLAGS )
1812 #define BUILTIN_FEAT_LSG180 ( 0 )
1813 #define BUILTIN_FEAT_GPS190 ( BUILTIN_FEAT_GPS )
1814 #define BUILTIN_FEAT_GNS181 ( BUILTIN_FEAT_GNSS )
1815 #define BUILTIN_FEAT_PIO180 ( 0 )
1816 #define BUILTIN_FEAT_FCM180 ( 0 )
1817 #define BUILTIN_FEAT_TCR180USB ( 0 )
1818 #define BUILTIN_FEAT_SSP100 ( GPS_MODEL_HAS_MBG_OS )
1819 #define BUILTIN_FEAT_GNS165 ( BUILTIN_FEAT_GNSS )
1820 #define BUILTIN_FEAT_RSC180RDMP ( GPS_MODEL_HAS_SCU_STAT )
1821 #define BUILTIN_FEAT_GPS16X ( BUILTIN_FEAT_GPS )
1822 #define BUILTIN_FEAT_MSHPS100 ( GPS_MODEL_HAS_MBG_OS )
1823 
1832 #define BUILTIN_FEAT_UNDEFINED ( 0 )
1833 
1838 #if !defined( MBG_TGT_DOS )
1839 
1848 #define GPS_MODEL_BUILTIN_FEATURES \
1849 { \
1850  { GPS_MODEL_GPS166, BUILTIN_FEAT_GPS166 }, \
1851  { GPS_MODEL_GPS167, BUILTIN_FEAT_GPS167 }, \
1852  { GPS_MODEL_GPS167SV, BUILTIN_FEAT_GPS167SV }, \
1853  { GPS_MODEL_GPS167PC, BUILTIN_FEAT_GPS167PC }, \
1854  { GPS_MODEL_GPS167PCI, BUILTIN_FEAT_GPS167PCI }, \
1855  { GPS_MODEL_GPS163, BUILTIN_FEAT_GPS163 }, \
1856  { GPS_MODEL_GPS168PCI, BUILTIN_FEAT_GPS168PCI }, \
1857  { GPS_MODEL_GPS161, BUILTIN_FEAT_GPS161 }, \
1858  { GPS_MODEL_GPS169PCI, BUILTIN_FEAT_GPS169PCI }, \
1859  { GPS_MODEL_TCR167PCI, BUILTIN_FEAT_TCR167PCI }, \
1860  { GPS_MODEL_GPS164, BUILTIN_FEAT_GPS164 }, \
1861  { GPS_MODEL_GPS170PCI, BUILTIN_FEAT_GPS170PCI }, \
1862  { GPS_MODEL_PZF511, BUILTIN_FEAT_PZF511 }, \
1863  { GPS_MODEL_GPS170, BUILTIN_FEAT_GPS170 }, \
1864  { GPS_MODEL_TCR511, BUILTIN_FEAT_TCR511 }, \
1865  { GPS_MODEL_AM511, BUILTIN_FEAT_AM511 }, \
1866  { GPS_MODEL_MSF511, BUILTIN_FEAT_MSF511 }, \
1867  { GPS_MODEL_GRC170, BUILTIN_FEAT_GRC170 }, \
1868  { GPS_MODEL_GPS170PEX, BUILTIN_FEAT_GPS170PEX }, \
1869  { GPS_MODEL_GPS162, BUILTIN_FEAT_GPS162 }, \
1870  { GPS_MODEL_PTP270PEX, BUILTIN_FEAT_PTP270PEX }, \
1871  { GPS_MODEL_FRC511PEX, BUILTIN_FEAT_FRC511PEX }, \
1872  { GPS_MODEL_GEN170, BUILTIN_FEAT_GEN170 }, \
1873  { GPS_MODEL_TCR170PEX, BUILTIN_FEAT_TCR170PEX }, \
1874  { GPS_MODEL_WWVB511, BUILTIN_FEAT_WWVB511 }, \
1875  { GPS_MODEL_MGR170, BUILTIN_FEAT_MGR170 }, \
1876  { GPS_MODEL_JJY511, BUILTIN_FEAT_JJY511 }, \
1877  { GPS_MODEL_PZF600, BUILTIN_FEAT_PZF600 }, \
1878  { GPS_MODEL_TCR600, BUILTIN_FEAT_TCR600 }, \
1879  { GPS_MODEL_GPS180, BUILTIN_FEAT_GPS180 }, \
1880  { GPS_MODEL_GLN170, BUILTIN_FEAT_GLN170 }, \
1881  { GPS_MODEL_GPS180PEX, BUILTIN_FEAT_GPS180PEX }, \
1882  { GPS_MODEL_TCR180PEX, BUILTIN_FEAT_TCR180PEX }, \
1883  { GPS_MODEL_PZF180PEX, BUILTIN_FEAT_PZF180PEX }, \
1884  { GPS_MODEL_MGR180, BUILTIN_FEAT_MGR180 }, \
1885  { GPS_MODEL_MSF600, BUILTIN_FEAT_MSF600 }, \
1886  { GPS_MODEL_WWVB600, BUILTIN_FEAT_WWVB600 }, \
1887  { GPS_MODEL_JJY600, BUILTIN_FEAT_JJY600 }, \
1888  { GPS_MODEL_GPS180HS, BUILTIN_FEAT_GPS180HS }, \
1889  { GPS_MODEL_GPS180AMC, BUILTIN_FEAT_GPS180AMC }, \
1890  { GPS_MODEL_ESI180, BUILTIN_FEAT_ESI180 }, \
1891  { GPS_MODEL_CPE180, BUILTIN_FEAT_CPE180 }, \
1892  { GPS_MODEL_LNO180, BUILTIN_FEAT_LNO180 }, \
1893  { GPS_MODEL_GRC180, BUILTIN_FEAT_GRC180 }, \
1894  { GPS_MODEL_LIU, BUILTIN_FEAT_LIU }, \
1895  { GPS_MODEL_DCF600HS, BUILTIN_FEAT_DCF600HS }, \
1896  { GPS_MODEL_DCF600RS, BUILTIN_FEAT_DCF600RS }, \
1897  { GPS_MODEL_MRI, BUILTIN_FEAT_MRI }, \
1898  { GPS_MODEL_BPE, BUILTIN_FEAT_BPE }, \
1899  { GPS_MODEL_GLN180PEX, BUILTIN_FEAT_GLN180PEX }, \
1900  { GPS_MODEL_N2X, BUILTIN_FEAT_N2X }, \
1901  { GPS_MODEL_RSC180, BUILTIN_FEAT_RSC180 }, \
1902  { GPS_MODEL_LNE_GB, BUILTIN_FEAT_LNE_GB }, \
1903  { GPS_MODEL_PPG180, BUILTIN_FEAT_PPG180 }, \
1904  { GPS_MODEL_SCG, BUILTIN_FEAT_SCG }, \
1905  { GPS_MODEL_MDU300, BUILTIN_FEAT_MDU300 }, \
1906  { GPS_MODEL_SDI, BUILTIN_FEAT_SDI }, \
1907  { GPS_MODEL_FDM180, BUILTIN_FEAT_FDM180 }, \
1908  { GPS_MODEL_SPT, BUILTIN_FEAT_SPT }, \
1909  { GPS_MODEL_PZF180, BUILTIN_FEAT_PZF180 }, \
1910  { GPS_MODEL_REL1000, BUILTIN_FEAT_REL1000 }, \
1911  { GPS_MODEL_HPS100, BUILTIN_FEAT_HPS100 }, \
1912  { GPS_MODEL_VSG180, BUILTIN_FEAT_VSG180 }, \
1913  { GPS_MODEL_MSF180, BUILTIN_FEAT_MSF180 }, \
1914  { GPS_MODEL_WWVB180, BUILTIN_FEAT_WWVB180 }, \
1915  { GPS_MODEL_CPC180, BUILTIN_FEAT_CPC180 }, \
1916  { GPS_MODEL_CTC100, BUILTIN_FEAT_CTC100 }, \
1917  { GPS_MODEL_TCR180, BUILTIN_FEAT_TCR180 }, \
1918  { GPS_MODEL_LUE180, BUILTIN_FEAT_LUE180 }, \
1919  { GPS_MODEL_CPC_01, BUILTIN_FEAT_CPC_01 }, \
1920  { GPS_MODEL_TSU_01, BUILTIN_FEAT_TSU_01 }, \
1921  { GPS_MODEL_CMC_01, BUILTIN_FEAT_CMC_01 }, \
1922  { GPS_MODEL_SCU_01, BUILTIN_FEAT_SCU_01 }, \
1923  { GPS_MODEL_FCU_01, BUILTIN_FEAT_FCU_01 }, \
1924  { GPS_MODEL_CSM100, BUILTIN_FEAT_CSM100 }, \
1925  { GPS_MODEL_LNE180SFP, BUILTIN_FEAT_LNE180SFP }, \
1926  { GPS_MODEL_GTS180, BUILTIN_FEAT_GTS180 }, \
1927  { GPS_MODEL_GPS180CSM, BUILTIN_FEAT_GPS180CSM }, \
1928  { GPS_MODEL_GRC181, BUILTIN_FEAT_GRC181 }, \
1929  { GPS_MODEL_N2X180, BUILTIN_FEAT_N2X180 }, \
1930  { GPS_MODEL_GNS181PEX, BUILTIN_FEAT_GNS181PEX }, \
1931  { GPS_MODEL_MDU180, BUILTIN_FEAT_MDU180 }, \
1932  { GPS_MODEL_MDU312, BUILTIN_FEAT_MDU312 }, \
1933  { GPS_MODEL_GPS165, BUILTIN_FEAT_GPS165 }, \
1934  { GPS_MODEL_GNS181_UC, BUILTIN_FEAT_GNS181_UC }, \
1935  { GPS_MODEL_PSX_4GE, BUILTIN_FEAT_PSX_4GE }, \
1936  { GPS_MODEL_RSC180RDU, BUILTIN_FEAT_RSC180RDU }, \
1937  { GPS_MODEL_USYNCPWR, BUILTIN_FEAT_USYNCPWR }, \
1938  { GPS_MODEL_FDM180M, BUILTIN_FEAT_FDM180M }, \
1939  { GPS_MODEL_LSG180, BUILTIN_FEAT_LSG180 }, \
1940  { GPS_MODEL_GPS190, BUILTIN_FEAT_GPS190 }, \
1941  { GPS_MODEL_GNS181, BUILTIN_FEAT_GNS181 }, \
1942  { GPS_MODEL_PIO180, BUILTIN_FEAT_PIO180 }, \
1943  { GPS_MODEL_FCM180, BUILTIN_FEAT_FCM180 }, \
1944  { GPS_MODEL_TCR180USB, BUILTIN_FEAT_TCR180USB }, \
1945  { GPS_MODEL_SSP100, BUILTIN_FEAT_SSP100 }, \
1946  { GPS_MODEL_GNS165, BUILTIN_FEAT_GNS165 }, \
1947  { GPS_MODEL_RSC180RDMP, BUILTIN_FEAT_RSC180RDMP }, \
1948  { GPS_MODEL_GPS16X, BUILTIN_FEAT_GPS16X }, \
1949  { GPS_MODEL_MSHPS100, BUILTIN_FEAT_MSHPS100 }, \
1950  { 0, 0 } \
1951 }
1952 
1953 #endif // !defined( MBG_TGT_DOS )
1954 
1971 #define _setup_default_receiver_info_dcf( _p, _pdev ) \
1972 do \
1973 { \
1974  memset( (_p), 0, sizeof( *(_p) ) ); \
1975  \
1976  (_p)->ticks_per_sec = DEFAULT_GPS_TICKS_PER_SEC; \
1977  (_p)->n_ucaps = 0; \
1978  (_p)->n_com_ports = _pcps_has_serial( _pdev ) ? 1 : 0; \
1979  (_p)->n_str_type = ( (_p)->n_com_ports != 0 ) ? \
1980  DEFAULT_N_STR_TYPE_DCF : 0; \
1981 } while ( 0 )
1982 
1983 
1984 
1996 #define _setup_default_receiver_info_gps( _p ) \
1997 do \
1998 { \
1999  memset( (_p), 0, sizeof( *(_p) ) ); \
2000  \
2001  (_p)->ticks_per_sec = DEFAULT_GPS_TICKS_PER_SEC; \
2002  (_p)->n_ucaps = 2; \
2003  (_p)->n_com_ports = DEFAULT_N_COM; \
2004  (_p)->n_str_type = DEFAULT_N_STR_TYPE_GPS; \
2005 } while ( 0 )
2006 
2007 
2008 
2009 /*
2010  * The macros below can be used to classify a receiver,
2011  * e.g. depending on the time source and/or depending on
2012  * whether it's a plug-in card or an external device.
2013  */
2014 
2015 #define _mbg_rcvr_is_plug_in( _p_ri ) \
2016  ( strstr( (_p_ri)->model_name, "PC" ) || \
2017  strstr( (_p_ri)->model_name, "PEX" ) )
2018 
2019 #define _mbg_rcvr_is_gps( _p_ri ) \
2020  ( strstr( (_p_ri)->model_name, "GPS" ) || \
2021  strstr( (_p_ri)->model_name, "MGR" ) )
2022 
2023 #define _mbg_rcvr_is_mobile_gps( _p_ri ) \
2024  ( strstr( (_p_ri)->model_name, "MGR" ) )
2025 
2026 #define _mbg_rcvr_is_gps_plug_in( _p_ri ) \
2027  ( _mbg_rcvr_is_gps( _p_ri ) && \
2028  _mbg_rcvr_is_plug_in( _p_ri ) )
2029 
2030 #define _mbg_rcvr_is_irig( _p_ri ) \
2031  ( strstr( (_p_ri)->model_name, "TCR" ) )
2032 
2033 #define _mbg_rcvr_is_irig_plug_in( _p_ri ) \
2034  ( _mbg_rcvr_is_irig( _p_ri ) && \
2035  _mbg_rcvr_is_plug_in( _p_ri ) )
2036 
2037 #define _mbg_rcvr_is_dcf77_am( _p_ri ) \
2038  ( strstr( (_p_ri)->model_name, "AM" ) )
2039 
2040 #define _mbg_rcvr_is_dcf77_am_plug_in( _p_ri ) \
2041  ( _mbg_rcvr_is_dcf77_am( _p_ri ) && \
2042  _mbg_rcvr_is_plug_in( _p_ri ) )
2043 
2044 #define _mbg_rcvr_is_dcf77_pzf( _p_ri ) \
2045  ( strstr( (_p_ri)->model_name, "PZF" ) )
2046 
2047 #define _mbg_rcvr_is_dcf77_pzf_plug_in( _p_ri ) \
2048  ( _mbg_rcvr_is_dcf77_pzf( _p_ri ) && \
2049  _mbg_rcvr_is_plug_in( _p_ri ) )
2050 
2051 #define _mbg_rcvr_is_any_dcf77( _p_ri ) \
2052  ( _mbg_rcvr_is_dcf77_am( _p_ri ) || \
2053  _mbg_rcvr_is_dcf77_pzf( _p_ri ) )
2054 
2055 #define _mbg_rcvr_is_any_dcf77_plug_in( _p_ri ) \
2056  ( _mbg_rcvr_is_any_dcf77( _p_ri ) && \
2057  _mbg_rcvr_is_plug_in( _p_ri ) )
2058 
2059 #define _mbg_rcvr_is_msf( _p_ri ) \
2060  ( strstr( (_p_ri)->model_name, "MSF" ) )
2061 
2062 #define _mbg_rcvr_is_jjy( _p_ri ) \
2063  ( strstr( (_p_ri)->model_name, "JJY" ) )
2064 
2065 #define _mbg_rcvr_is_msf_plug_in( _p_ri ) \
2066  ( _mbg_rcvr_is_msf( _p_ri ) && \
2067  _mbg_rcvr_is_plug_in( _p_ri ) )
2068 
2069 #define _mbg_rcvr_is_glonass( _p_ri ) \
2070  ( strstr( (_p_ri)->model_name, "GRC" ) || \
2071  strstr( (_p_ri)->model_name, "GLN" ) )
2072 
2073 #define _mbg_rcvr_is_glonass_plug_in( _p_ri ) \
2074  ( _mbg_rcvr_is_glonass( _p_ri ) && \
2075  _mbg_rcvr_is_plug_in( _p_ri ) )
2076 
2077 #define _mbg_rcvr_is_wwvb( _p_ri ) \
2078  ( strstr( (_p_ri)->model_name, "WWVB" ) )
2079 
2080 #define _mbg_rcvr_is_wwvb_plug_in( _p_ri ) \
2081  ( _mbg_rcvr_is_wwvb( _p_ri ) && \
2082  _mbg_rcvr_is_plug_in( _p_ri ) )
2083 
2084 
2085 
2096 {
2109 };
2110 
2111 
2121 #define DEFAULT_GPS_OSC_NAMES \
2122 { \
2123  "[unknown]", \
2124  "TCXO LQ", \
2125  "TCXO", \
2126  "OCXO LQ", \
2127  "OCXO MQ", \
2128  "OCXO HQ", \
2129  "OCXO XHQ", \
2130  "RUBIDIUM", \
2131  "TCXO MQ", \
2132  "OCXO DHQ", \
2133  "OCXO SQ" \
2134 }
2135 
2136 
2148 #define DEFAULT_GPS_OSC_QUALITY_IDX \
2149 { \
2150  GPS_OSC_UNKNOWN, \
2151  GPS_OSC_TCXO_LQ, \
2152  GPS_OSC_TCXO_MQ, \
2153  GPS_OSC_TCXO_HQ, \
2154  GPS_OSC_OCXO_LQ, \
2155  GPS_OSC_OCXO_SQ, \
2156  GPS_OSC_OCXO_MQ, \
2157  GPS_OSC_OCXO_HQ, \
2158  GPS_OSC_OCXO_DHQ, \
2159  GPS_OSC_OCXO_XHQ, \
2160  GPS_OSC_RUBIDIUM \
2161 }
2162 
2163 
2164 
2182 {
2191 
2200 
2209 
2219 
2220  // WARNING: There are no more unassigned feature bits available here.
2221  // New features have to be defined using the ::MBG_XFEATURE_BITS
2222 };
2223 
2224 
2230 #define DEFAULT_GPS_FEATURE_NAMES \
2231 { \
2232  "Pulse Per Second", \
2233  "Pulse Per Minute", \
2234  "Programmable Synth.", \
2235  "DCF77 Time Marks", \
2236  "IRIG Out", \
2237  "IRIG In", \
2238  "IPv4 LAN Interface", \
2239  "Multiple Ref. Sources", \
2240  "Receive Timeout", \
2241  "Ignore Lock", \
2242  "5 MHz Output", \
2243  "Ext. Multiple Ref. Src. Cfg.", \
2244  "Optional Settings", \
2245  "Configurable Time Scale", \
2246  "IRIG Control Bits", \
2247  "PTP/IEEE1588", \
2248  "Nav. Engine Settings", \
2249  "Raw IRIG Data", \
2250  "Raw IRIG Time", \
2251  "PTP/IEEE1588 Unicast", \
2252  "General Purpose I/O", \
2253  "Multiple XMRS Instances", \
2254  "10 MHz Output Disabled", \
2255  "Event Logging", \
2256  "IMS data", \
2257  "HaveQuick", \
2258  "NTP", \
2259  "Ext. Network Config", \
2260  "Versatile Storage", \
2261  "SHS", \
2262  "Extended Binary Protocol", \
2263  "Extended Features" \
2264 }
2265 
2266 
2274 #define GPS_HAS_PPS ( 1UL << GPS_FEAT_PPS )
2275 #define GPS_HAS_PPM ( 1UL << GPS_FEAT_PPM )
2276 #define GPS_HAS_SYNTH ( 1UL << GPS_FEAT_SYNTH )
2277 #define GPS_HAS_DCFMARKS ( 1UL << GPS_FEAT_DCFMARKS )
2278 #define GPS_HAS_IRIG_TX ( 1UL << GPS_FEAT_IRIG_TX )
2279 #define GPS_HAS_IRIG_RX ( 1UL << GPS_FEAT_IRIG_RX )
2280 #define GPS_HAS_LAN_IP4 ( 1UL << GPS_FEAT_LAN_IP4 )
2281 #define GPS_HAS_MULTI_REF ( 1UL << GPS_FEAT_MULTI_REF )
2282 
2283 #define GPS_HAS_RCV_TIMEOUT ( 1UL << GPS_FEAT_RCV_TIMEOUT )
2284 #define GPS_HAS_IGNORE_LOCK ( 1UL << GPS_FEAT_IGNORE_LOCK )
2285 #define GPS_HAS_5_MHZ ( 1UL << GPS_FEAT_5_MHZ )
2286 #define GPS_HAS_XMULTI_REF ( 1UL << GPS_FEAT_XMULTI_REF )
2287 #define GPS_HAS_OPT_SETTINGS ( 1UL << GPS_FEAT_OPT_SETTINGS )
2288 #define GPS_HAS_TIME_SCALE ( 1UL << GPS_FEAT_TIME_SCALE )
2289 #define GPS_HAS_IRIG_CTRL_BITS ( 1UL << GPS_FEAT_IRIG_CTRL_BITS )
2290 #define GPS_HAS_PTP ( 1UL << GPS_FEAT_PTP )
2291 
2292 #define GPS_HAS_NAV_ENGINE_SETTINGS ( 1UL << GPS_FEAT_NAV_ENGINE_SETTINGS )
2293 #define GPS_HAS_RAW_IRIG_DATA ( 1UL << GPS_FEAT_RAW_IRIG_DATA )
2294 #define GPS_HAS_RAW_IRIG_TIME ( 1UL << GPS_FEAT_RAW_IRIG_TIME )
2295 #define GPS_HAS_PTP_UNICAST ( 1UL << GPS_FEAT_PTP_UNICAST )
2296 #define GPS_HAS_GPIO ( 1UL << GPS_FEAT_GPIO )
2297 #define GPS_HAS_XMRS_MULT_INSTC ( 1UL << GPS_FEAT_XMRS_MULT_INSTC )
2298 #define GPS_HAS_10MHZ_DISBD ( 1UL << GPS_FEAT_10MHZ_DISBD )
2299 #define GPS_HAS_EVT_LOG ( 1UL << GPS_FEAT_EVT_LOG )
2300 
2301 #define GPS_HAS_IMS ( 1UL << GPS_FEAT_IMS )
2302 #define GPS_HAS_HAVEQUICK ( 1UL << GPS_FEAT_HAVEQUICK )
2303 #define GPS_HAS_NTP ( 1UL << GPS_FEAT_NTP )
2304 #define GPS_HAS_NET_CFG ( 1UL << GPS_FEAT_NET_CFG )
2305 #define GPS_HAS_VST ( 1UL << GPS_FEAT_VST )
2306 #define GPS_HAS_SHS ( 1UL << GPS_FEAT_SHS )
2307 #define GPS_HAS_XBP ( 1UL << GPS_FEAT_XBP )
2308 #define GPS_HAS_XFEATURE ( 1UL << GPS_FEAT_XFEATURE )
2309 
2310 // the next ones are special since they just shadow another flag:
2311 #define GPS_HAS_REF_OFFS GPS_HAS_IRIG_RX
2312 #define GPS_HAS_DEBUG_STATUS GPS_HAS_IRIG_RX
2313 
2314 
2333 #define MAX_XFEATURE_BITS 1024
2334 
2335 
2336 
2344 {
2370  // NOTE If new features are appended here then an appropriate feature
2371  // name string has to be appended to ::MBG_XFEATURE_NAMES, and care must
2372  // be taken that ::N_MBG_XFEATURE doesn't exceed ::MAX_XFEATURE_BITS.
2373 };
2374 
2375 
2376 
2385 #define MBG_XFEATURE_NAMES \
2386 { \
2387  "Generic TLV API", \
2388  "Save Config On Card", \
2389  "Programmable LED API", \
2390  "LNE API", \
2391  "Power Control API", \
2392  "Extended Revision Info", \
2393  "Transaction commands", \
2394  "Reboot Command", \
2395  "Clock Resolution Info", \
2396  "Extended User Captures", \
2397  "Request TTM", \
2398  "I/O Ports", \
2399  "Monitoring", \
2400  "XHE Unit", \
2401  "Tainted Config", \
2402  "Push Messages", \
2403  "User Authentication", \
2404  "User Management", \
2405  "Service Management", \
2406  "Antenna Converter", \
2407  "Firmware Management", \
2408  "DAC control via bus", \
2409  "Database", \
2410  "GNSS Messages" \
2411 }
2412 
2413 
2414 
2421 #define MAX_XFEATURE_BYTES ( MAX_XFEATURE_BITS / 8 )
2422 
2423 
2424 
2438 typedef struct
2439 {
2441 
2443 
2444 
2445 
2455 #define _set_xfeature_bit( _xf_bit, _xf_buffp ) \
2456  _set_array_bit( _xf_bit, (_xf_buffp)->b, MAX_XFEATURE_BYTES )
2457 
2458 
2463 /*
2464  * The features below are supported by default by older
2465  * C166 based GPS receivers:
2466  */
2467 #define DEFAULT_GPS_FEATURES_C166 \
2468 { \
2469  GPS_HAS_PPS | \
2470  GPS_HAS_PPM | \
2471  GPS_HAS_SYNTH | \
2472  GPS_HAS_DCFMARKS \
2473 }
2474 
2475 
2480 {
2485 };
2486 
2487 
2492 {
2496 };
2497 
2498 
2499 
2500 /*
2501  * If the ::GPS_HAS_FPGA flag is set in ::RECEIVER_INFO::flags then the card
2502  * provides an FPGA and the following information about the FPGA is available:
2503  */
2504 #define FPGA_NAME_LEN 31 // max name length
2505 #define FPGA_NAME_SIZE ( FPGA_NAME_LEN + 1 ) // size including trailing 0
2506 
2507 #define FPGA_INFO_SIZE 128
2508 
2509 typedef union
2510 {
2511  struct
2512  {
2514  uint32_t fsize;
2515  uint32_t start_addr;
2516  char name[FPGA_NAME_SIZE];
2517  } hdr;
2518 
2520 
2521 } FPGA_INFO;
2522 
2523 
2524 
2525 /*
2526  * The definitions below are used to specify where a FPGA image is located
2527  * in the flash memory:
2528  */
2529 typedef struct
2530 {
2532  uint16_t fpga_start_seg; // Number of the 4k block where an FPGA image is located
2533 
2534 } FPGA_START_INFO;
2535 
2536 #define DEFAULT_FPGA_START_SEG 0x60
2537 
2538 #define DEFAULT_FPGA_START_INFO \
2539 { \
2540  0x1234 + DEFAULT_FPGA_START_SEG, \
2541  DEFAULT_FPGA_START_SEG \
2542 }
2543 
2544 
2545 
2563 typedef struct
2564 {
2566  uint32_t sec;
2567  uint32_t tick;
2568 
2569 } T_GPS;
2570 
2571 #define _mbg_swab_t_gps( _p ) \
2572 do \
2573 { \
2574  _mbg_swab16( &(_p)->wn ); \
2575  _mbg_swab32( &(_p)->sec ); \
2576  _mbg_swab32( &(_p)->tick ); \
2577 } while ( 0 )
2578 
2579 
2593 typedef struct
2594 {
2603  int32_t frac;
2604  int32_t offs_from_utc;
2606 
2607 } TM_GPS;
2608 
2609 #define _mbg_swab_tm_gps( _p ) \
2610 do \
2611 { \
2612  _mbg_swab16( &(_p)->year ); \
2613  _mbg_swab16( &(_p)->yday ); \
2614  _mbg_swab32( &(_p)->frac ); \
2615  _mbg_swab32( &(_p)->offs_from_utc ); \
2616  _mbg_swab16( &(_p)->status ); \
2617 } while ( 0 )
2618 
2619 
2629 {
2638 
2647 };
2648 
2649 
2659 {
2660  TM_UTC = ( 1UL << TM_BIT_UTC ),
2667  TM_INVT = ( 1UL << TM_BIT_INVT ),
2668 
2677 };
2678 
2679 
2680 
2684 typedef uint32_t TM_STATUS_EXT;
2685 
2692 {
2695  // the remaining bits are reserved
2696 };
2697 
2698 // The following bits are only used with the ::TM_STATUS_X type:
2699 #define TM_SCALE_GPS ( 1UL << TM_BIT_SCALE_GPS )
2700 #define TM_SCALE_TAI ( 1UL << TM_BIT_SCALE_TAI )
2701 
2702 #define TM_MSK_TIME_VALID ( TM_UTC | TM_SCALE_GPS | TM_SCALE_TAI )
2703 
2704 
2713 typedef struct
2714 {
2718 
2719 } TTM;
2720 
2721 #define _mbg_swab_ttm( _p ) \
2722 do \
2723 { \
2724  _mbg_swab16( &(_p)->channel ); \
2725  _mbg_swab_t_gps( &(_p)->t ); \
2726  _mbg_swab_tm_gps( &(_p)->tm ); \
2727 } while ( 0 )
2728 
2729 
2730 
2731 #ifndef _XYZ_DEFINED
2732 
2735  enum XYZ_FIELDS { XP, YP, ZP, N_XYZ }; // x, y, z
2736 
2742  typedef double XYZ[N_XYZ];
2743 
2744  #define _XYZ_DEFINED
2745 #endif
2746 
2747 #define _mbg_swab_xyz( _p ) _mbg_swab_doubles( _p, N_XYZ )
2748 
2749 
2750 #ifndef _LLA_DEFINED
2751 
2754  enum LLA_FIELDS { LAT, LON, ALT, N_LLA }; /* latitude, longitude, altitude */
2755 
2764  typedef double LLA[N_LLA];
2765 
2766  #define _LLA_DEFINED
2767 #endif
2768 
2769 #define _mbg_swab_lla( _p ) _mbg_swab_doubles( _p, N_LLA )
2770 
2771 
2803 #define N_SYNTH_FREQ_DIGIT 4
2804 #define MAX_SYNTH_FREQ 1000
2805 
2806 #define MIN_SYNTH_RANGE 0
2807 #define MAX_SYNTH_RANGE 5
2808 #define N_SYNTH_RANGE ( MAX_SYNTH_RANGE - MIN_SYNTH_RANGE + 1 )
2809 
2810 #define N_SYNTH_PHASE_DIGIT 4
2811 #define MAX_SYNTH_PHASE 3600
2812 
2813 
2814 #define MAX_SYNTH_FREQ_EDIT 9999
2815 
2816 
2820 #define MAX_SYNTH_FREQ_VAL 10000000UL
2821 /* == MAX_SYNTH_FREQ * 10^(MAX_SYNTH_RANGE-1) */
2822 
2826 #define SYNTH_PHASE_SYNC_LIMIT 10000UL
2827 
2828 
2832 #define _synth_dp_pos_from_range( _r ) \
2833  ( ( ( N_SYNTH_RANGE - (_r) ) % ( N_SYNTH_FREQ_DIGIT - 1 ) ) + 1 )
2834 
2841 #define DEFAULT_FREQ_RANGES \
2842 { \
2843  "Hz", \
2844  "kHz", \
2845  "kHz", \
2846  "kHz", \
2847  "MHz", \
2848  "MHz", \
2849 }
2850 
2851 
2852 
2856 typedef struct
2857 {
2861 
2862 } SYNTH;
2863 
2864 #define _mbg_swab_synth( _p ) \
2865 do \
2866 { \
2867  _mbg_swab16( &(_p)->freq ); \
2868  _mbg_swab16( &(_p)->range ); \
2869  _mbg_swab16( &(_p)->phase ); \
2870 } while ( 0 )
2871 
2872 
2877 {
2884 };
2885 
2886 
2890 typedef struct
2891 {
2894 
2895 } SYNTH_STATE;
2896 
2897 #define _mbg_swab_synth_state( _p ) _nop_macro_fnc()
2898 
2899 #define SYNTH_FLAG_PHASE_IGNORED 0x01
2900 
2925 typedef char TZ_NAME[6];
2926 
2940 typedef struct
2941 {
2942  int32_t offs;
2943  int32_t offs_dl;
2946  TZ_NAME name[2];
2947 
2948 } TZDL;
2949 
2950 #define _mbg_swab_tzdl( _p ) \
2951 do \
2952 { \
2953  _mbg_swab32( &(_p)->offs ); \
2954  _mbg_swab32( &(_p)->offs_dl ); \
2955  _mbg_swab_tm_gps( &(_p)->tm_on ); \
2956  _mbg_swab_tm_gps( &(_p)->tm_off ); \
2957 } while ( 0 )
2958 
2959 
2966 #define DL_AUTO_FLAG 0x8000
2967 
2968 
2969 
2970 // Below there are some initializers for commonly used TZDL configurations:
2971 
2972 #define DEFAULT_TZDL_AUTO_YEAR ( (int16_t) ( 2007L | DL_AUTO_FLAG ) )
2973 
2974 #define DEFAULt_TZDL_OFFS_DL 3600L
2975 
2976 
2981 #define DEFAULT_TZDL_TM_ON_OFF_NO_DST \
2982  { DEFAULT_TZDL_AUTO_YEAR, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0 }
2983 
2984 
2985 // Settings used with %UTC:
2986 
2987 #define TZ_INFO_UTC "UTC (Universal Time, Coordinated)"
2988 
2989 #define DEFAULT_TZDL_NAMES_UTC { "UTC ", "UTC " }
2990 
2991 #define DEFAULT_TZDL_UTC \
2992 { \
2993  0L, /* offs */ \
2994  0L, /* offs_dl */ \
2995  DEFAULT_TZDL_TM_ON_OFF_NO_DST, /* tm_on */ \
2996  DEFAULT_TZDL_TM_ON_OFF_NO_DST, /* tm_off */ \
2997  DEFAULT_TZDL_NAMES_UTC /* name */ \
2998 }
2999 
3000 
3004 #define DEFAULT_TZDL_TM_ON_CET_CEST \
3005  { DEFAULT_TZDL_AUTO_YEAR, 3, 25, 0, 0, 2, 0, 0, 0L, 0L, 0 }
3006 
3010 #define DEFAULT_TZDL_TM_OFF_CET_CEST \
3011  { DEFAULT_TZDL_AUTO_YEAR, 10, 25, 0, 0, 3, 0, 0, 0L, 0L, 0 }
3012 
3013 
3014 // Settings used with Central European Time:
3015 
3016 #define TZ_INFO_CET_CEST_EN "CET/CEST (Central Europe)"
3017 #define TZ_INFO_CET_CEST_DE "MEZ/MESZ (Mitteleuropa)"
3018 
3019 #define DEFAULT_TZDL_NAMES_CET_CEST_EN { "CET ", "CEST " }
3020 #define DEFAULT_TZDL_NAMES_CET_CEST_DE { "MEZ ", "MESZ " }
3021 
3022 #define DEFAULT_TZDL_OFFS_CET 3600L
3023 
3024 #define DEFAULT_TZDL_CET_CEST_EN \
3025 { \
3026  DEFAULT_TZDL_OFFS_CET, /* offs */ \
3027  DEFAULt_TZDL_OFFS_DL, /* offs_dl */ \
3028  DEFAULT_TZDL_TM_ON_CET_CEST, /* tm_on */ \
3029  DEFAULT_TZDL_TM_OFF_CET_CEST, /* tm_off */ \
3030  DEFAULT_TZDL_NAMES_CET_CEST_EN /* name */ \
3031 }
3032 
3033 #define DEFAULT_TZDL_CET_CEST_DE \
3034 { \
3035  DEFAULT_TZDL_OFFS_CET, /* offs */ \
3036  DEFAULt_TZDL_OFFS_DL, /* offs_dl */ \
3037  DEFAULT_TZDL_TM_ON_CET_CEST, /* tm_on */ \
3038  DEFAULT_TZDL_TM_OFF_CET_CEST, /* tm_off */ \
3039  DEFAULT_TZDL_NAMES_CET_CEST_DE /* name */ \
3040 }
3041 
3042 
3043 // The symbols below specify beginning and end of DST for
3044 // Easter Europe, as constituted by the European Parliament:
3045 
3046 #define DEFAULT_TZDL_TM_ON_EET_EEST \
3047  { DEFAULT_TZDL_AUTO_YEAR, 3, 25, 0, 0, 3, 0, 0, 0L, 0L, 0 }
3048 
3049 #define DEFAULT_TZDL_TM_OFF_EET_EEST \
3050  { DEFAULT_TZDL_AUTO_YEAR, 10, 25, 0, 0, 4, 0, 0, 0L, 0L, 0 }
3051 
3052 
3053 // Settings used with Eastern European Time:
3054 
3055 #define TZ_INFO_EET_EEST_EN "EET/EEST (East Europe)"
3056 #define TZ_INFO_EET_EEST_DE "OEZ/OEST (Osteuropa)"
3057 
3058 #define DEFAULT_TZDL_NAMES_EET_EEST_EN { "EET ", "EEST " }
3059 #define DEFAULT_TZDL_NAMES_EET_EEST_DE { "OEZ ", "OESZ " }
3060 
3061 #define DEFAULT_TZDL_OFFS_EET 7200L
3062 
3063 #define DEFAULT_TZDL_EET_EEST_EN \
3064 { \
3065  DEFAULT_TZDL_OFFS_EET, /* offs */ \
3066  DEFAULt_TZDL_OFFS_DL, /* offs_dl */ \
3067  DEFAULT_TZDL_TM_ON_EET_EEST, /* tm_on */ \
3068  DEFAULT_TZDL_TM_OFF_EET_EEST, /* tm_off */ \
3069  DEFAULT_TZDL_NAMES_EET_EEST_EN /* name */ \
3070 }
3071 
3072 #define DEFAULT_TZDL_EET_EEST_DE \
3073 { \
3074  DEFAULT_TZDL_OFFS_EET, /* offs */ \
3075  DEFAULt_TZDL_OFFS_DL, /* offs_dl */ \
3076  DEFAULT_TZDL_TM_ON_EET_EEST, /* tm_on */ \
3077  DEFAULT_TZDL_TM_OFF_EET_EEST, /* tm_off */ \
3078  DEFAULT_TZDL_NAMES_EET_EEST_DE /* name */ \
3079 }
3080 
3100 typedef struct
3101 {
3105  int32_t delta_t;
3106 
3107 } ANT_INFO;
3108 
3109 #define _mbg_swab_ant_info( _p ) \
3110 do \
3111 { \
3112  _mbg_swab16( &(_p)->status ); \
3113  _mbg_swab_tm_gps( &(_p)->tm_disconn ); \
3114  _mbg_swab_tm_gps( &(_p)->tm_reconn ); \
3115  _mbg_swab32( &(_p)->delta_t ); \
3116 } while ( 0 )
3117 
3118 
3123 {
3128 };
3129 
3130 
3131 
3142 typedef struct
3143 {
3148 
3149 } ENABLE_FLAGS;
3150 
3151 #define _mbg_swab_enable_flags( _p ) \
3152 do \
3153 { \
3154  _mbg_swab16( &(_p)->serial ); \
3155  _mbg_swab16( &(_p)->pulses ); \
3156  _mbg_swab16( &(_p)->freq ); \
3157  _mbg_swab16( &(_p)->synth ); \
3158 } while ( 0 )
3159 
3160 
3165 {
3166  EF_OFF = 0x00,
3167 
3170  EF_FREQ_ALL = 0x07,
3171  EF_SYNTH = 0x01
3172 };
3173 
3174 
3175 
3176 #ifndef _COM_HS_DEFINED
3177 
3181  #define _COM_HS_DEFINED
3182 #endif
3183 
3184 #ifndef _COM_PARM_DEFINED
3185 
3190  typedef int32_t BAUD_RATE;
3191 
3198 
3202  typedef struct
3203  {
3204  BAUD_RATE baud_rate;
3205  char framing[4];
3207 
3208  } COM_PARM;
3209 
3210  #define _COM_PARM_DEFINED
3211 #endif
3212 
3213 #define _mbg_swab_baud_rate( _p ) _mbg_swab32( _p )
3214 
3215 #define _mbg_swab_com_parm( _p ) \
3216 do \
3217 { \
3218  _mbg_swab_baud_rate( &(_p)->baud_rate ); \
3219  _mbg_swab16( &(_p)->handshake ); \
3220 } while ( 0 )
3221 
3222 
3232 {
3247 };
3248 
3259 #define MBG_BAUD_RATES \
3260 { \
3261  300L, \
3262  600L, \
3263  1200L, \
3264  2400L, \
3265  4800L, \
3266  9600L, \
3267  19200L, \
3268  38400L, \
3269  57600L, \
3270  115200L, \
3271  230400L, \
3272  460800L, \
3273  921600L \
3274 }
3275 
3283 #define MBG_BAUD_STRS \
3284 { \
3285  "300", \
3286  "600", \
3287  "1200", \
3288  "2400", \
3289  "4800", \
3290  "9600", \
3291  "19200", \
3292  "38400", \
3293  "57600", \
3294  "115200", \
3295  "230400", \
3296  "460800", \
3297  "921600" \
3298 }
3299 
3310 {
3324 };
3325 
3326 
3335 {
3347 };
3348 
3361 #define MBG_FRAMING_STRS \
3362 { \
3363  "7N2", \
3364  "7E1", \
3365  "7E2", \
3366  "8N1", \
3367  "8N2", \
3368  "8E1", \
3369  "7O1", \
3370  "7O2", \
3371  "8O1", \
3372  "8E2" \
3373 }
3374 
3385 {
3396 };
3397 
3398 
3399 
3411 #define MBG_DEFAULT_FRAMING "8N1"
3412 
3419 #define MBG_DEFAULT_BAUDRATE 19200L
3420 
3427 #define MBG_DEFAULT_BAUDRATE_HS 115200L
3428 
3429 
3439 #define MBG_FORCE_CONN_CMD_STR "\nDFC\n"
3440 #define MBG_FORCE_CONN_HS_CMD_STR "\nDFCHS\n"
3441 
3442 
3448 /*
3449  * By default, the baud rates and framings below
3450  * are supported by the UARTs integrated into
3451  * the C166 microcontroller:
3452  */
3453 #define DEFAULT_GPS_BAUD_RATES_C166 \
3454 ( \
3455  MBG_PORT_HAS_300 | \
3456  MBG_PORT_HAS_600 | \
3457  MBG_PORT_HAS_1200 | \
3458  MBG_PORT_HAS_2400 | \
3459  MBG_PORT_HAS_4800 | \
3460  MBG_PORT_HAS_9600 | \
3461  MBG_PORT_HAS_19200 \
3462 )
3463 
3464 #define DEFAULT_GPS_FRAMINGS_C166 \
3465 ( \
3466  MBG_PORT_HAS_7N2 | \
3467  MBG_PORT_HAS_7E1 | \
3468  MBG_PORT_HAS_7E2 | \
3469  MBG_PORT_HAS_8N1 | \
3470  MBG_PORT_HAS_8N2 | \
3471  MBG_PORT_HAS_8E1 \
3472 )
3473 
3474 
3475 /*
3476  * By default, the baud rates and framings below
3477  * are supported by the UARTs integrated into
3478  * the GP2021 chipset:
3479  */
3480 #define DEFAULT_GPS_BAUD_RATES_GP2021 \
3481 ( \
3482  MBG_PORT_HAS_300 | \
3483  MBG_PORT_HAS_600 | \
3484  MBG_PORT_HAS_1200 | \
3485  MBG_PORT_HAS_2400 | \
3486  MBG_PORT_HAS_4800 | \
3487  MBG_PORT_HAS_9600 | \
3488  MBG_PORT_HAS_19200 \
3489 )
3490 
3491 #define DEFAULT_GPS_FRAMINGS_GP2021 \
3492 ( \
3493  MBG_PORT_HAS_7N2 | \
3494  MBG_PORT_HAS_7E2 | \
3495  MBG_PORT_HAS_8N1 | \
3496  MBG_PORT_HAS_8E1 | \
3497  MBG_PORT_HAS_8O1 \
3498 )
3499 
3500 
3507 typedef struct
3508 {
3512  uint32_t flags;
3513 
3514 } PORT_SETTINGS;
3515 
3516 #define _mbg_swab_port_settings( _p ) \
3517 do \
3518 { \
3519  _mbg_swab_com_parm( &(_p)->parm ); \
3520  _mbg_swab32( &(_p)->flags ); \
3521 } while ( 0 )
3522 
3523 
3532 {
3550 };
3551 
3561 #define MBG_PS_MSK_BAUD_RATE_OVR_SW ( 1UL << MBG_PS_BIT_BAUD_RATE_OVR_SW )
3562 #define MBG_PS_MSK_BAUD_RATE_OVR_DEV ( 1UL << MBG_PS_BIT_BAUD_RATE_OVR_DEV )
3563 #define MBG_PS_MSK_BAUD_RATE ( 1UL << MBG_PS_BIT_BAUD_RATE )
3564 #define MBG_PS_MSK_FRAMING_OVR_SW ( 1UL << MBG_PS_BIT_FRAMING_OVR_SW )
3565 #define MBG_PS_MSK_FRAMING_OVR_DEV ( 1UL << MBG_PS_BIT_FRAMING_OVR_DEV )
3566 #define MBG_PS_MSK_FRAMING ( 1UL << MBG_PS_BIT_FRAMING )
3567 #define MBG_PS_MSK_HS_OVR_SW ( 1UL << MBG_PS_BIT_HS_OVR_SW )
3568 #define MBG_PS_MSK_HS ( 1UL << MBG_PS_BIT_HS )
3569 #define MBG_PS_MSK_STR_TYPE_OVR_SW ( 1UL << MBG_PS_BIT_STR_TYPE_OVR_SW )
3570 #define MBG_PS_MSK_STR_TYPE_OVR_DEV ( 1UL << MBG_PS_BIT_STR_TYPE_OVR_DEV )
3571 #define MBG_PS_MSK_STR_TYPE ( 1UL << MBG_PS_BIT_STR_TYPE )
3572 #define MBG_PS_MSK_STR_MODE_OVR_SW ( 1UL << MBG_PS_BIT_STR_MODE_OVR_SW )
3573 #define MBG_PS_MSK_STR_MODE_OVR_DEV ( 1UL << MBG_PS_BIT_STR_MODE_OVR_DEV )
3574 #define MBG_PS_MSK_STR_MODE ( 1UL << MBG_PS_BIT_STR_MODE )
3575 #define MBG_PS_MSK_FLAGS_OVR_SW ( 1UL << MBG_PS_BIT_FLAGS_OVR_SW )
3576 #define MBG_PS_MSK_FLAGS ( 1UL << MBG_PS_BIT_FLAGS )
3577 
3578 
3594 typedef struct
3595 {
3598 
3600 
3601 #define _mbg_swab_port_settings_idx( _p ) \
3602 do \
3603 { \
3604  _mbg_swab16( &(_p)->idx ); \
3605  _mbg_swab_port_settings( &(_p)->port_settings ); \
3606 } while ( 0 )
3607 
3608 
3618 typedef struct
3619 {
3621  uint32_t supp_baud_rates;
3622  uint32_t supp_framings;
3623  uint32_t supp_str_types;
3624  uint32_t reserved;
3625  uint32_t flags;
3626 
3627 } PORT_INFO;
3628 
3629 #define _mbg_swab_port_info( _p ) \
3630 do \
3631 { \
3632  _mbg_swab_port_settings( &(_p)->port_settings ); \
3633  _mbg_swab32( &(_p)->supp_baud_rates ); \
3634  _mbg_swab32( &(_p)->supp_framings ); \
3635  _mbg_swab32( &(_p)->supp_str_types ); \
3636  _mbg_swab32( &(_p)->reserved ); \
3637  _mbg_swab32( &(_p)->flags ); \
3638 } while ( 0 )
3639 
3640 
3647 {
3651 };
3652 
3653 
3660 {
3663 };
3664 
3665 
3677 typedef struct
3678 {
3681 
3682 } PORT_INFO_IDX;
3683 
3684 #define _mbg_swab_port_info_idx( _p ) \
3685 do \
3686 { \
3687  _mbg_swab16( &(_p)->idx ); \
3688  _mbg_swab_port_info( &(_p)->port_info ); \
3689 } while ( 0 )
3690 
3691 
3704 typedef struct
3705 {
3706  uint32_t supp_modes;
3707  char long_name[23];
3708  char short_name[11];
3710 
3711 } STR_TYPE_INFO;
3712 
3713 #define _mbg_swab_str_type_info( _p ) \
3714 do \
3715 { \
3716  _mbg_swab32( &(_p)->supp_modes ); \
3717  _mbg_swab16( &(_p)->flags ); \
3718 } while ( 0 )
3719 
3720 
3721 
3733 typedef struct
3734 {
3737 
3739 
3740 #define _mbg_swab_str_type_info_idx( _p ) \
3741 do \
3742 { \
3743  _mbg_swab16( &(_p)->idx ); \
3744  _mbg_swab_str_type_info( &(_p)->str_type_info ); \
3745 } while ( 0 )
3746 
3747 
3758 {
3766 };
3767 
3768 
3778 {
3785 };
3786 
3787 
3793 #define DEFAULT_SHORT_MODE_NAMES \
3794 { \
3795  "'?'", \
3796  "1 sec", \
3797  "1 min", \
3798  "auto", \
3799  "'?' sec", \
3800  "<CR> on sec" \
3801 }
3802 
3803 
3811 #define ENG_MODE_NAME_STR_ON_REQ "on request '?' only"
3812 #define ENG_MODE_NAME_STR_PER_SEC "per second"
3813 #define ENG_MODE_NAME_STR_PER_MIN "per minute"
3814 #define ENG_MODE_NAME_STR_AUTO "automatically"
3815 #define ENG_MODE_NAME_STR_ON_REQ_SEC "sec after request"
3816 #define ENG_MODE_NAME_STR_CR_ON_SEC "per second, <CR> on second change"
3817 
3818 
3826 #define DEFAULT_ENG_MODE_NAMES \
3827 { \
3828  ENG_MODE_NAME_STR_ON_REQ, \
3829  ENG_MODE_NAME_STR_PER_SEC, \
3830  ENG_MODE_NAME_STR_PER_MIN, \
3831  ENG_MODE_NAME_STR_AUTO, \
3832  ENG_MODE_NAME_STR_ON_REQ_SEC, \
3833  ENG_MODE_NAME_STR_CR_ON_SEC \
3834 }
3835 
3836 
3837 /*
3838  * The modes below are supported by most string types:
3839  */
3840 #define DEFAULT_STR_MODES \
3841 ( \
3842  MSK_STR_ON_REQ | \
3843  MSK_STR_PER_SEC | \
3844  MSK_STR_PER_MIN \
3845 )
3846 
3847 
3848 /*
3849  * The modes below can be used with the capture string:
3850  */
3851 #define DEFAULT_STR_MODES_UCAP \
3852 ( \
3853  MSK_STR_ON_REQ | \
3854  MSK_STR_AUTO \
3855 )
3856 
3857 
3858 
3867 #define DEFAULT_N_STR_TYPE_DCF 1
3868 
3877 #define DEFAULT_SUPP_STR_TYPES_DCF \
3878  ( ( 1UL << DEFAULT_N_STR_TYPE_DCF ) - 1 )
3879 
3880 
3881 
3890 #define DEFAULT_N_STR_TYPE_GPS 2
3891 
3900 #define DEFAULT_SUPP_STR_TYPES_GPS \
3901  ( ( 1UL << DEFAULT_N_STR_TYPE_GPS ) - 1 )
3902 
3903 
3904 
3905 /*
3906  * The number of serial ports which are at least available
3907  * even with very old GPS receiver models. For devices providing
3908  * a ::RECEIVER_INFO structure the number of provided COM ports
3909  * is available in ::RECEIVER_INFO::n_com_ports.
3910  */
3911 #define DEFAULT_N_COM 2
3912 
3913 /*
3914  * By default that's also the number of ports
3915  * currently available:
3916  */
3917 #ifndef N_COM
3918  #define N_COM DEFAULT_N_COM
3919 #endif
3920 
3929 typedef struct
3930 {
3933 
3934 } PORT_PARM;
3935 
3936 #define _mbg_swab_port_parm( _p ) \
3937 do \
3938 { \
3939  int i; \
3940  for ( i = 0; i < DEFAULT_N_COM; i++ ) \
3941  { \
3942  _mbg_swab_com_parm( &(_p)->com[i] ); \
3943  /* no need to swap mode byte */ \
3944  } \
3945 } while ( 0 )
3946 
3947 
3948 
3959 {
3966 };
3967 
3968 #if _IS_MBG_FIRMWARE // Old symbols for source code compatibility ...
3969  #define STR_UCAP LGCY_STR_UCAP // Same numeric value as ::STR_AUTO
3970  #define STR_UCAP_REQ LGCY_STR_UCAP_REQ // Same numeric value as ::STR_ON_REQ_SEC, but different function
3971 
3972  #define N_STR_MODE_0 ( LGCY_STR_PER_MIN + 1 ) // Number of modes supp. for COM0
3973  #define N_STR_MODE_1 N_LGCY_STR_MODES // Number of modes supp. for COM1
3974 #endif
3975 
3976 
3977 
4108 {
4129 };
4130 
4131 
4137 #define DEFAULT_ICODE_TX_NAMES \
4138 { \
4139  /* B002_B122 */ "B002+B122", \
4140  /* B003_B123 */ "B003+B123", \
4141  /* A002_A132 */ "A002+A132", \
4142  /* A003_A133 */ "A003+A133", \
4143  /* AFNOR */ "AFNOR NF S87-500", \
4144  /* IEEE1344 */ "IEEE 1344", \
4145  /* B2201344 */ "B220(1344) DCLS", \
4146  /* B222 */ "B222 DCLS", \
4147  /* B223 */ "B223 DCLS", \
4148  /* B006_B126 */ "B006+B126", \
4149  /* B007_B127 */ "B007+B127", \
4150  /* G002_G142 */ "G002+G142", \
4151  /* G006_G146 */ "G006+G146", \
4152  /* C37118 */ "IEEE C37.118", \
4153  /* TXC101 */ "TXC-101 DTR-6", \
4154  /* E002_E112 */ "E002+E112", \
4155  /* NASA36 */ "NASA 36", \
4156  /* A006_A136 */ "A006+A136", \
4157  /* A007_A137 */ "A007+A137" \
4158 }
4159 
4167 #define DEFAULT_ICODE_TX_NAMES_SHORT \
4168 { \
4169  /* B002_B122 */ "B002+B122", \
4170  /* B003_B123 */ "B003+B123", \
4171  /* A002_A132 */ "A002+A132", \
4172  /* A003_A133 */ "A003+A133", \
4173  /* AFNOR */ "AFNOR NF S", \
4174  /* IEEE1344 */ "IEEE 1344", \
4175  /* B2201344 */ "B220/1344", \
4176  /* B222 */ "B222 DC", \
4177  /* B223 */ "B223 DC", \
4178  /* B006_B126 */ "B006+B126", \
4179  /* B007_B127 */ "B007+B127", \
4180  /* G002_G142 */ "G002+G142", \
4181  /* G006_G146 */ "G006+G146", \
4182  /* C37118 */ "C37.118", \
4183  /* TXC101 */ "TXC-101", \
4184  /* E002_E112 */ "E002+E112", \
4185  /* NASA36 */ "NASA 36", \
4186  /* A006_A136 */ "A006+A136", \
4187  /* A007_A137 */ "A007+A137" \
4188 }
4189 
4190 
4196 #define DEFAULT_ICODE_TX_DESCRIPTIONS_ENG \
4197 { \
4198  /* B002_B122 */ "100 bps, DCLS or 1 kHz carrier", \
4199  /* B003_B123 */ "100 bps, DCLS or 1 kHz carrier, SBS", \
4200  /* A002_A132 */ "1000 bps, DCLS or 10 kHz carrier", \
4201  /* A003_A133 */ "1000 bps, DCLS or 10 kHz carrier, SBS", \
4202  /* AFNOR */ "100 bps, DCLS or 1 kHz carrier, complete date, SBS", \
4203  /* IEEE1344 */ "100 bps, DCLS or 1 kHz carrier, 2 digit year number, SBS, UTC offset, DST and Leap sec status", \
4204  /* B2201344 */ "100 bps, Manchester enc., DCLS only, 2 digit year number, SBS, UTC offset, DST and Leap sec status", \
4205  /* B222 */ "100 bps, Manchester enc., DCLS only", \
4206  /* B223 */ "100 bps, Manchester enc., DCLS only, SBS", \
4207  /* B006_B126 */ "100 bps, DCLS or 1 kHz carrier, 2 digit year number", \
4208  /* B007_B127 */ "100 bps, DCLS or 1 kHz carrier, 2 digit year number, SBS", \
4209  /* G002_G142 */ "10 kbps, DCLS or 100 kHz carrier", \
4210  /* G006_G146 */ "10 kbps, DCLS or 100 kHz carrier, 2 digit year number", \
4211  /* C37118 */ "100 bps, DCLS or 1 kHz carrier, 2 digit year number, SBS, UTC offs. reverse to 1344, DST/Leap sec status", \
4212  /* TXC101 */ "code from TV time sync device TXC-101 DTR-6", \
4213  /* E002_E112 */ "10 bps, DCLS or 100 Hz carrier", \
4214  /* NASA36 */ "100 bps, DCLS or 1 kHz carrier", \
4215  /* A006_A136 */ "1000 bps, DCLS or 10 kHz carrier, 2 digit year number", \
4216  /* A007_A137 */ "1000 bps, DCLS or 10 kHz carrier, 2 digit year number, SBS" \
4217 }
4218 
4219 
4231 #define MSK_ICODE_TX_B002_B122 ( 1UL << ICODE_TX_B002_B122 )
4232 #define MSK_ICODE_TX_B003_B123 ( 1UL << ICODE_TX_B003_B123 )
4233 #define MSK_ICODE_TX_A002_A132 ( 1UL << ICODE_TX_A002_A132 )
4234 #define MSK_ICODE_TX_A003_A133 ( 1UL << ICODE_TX_A003_A133 )
4235 #define MSK_ICODE_TX_AFNOR ( 1UL << ICODE_TX_AFNOR )
4236 #define MSK_ICODE_TX_IEEE1344 ( 1UL << ICODE_TX_IEEE1344 )
4237 #define MSK_ICODE_TX_B2201344 ( 1UL << ICODE_TX_B2201344 )
4238 #define MSK_ICODE_TX_B222 ( 1UL << ICODE_TX_B222 )
4239 #define MSK_ICODE_TX_B223 ( 1UL << ICODE_TX_B223 )
4240 #define MSK_ICODE_TX_B006_B126 ( 1UL << ICODE_TX_B006_B126 )
4241 #define MSK_ICODE_TX_B007_B127 ( 1UL << ICODE_TX_B007_B127 )
4242 #define MSK_ICODE_TX_G002_G142 ( 1UL << ICODE_TX_G002_G142 )
4243 #define MSK_ICODE_TX_G006_G146 ( 1UL << ICODE_TX_G006_G146 )
4244 #define MSK_ICODE_TX_C37118 ( 1UL << ICODE_TX_C37118 )
4245 #define MSK_ICODE_TX_TXC101 ( 1UL << ICODE_TX_TXC101 )
4246 #define MSK_ICODE_TX_E002_E112 ( 1UL << ICODE_TX_E002_E112 )
4247 #define MSK_ICODE_TX_NASA36 ( 1UL << ICODE_TX_NASA36 )
4248 #define MSK_ICODE_TX_A006_A136 ( 1UL << ICODE_TX_A006_A136 )
4249 #define MSK_ICODE_TX_A007_A137 ( 1UL << ICODE_TX_A007_A137 )
4250 
4257 #define MSK_ICODE_TX_DC_MANCH \
4258 ( \
4259  MSK_ICODE_TX_B2201344 | \
4260  MSK_ICODE_TX_B222 | \
4261  MSK_ICODE_TX_B223 \
4262 )
4263 
4267 #define MSK_ICODE_TX_100HZ \
4268 ( \
4269  MSK_ICODE_TX_E002_E112 \
4270 )
4271 
4275 #define MSK_ICODE_TX_1KHZ \
4276 ( \
4277  MSK_ICODE_TX_B002_B122 | \
4278  MSK_ICODE_TX_B003_B123 | \
4279  MSK_ICODE_TX_AFNOR | \
4280  MSK_ICODE_TX_IEEE1344 | \
4281  MSK_ICODE_TX_B2201344 | \
4282  MSK_ICODE_TX_B222 | \
4283  MSK_ICODE_TX_B223 | \
4284  MSK_ICODE_TX_B006_B126 | \
4285  MSK_ICODE_TX_B007_B127 | \
4286  MSK_ICODE_TX_C37118 | \
4287  MSK_ICODE_TX_NASA36 \
4288 )
4289 
4293 #define MSK_ICODE_TX_10KHZ \
4294 ( \
4295  MSK_ICODE_TX_A002_A132 | \
4296  MSK_ICODE_TX_A003_A133 | \
4297  MSK_ICODE_TX_A006_A136 | \
4298  MSK_ICODE_TX_A007_A137 \
4299 )
4300 
4304 #define MSK_ICODE_TX_100KHZ \
4305 ( \
4306  MSK_ICODE_TX_G002_G142 | \
4307  MSK_ICODE_TX_G006_G146 \
4308 )
4309 
4313 #define MSK_ICODE_TX_10BPS \
4314 ( \
4315  MSK_ICODE_TX_E002_E112 \
4316 )
4317 
4321 #define MSK_ICODE_TX_100BPS \
4322 ( \
4323  MSK_ICODE_TX_B002_B122 | \
4324  MSK_ICODE_TX_B003_B123 | \
4325  MSK_ICODE_TX_AFNOR | \
4326  MSK_ICODE_TX_IEEE1344 | \
4327  MSK_ICODE_TX_B006_B126 | \
4328  MSK_ICODE_TX_B007_B127 | \
4329  MSK_ICODE_TX_C37118 \
4330 )
4331 
4335 #define MSK_ICODE_TX_1000BPS \
4336 ( \
4337  MSK_ICODE_TX_A002_A132 | \
4338  MSK_ICODE_TX_A003_A133 | \
4339  MSK_ICODE_TX_A006_A136 | \
4340  MSK_ICODE_TX_A007_A137 \
4341 )
4342 
4346 #define MSK_ICODE_TX_10000BPS \
4347 ( \
4348  MSK_ICODE_TX_G002_G142 | \
4349  MSK_ICODE_TX_G006_G146 \
4350 )
4351 
4355 #define MSK_ICODE_TX_HAS_SEC10THS \
4356 ( \
4357  MSK_ICODE_TX_A002_A132 | \
4358  MSK_ICODE_TX_A003_A133 | \
4359  MSK_ICODE_TX_G002_G142 | \
4360  MSK_ICODE_TX_G006_G146 | \
4361  MSK_ICODE_TX_A006_A136 | \
4362  MSK_ICODE_TX_A007_A137 \
4363 )
4364 
4368 #define MSK_ICODE_TX_HAS_SEC100THS \
4369 ( \
4370  MSK_ICODE_TX_G002_G142 | \
4371  MSK_ICODE_TX_G006_G146 \
4372 )
4373 
4385 #define MSK_ICODE_TX_HAS_SHORT_YEAR_AFTER_P5 \
4386 ( \
4387  MSK_ICODE_TX_AFNOR | \
4388  MSK_ICODE_TX_IEEE1344 | \
4389  MSK_ICODE_TX_B2201344 | \
4390  MSK_ICODE_TX_B006_B126 | \
4391  MSK_ICODE_TX_B007_B127 | \
4392  MSK_ICODE_TX_C37118 | \
4393  MSK_ICODE_TX_A006_A136 | \
4394  MSK_ICODE_TX_A007_A137 \
4395 )
4396 
4407  #define MSK_ICODE_TX_HAS_SHORT_YEAR_AFTER_P6 \
4408 ( \
4409  MSK_ICODE_TX_G006_G146 \
4410 )
4411 
4421 #define MSK_ICODE_TX_HAS_ANY_SHORT_YEAR \
4422 ( \
4423  MSK_ICODE_TX_HAS_SHORT_YEAR_AFTER_P5 | \
4424  MSK_ICODE_TX_HAS_SHORT_YEAR_AFTER_P6 \
4425 )
4426 
4430 #define MSK_ICODE_TX_HAS_TFOM \
4431 ( \
4432  MSK_ICODE_TX_IEEE1344 | \
4433  MSK_ICODE_TX_C37118 \
4434 )
4435 
4441 #define MSK_ICODE_TX_HAS_CTQ \
4442 ( \
4443  MSK_ICODE_TX_IEEE1344 | \
4444  MSK_ICODE_TX_C37118 \
4445 )
4446 
4450 #define MSK_ICODE_TX_HAS_TZI \
4451 ( \
4452  MSK_ICODE_TX_IEEE1344 | \
4453  MSK_ICODE_TX_C37118 \
4454 )
4455 
4463 #define MSK_ICODE_TX_UTC_OFFS_SUB \
4464 ( \
4465  MSK_ICODE_TX_IEEE1344 \
4466 )
4467 
4475 #define MSK_ICODE_TX_UTC_OFFS_ADD \
4476 ( \
4477  MSK_ICODE_TX_C37118 \
4478 )
4479 
4483 #define MSK_ICODE_TX_HAS_AFNOR_WDAY \
4484 ( \
4485  MSK_ICODE_TX_AFNOR | \
4486  MSK_ICODE_TX_AFNOR_DC \
4487 )
4488 
4492 #define MSK_ICODE_TX_HAS_AFNOR_DATE \
4493 ( \
4494  MSK_ICODE_TX_AFNOR | \
4495  MSK_ICODE_TX_AFNOR_DC \
4496 )
4497 
4498 
4505 #if !defined( SUPP_MSK_ICODE_TX )
4506  #define SUPP_MSK_ICODE_TX \
4507  ( \
4508  MSK_ICODE_TX_B002_B122 | \
4509  MSK_ICODE_TX_B003_B123 | \
4510  MSK_ICODE_TX_A002_A132 | \
4511  MSK_ICODE_TX_A003_A133 | \
4512  MSK_ICODE_TX_AFNOR \
4513  )
4514 #endif
4515 
4516 
4517 
4531 {
4557 };
4558 
4564 #define DEFAULT_ICODE_RX_NAMES \
4565 { \
4566  /* B122_B123 */ "B122/B123", \
4567  /* A132_A133 */ "A132/A133", \
4568  /* B002_B003 */ "B002/B003 (DCLS)", \
4569  /* A002_A003 */ "A002/A003 (DCLS)", \
4570  /* AFNOR */ "AFNOR NF S87-500", \
4571  /* AFNOR_DC */ "AFNOR NF S87-500 (DCLS)", \
4572  /* IEEE1344 */ "IEEE1344", \
4573  /* IEEE1344_DC */ "IEEE1344 (DCLS)", \
4574  /* B126_B127 */ "B126/B127", \
4575  /* B006_B007 */ "B006/B007 (DCLS)", \
4576  /* G142 */ "G142", \
4577  /* G002 */ "G002 (DCLS)", \
4578  /* C37118 */ "C37.118", \
4579  /* C37118_DC */ "C37.118 (DCLS)", \
4580  /* TXC101 */ "TXC-101 DTR-6", \
4581  /* TXC101_DC */ "TXC-101 DTR-6 (DCLS)", \
4582  /* E112 */ "E112", \
4583  /* E002 */ "E002 (DCLS)", \
4584  /* NASA36 */ "NASA-36", \
4585  /* NASA36_DC */ "NASA-36 (DCLS)", \
4586  /* A136_A137 */ "A136/A137", \
4587  /* A006_A007 */ "A006/A007 (DCLS)", \
4588  /* G146 */ "G146", \
4589  /* G006 */ "G006 (DCLS)" \
4590 }
4591 
4599 #define DEFAULT_ICODE_RX_NAMES_SHORT \
4600 { \
4601  /* B122_B123 */ "B122/B123", \
4602  /* A132_A133 */ "A132/A133", \
4603  /* B002_B003 */ "B002/B003", \
4604  /* A002_A003 */ "A002/A003", \
4605  /* AFNOR */ "AFNOR NF S", \
4606  /* AFNOR_DC */ "AFNOR DC", \
4607  /* IEEE1344 */ "IEEE1344", \
4608  /* IEEE1344_DC */ "IEEE1344 DC", \
4609  /* B126_B127 */ "B126/B127", \
4610  /* B006_B007 */ "B006/B007", \
4611  /* G142 */ "G142", \
4612  /* G002 */ "G002 DC", \
4613  /* C37118 */ "C37.118", \
4614  /* C37118_DC */ "C37.118 DC", \
4615  /* TXC101 */ "TXC-101", \
4616  /* TXC101_DC */ "TXC-101 DC", \
4617  /* E112 */ "E112", \
4618  /* E002 */ "E002 DC", \
4619  /* NASA36 */ "NASA-36", \
4620  /* NASA36_DC */ "NASA-36 DC", \
4621  /* A136_A137 */ "A136/A137", \
4622  /* A006_A007 */ "A006/A007", \
4623  /* G146 */ "G146", \
4624  /* G006 */ "G006 DC" \
4625 }
4626 
4627 
4633 #define DEFAULT_ICODE_RX_DESCRIPTIONS_ENG \
4634 { \
4635  /* B122_B123 */ "100 bps, 1 kHz carrier, SBS optionally", \
4636  /* A132_A133 */ "1000 bps, 10 kHz carrier, SBS optionally", \
4637  /* B002_B003 */ "100 bps, DCLS, SBS optionally", \
4638  /* A002_A003 */ "1000 bps, DCLS, SBS optionally", \
4639  /* AFNOR */ "100 bps, 1 kHz carrier, complete date, SBS", \
4640  /* AFNOR_DC */ "100 bps, DCLS, complete date, SBS", \
4641  /* IEEE1344 */ "100 bps, 1 kHz carrier, SBS, time zone info", \
4642  /* IEEE1344_DC */ "100 bps, DCLS, SBS, time zone info", \
4643  /* B126_B127 */ "100 bps, 1 kHz carrier, 2 digit year number, SBS optionally", \
4644  /* B006_B007 */ "100 bps, DCLS, 2 digit year number, SBS optionally", \
4645  /* G142 */ "10 kbps, 100 kHz carrier", \
4646  /* G002 */ "10 kbps, DCLS", \
4647  /* C37118 */ "like IEEE1344, but UTC offset with reversed sign", \
4648  /* C37118_DC */ "like IEEE1344 DC, but UTC offset with reversed sign", \
4649  /* TXC101 */ "code from TV time sync device TXC-101 DTR-6", \
4650  /* TXC101_DC */ "DC code from TV time sync device TXC-101 DTR-6", \
4651  /* E112 */ "10 bps, 100 Hz carrier", \
4652  /* E002 */ "10 bps, DCLS", \
4653  /* NASA36 */ "100 bps, 1 kHz carrier", \
4654  /* NASA36_DC */ "100 bps, DCLS", \
4655  /* A136_A137 */ "1000 bps, 10 kHz carrier, 2 digit year number, SBS optionally", \
4656  /* A006_A007 */ "1000 bps, DCLS, 2 digit year number, SBS optionally", \
4657  /* G146 */ "10 kbps, 100 kHz carrier, 2 digit year number", \
4658  /* G006 */ "10 kbps, DCLS, 2 digit year number" \
4659 }
4660 
4672 #define MSK_ICODE_RX_B122_B123 ( 1UL << ICODE_RX_B122_B123 )
4673 #define MSK_ICODE_RX_A132_A133 ( 1UL << ICODE_RX_A132_A133 )
4674 #define MSK_ICODE_RX_B002_B003 ( 1UL << ICODE_RX_B002_B003 )
4675 #define MSK_ICODE_RX_A002_A003 ( 1UL << ICODE_RX_A002_A003 )
4676 #define MSK_ICODE_RX_AFNOR ( 1UL << ICODE_RX_AFNOR )
4677 #define MSK_ICODE_RX_AFNOR_DC ( 1UL << ICODE_RX_AFNOR_DC )
4678 #define MSK_ICODE_RX_IEEE1344 ( 1UL << ICODE_RX_IEEE1344 )
4679 #define MSK_ICODE_RX_IEEE1344_DC ( 1UL << ICODE_RX_IEEE1344_DC )
4680 #define MSK_ICODE_RX_B126_B127 ( 1UL << ICODE_RX_B126_B127 )
4681 #define MSK_ICODE_RX_B006_B007 ( 1UL << ICODE_RX_B006_B007 )
4682 #define MSK_ICODE_RX_G142 ( 1UL << ICODE_RX_G142 )
4683 #define MSK_ICODE_RX_G002 ( 1UL << ICODE_RX_G002 )
4684 #define MSK_ICODE_RX_C37118 ( 1UL << ICODE_RX_C37118 )
4685 #define MSK_ICODE_RX_C37118_DC ( 1UL << ICODE_RX_C37118_DC )
4686 #define MSK_ICODE_RX_TXC101 ( 1UL << ICODE_RX_TXC101 )
4687 #define MSK_ICODE_RX_TXC101_DC ( 1UL << ICODE_RX_TXC101_DC )
4688 #define MSK_ICODE_RX_E112 ( 1UL << ICODE_RX_E112 )
4689 #define MSK_ICODE_RX_E002 ( 1UL << ICODE_RX_E002 )
4690 #define MSK_ICODE_RX_NASA36 ( 1UL << ICODE_RX_NASA36 )
4691 #define MSK_ICODE_RX_NASA36_DC ( 1UL << ICODE_RX_NASA36_DC )
4692 #define MSK_ICODE_RX_A136_A137 ( 1UL << ICODE_RX_A136_A137 )
4693 #define MSK_ICODE_RX_A006_A007 ( 1UL << ICODE_RX_A006_A007 )
4694 #define MSK_ICODE_RX_G146 ( 1UL << ICODE_RX_G146 )
4695 #define MSK_ICODE_RX_G006 ( 1UL << ICODE_RX_G006 )
4696 
4703 #define MSK_ICODE_RX_DC \
4704 ( \
4705  MSK_ICODE_RX_B002_B003 | \
4706  MSK_ICODE_RX_A002_A003 | \
4707  MSK_ICODE_RX_AFNOR_DC | \
4708  MSK_ICODE_RX_IEEE1344_DC | \
4709  MSK_ICODE_RX_B006_B007 | \
4710  MSK_ICODE_RX_G002 | \
4711  MSK_ICODE_RX_C37118_DC | \
4712  MSK_ICODE_RX_TXC101_DC | \
4713  MSK_ICODE_RX_E002 | \
4714  MSK_ICODE_RX_NASA36_DC | \
4715  MSK_ICODE_RX_A006_A007 | \
4716  MSK_ICODE_RX_G006 \
4717 )
4718 
4722 #define MSK_ICODE_RX_100HZ \
4723 ( \
4724  MSK_ICODE_RX_E112 \
4725 )
4726 
4730 #define MSK_ICODE_RX_1KHZ \
4731 ( \
4732  MSK_ICODE_RX_B122_B123 | \
4733  MSK_ICODE_RX_AFNOR | \
4734  MSK_ICODE_RX_IEEE1344 | \
4735  MSK_ICODE_RX_B126_B127 | \
4736  MSK_ICODE_RX_C37118 | \
4737  MSK_ICODE_RX_TXC101 | \
4738  MSK_ICODE_RX_NASA36 \
4739 )
4740 
4744 #define MSK_ICODE_RX_10KHZ \
4745 ( \
4746  MSK_ICODE_RX_A132_A133 | \
4747  MSK_ICODE_RX_A136_A137 \
4748 )
4749 
4753 #define MSK_ICODE_RX_100KHZ \
4754 ( \
4755  MSK_ICODE_RX_G142 | \
4756  MSK_ICODE_RX_G146 \
4757 )
4758 
4762 #define MSK_ICODE_RX_10BPS \
4763 ( \
4764  MSK_ICODE_RX_E002_E112 | \
4765  MSK_ICODE_RX_E002_E002 \
4766 )
4767 
4771 #define MSK_ICODE_RX_100BPS \
4772 ( \
4773  MSK_ICODE_RX_B122_B123 | \
4774  MSK_ICODE_RX_B002_B003 | \
4775  MSK_ICODE_RX_AFNOR | \
4776  MSK_ICODE_RX_AFNOR_DC | \
4777  MSK_ICODE_RX_IEEE1344 | \
4778  MSK_ICODE_RX_IEEE1344_DC | \
4779  MSK_ICODE_RX_B126_B127 | \
4780  MSK_ICODE_RX_B006_B007 | \
4781  MSK_ICODE_RX_C37118 | \
4782  MSK_ICODE_RX_C37118_DC | \
4783  MSK_ICODE_RX_TXC101 | \
4784  MSK_ICODE_RX_TXC101_DC | \
4785  MSK_ICODE_RX_NASA36 | \
4786  MSK_ICODE_RX_NASA36_DC \
4787 )
4788 
4792 #define MSK_ICODE_RX_1000BPS \
4793 ( \
4794  MSK_ICODE_RX_A132_A133 | \
4795  MSK_ICODE_RX_A002_A003 | \
4796  MSK_ICODE_RX_A136_A137 | \
4797  MSK_ICODE_RX_A006_A007 \
4798 )
4799 
4803 #define MSK_ICODE_RX_10000BPS \
4804 ( \
4805  MSK_ICODE_RX_G142 | \
4806  MSK_ICODE_RX_G002 | \
4807  MSK_ICODE_RX_G146 | \
4808  MSK_ICODE_RX_G006 \
4809 )
4810 
4814 #define MSK_ICODE_RX_HAS_SEC10THS \
4815 ( \
4816  MSK_ICODE_RX_A132_A133 | \
4817  MSK_ICODE_RX_A002_A003 | \
4818  MSK_ICODE_RX_G142 | \
4819  MSK_ICODE_RX_G002 | \
4820  MSK_ICODE_RX_A136_A137 | \
4821  MSK_ICODE_RX_A006_A007 | \
4822  MSK_ICODE_RX_G146 | \
4823  MSK_ICODE_RX_G006 \
4824 )
4825 
4829 #define MSK_ICODE_RX_HAS_SEC100THS \
4830 ( \
4831  MSK_ICODE_RX_G142 | \
4832  MSK_ICODE_RX_G002 | \
4833  MSK_ICODE_RX_G146 | \
4834  MSK_ICODE_RX_G006 \
4835 )
4836 
4846 #define MSK_ICODE_RX_HAS_SHORT_YEAR_AFTER_P5 \
4847 ( \
4848  MSK_ICODE_RX_AFNOR | \
4849  MSK_ICODE_RX_AFNOR_DC | \
4850  MSK_ICODE_RX_IEEE1344 | \
4851  MSK_ICODE_RX_IEEE1344_DC | \
4852  MSK_ICODE_RX_B126_B127 | \
4853  MSK_ICODE_RX_B006_B007 | \
4854  MSK_ICODE_RX_C37118 | \
4855  MSK_ICODE_RX_C37118_DC | \
4856  MSK_ICODE_RX_A136_A137 | \
4857  MSK_ICODE_RX_A006_A007 \
4858 )
4859 
4869 #define MSK_ICODE_RX_HAS_SHORT_YEAR_AFTER_P6 \
4870 ( \
4871  MSK_ICODE_RX_G146 | \
4872  MSK_ICODE_RX_G006 \
4873 )
4874 
4884 #define MSK_ICODE_RX_HAS_ANY_SHORT_YEAR \
4885 ( \
4886  MSK_ICODE_RX_HAS_SHORT_YEAR_AFTER_P5 | \
4887  MSK_ICODE_RX_HAS_SHORT_YEAR_AFTER_P6 \
4888 )
4889 
4890 
4891 
4895 #define MSK_ICODE_RX_HAS_TFOM \
4896 ( \
4897  MSK_ICODE_RX_IEEE1344 | \
4898  MSK_ICODE_RX_IEEE1344_DC | \
4899  MSK_ICODE_RX_C37118 | \
4900  MSK_ICODE_RX_C37118_DC \
4901 )
4902 
4908 #define MSK_ICODE_RX_HAS_CTQ \
4909 ( \
4910  MSK_ICODE_RX_IEEE1344 | \
4911  MSK_ICODE_RX_IEEE1344_DC | \
4912  MSK_ICODE_RX_C37118 | \
4913  MSK_ICODE_RX_C37118_DC \
4914 )
4915 
4919 #define MSK_ICODE_RX_HAS_TZI \
4920 ( \
4921  MSK_ICODE_RX_IEEE1344 | \
4922  MSK_ICODE_RX_IEEE1344_DC | \
4923  MSK_ICODE_RX_C37118 | \
4924  MSK_ICODE_RX_C37118_DC \
4925 )
4926 
4934 #define MSK_ICODE_RX_UTC_OFFS_SUB \
4935 ( \
4936  MSK_ICODE_RX_IEEE1344 | \
4937  MSK_ICODE_RX_IEEE1344_DC \
4938 )
4939 
4947 #define MSK_ICODE_RX_UTC_OFFS_ADD \
4948 ( \
4949  MSK_ICODE_RX_C37118 | \
4950  MSK_ICODE_RX_C37118_DC \
4951 )
4952 
4956 #define MSK_ICODE_RX_HAS_AFNOR_WDAY \
4957 ( \
4958  MSK_ICODE_RX_AFNOR | \
4959  MSK_ICODE_RX_AFNOR_DC \
4960 )
4961 
4965 #define MSK_ICODE_RX_HAS_AFNOR_DATE \
4966 ( \
4967  MSK_ICODE_RX_AFNOR | \
4968  MSK_ICODE_RX_AFNOR_DC \
4969 )
4970 
4971 
4978 #if !defined( SUPP_MSK_ICODE_RX )
4979  #define SUPP_MSK_ICODE_RX \
4980  ( \
4981  MSK_ICODE_RX_B122_B123 | \
4982  MSK_ICODE_RX_A132_A133 | \
4983  MSK_ICODE_RX_B002_B003 | \
4984  MSK_ICODE_RX_A002_A003 | \
4985  MSK_ICODE_RX_AFNOR | \
4986  MSK_ICODE_RX_AFNOR_DC \
4987  )
4988 #endif
4989 
4999 typedef struct
5000 {
5003 
5004 } IRIG_SETTINGS;
5005 
5006 #define _mbg_swab_irig_settings( _p ) \
5007 do \
5008 { \
5009  _mbg_swab16( &(_p)->icode ); \
5010  _mbg_swab16( &(_p)->flags ); \
5011 } while ( 0 )
5012 
5013 
5014 
5021 {
5025 };
5026 
5027 
5040 {
5043 
5044  IFLAGS_MASK = ( ( 1UL << N_IFLAGS_BITS ) - 1 )
5045 };
5046 
5047 
5054 typedef struct
5055 {
5057  uint32_t supp_codes;
5058 
5059 } IRIG_INFO;
5060 
5061 #define _mbg_swab_irig_info( _p ) \
5062 do \
5063 { \
5064  _mbg_swab_irig_settings( &(_p)->settings ); \
5065  _mbg_swab32( &(_p)->supp_codes ); \
5066 } while ( 0 )
5067 
5068 
5084 #define N_IRIG_RX_COMP_VAL 4
5085 
5089 typedef struct
5090 {
5098 
5099 } IRIG_RX_COMP;
5100 
5101 #define _mbg_swab_irig_rx_comp( _p ) \
5102 do \
5103 { \
5104  int i; \
5105  for ( i = 0; i < N_IRIG_RX_COMP_VAL; i++ ) \
5106  _mbg_swab16( &(_p)->c[i] ); \
5107 } while ( 0 )
5108 
5109 
5111 #define IRIG_RX_COMP_MAX 999 // [100 ns units], i.e. valid range is +/-99.9 us
5112 
5113 
5114 
5118 typedef struct
5119 {
5122 
5123 } CAL_REC_HDR;
5124 
5125 #define _mbg_swab_cal_rec_hdr( _p ) \
5126 do \
5127 { \
5128  _mbg_swab16( &(_p)->type ); \
5129  _mbg_swab16( &(_p)->idx ); \
5130 } while ( 0 )
5131 
5132 
5137 {
5141 };
5142 
5143 
5150 {
5158 };
5159 
5160 
5164 #define DEFAULT_IRIG_RX_COMP_NAMES \
5165 { \
5166  "B1xx/AFNOR/IEEE1344", \
5167  "A1xx", \
5168  "B0xx/AFNOR DC/IEEE1344 DC", \
5169  "A0xx", \
5170  "G14X", \
5171  "G00X", \
5172 }
5173 
5174 
5175 
5179 typedef struct
5180 {
5183 
5185 
5186 #define _mbg_swab_cal_rec_irig_rx_comp( _p ) \
5187 do \
5188 { \
5189  _mbg_swab_cal_rec_hdr( &(_p)->hdr ); \
5190  _mbg_swab_irig_rx_comp( &(_p)->comp_data ); \
5191 } while ( 0 )
5192 
5204 typedef uint32_t MBG_DEBUG_STATUS;
5205 
5206 #define _mbg_swab_debug_status( _p ) \
5207  _mbg_swab32( _p )
5208 
5209 
5210 
5217 {
5226 
5231 
5233 };
5234 
5240 #define MBG_DEBUG_STATUS_STRS \
5241 { \
5242  "Osc has warmed up", \
5243  "PPS output is active", \
5244  "Config set to default", \
5245  "IRIG msg decoded", \
5246  "IRIG msg not consistent", \
5247  "Decoder control loop locked", \
5248  "Phase jitter too large", \
5249  "Invalid ref offset", \
5250  \
5251  "Internal time not valid", \
5252  "On board time set via API", \
5253  "On board RTC invalid", \
5254  "CPU PLL failure, needs restart" \
5255 }
5256 
5257 
5265 #define MBG_IRIG_MSK_WARMED_UP ( 1UL << MBG_IRIG_BIT_WARMED_UP )
5266 #define MBG_IRIG_MSK_PPS_ACTIVE ( 1UL << MBG_IRIG_BIT_PPS_ACTIVE )
5267 #define MBG_IRIG_MSK_INV_CONFIG ( 1UL << MBG_IRIG_BIT_INV_CONFIG )
5268 #define MBG_IRIG_MSK_MSG_DECODED ( 1UL << MBG_IRIG_BIT_MSG_DECODED )
5269 #define MBG_IRIG_MSK_MSG_INCONSISTENT ( 1UL << MBG_IRIG_BIT_MSG_INCONSISTENT )
5270 #define MBG_IRIG_MSK_LOOP_LOCKED ( 1UL << MBG_IRIG_BIT_LOOP_LOCKED )
5271 #define MBG_IRIG_MSK_JITTER_TOO_LARGE ( 1UL << MBG_IRIG_BIT_JITTER_TOO_LARGE )
5272 #define MBG_IRIG_MSK_INV_REF_OFFS ( 1UL << MBG_IRIG_BIT_INV_REF_OFFS )
5273 
5274 #define MBG_SYS_MSK_INV_TIME ( 1UL << MBG_SYS_BIT_INV_TIME )
5275 #define MBG_SYS_MSK_TIME_SET_VIA_API ( 1UL << MBG_SYS_BIT_TIME_SET_VIA_API )
5276 #define MBG_SYS_MSK_INV_RTC ( 1UL << MBG_SYS_BIT_INV_RTC )
5277 #define MBG_SYS_MSK_CPU_PLL_FAILED ( 1UL << MBG_SYS_BIT_CPU_PLL_FAILED )
5278 
5298 
5299 #define _mbg_swab_mbg_ref_offs( _p ) _mbg_swab16( (_p) )
5300 
5301 
5305 #define MBG_REF_OFFS_MAX ( ( 12L * 60 ) + 30 ) // [minutes]
5306 
5314 #define MBG_REF_OFFS_NOT_CFGD ( (MBG_REF_OFFS) 0x8000 )
5315 
5316 
5317 
5323 typedef struct
5324 {
5325  uint32_t flags;
5326 
5328 
5329 #define _mbg_swab_mbg_opt_settings( _p ) \
5330 do \
5331 { \
5332  _mbg_swab32( &(_p)->flags ); \
5333 } while ( 0 )
5334 
5335 
5342 typedef struct
5343 {
5345  uint32_t supp_flags;
5346 
5347 } MBG_OPT_INFO;
5348 
5349 #define _mbg_swab_mbg_opt_info( _p ) \
5350 do \
5351 { \
5352  _mbg_swab_mbg_opt_settings( &(_p)->settings ); \
5353  _mbg_swab32( &(_p)->supp_flags ); \
5354 } while ( 0 )
5355 
5356 
5361 {
5365 };
5366 
5367 
5374 {
5377 };
5378 
5379 
5380 
5392 typedef uint32_t MBG_IRIG_CTRL_BITS;
5393 
5394 #define _mbg_swab_irig_ctrl_bits( _p ) _mbg_swab32( _p )
5395 
5396 
5406 #define _pcps_tfom_from_irig_ctrl_bits( _p ) \
5407  ( ( ( *(_p) ) >> 24 ) & 0x0F )
5408 
5409 
5410 
5411 #define RAW_IRIG_SIZE 16
5412 
5423 typedef struct
5424 {
5425  uint8_t data_bytes[RAW_IRIG_SIZE];
5426 
5428 
5429 #define _mbg_swab_mbg_raw_irig_data( _p ) _nop_macro_fnc()
5430 
5440 #define _pcps_tfom_from_raw_irig_data( _p ) \
5441  ( ( ( (_p)->data_bytes[9] >> 2 ) & 0x08 ) \
5442  | ( ( (_p)->data_bytes[9] >> 4 ) & 0x04 ) \
5443  | ( ( (_p)->data_bytes[9] >> 6 ) & 0x02 ) \
5444  | ( ( (_p)->data_bytes[8] & 0x01 ) ) )
5445 
5446 
5447 
5468 {
5473 };
5474 
5481 {
5485 };
5486 
5487 #define MBG_TIME_SCALE_STRS \
5488 { \
5489  "UTC/local", \
5490  "GPS", \
5491  "TAI" \
5492 }
5493 
5494 
5495 
5499 #define GPS_TAI_OFFSET 19
5500 
5501 
5505 typedef struct
5506 {
5509 
5511 
5512 #define _mbg_swab_mbg_time_scale_settings( _p ) \
5513  _nop_macro_fnc()
5514 
5515 
5519 typedef struct
5520 {
5523  uint32_t supp_scales;
5524 
5526 
5527 #define _mbg_swab_mbg_time_scale_info( _p ) \
5528 do \
5529 { \
5530  _mbg_swab_mbg_time_scale_settings( &(_p)->settings ); \
5531  _mbg_swab_mbg_time_scale_settings( &(_p)->max_settings ); \
5532  _mbg_swab32( &(_p)->supp_scales ); \
5533 } while ( 0 )
5534 
5553 typedef struct
5554 {
5558 
5559 } MBG_DATE;
5560 
5561 #define _mbg_swab_mbg_date( _p ) \
5562 do \
5563 { \
5564  _mbg_swab16( &(_p)->year ); \
5565 } while ( 0 )
5566 
5567 
5571 typedef struct
5572 {
5577 
5578 } MBG_TIME;
5579 
5580 #define _mbg_swab_mbg_time( _p ) \
5581  _nop_macro_fnc() // nothing to swap
5582 
5583 
5587 typedef struct
5588 {
5593 
5594 } MBG_DATE_TIME;
5595 
5596 #define _mbg_swab_mbg_date_time( _p ) \
5597 do \
5598 { \
5599  _mbg_swab_mbg_date( &(_p)->d ); \
5600  _mbg_swab_mbg_time( &(_p)->t ); \
5601 } while ( 0 )
5602 
5603 
5611 typedef struct
5612 {
5615 
5616 } POUT_TIME;
5617 
5618 #define _mbg_swab_pout_time( _p ) \
5619 do \
5620 { \
5621  _mbg_swab_mbg_date_time( &(_p)->on ); \
5622  _mbg_swab_mbg_date_time( &(_p)->off ); \
5623 } while ( 0 )
5624 
5625 
5626 
5632 #define N_POUT_TIMES 3
5633 
5637 typedef union
5638 {
5641 
5643 
5651  int32_t pulse_shift;
5652 
5653 } POUT_DATA;
5654 
5655 #define DEFAULT_POUT_PULSE_SHIFT_MIN -500000000L
5656 #define DEFAULT_POUT_PULSE_SHIFT_MAX 499000000L
5657 
5658 
5664 #define _mbg_swab_pout_data( _p, _mode ) \
5665 do \
5666 { \
5667  uint32_t mode_mask = 1UL << _mode; \
5668  \
5669  if ( mode_mask & POUT_MODES_DATA_TM ) \
5670  { \
5671  int i; \
5672  \
5673  for ( i = 0; i < N_POUT_TIMES; i++ ) \
5674  _mbg_swab_pout_time( &(_p)->tm[i] ); \
5675  } \
5676  else \
5677  { \
5678  if ( mode_mask & POUT_MODES_DATA_TM_0 ) \
5679  _mbg_swab_pout_time( &(_p)->tm[0] ); \
5680  else \
5681  if ( mode_mask & POUT_MODES_DATA_PULSE_SHIFT ) \
5682  _mbg_swab32( &(_p)->pulse_shift ); \
5683  } \
5684  \
5685 } while ( 0 )
5686 
5687 
5688 
5692 typedef struct
5693 {
5696 
5704 
5707 
5708 } POUT_SETTINGS;
5709 
5713 #define _mbg_swab_pout_settings_on_get( _p ) \
5714 do \
5715 { \
5716  _mbg_swab16( &(_p)->mode ); \
5717  _mbg_swab16( &(_p)->mode_param ); \
5718  _mbg_swab16( &(_p)->timeout ); \
5719  _mbg_swab16( &(_p)->flags ); \
5720  _mbg_swab_pout_data( &(_p)->pout_data, (_p)->mode ); \
5721 } while ( 0 )
5722 
5726 #define _mbg_swab_pout_settings_on_set( _p ) \
5727 do \
5728 { \
5729  _mbg_swab_pout_data( &(_p)->pout_data, (_p)->mode ); \
5730  _mbg_swab16( &(_p)->mode ); \
5731  _mbg_swab16( &(_p)->mode_param ); \
5732  _mbg_swab16( &(_p)->timeout ); \
5733  _mbg_swab16( &(_p)->flags ); \
5734 } while ( 0 )
5735 
5736 
5737 
5749 #define MIN_TIME_SLOTS_PER_MINUTE 1
5750 #define MAX_TIME_SLOTS_PER_MINUTE 60
5751 #define TIME_SLOT_REGISTER_IN_SEC 60
5752 
5753 #define TIMEOUT_DIVIDED_BY 10
5754 #define TIME_SLOT_SWITCH_OFF_BUFFER_MIN 50 / TIMEOUT_DIVIDED_BY
5755 #define TIME_SLOT_SWITCH_OFF_BUFFER_MAX 500 / TIMEOUT_DIVIDED_BY
5756 #define TIME_SLOT_SWITCH_OFF_BUFFER_STD 500 / TIMEOUT_DIVIDED_BY
5757 #define TIME_SLOT_SWITCH_OFF_BUFFER_STEP_SIZE 50 / TIMEOUT_DIVIDED_BY
5758 
5759 #define _valid_time_slots_per_minute( _n ) \
5760  ( ( (_n) >= MIN_TIME_SLOTS_PER_MINUTE ) && \
5761  ( (_n) <= MAX_TIME_SLOTS_PER_MINUTE ) && \
5762  ( ( 60 % (_n) ) == 0 ) \
5763  )
5764 
5769 #define MAX_POUT_PULSE_LEN 1000
5770 #define MAX_POUT_DCF_TIMOUT ( 48 * 60 )
5771 
5772 
5773 
5793 {
5796 
5799 
5805 
5812 
5817 
5822 
5827 
5831 
5834 
5837 
5840 
5843 
5848 
5851 
5856 
5859 
5864 
5869 
5872 
5875 
5876  // New modes have to be added here at the end of the enumeration, and the
5877  // POUT_MODE_MASKS, the POUT_MODES_PARAM_MASKS as well as string initializers
5878  // (also in pcpslstr.h) have to be updated accordingly.
5880 };
5881 
5882 
5893 #define MSK_POUT_IDLE ( 1UL << POUT_IDLE )
5894 #define MSK_POUT_TIMER ( 1UL << POUT_TIMER )
5895 #define MSK_POUT_SINGLE_SHOT ( 1UL << POUT_SINGLE_SHOT )
5896 #define MSK_POUT_CYCLIC_PULSE ( 1UL << POUT_CYCLIC_PULSE )
5897 #define MSK_POUT_PER_SEC ( 1UL << POUT_PER_SEC )
5898 #define MSK_POUT_PER_MIN ( 1UL << POUT_PER_MIN )
5899 #define MSK_POUT_PER_HOUR ( 1UL << POUT_PER_HOUR )
5900 #define MSK_POUT_DCF77 ( 1UL << POUT_DCF77 )
5901 #define MSK_POUT_POS_OK ( 1UL << POUT_POS_OK )
5902 #define MSK_POUT_TIME_SYNC ( 1UL << POUT_TIME_SYNC )
5903 #define MSK_POUT_ALL_SYNC ( 1UL << POUT_ALL_SYNC )
5904 #define MSK_POUT_TIMECODE ( 1UL << POUT_TIMECODE )
5905 #define MSK_POUT_TIMESTR ( 1UL << POUT_TIMESTR )
5906 #define MSK_POUT_10MHZ ( 1UL << POUT_10MHZ )
5907 #define MSK_POUT_DCF77_M59 ( 1UL << POUT_DCF77_M59 )
5908 #define MSK_POUT_SYNTH ( 1UL << POUT_SYNTH )
5909 #define MSK_POUT_TIME_SLOTS ( 1UL << POUT_TIME_SLOTS )
5910 #define MSK_POUT_GPIO ( 1UL << POUT_GPIO )
5911 #define MSK_POUT_PTTI_PPS ( 1UL << POUT_PTTI_PPS )
5912 #define MSK_POUT_HAVEQUICK ( 1UL << POUT_HAVEQUICK )
5913 
5914 
5930 #define POUT_MODES_DATA_TM \
5931 ( \
5932  MSK_POUT_TIMER \
5933 )
5934 
5935 
5939 #define POUT_MODES_DATA_TM_0 \
5940 ( \
5941  MSK_POUT_SINGLE_SHOT | \
5942  MSK_POUT_CYCLIC_PULSE \
5943 )
5944 
5945 
5951 #define POUT_MODES_MODE_PARAM_AS_PULSE_LEN \
5952 ( \
5953  MSK_POUT_SINGLE_SHOT | \
5954  MSK_POUT_CYCLIC_PULSE | \
5955  MSK_POUT_PER_SEC | \
5956  MSK_POUT_PER_MIN | \
5957  MSK_POUT_PER_HOUR \
5958 )
5959 
5960 
5964 #define POUT_MODES_MODE_PARAM_AS_COM_IDX \
5965 ( \
5966  MSK_POUT_TIMESTR \
5967 )
5968 
5969 
5975 #define POUT_MODES_MODE_PARAM_AS_SLOTS_PER_MIN \
5976 ( \
5977  MSK_POUT_TIME_SLOTS \
5978 )
5979 
5980 
5984 #define POUT_MODES_MODE_PARAM_AS_GPIO_IDX \
5985 ( \
5986  MSK_POUT_GPIO \
5987 )
5988 
5989 
5993 #define POUT_MODES_TIMEOUT \
5994 ( \
5995  MSK_POUT_DCF77 | \
5996  MSK_POUT_DCF77_M59 \
5997 )
5998 
5999 
6003 #define POUT_MODES_SUPP_TIMEBASE_UTC \
6004 ( \
6005  MSK_POUT_DCF77 | \
6006  MSK_POUT_DCF77_M59 \
6007 )
6008 
6009 
6015 #define POUT_MODES_DATA_PULSE_SHIFT \
6016 ( \
6017  MSK_POUT_PER_SEC | \
6018  MSK_POUT_PER_MIN | \
6019  MSK_POUT_PER_HOUR \
6020 )
6021 
6022 
6036 #define POUT_MODES_SUPP_IF_SYNC_ONLY \
6037 ( \
6038  MSK_POUT_IDLE | \
6039  MSK_POUT_TIMER | \
6040  MSK_POUT_SINGLE_SHOT | \
6041  MSK_POUT_CYCLIC_PULSE | \
6042  MSK_POUT_PER_SEC | \
6043  MSK_POUT_PER_MIN | \
6044  MSK_POUT_PER_HOUR | \
6045  MSK_POUT_DCF77 | \
6046  MSK_POUT_TIMECODE | \
6047  MSK_POUT_TIMESTR | \
6048  MSK_POUT_10MHZ | \
6049  MSK_POUT_DCF77_M59 | \
6050  MSK_POUT_SYNTH | \
6051  MSK_POUT_TIME_SLOTS | \
6052  MSK_POUT_GPIO | \
6053  MSK_POUT_PTTI_PPS | \
6054  MSK_POUT_HAVEQUICK \
6055 )
6056 
6072 #define ENG_POUT_NAME_IDLE "Idle"
6073 #define ENG_POUT_NAME_TIMER "Timer"
6074 #define ENG_POUT_NAME_SINGLE_SHOT "Single Shot"
6075 #define ENG_POUT_NAME_CYCLIC_PULSE "Cyclic Pulse"
6076 #define ENG_POUT_NAME_PER_SEC "Pulse Per Second"
6077 #define ENG_POUT_NAME_PER_MIN "Pulse Per Min"
6078 #define ENG_POUT_NAME_PER_HOUR "Pulse Per Hour"
6079 #define ENG_POUT_NAME_DCF77 "DCF77 Marks"
6080 #define ENG_POUT_NAME_POS_OK "Position OK"
6081 #define ENG_POUT_NAME_TIME_SYNC "Time Sync"
6082 #define ENG_POUT_NAME_ALL_SYNC "All Sync"
6083 #define ENG_POUT_NAME_TIMECODE "DCLS Time Code"
6084 #define ENG_POUT_NAME_TIMESTR "Serial Time String"
6085 #define ENG_POUT_NAME_10MHZ "10 MHz Frequency"
6086 #define ENG_POUT_NAME_DCF77_M59 "DCF77-like M59"
6087 #define ENG_POUT_NAME_SYNTH "Synthesizer Frequency"
6088 #define ENG_POUT_NAME_TIME_SLOTS "Time Slots per Minute"
6089 #define ENG_POUT_NAME_GPIO "GPIO Signal"
6090 #define ENG_POUT_PTTI_PPS "PTTI 1 PPS"
6091 #define ENG_POUT_HAVEQUICK "HaveQuick"
6092 
6102 #define DEFAULT_ENG_POUT_NAMES \
6103 { \
6104  ENG_POUT_NAME_IDLE, \
6105  ENG_POUT_NAME_TIMER, \
6106  ENG_POUT_NAME_SINGLE_SHOT, \
6107  ENG_POUT_NAME_CYCLIC_PULSE, \
6108  ENG_POUT_NAME_PER_SEC, \
6109  ENG_POUT_NAME_PER_MIN, \
6110  ENG_POUT_NAME_PER_HOUR, \
6111  ENG_POUT_NAME_DCF77, \
6112  ENG_POUT_NAME_POS_OK, \
6113  ENG_POUT_NAME_TIME_SYNC, \
6114  ENG_POUT_NAME_ALL_SYNC, \
6115  ENG_POUT_NAME_TIMECODE, \
6116  ENG_POUT_NAME_TIMESTR, \
6117  ENG_POUT_NAME_10MHZ, \
6118  ENG_POUT_NAME_DCF77_M59, \
6119  ENG_POUT_NAME_SYNTH, \
6120  ENG_POUT_NAME_TIME_SLOTS, \
6121  ENG_POUT_NAME_GPIO, \
6122  ENG_POUT_PTTI_PPS, \
6123  ENG_POUT_HAVEQUICK \
6124 }
6125 
6126 
6138 #define ENG_POUT_HINT_IDLE "Constant output level"
6139 #define ENG_POUT_HINT_TIMER "Switch based on configured on/off times"
6140 #define ENG_POUT_HINT_SINGLE_SHOT "Generate a single pulse of determined length"
6141 #define ENG_POUT_HINT_CYCLIC_PULSE "Generate cyclic pulses of determined length"
6142 #define ENG_POUT_HINT_PER_SEC "Generate pulse at beginning of new second"
6143 #define ENG_POUT_HINT_PER_MIN "Generate pulse at beginning of new minute"
6144 #define ENG_POUT_HINT_PER_HOUR "Generate pulse at beginning of new hour"
6145 #define ENG_POUT_HINT_DCF77 "DCF77 compatible time marks"
6146 #define ENG_POUT_HINT_POS_OK "Switch if receiver position has been verified"
6147 #define ENG_POUT_HINT_TIME_SYNC "Switch if time is synchronized"
6148 #define ENG_POUT_HINT_ALL_SYNC "Switch if full sync"
6149 #define ENG_POUT_HINT_TIMECODE "Duplicate IRIG time code signal"
6150 #define ENG_POUT_HINT_TIMESTR "Duplicate serial time string of specified port"
6151 #define ENG_POUT_HINT_10MHZ "10 MHz fixed output frequency"
6152 #define ENG_POUT_HINT_DCF77_M59 "DCF77 time marks with 500 ms pulse in 59th second"
6153 #define ENG_POUT_HINT_SYNTH "Frequency generated by programmable synthesizer"
6154 #define ENG_POUT_HINT_TIME_SLOTS "Output enabled during specified time slots per minute"
6155 #define ENG_POUT_HINT_GPIO "Duplicated signal of the specified GPIO input or output"
6156 #define ENG_POUT_HINT_PTTI_PPS "Generate 20us Pulse at beginning of the second"
6157 #define ENG_POUT_HINT_HAVEQUICK "Duplicated HaveQuick Signal"
6158 
6167 #define DEFAULT_ENG_POUT_HINTS \
6168 { \
6169  ENG_POUT_HINT_IDLE, \
6170  ENG_POUT_HINT_TIMER, \
6171  ENG_POUT_HINT_SINGLE_SHOT, \
6172  ENG_POUT_HINT_CYCLIC_PULSE, \
6173  ENG_POUT_HINT_PER_SEC, \
6174  ENG_POUT_HINT_PER_MIN, \
6175  ENG_POUT_HINT_PER_HOUR, \
6176  ENG_POUT_HINT_DCF77, \
6177  ENG_POUT_HINT_POS_OK, \
6178  ENG_POUT_HINT_TIME_SYNC, \
6179  ENG_POUT_HINT_ALL_SYNC, \
6180  ENG_POUT_HINT_TIMECODE, \
6181  ENG_POUT_HINT_TIMESTR, \
6182  ENG_POUT_HINT_10MHZ, \
6183  ENG_POUT_HINT_DCF77_M59, \
6184  ENG_POUT_HINT_SYNTH, \
6185  ENG_POUT_HINT_TIME_SLOTS, \
6186  ENG_POUT_HINT_GPIO, \
6187  ENG_POUT_HINT_PTTI_PPS, \
6188  ENG_POUT_HINT_HAVEQUICK \
6189 }
6190 
6191 
6192 
6199 {
6204 
6214 
6220 
6222 };
6223 
6224 
6231 {
6235 };
6236 
6237 
6238 
6249 typedef struct
6250 {
6253 
6255 
6256 #define _mbg_swab_pout_settings_idx_on_set( _p ) \
6257 do \
6258 { \
6259  _mbg_swab16( &(_p)->idx ); \
6260  _mbg_swab_pout_settings_on_set( &(_p)->pout_settings ); \
6261 } while ( 0 )
6262 
6263 #define _mbg_swab_pout_settings_idx_on_get( _p ) \
6264 do \
6265 { \
6266  _mbg_swab16( &(_p)->idx ); \
6267  _mbg_swab_pout_settings_on_get( &(_p)->pout_settings ); \
6268 } while ( 0 )
6269 
6270 
6281 typedef struct
6282 {
6284  uint32_t supp_modes;
6288  uint32_t flags;
6289 
6290 } POUT_INFO;
6291 
6292 #define _mbg_swab_pout_info_on_get( _p ) \
6293 do \
6294 { \
6295  _mbg_swab_pout_settings_on_get( &(_p)->pout_settings ); \
6296  _mbg_swab32( &(_p)->supp_modes ); \
6297  _mbg_swab8( &(_p)->timestr_ports ); \
6298  _mbg_swab8( &(_p)->pulse_shift_res ); \
6299  _mbg_swab16( &(_p)->reserved_1 ); \
6300  _mbg_swab32( &(_p)->flags ); \
6301 } while ( 0 )
6302 
6303 
6304 #define MAX_POUT_TIMESTR_PORTS 8
6305 
6306 
6307 
6314 {
6321 };
6322 
6323 
6330 {
6336 };
6337 
6338 
6339 
6351 typedef struct
6352 {
6355 
6356 } POUT_INFO_IDX;
6357 
6358 #define _mbg_swab_pout_info_idx_on_get( _p ) \
6359 do \
6360 { \
6361  _mbg_swab16( &(_p)->idx ); \
6362  _mbg_swab_pout_info_on_get( &(_p)->pout_info ); \
6363 } while ( 0 )
6364 
6416 {
6421 
6441 };
6442 
6449 #define MAX_N_MULTI_REF_TYPES 32
6450 
6451 
6457 #define DEFAULT_MULTI_REF_NAMES \
6458 { \
6459  "GPS", \
6460  "10 MHz freq in", \
6461  "PPS in", \
6462  "10 MHz + PPS in", \
6463  "IRIG", \
6464  "NTP", \
6465  "PTP (IEEE1588)", \
6466  "PTP over E1", \
6467  "Fixed Freq. in", \
6468  "PPS plus string", \
6469  "Var. freq. via GPIO", \
6470  "(reserved)", \
6471  "DCF77 PZF Receiver", \
6472  "Long Wave Receiver", \
6473  "GNSS Receiver", \
6474  "HaveQuick Input", \
6475  "ext. Osc.", \
6476  "Synchronous Ethernet" \
6477 }
6478 
6486 #define DEFAULT_MULTI_REF_NAMES_SHORT \
6487 { \
6488  "GPS", \
6489  "FRQ", \
6490  "PPS", \
6491  "10MHZ+PPS", \
6492  "TCR", \
6493  "NTP", \
6494  "PTP", \
6495  "PTP_E1", \
6496  "FIXED_FREQ", \
6497  "STRING+PPS", \
6498  "GPIO", \
6499  "(reserved)", \
6500  "PZF", \
6501  "LWR", \
6502  "GNSS", \
6503  "HQI", \
6504  "EXT", \
6505  "SYNCE" \
6506 }
6507 
6508 
6519 #define HAS_MULTI_REF_GPS ( 1UL << MULTI_REF_GPS )
6520 #define HAS_MULTI_REF_10MHZ ( 1UL << MULTI_REF_10MHZ )
6521 #define HAS_MULTI_REF_PPS ( 1UL << MULTI_REF_PPS )
6522 #define HAS_MULTI_REF_10MHZ_PPS ( 1UL << MULTI_REF_10MHZ_PPS )
6523 #define HAS_MULTI_REF_IRIG ( 1UL << MULTI_REF_IRIG )
6524 #define HAS_MULTI_REF_NTP ( 1UL << MULTI_REF_NTP )
6525 #define HAS_MULTI_REF_PTP ( 1UL << MULTI_REF_PTP )
6526 #define HAS_MULTI_REF_PTP_E1 ( 1UL << MULTI_REF_PTP_E1 )
6527 
6528 #define HAS_MULTI_REF_FREQ ( 1UL << MULTI_REF_FREQ )
6529 #define HAS_MULTI_REF_PPS_STRING ( 1UL << MULTI_REF_PPS_STRING )
6530 #define HAS_MULTI_REF_GPIO ( 1UL << MULTI_REF_GPIO )
6531 #define HAS_MULTI_REF_INTERNAL ( 1UL << MULTI_REF_INTERNAL )
6532 #define HAS_MULTI_REF_PZF ( 1UL << MULTI_REF_PZF )
6533 #define HAS_MULTI_REF_LWR ( 1UL << MULTI_REF_LWR )
6534 #define HAS_MULTI_REF_GRC ( 1UL << MULTI_REF_GRC )
6535 #define HAS_MULTI_REF_HAVEQUICK ( 1UL << MULTI_REF_HAVEQUICK )
6536 
6537 #define HAS_MULTI_REF_EXT_OSC ( 1UL << MULTI_REF_EXT_OSC )
6538 #define HAS_MULTI_REF_SYNCE ( 1UL << MULTI_REF_SYNCE )
6539 
6540 
6562 #define N_MULTI_REF_PRIO 4
6563 
6564 
6574 typedef struct
6575 {
6577 
6579 
6580 
6586 typedef struct
6587 {
6589  uint32_t supp_ref;
6592 
6593 } MULTI_REF_INFO;
6594 
6595 
6602 
6603 
6610 {
6621 };
6622 
6623 
6632 {
6642 };
6643 
6701 typedef struct
6702 {
6705 
6706 } XMULTI_REF_ID;
6707 
6708 #define _mbg_swab_xmulti_ref_id( _p ) \
6709 do \
6710 { \
6711  _mbg_swab8( &(_p)->type ); \
6712  _mbg_swab8( &(_p)->instance ); \
6713 } while ( 0 )
6714 
6715 
6716 
6720 typedef struct
6721 {
6726  uint32_t reserved;
6727 
6729 
6730 #define _mbg_swab_xmulti_ref_settings( _p ) \
6731 do \
6732 { \
6733  _mbg_swab_xmulti_ref_id( &(_p)->id ); \
6734  _mbg_swab16( &(_p)->flags ); \
6735  _mbg_swab_nano_time( &(_p)->bias ); \
6736  _mbg_swab_nano_time( &(_p)->precision ); \
6737  _mbg_swab32( &(_p)->reserved ); \
6738 } while ( 0 )
6739 
6740 
6741 
6749 typedef struct
6750 {
6753 
6755 
6756 #define _mbg_swab_xmulti_ref_settings_idx( _p ) \
6757 do \
6758 { \
6759  _mbg_swab16( &(_p)->idx ); \
6760  _mbg_swab_xmulti_ref_settings( &(_p)->settings ); \
6761 } while ( 0 )
6762 
6763 
6764 
6769 {
6778 };
6779 
6780 
6785 {
6793 };
6794 
6795 
6796 
6800 typedef struct
6801 {
6803 
6810  uint32_t supp_ref;
6811 
6818 
6821 
6822 } XMULTI_REF_INFO;
6823 
6824 #define _mbg_swab_xmulti_ref_info( _p ) \
6825 do \
6826 { \
6827  _mbg_swab_xmulti_ref_settings( &(_p)->settings ); \
6828  _mbg_swab32( &(_p)->supp_ref ); \
6829  _mbg_swab8( &(_p)->n_supp_ref ); \
6830  _mbg_swab8( &(_p)->n_prio ); \
6831  _mbg_swab16( &(_p)->flags ); \
6832 } while ( 0 )
6833 
6834 
6835 
6839 typedef struct
6840 {
6843 
6845 
6846 #define _mbg_swab_xmulti_ref_info_idx( _p ) \
6847 do \
6848 { \
6849  _mbg_swab16( &(_p)->idx ); \
6850  _mbg_swab_xmulti_ref_info( &(_p)->info ); \
6851 } while ( 0 )
6852 
6853 
6854 
6858 typedef struct
6859 {
6866 
6868 
6869 #define _mbg_swab_xmulti_ref_status( _p ) \
6870 do \
6871 { \
6872  _mbg_swab_xmulti_ref_id( &(_p)->id ); \
6873  _mbg_swab16( &(_p)->status ); \
6874  _mbg_swab_nano_time( &(_p)->offset ); \
6875  _mbg_swab16( &(_p)->flags ); \
6876  _mbg_swab8( &(_p)->ssm ); \
6877  _mbg_swab8( &(_p)->soc ); \
6878 } while ( 0 )
6879 
6880 
6881 
6885 typedef struct
6886 {
6889 
6891 
6892 #define _mbg_swab_xmulti_ref_status_idx( _p ) \
6893 do \
6894 { \
6895  _mbg_swab16( &(_p)->idx ); \
6896  _mbg_swab_xmulti_ref_status( &(_p)->status ); \
6897 } while ( 0 )
6898 
6899 
6900 
6915 {
6921 };
6922 
6923 #define XMR_QL_TDEV_MASK ( 0x03 << 0 )
6924 #define XMR_QL_MTIE_MASK ( 0x03 << 2 )
6925 
6926 #define _GET_XMR_QL_TDEV( _x ) ( ( ( _x ) & XMR_QL_TDEV_MASK ) >> 0 )
6927 #define _PUT_XMR_QL_TDEV( _x, _ql ) \
6928 do { \
6929  ( _x ) = ( ( _x ) & ~XMR_QL_TDEV_MASK ) | ( ( ( _ql ) << 0 ) & XMR_QL_TDEV_MASK ); \
6930 } while ( 0 )
6931 
6932 
6933 #define _GET_XMR_QL_MTIE( _x ) ( ( ( _x ) & XMR_QL_MTIE_MASK ) >> 2 )
6934 #define _PUT_XMR_QL_MTIE( _x, _ql ) \
6935 do { \
6936  ( _x ) = ( ( _x ) & ~XMR_QL_MTIE_MASK ) | ( ( ( _ql ) << 2 ) & XMR_QL_MTIE_MASK ); \
6937 } while ( 0 )
6938 
6939 
6940 
6945 {
6960 };
6961 
6962 
6963 
6973 #define XMRS_MSK_NOT_SUPP ( 1UL << XMRS_BIT_NOT_SUPP )
6974 #define XMRS_MSK_NO_CONN ( 1UL << XMRS_BIT_NO_CONN )
6975 #define XMRS_MSK_NO_SIGNAL ( 1UL << XMRS_BIT_NO_SIGNAL )
6976 #define XMRS_MSK_IS_MASTER ( 1UL << XMRS_BIT_IS_MASTER )
6977 #define XMRS_MSK_IS_LOCKED ( 1UL << XMRS_BIT_IS_LOCKED )
6978 #define XMRS_MSK_IS_ACCURATE ( 1UL << XMRS_BIT_IS_ACCURATE )
6979 #define XMRS_MSK_NOT_SETTLED ( 1UL << XMRS_BIT_NOT_SETTLED )
6980 #define XMRS_MSK_NOT_PHASE_LOCKED ( 1UL << XMRS_BIT_NOT_PHASE_LOCKED )
6981 #define XMRS_MSK_NUM_SRC_EXC ( 1UL << XMRS_BIT_NUM_SRC_EXC )
6982 #define XMRS_MSK_IS_EXTERNAL ( 1UL << XMRS_BIT_IS_EXTERNAL )
6983 #define XMRS_MSK_LOW_JITTER ( 1UL << XMRS_BIT_LOW_JITTER )
6984 #define XMRS_MSK_ITU_LIMIT_VIOLATED ( 1UL << XMRS_BIT_ITU_LIMIT_VIOLATED )
6985 #define XMRS_MSK_TRS_LIMIT_VIOLATED ( 1UL << XMRS_BIT_TRS_LIMIT_VIOLATED )
6986 
6987 
6996 #define MBG_XMRS_STATUS_STRS \
6997 { \
6998  "Ref type not supported", \
6999  "No connection", \
7000  "No signal", \
7001  "Is master", \
7002  "Is locked", \
7003  "Is accurate", \
7004  "Not settled", \
7005  "Phase not locked", \
7006  "Number sources exceeds limit", \
7007  "Is external", \
7008  "Low jitter", \
7009  "ITU Limit violated", \
7010  "TRS Limit violated" \
7011 }
7012 
7013 
7014 
7015 /*
7016  * An initializer for a ::XMULTI_REF_STATUS variable
7017  * with status invalid / not used
7018  */
7019 #define XMULTI_REF_STATUS_INVALID \
7020 { \
7021  { (uint8_t) MULTI_REF_NONE, 0 }, /* id; instance 0 ? */ \
7022  XMRS_MSK_NO_CONN | XMRS_MSK_NO_SIGNAL, /* status */ \
7023  { 0 }, /* offset */ \
7024  0 /* reserved */ \
7025 }
7026 
7027 
7028 
7054 typedef struct
7055 {
7056  uint32_t flags;
7061 
7063 
7064 #define _mbg_swab_xmulti_ref_instances( _p ) \
7065 do \
7066 { \
7067  _mbg_swab32( &(_p)->flags ); \
7068  _mbg_swab16( &(_p)->n_xmr_settings ); \
7069 } while ( 0 )
7070 
7071 
7072 
7079 {
7086 
7088 
7091 
7093 };
7094 
7095 
7104 {
7109 };
7110 
7111 
7112 
7116 typedef uint32_t XMR_HOLDOVER_INTV;
7117 
7118 #define _mbg_swab_xmr_holdover_intv( _p ) \
7119  _mbg_swab32( _p )
7120 
7121 
7122 
7126 #define XMR_PRIO_LVL_UNSPEC -1
7127 
7128 
7129 
7157 typedef struct
7158 {
7163  uint32_t time_offset_ns;
7164  XMR_HOLDOVER_INTV elapsed;
7165  XMR_HOLDOVER_INTV interval;
7166  uint32_t flags;
7167 
7169 
7170 #define _mbg_swab_xmr_holdover_status( _p ) \
7171 do \
7172 { \
7173  _mbg_swab8( &(_p)->mode ); \
7174  _mbg_swab8( &(_p)->curr_prio ); \
7175  _mbg_swab8( &(_p)->nxt_prio ); \
7176  _mbg_swab8( &(_p)->remote_watchdog ); \
7177  _mbg_swab32( &(_p)->time_offset_ns ); \
7178  _mbg_swab_xmr_holdover_intv( &(_p)->elapsed ); \
7179  _mbg_swab_xmr_holdover_intv( &(_p)->interval ); \
7180  _mbg_swab32( &(_p)->flags ); \
7181 } while ( 0 )
7182 
7183 
7184 
7185 
7194 {
7199 };
7200 
7201 
7207 #define XMR_HOLDOVER_STATUS_MODE_NAMES \
7208 { \
7209  "Autonomous", \
7210  "Pre-Autonomous", \
7211  "Remote" \
7212 }
7213 
7214 
7215 
7222 {
7228 };
7229 
7230 
7237 {
7242 };
7243 
7244 
7245 
7252 {
7257 };
7258 
7259 
7260 
7269 {
7273 };
7274 
7275 
7276 
7277 typedef struct
7278 {
7281  uint32_t reserved_0;
7282 
7284 
7285 #define _mbg_swab_xmr_ext_src_info( _p ) \
7286 do \
7287 { \
7288  _mbg_swab16( &(_p)->supp_flags ); \
7289  _mbg_swab16( &(_p)->feat_flags ); \
7290  _mbg_swab32( &(_p)->reserved_0 ); \
7291 } while ( 0 )
7292 
7293 
7294 
7295 typedef struct
7296 {
7299 
7301 
7302 #define _mbg_swab_xmr_ext_src_info_idx( _p ) \
7303 do \
7304 { \
7305  _mbg_swab16( &(_p)->idx ); \
7306  _mbg_swab_xmr_ext_src_info( &(_p)->info ); \
7307 } while ( 0 )
7308 
7309 
7310 
7321 typedef struct
7322 {
7323  uint32_t timestamp;
7331  uint32_t reserved_1;
7332  uint32_t reserved_2;
7333  uint32_t flags;
7334 
7335 } XMR_STATS;
7336 
7337 #define _mbg_swab_xmr_stats( _p ) \
7338 do \
7339 { \
7340  _mbg_swab32( &(_p)->timestamp ); \
7341  _mbg_swab_nano_time( &(_p)->last_mue ); \
7342  _mbg_swab_nano_time( &(_p)->last_sigma ); \
7343  _mbg_swab_nano_time( &(_p)->last_max ); \
7344  _mbg_swab_nano_time( &(_p)->last_min ); \
7345  _mbg_swab_nano_time( &(_p)->reserved_0 ); \
7346  _mbg_swab_nano_time( &(_p)->step_comp_val ); \
7347  _mbg_swab_nano_time( &(_p)->auto_bias ); \
7348  _mbg_swab32( &(_p)->reserved_1 ); \
7349  _mbg_swab32( &(_p)->reserved_2 ); \
7350  _mbg_swab32( &(_p)->flags ); \
7351 } while ( 0 )
7352 
7353 
7354 
7361 {
7366 };
7367 
7368 
7369 
7376 {
7380 };
7381 
7382 
7383 
7389 #define DEFAULT_XMR_STATS_FLAG_NAMES \
7390 { \
7391  "Step Detected", \
7392  "Step Compensated", \
7393  "Auto BIAS valid" \
7394 }
7395 
7396 
7397 
7403 typedef struct
7404 {
7407 
7408 } XMR_STATS_IDX;
7409 
7410 #define _mbg_swab_xmr_stats_idx( _p ) \
7411 do \
7412 { \
7413  _mbg_swab16( &(_p)->idx ); \
7414  _mbg_swab_xmr_stats( &(_p)->stats ); \
7415 } while ( 0 )
7416 
7417 
7418 
7419 #define MAX_XMR_METRICS 20
7420 
7421 typedef struct
7422 {
7423  uint32_t timestamp;
7424  uint32_t flags;
7428  uint32_t reserved_1;
7429  uint32_t reserved_2;
7430  uint32_t mtie[MAX_XMR_METRICS];
7431  uint32_t tdev[MAX_XMR_METRICS];
7432 
7433 } XMR_METRICS;
7434 
7435 #define _mbg_swab_xmr_metrics( _p ) \
7436 do \
7437 { \
7438  int i; \
7439  \
7440  _mbg_swab32( &(_p)->timestamp ); \
7441  _mbg_swab32( &(_p)->flags ); \
7442  _mbg_swab8( &(_p)->mtie_scale ); \
7443  _mbg_swab8( &(_p)->tdev_scale ); \
7444  _mbg_swab16( &(_p)->reserved_0 ); \
7445  _mbg_swab32( &(_p)->reserved_1 ); \
7446  _mbg_swab32( &(_p)->reserved_2 ); \
7447  \
7448  for ( i = 0; i < MAX_XMR_METRICS; i++ ) \
7449  _mbg_swab32( &(_p)->mtie[i] ); \
7450  \
7451  for ( i = 0; i < MAX_XMR_METRICS; i++ ) \
7452  _mbg_swab32( &(_p)->tdev[i] ); \
7453  \
7454 } while ( 0 )
7455 
7456 
7457 
7458 // conversion factor scaled FPU32 to double
7459 #define _fpu32_to_double_fac( _x ) ( 1.0 / ( 4294967296.0 * ( _x ) ) )
7460 
7461 
7462 
7468 typedef struct
7469 {
7472 
7473 } XMR_METRICS_IDX;
7474 
7475 #define _mbg_swab_xmr_metrics_idx( _p ) \
7476 do \
7477 { \
7478  _mbg_swab16( &(_p)->idx ); \
7479  _mbg_swab_xmr_metrics( &(_p)->metrics ); \
7480 } while ( 0 )
7481 
7482 
7483 
7493 {
7500 } ;
7501 
7502 
7503 
7513 {
7519 };
7520 
7521 
7522 
7531 #define ITU_LIMIT_SHORT_STRS \
7532 { \
7533  "G811 (PRC)", \
7534  "G823 (SSU)", \
7535  "G823 (SEC)", \
7536  "G8272 (PRTC)", \
7537  "G82721 (ePRTC)" \
7538 }
7539 
7540 
7541 
7547 typedef struct
7548 {
7552  uint32_t reserved_1;
7553 
7554 } XMR_QL_SETTINGS;
7555 
7556 
7557 
7558 typedef struct
7559 {
7560  uint32_t supp_ql_masks;
7561  uint32_t reserved_0;
7562  uint32_t reserved_1;
7564 
7565 } XMR_QL_INFO;
7566 
7567 
7568 
7569 typedef struct
7570 {
7573 
7575 
7576 
7577 
7578 typedef struct
7579 {
7582 
7583 } XMR_QL_INFO_IDX;
7584 
7585 
7608 typedef struct
7609 {
7610  uint32_t num_io;
7611  uint32_t reserved;
7612  uint32_t flags;
7613 
7615 
7616 #define _mbg_swab_mbg_gpio_cfg_limits( _p ) \
7617 do \
7618 { \
7619  _mbg_swab32( &(_p)->num_io ); \
7620  _mbg_swab32( &(_p)->reserved ); \
7621  _mbg_swab32( &(_p)->flags ); \
7622 } while ( 0 )
7623 
7624 
7625 
7632 {
7635 };
7636 
7637 
7638 
7647 {
7649 };
7650 
7651 
7652 
7664 {
7675 };
7676 
7677 
7678 
7679 #define DEFAULT_GPIO_TYPES_SHORT_STRS \
7680 { \
7681  "Freq. In", \
7682  "Freq. Out", \
7683  "Fixed Freq Out", \
7684  "BITS In", \
7685  "BITS Out", \
7686  "Video Out", \
7687  "Video Sync Out", \
7688  "Studio Clock Out", \
7689  "Digital Audio Out" \
7690 }
7691 
7692 
7693 
7704 {
7709 };
7710 
7711 
7712 
7723 {
7727 };
7728 
7729 
7730 
7736 #define DEFAULT_GPIO_SIGNAL_SHAPE_NAMES \
7737 { \
7738  "(unspec. shape)", \
7739  "Sine wave", \
7740  "Rectangle pulse" \
7741 }
7742 
7743 
7744 
7750 typedef struct
7751 {
7752  uint32_t hz;
7753  uint32_t frac;
7754 
7755 } MBG_GPIO_FREQ;
7756 
7757 #define _mbg_swab_mbg_gpio_freq( _p ) \
7758 do \
7759 { \
7760  _mbg_swab32( &(_p)->hz ); \
7761  _mbg_swab32( &(_p)->frac); \
7762 } while ( 0 )
7763 
7764 
7765 
7774 typedef struct
7775 {
7777  uint32_t csc_limit;
7778  uint32_t shape;
7779  uint32_t reserved;
7780  uint32_t flags;
7781 
7783 
7784 #define _mbg_swab_mbg_gpio_freq_in_settings( _p ) \
7785 do \
7786 { \
7787  _mbg_swab_mbg_gpio_freq( &(_p)->freq ); \
7788  _mbg_swab32( &(_p)->csc_limit ); \
7789  _mbg_swab32( &(_p)->shape ); \
7790  _mbg_swab32( &(_p)->reserved ); \
7791  _mbg_swab32( &(_p)->flags ); \
7792 } while ( 0 )
7793 
7794 
7795 
7804 typedef struct
7805 {
7806  uint32_t freq_min;
7807  uint32_t freq_max;
7808  uint32_t csc_limit_max;
7809  uint32_t supp_shapes;
7810  uint32_t supp_limits;
7811  uint32_t flags;
7812 
7814 
7815 #define _mbg_swab_mbg_gpio_freq_in_supp( _p ) \
7816 do \
7817 { \
7818  _mbg_swab32( &(_p)->freq_min ); \
7819  _mbg_swab32( &(_p)->freq_max ); \
7820  _mbg_swab32( &(_p)->csc_limit_max ); \
7821  _mbg_swab32( &(_p)->supp_shapes ); \
7822  _mbg_swab32( &(_p)->supp_limits ); \
7823  _mbg_swab32( &(_p)->flags ); \
7824 } while ( 0 )
7825 
7826 
7827 
7836 typedef struct
7837 {
7839  int32_t milli_phase;
7840  uint32_t shape;
7841  uint32_t reserved;
7842  uint32_t flags;
7843 
7845 
7846 #define _mbg_swab_mbg_gpio_freq_out_settings( _p ) \
7847 do \
7848 { \
7849  _mbg_swab_mbg_gpio_freq( &(_p)->freq ); \
7850  _mbg_swab32( &(_p)->milli_phase ); \
7851  _mbg_swab32( &(_p)->shape ); \
7852  _mbg_swab32( &(_p)->reserved ); \
7853  _mbg_swab32( &(_p)->flags ); \
7854 } while ( 0 )
7855 
7856 
7857 
7866 typedef struct
7867 {
7868  uint32_t freq_min;
7869  uint32_t freq_max;
7870  uint32_t freq_resolution;
7871  uint32_t milli_phase_max;
7872  uint32_t supp_shapes;
7873  uint32_t reserved;
7874  uint32_t flags;
7875 
7877 
7878 #define _mbg_swab_mbg_gpio_freq_out_supp( _p ) \
7879 do \
7880 { \
7881  _mbg_swab32( &(_p)->freq_min ); \
7882  _mbg_swab32( &(_p)->freq_max ); \
7883  _mbg_swab32( &(_p)->freq_resolution ); \
7884  _mbg_swab32( &(_p)->milli_phase_max ); \
7885  _mbg_swab32( &(_p)->supp_shapes ); \
7886  _mbg_swab32( &(_p)->reserved ); \
7887  _mbg_swab32( &(_p)->flags ); \
7888 } while ( 0 )
7889 
7890 
7891 
7899 {
7909 };
7910 
7911 
7919 {
7928 };
7929 
7930 
7937 #define MBG_GPIO_FIXED_FREQ_STRS \
7938 { \
7939  "8 kHz", \
7940  "48 kHz", \
7941  "1 MHz", \
7942  "1544 kHz", \
7943  "2048 kHz", \
7944  "5 MHz", \
7945  "10 MHz", \
7946  "19440 kHz" \
7947 }
7948 
7949 
7950 
7959 typedef struct
7960 {
7961  uint32_t freq_idx;
7962  uint32_t shape;
7963  uint32_t reserved;
7964  uint32_t flags;
7965 
7967 
7968 #define _mbg_swab_mbg_gpio_fixed_freq_out_settings( _p ) \
7969 do \
7970 { \
7971  _mbg_swab32( &(_p)->freq_idx ); \
7972  _mbg_swab32( &(_p)->shape ); \
7973  _mbg_swab32( &(_p)->reserved ); \
7974  _mbg_swab32( &(_p)->flags ); \
7975 } while ( 0 )
7976 
7977 
7978 
7987 typedef struct
7988 {
7989  uint32_t supp_freq;
7990  uint32_t supp_shapes;
7991  uint32_t reserved;
7992  uint32_t supp_flags;
7993 
7995 
7996 #define _mbg_swab_mbg_gpio_fixed_freq_out_supp( _p ) \
7997 do \
7998 { \
7999  _mbg_swab32( &(_p)->supp_freq ); \
8000  _mbg_swab32( &(_p)->supp_shapes ); \
8001  _mbg_swab32( &(_p)->reserved ); \
8002  _mbg_swab32( &(_p)->supp_flags ); \
8003 } while ( 0 )
8004 
8005 
8006 
8015 {
8021 };
8022 
8023 
8032 {
8037 };
8038 
8039 
8046 #define MBG_GPIO_BITS_FORMAT_STRS \
8047 { \
8048  "E1 Framed", \
8049  "T1 Framed", \
8050  "E1 Timing", \
8051  "T1 Timing" \
8052 }
8053 
8054 
8055 
8065 {
8083 };
8084 
8085 
8086 
8094 {
8097 };
8098 
8099 
8100 
8109 typedef struct
8110 {
8111  uint32_t format;
8112  uint32_t reserved;
8113  uint32_t csc_limit;
8114 
8115  union quality
8116  {
8117  struct e1
8118  {
8122  } e1;
8123 
8124  struct t1
8125  {
8129  } t1;
8130 
8131  uint32_t u32;
8132 
8133  } quality;
8134 
8135  uint32_t err_msk;
8136  uint32_t flags;
8137 
8139 
8140 #define _mbg_swab_mbg_gpio_bits_in_settings( _p, _recv ) \
8141 do \
8142 { \
8143  uint32_t f = (_p)->format; \
8144  if ( (_recv) ) \
8145  _mbg_swab32( &f); \
8146  _mbg_swab32( &(_p)->format ); \
8147  _mbg_swab32( &(_p)->reserved ); \
8148  _mbg_swab32( &(_p)->csc_limit ); \
8149  switch( f ) \
8150  { \
8151  case MBG_GPIO_BITS_E1_FRAMED : \
8152  case MBG_GPIO_BITS_E1_TIMING : \
8153  _mbg_swab8( &(_p)->quality.e1.ssm ); \
8154  _mbg_swab8( &(_p)->quality.e1.sa_bits ); \
8155  _mbg_swab16( &(_p)->quality.e1.reserved ); \
8156  break; \
8157  \
8158  case MBG_GPIO_BITS_T1_FRAMED : \
8159  case MBG_GPIO_BITS_T1_TIMING : \
8160  _mbg_swab8( &(_p)->quality.t1.min_boc ); \
8161  _mbg_swab8( &(_p)->quality.t1.reserved_0 ); \
8162  _mbg_swab16( &(_p)->quality.t1.reserved_1 ); \
8163  break; \
8164  \
8165  default: \
8166  break; \
8167  } \
8168  _mbg_swab32( &(_p)->err_msk ); \
8169  _mbg_swab32( &(_p)->flags ); \
8170 } while ( 0 )
8171 
8172 
8173 
8178 {
8182 };
8183 
8184 
8193 {
8196 };
8197 
8198 
8199 
8208 typedef struct
8209 {
8210  uint32_t supp_fmts;
8211  uint32_t reserved;
8212 
8214 
8215 #define _mbg_swab_mbg_gpio_bits_in_supp( _p ) \
8216 do \
8217 { \
8218  _mbg_swab32( &(_p)->supp_fmts ); \
8219  _mbg_swab32( &(_p)->reserved ); \
8220 } while ( 0 )
8221 
8222 
8223 
8232 typedef struct
8233 {
8234  uint32_t format;
8235  uint32_t flags;
8240  uint32_t reserved_1;
8241  uint32_t reserved_2;
8242  uint32_t reserved_3;
8243 
8245 
8246 #define _mbg_swab_mbg_gpio_bits_out_settings( _p ) \
8247 do \
8248 { \
8249  _mbg_swab32( &(_p)->format ); \
8250  _mbg_swab32( &(_p)->flags ); \
8251  _mbg_swab8( &(_p)->sa_bits ); \
8252  _mbg_swab8( &(_p)->ssm ); \
8253  _mbg_swab8( &(_p)->boc ); \
8254  _mbg_swab8( &(_p)->reserved_0 ); \
8255  _mbg_swab32( &(_p)->reserved_1 ); \
8256  _mbg_swab32( &(_p)->reserved_2 ); \
8257  _mbg_swab32( &(_p)->reserved_3 ); \
8258 } while ( 0 )
8259 
8260 
8261 
8269 {
8273 };
8274 
8275 
8285 {
8288 };
8289 
8290 
8297 #define MBG_GPIO_BITS_OUT_FLAG_STRS \
8298 { \
8299  "HDB3", \
8300  "B8ZS" \
8301 }
8302 
8303 
8312 typedef struct
8313 {
8314  uint32_t supp_fmts;
8315  uint32_t supp_flags;
8316 
8318 
8319 #define _mbg_swab_mbg_gpio_bits_out_supp( _p ) \
8320 do \
8321 { \
8322  _mbg_swab32( &(_p)->supp_fmts ); \
8323  _mbg_swab32( &(_p)->supp_flags ); \
8324 } while ( 0 )
8325 
8326 
8327 
8336 {
8346 };
8347 
8348 
8349 
8358 {
8367 };
8368 
8369 
8374 #define MBG_GPIO_VIDEO_SD_FORMATS ( MSK_MBG_GPIO_VIDEO_FORMAT_OFF | MSK_MBG_GPIO_VIDEO_SD_FORMAT_NTSC | MSK_MBG_GPIO_VIDEO_SD_FORMAT_PAL | \
8375  MSK_MBG_GPIO_VIDEO_SD_FORMAT_PAL_M )
8376 
8381 #define MBG_GPIO_VIDEO_HD_FORMATS ( MSK_MBG_GPIO_VIDEO_FORMAT_OFF | MSK_MBG_GPIO_VIDEO_HD_FORMAT_720_P_50Hz | MSK_MBG_GPIO_VIDEO_HD_FORMAT_1080_I_50Hz | \
8382  MSK_MBG_GPIO_VIDEO_HD_FORMAT_720_P_59_94Hz | MSK_MBG_GPIO_VIDEO_HD_FORMAT_1080_I_59_94Hz )
8383 
8384 
8385 
8392 #define MBG_GPIO_VIDEO_OUT_STRS \
8393 { \
8394  "OFF", \
8395  "NTSC (525i)", \
8396  "PAL (625i)", \
8397  "720p 50 Hz", \
8398  "1080i 50 Hz", \
8399  "720p 59.94 Hz", \
8400  "1080i 59.94 Hz", \
8401  "PAL M (525i)" \
8402 }
8403 
8404 
8405 
8410 {
8414 };
8415 
8416 
8417 
8426 {
8429 };
8430 
8431 
8432 
8443 {
8449 };
8450 
8451 
8452 
8461 {
8466 };
8467 
8468 
8469 
8475 #define MBG_GPIO_VIDEO_EPOCH_STRS \
8476 { \
8477  "TAI D1970-01-01 T00:00:00", \
8478  "TAI D1958-01-01 T00:00:00", \
8479  "UTC D1972-01-01 T00:00:00", \
8480  "GPS D1980-01-06 T00:00:00" \
8481 }
8482 
8483 
8484 
8492 {
8496 };
8497 
8498 
8506 {
8509 };
8510 
8511 
8517 #define MBG_GPIO_VIDEO_TC_MODE_STRS \
8518 { \
8519  "None", \
8520  "VITC" \
8521 }
8522 
8523 
8524 
8533 typedef struct
8534 {
8535  uint32_t format;
8536  uint32_t flags;
8537  int32_t phase_offset;
8539 
8543 
8544  uint32_t reserved0;
8545  uint32_t reserved1;
8546 
8548 
8549 #define _mbg_swab_mbg_gpio_video_out_settings( _p ) \
8550 do \
8551 { \
8552  _mbg_swab32( &(_p)->format ); \
8553  _mbg_swab32( &(_p)->flags ); \
8554  _mbg_swab32( &(_p)->phase_offset ); \
8555  _mbg_swab8( &(_p)->epoch ); \
8556  _mbg_swab8( &(_p)->tc_mode ); \
8557  _mbg_swab8( &(_p)->tc_line0 ); \
8558  _mbg_swab8( &(_p)->tc_line1 ); \
8559  _mbg_swab32( &(_p)->reserved0 ); \
8560  _mbg_swab32( &(_p)->reserved1 ); \
8561 } while ( 0 )
8562 
8563 
8564 
8573 typedef struct
8574 {
8575  uint32_t supp_formats;
8576  uint32_t supp_flags;
8577  uint32_t supp_epochs;
8578 
8580 
8584  uint32_t reserved1;
8585 
8587 
8588 #define _mbg_swab_mbg_gpio_video_out_supp( _p ) \
8589 do \
8590 { \
8591  _mbg_swab32( &(_p)->supp_formats ); \
8592  _mbg_swab32( &(_p)->supp_flags ); \
8593  _mbg_swab32( &(_p)->supp_epochs ); \
8594  _mbg_swab8( &(_p)->supp_tc_modes ); \
8595  _mbg_swab8( &(_p)->reserved0 ); \
8596  _mbg_swab16( &(_p)->reserved2 ); \
8597  _mbg_swab16( &(_p)->reserved3 ); \
8598  _mbg_swab32( &(_p)->reserved1 ); \
8599 } while ( 0 )
8600 
8601 
8602 
8608 {
8619 };
8620 
8621 
8622 
8631 {
8641 };
8642 
8643 
8644 
8651 #define MBG_GPIO_VIDEO_SYNC_OUT_STRS \
8652 { \
8653  "OFF", \
8654  "SD H-Sync", \
8655  "SD V-Sync", \
8656  "SD Frame", \
8657  "SD Blank", \
8658  "HD H-Sync", \
8659  "HD V-Sync", \
8660  "HD Frame", \
8661  "HD Blank" \
8662 }
8663 
8664 
8665 
8670 #define MBG_GPIO_VIDEO_SYNC_SD_TYPES ( MSK_MBG_GPIO_VIDEO_SYNC_TYPE_OFF | MSK_MBG_GPIO_VIDEO_SYNC_TYPE_SD_HSYNC | MSK_MBG_GPIO_VIDEO_SYNC_TYPE_SD_VSYNC | \
8671  MSK_MBG_GPIO_VIDEO_SYNC_TYPE_SD_FRAME | MSK_MBG_GPIO_VIDEO_SYNC_TYPE_SD_BLANK )
8672 
8677 #define MBG_GPIO_VIDEO_SYNC_HD_TYPES ( MSK_MBG_GPIO_VIDEO_SYNC_TYPE_OFF | MSK_MBG_GPIO_VIDEO_SYNC_TYPE_HD_HSYNC | MSK_MBG_GPIO_VIDEO_SYNC_TYPE_HD_VSYNC | \
8678  MSK_MBG_GPIO_VIDEO_SYNC_TYPE_HD_FRAME | MSK_MBG_GPIO_VIDEO_SYNC_TYPE_HD_BLANK )
8679 
8680 
8681 
8690 typedef struct
8691 {
8692  uint32_t type;
8693  uint32_t flags;
8694  uint32_t reserved0;
8695  uint32_t reserved1;
8696  uint32_t reserved2;
8697  uint32_t reserved3;
8698 
8700 
8701 #define _mbg_swab_mbg_gpio_video_sync_out_settings( _p ) \
8702 do \
8703 { \
8704  _mbg_swab32( &(_p)->type ); \
8705  _mbg_swab32( &(_p)->flags ); \
8706  _mbg_swab32( &(_p)->reserved0 ); \
8707  _mbg_swab32( &(_p)->reserved1 ); \
8708  _mbg_swab32( &(_p)->reserved2 ); \
8709  _mbg_swab32( &(_p)->reserved3 ); \
8710 } while ( 0 )
8711 
8712 
8713 
8722 typedef struct
8723 {
8724  uint32_t supp_types;
8725  uint32_t supp_flags;
8726  uint32_t reserved0;
8727  uint32_t reserved1;
8728 
8730 
8731 #define _mbg_swab_mbg_gpio_video_sync_out_supp( _p ) \
8732 do \
8733 { \
8734  _mbg_swab32( &(_p)->supp_types ); \
8735  _mbg_swab32( &(_p)->supp_flags ); \
8736  _mbg_swab32( &(_p)->reserved0 ); \
8737  _mbg_swab32( &(_p)->reserved1 ); \
8738 } while ( 0 )
8739 
8740 
8741 
8750 {
8755 };
8756 
8757 
8758 
8767 {
8771 };
8772 
8773 
8774 
8781 #define MBG_GPIO_STUDIO_CLOCK_BASE_FREQ_STRS \
8782 { \
8783  "32 kHz", \
8784  "44.1 kHz", \
8785  "48 kHz" \
8786 }
8787 
8788 
8789 
8799 {
8816 };
8817 
8818 
8819 
8828 {
8844 };
8845 
8846 
8847 
8854 #define MBG_GPIO_STUDIO_CLOCK_SCALE_STRS \
8855 { \
8856  "1/32", \
8857  "1/16", \
8858  "1/8", \
8859  "1/4", \
8860  "1/2", \
8861  "1", \
8862  "2", \
8863  "4", \
8864  "8", \
8865  "16", \
8866  "32", \
8867  "64", \
8868  "128", \
8869  "256", \
8870  "512" \
8871 }
8872 
8873 
8874 
8879 {
8882 };
8883 
8884 
8885 
8894 {
8896 };
8897 
8898 
8899 
8908 typedef struct
8909 {
8910  uint32_t base_freq;
8911  uint32_t scale;
8912  uint32_t flags;
8913  uint32_t reserved0;
8914  uint32_t reserved1;
8915 
8917 
8918 #define _mbg_swab_mbg_gpio_studio_clock_out_settings( _p ) \
8919 do \
8920 { \
8921  _mbg_swab32( &(_p)->base_freq ); \
8922  _mbg_swab32( &(_p)->scale ); \
8923  _mbg_swab32( &(_p)->flags ); \
8924  _mbg_swab32( &(_p)->reserved0 ); \
8925  _mbg_swab32( &(_p)->reserved1 ); \
8926 } while ( 0 )
8927 
8928 
8929 
8930 #define MAX_SUPP_BASE_FREQUENCIES 8
8931 
8932 
8940 typedef struct
8941 {
8946  uint32_t supp_flags;
8947  uint32_t reserved2;
8948 
8950 
8951 #define _mbg_swab_mbg_gpio_studio_clock_out_supp( _p ) \
8952 do \
8953 { \
8954  uint8_t idx; \
8955  _mbg_swab8( &(_p)->supp_base_freqs ); \
8956  _mbg_swab8( &(_p)->reserved0 ); \
8957  _mbg_swab16( &(_p)->reserved1 ); \
8958  for( idx = 0; idx < MAX_SUPP_BASE_FREQUENCIES; idx++ ) \
8959  _mbg_swab16( &(_p)->supp_scales[idx] ); \
8960  _mbg_swab32( &(_p)->supp_flags ); \
8961  _mbg_swab32( &(_p)->reserved2 ); \
8962 } while ( 0 )
8963 
8964 
8965 
8976 {
8980 };
8981 
8982 
8983 
8992 {
8995 };
8996 
8997 
8998 
9004 #define MBG_GPIO_DIGITAL_AUDIO_TYPE_STRS \
9005 { \
9006  "OFF", \
9007  "DARS" \
9008 }
9009 
9010 
9011 
9016 {
9019 };
9020 
9021 
9022 
9031 {
9033 };
9034 
9035 
9036 
9045 typedef struct
9046 {
9047  uint32_t type;
9048  uint32_t flags;
9049  uint32_t reserved0;
9050  uint32_t reserved1;
9051  uint32_t reserved2;
9052 
9054 
9055 #define _mbg_swab_mbg_gpio_digital_audio_out_settings( _p ) \
9056 do \
9057 { \
9058  _mbg_swab32( &(_p)->type ); \
9059  _mbg_swab32( &(_p)->flags ); \
9060  _mbg_swab32( &(_p)->reserved0 ); \
9061  _mbg_swab32( &(_p)->reserved1 ); \
9062  _mbg_swab32( &(_p)->reserved2 ); \
9063 } while ( 0 )
9064 
9065 
9066 
9075 typedef struct
9076 {
9077  uint32_t supp_types;
9078  uint32_t supp_flags;
9079  uint32_t reserved0;
9080  uint32_t reserved1;
9081  uint32_t reserved2;
9082 
9084 
9085 #define _mbg_swab_mbg_gpio_digital_audio_out_supp( _p ) \
9086 do \
9087 { \
9088  _mbg_swab32( &(_p)->supp_types ); \
9089  _mbg_swab32( &(_p)->supp_flags ); \
9090  _mbg_swab32( &(_p)->reserved0 ); \
9091  _mbg_swab32( &(_p)->reserved1 ); \
9092  _mbg_swab32( &(_p)->reserved2 ); \
9093 } while ( 0 )
9094 
9095 
9096 
9103 {
9106 };
9107 
9108 
9109 
9118 {
9120 };
9121 
9122 
9123 
9127 typedef struct
9128 {
9129  uint32_t type;
9130 
9134 
9135  uint32_t flags;
9136 
9138  union
9139  {
9149  } u;
9150 
9152 
9153 #define _mbg_swab_mbg_gpio_settings( _p, _recv ) \
9154 do \
9155 { \
9156  uint32_t t = (_p)->type; \
9157  if ( (_recv) ) \
9158  _mbg_swab32( &t ); \
9159  _mbg_swab32( &(_p)->type ); \
9160  _mbg_swab16( &(_p)->reserved_1 ); \
9161  _mbg_swab8( &(_p)->reserved_2 ); \
9162  _mbg_swab8( &(_p)->ass_io_idx ); \
9163  _mbg_swab32( &(_p)->flags ); \
9164  switch( t ) \
9165  { \
9166  case MBG_GPIO_TYPE_FREQ_IN : _mbg_swab_mbg_gpio_freq_in_settings( &(_p)->u.freq_in ); break; \
9167  case MBG_GPIO_TYPE_FREQ_OUT : _mbg_swab_mbg_gpio_freq_out_settings( &(_p)->u.freq_out ); break; \
9168  case MBG_GPIO_TYPE_FIXED_FREQ_OUT : _mbg_swab_mbg_gpio_fixed_freq_out_settings( &(_p)->u.ff_out ); break; \
9169  case MBG_GPIO_TYPE_BITS_IN : _mbg_swab_mbg_gpio_bits_in_settings( &(_p)->u.bits_in, (_recv) ); break; \
9170  case MBG_GPIO_TYPE_BITS_OUT : _mbg_swab_mbg_gpio_bits_out_settings( &(_p)->u.bits_out ); break; \
9171  case MBG_GPIO_TYPE_VIDEO_OUT : _mbg_swab_mbg_gpio_video_out_settings( &(_p)->u.video_out ); break; \
9172  case MBG_GPIO_TYPE_VIDEO_SYNC_OUT : _mbg_swab_mbg_gpio_video_sync_out_settings( &(_p)->u.video_sync_out ); break; \
9173  case MBG_GPIO_TYPE_STUDIO_CLOCK_OUT : _mbg_swab_mbg_gpio_studio_clock_out_settings( &(_p)->u.studio_clk_out ); break; \
9174  case MBG_GPIO_TYPE_DIGITAL_AUDIO_OUT : _mbg_swab_mbg_gpio_digital_audio_out_settings( &(_p)->u.digital_audio_out ); break; \
9175  default : break; \
9176  } \
9177 } while ( 0 )
9178 
9179 
9180 
9184 typedef struct
9185 {
9186  uint32_t idx;
9188 
9190 
9191 #define _mbg_swab_mbg_gpio_settings_idx( _p, _recv ) \
9192 do \
9193 { \
9194  _mbg_swab32( &(_p)->idx ); \
9195  _mbg_swab_mbg_gpio_settings( &(_p)->settings, (_recv ) ); \
9196 } while ( 0 )
9197 
9198 
9199 
9203 typedef struct
9204 {
9205  uint32_t type;
9206  uint32_t reserved;
9207  uint32_t supp_flags;
9208 
9210  union
9211  {
9221  } u;
9222 
9223 } MBG_GPIO_LIMITS;
9224 
9225 #define _mbg_swab_mbg_gpio_limits( _p, _recv ) \
9226 do \
9227 { \
9228  uint32_t t = (_p)->type; \
9229  if ( (_recv) ) \
9230  _mbg_swab32( &t ); \
9231  _mbg_swab32( &(_p)->type ); \
9232  _mbg_swab32( &(_p)->reserved ); \
9233  _mbg_swab32( &(_p)->supp_flags ); \
9234  switch( t ) \
9235  { \
9236  case MBG_GPIO_TYPE_FREQ_IN : _mbg_swab_mbg_gpio_freq_in_supp( &(_p)->u.freq_in ); break; \
9237  case MBG_GPIO_TYPE_FREQ_OUT : _mbg_swab_mbg_gpio_freq_out_supp( &(_p)->u.freq_out ); break; \
9238  case MBG_GPIO_TYPE_FIXED_FREQ_OUT : _mbg_swab_mbg_gpio_fixed_freq_out_supp( &(_p)->u.ff_out ); break; \
9239  case MBG_GPIO_TYPE_BITS_IN : _mbg_swab_mbg_gpio_bits_in_supp( &(_p)->u.bits_in ); break; \
9240  case MBG_GPIO_TYPE_BITS_OUT : _mbg_swab_mbg_gpio_bits_out_supp( &(_p)->u.bits_out ); break; \
9241  case MBG_GPIO_TYPE_VIDEO_OUT : _mbg_swab_mbg_gpio_video_out_supp( &(_p)->u.video_out ); break; \
9242  case MBG_GPIO_TYPE_VIDEO_SYNC_OUT : _mbg_swab_mbg_gpio_video_sync_out_supp( &(_p)->u.video_sync_out ); break; \
9243  case MBG_GPIO_TYPE_STUDIO_CLOCK_OUT : _mbg_swab_mbg_gpio_studio_clock_out_supp( &(_p)->u.studio_clk_out ); break; \
9244  case MBG_GPIO_TYPE_DIGITAL_AUDIO_OUT : _mbg_swab_mbg_gpio_digital_audio_out_supp( &(_p)->u.digital_audio_out ); break; \
9245  default : break; \
9246  } \
9247 } while ( 0 )
9248 
9249 
9250 
9254 typedef struct
9255 {
9258 
9259 } MBG_GPIO_INFO;
9260 
9261 
9262 #define _mbg_swab_mbg_gpio_info( _p, _recv ) \
9263 do \
9264 { \
9265  _mbg_swab_mbg_gpio_settings( &(_p)->settings, (_recv) ); \
9266  _mbg_swab_mbg_gpio_limits( &(_p)->limits, (_recv) ); \
9267 } while ( 0 )
9268 
9269 
9273 typedef struct
9274 {
9275  uint32_t idx;
9277 
9279 
9280 #define _mbg_swab_mbg_gpio_info_idx( _p, _recv ) \
9281 do \
9282 { \
9283  _mbg_swab32( &(_p)->idx ); \
9284  _mbg_swab_mbg_gpio_info( &(_p)->info, (_recv) ); \
9285 } while ( 0 )
9286 
9287 
9288 
9292 typedef struct
9293 {
9297  uint32_t reserved_2;
9298  uint32_t reserved_3;
9299 
9300 } MBG_GPIO_STATUS;
9301 
9302 #define _mbg_swab_mbg_gpio_status( _p ) \
9303 do \
9304 { \
9305  _mbg_swab8( &(_p)->port_state ); \
9306  _mbg_swab8( &(_p)->reserved_0 ); \
9307  _mbg_swab16( &(_p)->reserved_1 ); \
9308  _mbg_swab32( &(_p)->reserved_2 ); \
9309  _mbg_swab32( &(_p)->reserved_3 ); \
9310 } while ( 0 )
9311 
9312 
9313 
9317 typedef struct
9318 {
9321 
9323 
9324 #define _mbg_swab_mbg_gpio_status_idx( _p ) \
9325 do \
9326 { \
9327  _mbg_swab16( &(_p)->idx ); \
9328  _mbg_swab_mbg_gpio_status( &(_p)->status ); \
9329 } while ( 0 )
9330 
9331 
9332 
9341 {
9346 };
9347 
9348 
9349 
9355 #define DEFAULT_GPIO_PORT_STATE_NAMES \
9356 { \
9357  "unused", \
9358  "output enabled", \
9359  "input signal available" \
9360 }
9361 
9362 
9383 {
9391 };
9392 
9393 
9401 {
9408 };
9409 
9410 /*
9411  * String initializers for each Havequick format
9412  */
9413 #define HQ_FMT_NAME_STANAG4246_1 "STANAG4246 1"
9414 #define HQ_FMT_NAME_STANAG4246_2 "STANAG4246 2"
9415 #define HQ_FMT_NAME_STANAG4246_PTTI "STANAG4246 PTTI"
9416 #define HQ_FMT_NAME_STANAG4372_SATURN_1 "STANAG4372 SATURN 1"
9417 #define HQ_FMT_NAME_STANAG4372_SATURN_2 "STANAG4372 SATURN 2"
9418 #define HQ_FMT_NAME_STANAG4430_EXTD "STANAG4430 EXTD"
9419 
9420 #define HQ_FMT_SHRT_NAME_STANAG4246_1 "STG4246 1"
9421 #define HQ_FMT_SHRT_NAME_STANAG4246_2 "STG4246 2"
9422 #define HQ_FMT_SHRT_NAME_STANAG4246_PTTI "STG4246 PTTI"
9423 #define HQ_FMT_SHRT_NAME_STANAG4372_SATURN_1 "STG4372 SATURN1"
9424 #define HQ_FMT_SHRT_NAME_STANAG4372_SATURN_2 "STG4372 SATURN2"
9425 #define HQ_FMT_SHRT_NAME_STANAG4430_EXTD "STG4430 EXTD"
9426 
9427 /*
9428  * The definition below can be used to initialize
9429  * an array of ::N_HQ_FMT name strings.
9430  */
9431 #define DEFAULT_HQ_FMT_NAMES \
9432 { \
9433  HQ_FMT_NAME_STANAG4246_1, \
9434  HQ_FMT_NAME_STANAG4246_2, \
9435  HQ_FMT_NAME_STANAG4246_PTTI, \
9436  HQ_FMT_NAME_STANAG4372_SATURN_1, \
9437  HQ_FMT_NAME_STANAG4372_SATURN_2, \
9438  HQ_FMT_NAME_STANAG4430_EXTD \
9439 }
9440 
9441 #define DEFAULT_HQ_SHRT_FMT_NAMES \
9442 { \
9443  HQ_FMT_SHRT_NAME_STANAG4246_1, \
9444  HQ_FMT_SHRT_NAME_STANAG4246_2, \
9445  HQ_FMT_SHRT_NAME_STANAG4246_PTTI, \
9446  HQ_FMT_SHRT_NAME_STANAG4372_SATURN_1, \
9447  HQ_FMT_SHRT_NAME_STANAG4372_SATURN_2, \
9448  HQ_FMT_SHRT_NAME_STANAG4430_EXTD \
9449 }
9450 
9451 
9452 
9456 typedef struct
9457 {
9460  int32_t offset;
9461  uint32_t reserved_0;
9462  uint32_t reserved_1;
9463 
9465 
9466 #define _mbg_swab_havequick_settings( _p ) \
9467 do \
9468 { \
9469  _mbg_swab16( &(_p)->format ); \
9470  _mbg_swab16( &(_p)->flags ); \
9471  _mbg_swab32( &(_p)->offset ); \
9472  _mbg_swab32( &(_p)->reserved_0 ); \
9473  _mbg_swab32( &(_p)->reserved_1 ); \
9474 } while ( 0 )
9475 
9479 typedef struct
9480 {
9482  uint32_t supp_formats;
9485 
9486 } HAVEQUICK_INFO;
9487 
9488 #define _mbg_swab_havequick_info( _p ) \
9489 do \
9490 { \
9491  _mbg_swab_havequick_settings( &(_p)->settings ); \
9492  _mbg_swab32( &(_p)->supp_formats ); \
9493  _mbg_swab16( &(_p)->supp_flags ); \
9494  _mbg_swab16( &(_p)->reserved ); \
9495 } while ( 0 )
9496 
9497 
9504 {
9509 };
9510 
9511 
9520 {
9524 };
9525 
9540 typedef struct
9541 {
9542  uint32_t used;
9543  uint32_t max;
9544 
9546 
9547 #define _mbg_swab_mbg_num_evt_log_entries( _p ) \
9548 do \
9549 { \
9550  _mbg_swab32( &(_p)->used ); \
9551  _mbg_swab32( &(_p)->max ); \
9552 } while ( 0 )
9553 
9554 
9556 #define _mbg_swab_evt_code( _p ) _mbg_swab16( _p )
9557 
9559 #define _mbg_swab_evt_info( _p ) _mbg_swab16( _p )
9560 
9564 typedef struct
9565 {
9566  uint32_t time;
9567  MBG_EVT_CODE code;
9568  MBG_EVT_INFO info;
9569 
9571 
9572 #define _mbg_swab_mbg_evt_log_entry( _p ) \
9573 do \
9574 { \
9575  _mbg_swab32( &(_p)->time ); \
9576  _mbg_swab_evt_code( &(_p)->code ); \
9577  _mbg_swab_evt_info( &(_p)->info ); \
9578 } while ( 0 )
9579 
9580 
9581 // ::MBG_EVT_LOG_ENTRY::code is a combination of some bits used for the ID,
9582 // plus some bits used for the severity/level. The sum of bits must not
9583 // exceed (8 * sizeof ::MBG_EVT_LOG_ENTRY::code):
9584 
9585 #define MBG_EVT_ID_BITS 13
9586 #define MBG_EVT_LVL_BITS 3
9587 
9588 #define MBG_EVT_ID_MASK ( (MBG_EVT_CODE) ( 1UL << MBG_EVT_ID_BITS ) - 1 )
9589 #define MBG_EVT_LVL_MASK ( (MBG_EVT_CODE) ( 1UL << MBG_EVT_LVL_BITS ) - 1 )
9590 
9591 
9592 // Combine an ID and Level to a code which can be stored
9593 // in the code field:
9594 #define _mbg_mk_evt_code( _id, _lvl ) \
9595  ( (MBG_EVT_CODE) ( (MBG_EVT_CODE)(_id) | ( (MBG_EVT_CODE)(_lvl) << MBG_EVT_ID_BITS ) ) )
9596 
9597 // Extract the event ID from the code field:
9598 #define _mbg_get_evt_id( _code ) \
9599  ( (_code) & MBG_EVT_ID_MASK )
9600 
9601 // Extract the severity level from the code field:
9602 #define _mbg_get_evt_lvl( _code ) \
9603  ( ( (_code) >> MBG_EVT_ID_BITS ) & MBG_EVT_LVL_MASK )
9604 
9605 
9614 {
9643 };
9644 
9645 
9646 #define ENG_EVT_ID_NAME_NONE "No event"
9647 #define ENG_EVT_ID_NAME_POW_UP_RES "Power Up Reset"
9648 #define ENG_EVT_ID_NAME_WDOG_RES "Watchdog Reset"
9649 #define ENG_EVT_ID_NAME_COLD_BOOT "Cold Boot"
9650 #define ENG_EVT_ID_NAME_WARM_BOOT "Warm Boot"
9651 #define ENG_EVT_ID_NAME_NORMAL_OP "Normal Operation"
9652 #define ENG_EVT_ID_NAME_ANT_DISCONN "Antenna Disconn."
9653 #define ENG_EVT_ID_NAME_ANT_SHORT "Ant. Short-Circ."
9654 #define ENG_EVT_ID_NAME_ANT_OK "Antenna OK"
9655 #define ENG_EVT_ID_NAME_LOW_SATS "Few Sats Only"
9656 #define ENG_EVT_ID_NAME_FW_INSTALLED "Firmware installed"
9657 #define ENG_EVT_ID_NAME_PTP_PORT_STATE_UNINITIALIZED "PTP state: UNINITIALIZED"
9658 #define ENG_EVT_ID_NAME_PTP_PORT_STATE_INITIALIZING "PTP state: INITIALIZING"
9659 #define ENG_EVT_ID_NAME_PTP_PORT_STATE_FAULTY "PTP state: FAULTY"
9660 #define ENG_EVT_ID_NAME_PTP_PORT_STATE_DISABLED "PTP state: DISABLED"
9661 #define ENG_EVT_ID_NAME_PTP_PORT_STATE_LISTENING "PTP state: LISTENING"
9662 #define ENG_EVT_ID_NAME_PTP_PORT_STATE_PRE_MASTER "PTP state: PRE_MASTER"
9663 #define ENG_EVT_ID_NAME_PTP_PORT_STATE_MASTER "PTP state: MASTER"
9664 #define ENG_EVT_ID_NAME_PTP_PORT_STATE_PASSIVE "PTP state: PASSIVE"
9665 #define ENG_EVT_ID_NAME_PTP_PORT_STATE_UNCALIBRATED "PTP state: UNCALIBRATED"
9666 #define ENG_EVT_ID_NAME_PTP_PORT_STATE_SLAVE "PTP state: SLAVE"
9667 #define ENG_EVT_ID_NAME_FW_ACTIVATED "Firmware activated"
9668 #define ENG_EVT_ID_NAME_FW_DELETED "Firmware deleted"
9669 #define ENG_EVT_ID_NAME_FW_ROLLBACK "Firmware rollback"
9670 #define ENG_EVT_ID_NAME_UFU_FLASHED "UFU flashed"
9671 #define ENG_EVT_ID_NAME_DATABASE_CONNECTED "Database(s) connected"
9672 
9673 
9674 #define MBG_EVT_ID_NAMES_ENG \
9675 { \
9676  ENG_EVT_ID_NAME_NONE, \
9677  ENG_EVT_ID_NAME_POW_UP_RES, \
9678  ENG_EVT_ID_NAME_WDOG_RES, \
9679  ENG_EVT_ID_NAME_COLD_BOOT, \
9680  ENG_EVT_ID_NAME_WARM_BOOT, \
9681  ENG_EVT_ID_NAME_NORMAL_OP, \
9682  ENG_EVT_ID_NAME_ANT_DISCONN, \
9683  ENG_EVT_ID_NAME_ANT_SHORT, \
9684  ENG_EVT_ID_NAME_ANT_OK, \
9685  ENG_EVT_ID_NAME_LOW_SATS, \
9686  ENG_EVT_ID_NAME_FW_INSTALLED, \
9687  ENG_EVT_ID_NAME_PTP_PORT_STATE_UNINITIALIZED, \
9688  ENG_EVT_ID_NAME_PTP_PORT_STATE_INITIALIZING, \
9689  ENG_EVT_ID_NAME_PTP_PORT_STATE_FAULTY, \
9690  ENG_EVT_ID_NAME_PTP_PORT_STATE_DISABLED, \
9691  ENG_EVT_ID_NAME_PTP_PORT_STATE_LISTENING, \
9692  ENG_EVT_ID_NAME_PTP_PORT_STATE_PRE_MASTER, \
9693  ENG_EVT_ID_NAME_PTP_PORT_STATE_MASTER, \
9694  ENG_EVT_ID_NAME_PTP_PORT_STATE_PASSIVE, \
9695  ENG_EVT_ID_NAME_PTP_PORT_STATE_UNCALIBRATED, \
9696  ENG_EVT_ID_NAME_PTP_PORT_STATE_SLAVE, \
9697  ENG_EVT_ID_NAME_FW_ACTIVATED, \
9698  ENG_EVT_ID_NAME_FW_DELETED, \
9699  ENG_EVT_ID_NAME_FW_ROLLBACK, \
9700  ENG_EVT_ID_NAME_UFU_FLASHED, \
9701  ENG_EVT_ID_NAME_DATABASE_CONNECTED \
9702 }
9703 
9704 
9705 
9714 {
9722 };
9723 
9724 
9725 #define ENG_EVT_LVL_NAME_NONE "None"
9726 #define ENG_EVT_LVL_NAME_DEBUG "Debug"
9727 #define ENG_EVT_LVL_NAME_INFO "Info"
9728 #define ENG_EVT_LVL_NAME_WARN "Warn"
9729 #define ENG_EVT_LVL_NAME_ERR "Err"
9730 #define ENG_EVT_LVL_NAME_CRIT "Crit."
9731 
9732 
9733 #define MBG_EVT_LVL_NAMES_ENG \
9734 { \
9735  ENG_EVT_LVL_NAME_NONE, \
9736  ENG_EVT_LVL_NAME_DEBUG, \
9737  ENG_EVT_LVL_NAME_INFO, \
9738  ENG_EVT_LVL_NAME_WARN, \
9739  ENG_EVT_LVL_NAME_ERR, \
9740  ENG_EVT_LVL_NAME_CRIT \
9741 }
9742 
9743 
9752 #define MBG_EVT_NONE _mbg_mk_evt_code( MBG_EVT_ID_NONE, MBG_EVT_LVL_NONE )
9753 #define MBG_EVT_POW_UP_RES _mbg_mk_evt_code( MBG_EVT_ID_POW_UP_RES, MBG_EVT_LVL_WARN )
9754 #define MBG_EVT_WDOG_RES _mbg_mk_evt_code( MBG_EVT_ID_WDOG_RES, MBG_EVT_LVL_CRIT )
9755 #define MBG_EVT_COLD_BOOT _mbg_mk_evt_code( MBG_EVT_ID_COLD_BOOT, MBG_EVT_LVL_ERR )
9756 #define MBG_EVT_WARM_BOOT _mbg_mk_evt_code( MBG_EVT_ID_WARM_BOOT, MBG_EVT_LVL_ERR )
9757 #define MBG_EVT_NORMAL_OP _mbg_mk_evt_code( MBG_EVT_ID_NORMAL_OP, MBG_EVT_LVL_INFO )
9758 #define MBG_EVT_ANT_DISCONN _mbg_mk_evt_code( MBG_EVT_ID_ANT_DISCONN, MBG_EVT_LVL_CRIT )
9759 #define MBG_EVT_ANT_SHORT _mbg_mk_evt_code( MBG_EVT_ID_ANT_SHORT, MBG_EVT_LVL_CRIT )
9760 #define MBG_EVT_ANT_OK _mbg_mk_evt_code( MBG_EVT_ID_ANT_OK, MBG_EVT_LVL_INFO )
9761 #define MBG_EVT_LOW_SATS _mbg_mk_evt_code( MBG_EVT_ID_LOW_SATS, MBG_EVT_LVL_WARN )
9762 #define MBG_EVT_FW_INSTALLED _mbg_mk_evt_code( MBG_EVT_ID_FW_INSTALLED, MBG_EVT_LVL_INFO )
9763 #define MBG_EVT_PTP_PORT_STATE_UNINITIALIZED _mbg_mk_evt_code( MBG_EVT_ID_PTP_PORT_STATE_UNINITIALIZED, MBG_EVT_LVL_WARN )
9764 #define MBG_EVT_PTP_PORT_STATE_INITIALIZING _mbg_mk_evt_code( MBG_EVT_ID_PTP_PORT_STATE_INITIALIZING, MBG_EVT_LVL_INFO )
9765 #define MBG_EVT_PTP_PORT_STATE_FAULTY _mbg_mk_evt_code( MBG_EVT_ID_PTP_PORT_STATE_FAULTY, MBG_EVT_LVL_ERR )
9766 #define MBG_EVT_PTP_PORT_STATE_DISABLED _mbg_mk_evt_code( MBG_EVT_ID_PTP_PORT_STATE_DISABLED, MBG_EVT_LVL_INFO )
9767 #define MBG_EVT_PTP_PORT_STATE_LISTENING _mbg_mk_evt_code( MBG_EVT_ID_PTP_PORT_STATE_LISTENING, MBG_EVT_LVL_INFO )
9768 #define MBG_EVT_PTP_PORT_STATE_PRE_MASTER _mbg_mk_evt_code( MBG_EVT_ID_PTP_PORT_STATE_PRE_MASTER, MBG_EVT_LVL_INFO )
9769 #define MBG_EVT_PTP_PORT_STATE_MASTER _mbg_mk_evt_code( MBG_EVT_ID_PTP_PORT_STATE_MASTER, MBG_EVT_LVL_INFO )
9770 #define MBG_EVT_PTP_PORT_STATE_PASSIVE _mbg_mk_evt_code( MBG_EVT_ID_PTP_PORT_STATE_PASSIVE, MBG_EVT_LVL_INFO )
9771 #define MBG_EVT_PTP_PORT_STATE_UNCALIBRATED _mbg_mk_evt_code( MBG_EVT_ID_PTP_PORT_STATE_UNCALIBRATED, MBG_EVT_LVL_INFO )
9772 #define MBG_EVT_PTP_PORT_STATE_SLAVE _mbg_mk_evt_code( MBG_EVT_ID_PTP_PORT_STATE_SLAVE, MBG_EVT_LVL_INFO )
9773 
9790 typedef struct
9791 {
9795  uint32_t reserved;
9796  uint32_t flags;
9797 
9798 } MBG_IMS_STATE;
9799 
9800 #define _mbg_swab_mbg_ims_state( _p ) \
9801 do \
9802 { \
9803  _mbg_swab16( &(_p)->num_sensors ); \
9804  _mbg_swab32( &(_p)->reserved ); \
9805  _mbg_swab32( &(_p)->flags ); \
9806 } while ( 0 )
9807 
9808 
9809 
9816 {
9819 };
9820 
9821 
9828 {
9830 };
9831 
9832 
9833 
9837 typedef struct
9838 {
9841  int32_t val;
9844  uint32_t flags;
9845 
9847 
9848 #define _mbg_swab_mbg_ims_sensor_state( _p ) \
9849 do \
9850 { \
9851  _mbg_swab16( &(_p)->type ); \
9852  _mbg_swab16( &(_p)->idx ); \
9853  _mbg_swab32( &(_p)->val ); \
9854  _mbg_swab16( &(_p)->exp ); \
9855  _mbg_swab16( &(_p)->reserved ); \
9856  _mbg_swab32( &(_p)->flags ); \
9857 } while ( 0 )
9858 
9859 
9863 typedef struct
9864 {
9865  uint32_t idx;
9867 
9869 
9870 #define _mbg_swab_mbg_ims_sensor_state_idx( _p ) \
9871 do \
9872 { \
9873  _mbg_swab32( &(_p)->idx ); \
9874  _mbg_swab_mbg_ims_sensor_state( &(_p)->state ); \
9875 } while ( 0 )
9876 
9877 
9878 
9885 {
9896 };
9897 
9898 
9899 
9907 {
9910 };
9911 
9912 
9920 {
9922 };
9923 
9924 
9925 
9929 typedef struct
9930 {
9931  int32_t dac_val_min;
9932  int32_t dac_val_max;
9933 
9934  int32_t u_min;
9935  int32_t u_max;
9936 
9937  uint32_t reserved_0;
9938  uint32_t reserved_1;
9939 
9940 } MBG_DAC_SPECS;
9941 
9942 #define _mbg_swab_mbg_dac_specs( _p ) \
9943 do \
9944 { \
9945  _mbg_swab32( &(_p)->dac_val_min ); \
9946  _mbg_swab32( &(_p)->dac_val_max ); \
9947  _mbg_swab32( &(_p)->u_min ); \
9948  _mbg_swab32( &(_p)->u_max ); \
9949  _mbg_swab32( &(_p)->reserved_0 ); \
9950  _mbg_swab32( &(_p)->reserved_1 ); \
9951 } while ( 0 )
9952 
9953 
9954 
9960 typedef struct
9961 {
9962  int32_t dac_val;
9963  uint32_t mode;
9964 
9966 
9967  uint32_t reserved_0;
9968  uint32_t reserved_1;
9969 
9971 
9972 #define _mbg_swab_mbg_ims_fdm_output_state( _p ) \
9973 do \
9974 { \
9975  _mbg_swab32( &(_p)->dac_val ); \
9976  _mbg_swab32( &(_p)->mode ); \
9977  _mbg_swab_mbg_dac_specs( &(_p)->dac_specs ); \
9978  _mbg_swab32( &(_p)->reserved_0 ); \
9979  _mbg_swab32( &(_p)->reserved_1 ); \
9980 } while ( 0 )
9981 
9982 
9983 
9987 typedef struct
9988 {
9989  uint32_t idx;
9991 
9993 
9994 #define _mbg_swab_mbg_ims_fdm_output_state_idx( _p ) \
9995 do \
9996 { \
9997  _mbg_swab32( &(_p)->idx ); \
9998  _mbg_swab_mbg_ims_fdm_output_state( &(_p)->state ); \
9999 } while ( 0 )
10000 
10001 
10002 
10008 typedef struct
10009 {
10010  uint32_t mode;
10011  uint32_t reserved;
10012 
10014 
10015 #define _mbg_swab_mbg_ims_fdm_output_settings( _p ) \
10016 do \
10017 { \
10018  _mbg_swab32( &(_p)->mode ); \
10019  _mbg_swab32( &(_p)->reserved ); \
10020 } while ( 0 )
10021 
10022 
10026 typedef struct
10027 {
10028  uint32_t idx;
10030 
10032 
10033 #define _mbg_swab_mbg_ims_fdm_output_settings_idx( _p ) \
10034 do \
10035 { \
10036  _mbg_swab32( &(_p)->idx ); \
10037  _mbg_swab_mbg_ims_fdm_output_settings( &(_p)->settings ); \
10038 } while ( 0 )
10039 
10040 
10041 
10045 typedef struct
10046 {
10048  uint32_t supp_modes;
10050 
10052 
10053 #define _mbg_swab_mbg_ims_fdm_output_info( _p ) \
10054 do \
10055 { \
10056  _mbg_swab_mbg_ims_fdm_output_settings( &(_p)->settings ); \
10057  _mbg_swab32( &(_p)->supp_modes ); \
10058  _mbg_swab_mbg_dac_specs( &(_p)->dac_specs ); \
10059 } while ( 0 )
10060 
10061 
10062 
10066 typedef struct
10067 {
10068  uint32_t idx;
10070 
10072 
10073 #define _mbg_swab_mbg_ims_fdm_output_info_idx( _p ) \
10074 do \
10075 { \
10076  _mbg_swab32( &(_p)->idx ); \
10077  _mbg_swab_mbg_ims_fdm_output_info( &(_p)->info ); \
10078 } while ( 0 )
10079 
10080 
10081 
10090 {
10094 };
10095 
10096 
10097 
10104 {
10107 };
10108 
10109 
10110 
10114 typedef struct
10115 {
10119 
10120  uint32_t fd_neg_limit;
10121  uint32_t fd_pos_limit;
10122  uint32_t fd_scale;
10123 
10124  uint32_t td_neg_limit;
10125  uint32_t td_pos_limit;
10126  uint32_t td_scale;
10127 
10128  uint32_t reserved_2;
10129 
10131 
10132 #define _mbg_swab_mbg_ims_fdm_limits( _p ) \
10133 do \
10134 { \
10135  _mbg_swab8( &(_p)->n_outputs ); \
10136  _mbg_swab8( &(_p)->reserved_0 ); \
10137  _mbg_swab16( &(_p)->reserved_1 ); \
10138  \
10139  _mbg_swab32( &(_p)->fd_neg_limit ); \
10140  _mbg_swab32( &(_p)->fd_pos_limit ); \
10141  _mbg_swab32( &(_p)->fd_scale ); \
10142  \
10143  _mbg_swab32( &(_p)->td_neg_limit ); \
10144  _mbg_swab32( &(_p)->td_pos_limit ); \
10145  _mbg_swab32( &(_p)->td_scale ); \
10146  \
10147  _mbg_swab32( &(_p)->reserved_2 ); \
10148 } while ( 0 )
10149 
10150 
10151 
10158 typedef struct
10159 {
10161 
10165 
10166  uint32_t line_freq;
10167  uint32_t flags;
10168  uint32_t reserved;
10169 
10171 
10172 #define _mbg_swab_mbg_ims_fdm_state( _p ) \
10173 do \
10174 { \
10175  _mbg_swab_mbg_gpio_freq( &(_p)->freq ); \
10176  _mbg_swab_nano_time_64( &(_p)->t_ref ); \
10177  _mbg_swab_nano_time_64( &(_p)->t_plt ); \
10178  _mbg_swab_nano_time_64( &(_p)->t_sync ); \
10179  _mbg_swab32( &(_p)->line_freq ); \
10180  _mbg_swab32( &(_p)->flags ); \
10181  _mbg_swab32( &(_p)->reserved ); \
10182 } while ( 0 )
10183 
10184 
10185 
10194 {
10199 };
10200 
10201 
10208 {
10212 };
10213 
10214 
10220 #define MBG_IMS_FDM_LINE_FREQ_STRS \
10221 { \
10222  "Auto", \
10223  "50 Hz", \
10224  "60 Hz", \
10225 }
10226 
10227 
10232 {
10238 };
10239 
10240 
10247 {
10252 };
10253 
10254 
10255 
10262 typedef struct
10263 {
10264  uint32_t fd_neg_limit;
10265  uint32_t fd_pos_limit;
10266 
10267  uint32_t td_neg_limit;
10268  uint32_t td_pos_limit;
10269 
10270  uint32_t line_freq;
10271  uint32_t reserved;
10272 
10274 
10275 #define _mbg_swab_mbg_ims_fdm_settings( _p ) \
10276 do \
10277 { \
10278  _mbg_swab32( &(_p)->fd_neg_limit ); \
10279  _mbg_swab32( &(_p)->fd_pos_limit ); \
10280  _mbg_swab32( &(_p)->td_neg_limit ); \
10281  _mbg_swab32( &(_p)->td_pos_limit ); \
10282  _mbg_swab32( &(_p)->line_freq ); \
10283  _mbg_swab32( &(_p)->reserved ); \
10284 } while ( 0 )
10285 
10286 
10287 
10294 {
10297 };
10298 
10299 
10300 
10307 {
10309 };
10310 
10311 
10312 
10316 typedef struct
10317 {
10319  uint32_t supp_line_freqs;
10320  uint32_t reserved;
10321  uint32_t flags;
10322 
10324 
10325 #define _mbg_swab_mbg_ims_fdm_info( _p ) \
10326 do \
10327 { \
10328  _mbg_swab_mbg_ims_fdm_settings( &(_p)->settings ); \
10329  _mbg_swab32( &(_p)->supp_line_freqs ); \
10330  _mbg_swab32( &(_p)->reserved ); \
10331  _mbg_swab32( &(_p)->flags ); \
10332 } while ( 0 )
10333 
10352 
10353 #define _mbg_swab_gen_io_info_type( _p ) \
10354  _mbg_swab16( _p )
10355 
10356 
10357 
10364 typedef struct
10365 {
10366  GEN_IO_INFO_TYPE type; // see ::PCPS_GEN_IO_TYPES
10367  uint16_t num; // supported number of data sets of the specified type
10368 
10369 } GEN_IO_INFO;
10370 
10371 #define _mbg_swab_gen_io_info( _p ) \
10372 do \
10373 { \
10374  _mbg_swab_gen_io_info_type( &(_p)->type ); \
10375  _mbg_swab16( &(_p)->num ); \
10376 } while ( 0 )
10377 
10378 
10379 
10389 {
10393 };
10394 
10399 typedef uint16_t ROM_CSUM; /* The ROM checksum */
10400 typedef uint16_t RCV_TIMEOUT; /* [min] (only if ::HAS_RCV_TIMEOUT) */
10401 typedef uint16_t IGNORE_LOCK; /* (only if ::GPS_HAS_IGNORE_LOCK) */
10402 
10403 /*
10404  * Originally ::IGNORE_LOG above has been a boolean value (equal or
10405  * not equal 0) which was evaluated the same way for all ports.
10406  *
10407  * Due to special firmware requirements it has been changed to a
10408  * bit maskable property in order to be able to specify the behaviour
10409  * for individual ports.
10410  *
10411  * In order to keep compatibility with older versions the LSB is used
10412  * to specify ignore_lock for all ports. The next higher bits are used
10413  * to specify ignore_lock for an individual port, where the bit position
10414  * depends on the port number, e.g. 0x02 for COM0, 0x04 for COM1, etc.
10415  * The macros below can be used to simplify the code:
10416  */
10417 
10418 /* return a bit mask depending on the port number */
10419 #define IGNORE_LOCK_FOR_ALL_PORTS 0x01
10420 
10421 #define _ignore_lock_for_all_ports() ( IGNORE_LOCK_FOR_ALL_PORTS )
10422 
10423 #define _ignore_lock_for_port( _n ) ( 0x02 << (_n) )
10424 
10425 /* check if all ports are ignore_lock'ed */
10426 #define _is_ignore_lock_all_ports( _il ) ( (_il) & IGNORE_LOCK_FOR_ALL_PORTS )
10427 
10428 /* check if a specific port is ignore_lock'ed */
10429 #define _is_ignore_lock_for_port( _il, _n ) \
10430  ( (_il) & ( _ignore_lock_for_port(_n) | IGNORE_LOCK_FOR_ALL_PORTS ) )
10431 
10432 
10433 
10444 typedef struct
10445 {
10446  uint32_t hw_id;
10447  uint32_t fw_id;
10453 
10454 } SCU_STAT_INFO;
10455 
10456 #define _mbg_swab_scu_stat_info( _p ) \
10457 do \
10458 { \
10459  _mbg_swab32( &(_p)->hw_id ); \
10460  _mbg_swab32( &(_p)->fw_id ); \
10461  _mbg_swab16( &(_p)->flags ); \
10462  _mbg_swab8( &(_p)->clk0_info ); \
10463  _mbg_swab8( &(_p)->clk1_info ); \
10464  _mbg_swab16( &(_p)->epld_status ); \
10465  _mbg_swab16( &(_p)->epld_control ); \
10466 } while ( 0 )
10467 
10468 
10469 
10470 typedef struct
10471 {
10474  uint32_t flags;
10475 
10477 
10478 #define _mbg_swab_scu_stat_settings( _p ) \
10479 do \
10480 { \
10481  _mbg_swab16( &(_p)->epld_control_mask ); \
10482  _mbg_swab16( &(_p)->epld_control_value ); \
10483  _mbg_swab32( &(_p)->flags ); \
10484 } while ( 0 )
10485 
10486 
10487 
10494 {
10511 };
10512 
10513 
10514 
10522 {
10526 
10532 };
10533 
10534 
10535 
10542 {
10548 };
10549 
10554 /*------------------------------------------------------------------------*/
10555 
10556 #define REMOTE 0x10
10557 #define BOOT 0x20
10558 
10567 {
10568  TRACK = ( 0x01 ),
10569  AUTO_166 = ( 0x02 ),
10570  WARM_166 = ( 0x03 | BOOT ),
10571  COLD_166 = ( 0x04 | BOOT ),
10572  AUTO_BC = ( 0x05 | REMOTE ),
10573  WARM_BC = ( 0x06 | REMOTE | BOOT ),
10574  COLD_BC = ( 0x07 | REMOTE | BOOT ),
10575  UPDA_166 = ( 0x08 | BOOT ),
10576  UPDA_BC = ( 0x09 | REMOTE | BOOT )
10577 };
10578 
10579 
10580 
10582 
10583 #define _mbg_swab_dac_val( _p ) \
10584  _mbg_swab16( _p )
10585 
10586 
10587 
10591 typedef struct
10592 {
10596  DAC_VAL dac_val;
10597  DAC_VAL dac_cal;
10598 
10599 } STAT_INFO;
10600 
10601 #define _mbg_swab_stat_info( _p ) \
10602 do \
10603 { \
10604  _mbg_swab16( &(_p)->mode ); \
10605  _mbg_swab16( &(_p)->good_svs ); \
10606  _mbg_swab16( &(_p)->svs_in_view ); \
10607  _mbg_swab_dac_val( &(_p)->dac_val ); \
10608  _mbg_swab_dac_val( &(_p)->dac_cal ); \
10609 } while ( 0 )
10610 
10611 
10612 #define OSC_DAC_RANGE 4096UL
10613 #define OSC_DAC_BIAS ( OSC_DAC_RANGE / 2 )
10614 
10615 
10616 
10624 {
10633 };
10634 
10635 
10642 {
10650 };
10651 
10652 
10658 #define GNSS_TYPE_STRS \
10659 { \
10660  "GPS", \
10661  "GLONASS", \
10662  "BEIDOU", \
10663  "GALILEO", \
10664  "WAAS", \
10665  "EGNOS", \
10666  "QZSS" \
10667 }
10668 
10669 
10670 #define N_GNSS_MODE_PRIO 8
10671 
10677 typedef struct
10678 {
10679  uint32_t gnss_set;
10681  uint32_t flags;
10682 
10684 
10685 #define _mbg_swab_mbg_gnss_mode_settings( _p ) \
10686 do \
10687 { \
10688  _mbg_swab32( &(_p)->gnss_set ); \
10689  _mbg_swab32( &(_p)->flags ); \
10690 } while ( 0 )
10691 
10692 
10693 
10694 typedef struct
10695 {
10697  uint32_t supp_gnss_types;
10700 
10702 
10703 #define _mbg_swab_mbg_gnss_mode_info( _p ) \
10704 do \
10705 { \
10706  _mbg_swab_mbg_gnss_mode_settings( &(_p)->settings ); \
10707  _mbg_swab32( &(_p)->supp_gnss_types ); \
10708  _mbg_swab16( &(_p)->flags ); \
10709  _mbg_swab16( &(_p)->n_sv_status ); \
10710 } while ( 0 )
10711 
10712 
10713 
10720 {
10726 };
10727 
10728 
10735 {
10740 };
10741 
10742 
10743 
10744 #define MAX_USED_SATS 32
10745 
10749 typedef struct
10750 {
10756 
10757 } GNSS_SAT_INFO;
10758 
10759 #define _mbg_swab_gnss_sat_info( _p ) \
10760 do \
10761 { \
10762  _mbg_swab16( &(_p)->good_svs ); \
10763  _mbg_swab16( &(_p)->svs_in_view ); \
10764 } while ( 0 )
10765 
10766 
10767 
10773 typedef struct
10774 {
10781 
10783 
10785 
10786 #define _mbg_swab_gnss_sat_info_idx( _p ) \
10787 do \
10788 { \
10789  _mbg_swab16( &(_p)->idx ); \
10790  _mbg_swab_gnss_sat_info( &(_p)->gnss_sat_info ); \
10791 } while ( 0 )
10792 
10793 
10794 
10809 typedef struct
10810 {
10815 
10818 
10819  uint32_t stat_flags;
10820 
10821 } GNSS_SV_STATUS;
10822 
10823 #define _mbg_swab_gnss_sv_status( _p ) \
10824 do \
10825 { \
10826  _mbg_swab8( &(_p)->gnss_type ); \
10827  _mbg_swab8( &(_p)->svno ); \
10828  _mbg_swab8( &(_p)->cn_ratio ); \
10829  _mbg_swab8( &(_p)->elev ); \
10830  _mbg_swab16( &(_p)->azim ); \
10831  _mbg_swab16( &(_p)->pr_residual ); \
10832  _mbg_swab32( &(_p)->stat_flags ); \
10833 } while ( 0 )
10834 
10835 
10836 
10844 #define _gnss_sv_stat_quality_ind( __stat_flags ) \
10846  ( (uint8_t) ( (__stat_flags) & 0x00000007UL ) )
10847 
10849 #define _gnss_sv_stat_sv_used( __stat_flags ) \
10850  ( ( (__stat_flags) & 0x00000008UL ) != 0 )
10851 
10853 #define _gnss_sv_stat_health_code( __stat_flags ) \
10854  ( (uint8_t) ( ( (__stat_flags) & 0x00000030UL ) >> 4 ) )
10855 
10857 #define _gnss_sv_stat_diff_corr( __stat_flags ) \
10858  ( ( (__stat_flags) & 0x00000040UL ) != 0 )
10859 
10861 #define _gnss_sv_stat_smoothed( __stat_flags ) \
10862  ( ( (__stat_flags) & 0x00000080UL ) != 0 )
10863 
10865 #define _gnss_sv_stat_orbit_src( __stat_flags ) \
10866  ( (uint8_t) ( ( (__stat_flags) & 0x00000700UL ) >> 8 ) )
10867 
10869 #define _gnss_sv_stat_eph_avail( __stat_flags ) \
10870  ( ( (__stat_flags) & 0x00000800UL ) != 0 )
10871 
10873 #define _gnss_sv_stat_alm_avail( __stat_flags ) \
10874  ( ( (__stat_flags) & 0x00001000UL ) != 0 )
10875 
10877 #define _gnss_sv_stat_ano_avail( __stat_flags ) \
10878  ( ( (__stat_flags) & 0x00002000UL ) != 0 )
10879 
10881 #define _gnss_sv_stat_aop_avail( __stat_flags ) \
10882  ( ( (__stat_flags) & 0x00004000UL ) != 0 )
10883 
10885 
10887 #define _gnss_sv_stat_sbas_corr_used( __stat_flags ) \
10888  ( ( (__stat_flags) & 0x00010000UL ) != 0 )
10889 
10891 #define _gnss_sv_stat_rtcm_corr_used( __stat_flags ) \
10892  ( ( (__stat_flags) & 0x00020000UL ) != 0 )
10893 
10895 
10897 #define _gnss_sv_stat_pr_corr_used( __stat_flags ) \
10898  ( ( (__stat_flags) & 0x00100000UL ) != 0 )
10899 
10901 #define _gnss_sv_stat_cr_corr_used( __stat_flags ) \
10902  ( ( (__stat_flags) & 0x00200000UL ) != 0 )
10903 
10905 #define _gnss_sv_stat_do_corr_used( __stat_flags ) \
10906  ( ( (__stat_flags) & 0x00400000UL ) != 0 )
10907 
10909 
10919 {
10928 };
10929 
10930 
10937 {
10941 };
10942 
10943 
10950 {
10959 };
10960 
10961 
10962 
10968 typedef struct
10969 {
10970  uint32_t idx;
10972 
10974 
10975 #define _mbg_swab_gnss_sv_status_idx( _p ) \
10976 do \
10977 { \
10978  _mbg_swab32( &(_p)->idx ); \
10979  _mbg_swab_gnss_sv_status( &(_p)->gnss_sv_status ); \
10980 } while ( 0 )
10981 
10982 
10987 #ifndef _IDENT_DEFINED
10988 
10989  typedef union
10990  {
10991  char c[16]; // as string which may NOT be terminated
10992  int16_t wrd[8];
10993  uint32_t lw[4];
10994  } IDENT;
10995 
10996  #define _IDENT_DEFINED
10997 #endif
10998 
10999 #define _mbg_swab_ident( _p ) \
11000 do \
11001 { \
11002  int i; \
11003  for ( i = 0; i < 4; i++ ) \
11004  _mbg_swab32( &(_p)->lw[i] ); \
11005 } while ( 0 )
11006 
11007 
11008 
11013 
11014 #define _mbg_swab_ant_cable_len( _p ) _mbg_swab16( _p )
11015 
11016 
11017 
11031 typedef struct
11032 {
11033  uint8_t b[6];
11034 
11035 } MBG_MAC_ADDR;
11036 
11037 #define _mbg_swab_mbg_mac_addr( _p ) \
11038  _nop_macro_fnc()
11039 
11040 
11041 
11045 typedef uint32_t IP4_ADDR;
11046 
11047 #define _mbg_swab_ip4_addr( _p ) \
11048  _mbg_swab32( _p )
11049 
11050 
11051 
11053 #define IP6_ADDR_BITS 128
11054 
11056 #define IP6_ADDR_BYTES ( IP6_ADDR_BITS / 8 ) // == 16
11057 
11061 typedef struct
11062 {
11064 
11065 } IP6_ADDR;
11066 
11067 #define _mbg_swab_ip6_addr( _p ) _nop_macro_fnc()
11068 
11069 
11070 
11074 typedef struct
11075 {
11078  uint8_t reserved[3];
11079 
11080 } IP6_ADDR_CIDR;
11081 
11082 
11083 
11085 #define MAX_IP6_ADDR_STR_LEN 43
11086 
11087 
11088 #define IP6_ADDR_STR_SIZE ( MAX_IP6_ADDR_STR_LEN + 1 )
11089 
11090 
11092 
11093 
11094 
11107 {
11115 };
11116 
11117 
11125 #define IPV6_MULTICAST_SCOPE_NAME_TABLE_ENTRIES \
11126 { \
11127  { IPV6_MULTICAST_SCOPE_INTF_LOCAL, "FF01 - Interface-Local Scope" }, \
11128  { IPV6_MULTICAST_SCOPE_LINK_LOCAL, "FF02 - Link-Local Scope" }, \
11129  { IPV6_MULTICAST_SCOPE_REALM_LOCAL, "FF03 - Realm-Local Scope" }, \
11130  { IPV6_MULTICAST_SCOPE_ADMIN_LOCAL, "FF04 - Admin-Local Scope" }, \
11131  { IPV6_MULTICAST_SCOPE_SITE_LOCAL, "FF05 - Site-Local Scope" }, \
11132  { IPV6_MULTICAST_SCOPE_ORGA_LOCAL, "FF08 - Organization-Local Scope" }, \
11133  { IPV6_MULTICAST_SCOPE_GLOBAL_SCOPE, "FF0E - Global Scope" }, \
11134  { 0, NULL } \
11135 }
11136 
11137 
11138 
11146 #define MBG_MAX_HOSTNAME_LEN 256
11147 
11148 
11153 
11154 #define _mbg_swab_mbg_host_name( _p ) _nop_macro_fnc()
11155 
11156 
11168 #define MBG_IFNAMSIZ 16
11169 
11170 
11176 {
11180 };
11181 
11182 
11194 
11195 #define _mbg_swab_mbg_vlan_cfg( _p ) _mbg_swab16( _p )
11196 
11197 #define VLAN_ID_BITS 12
11198 #define N_VLAN_ID ( 1 << VLAN_ID_BITS )
11199 #define MIN_VLAN_ID 0
11200 #define MAX_VLAN_ID ( N_VLAN_ID - 1 )
11201 
11202 // vlan_id = ( vlan_cfg >> VLAN_ID_SHIFT ) & VLAN_ID_MSK
11203 #define VLAN_ID_SHIFT 0
11204 #define VLAN_ID_MSK ( ( 1 << VLAN_ID_BITS ) - 1 )
11205 
11206 
11207 #define VLAN_PRIORITY_BITS 3
11208 #define N_VLAN_PRIORITY ( 1 << VLAN_PRIORITY_BITS )
11209 #define MIN_VLAN_PRIORITY 0
11210 #define MAX_VLAN_PRIORITY ( N_VLAN_PRIORITY - 1 )
11211 
11212 // vlan_priority = ( vlan_cfg >> VLAN_PRIORITY_SHIFT ) & VLAN_PRIORITY_MSK
11213 #define VLAN_PRIORITY_SHIFT ( ( 8 * sizeof( MBG_VLAN_CFG ) ) - VLAN_PRIORITY_BITS )
11214 #define VLAN_PRIORITY_MSK ( ( 1 << VLAN_PRIORITY_BITS ) - 1 )
11215 
11219 #define _decode_vlan_id( _cfg ) ( ( (_cfg) >> VLAN_ID_SHIFT ) & VLAN_ID_MSK )
11220 #define _decode_vlan_priority( _cfg ) ( ( (_cfg) >> VLAN_PRIORITY_SHIFT ) & VLAN_PRIORITY_MSK )
11221 #define _encode_vlan_cfg( _id, _prty ) ( ( (_id) << VLAN_ID_SHIFT ) | ( (_prty) << VLAN_PRIORITY_SHIFT ) )
11222 
11239 typedef struct
11240 {
11241  IP4_ADDR ip_addr;
11242  IP4_ADDR netmask;
11243  IP4_ADDR broad_addr;
11244  IP4_ADDR gateway;
11246  MBG_VLAN_CFG vlan_cfg;
11247 
11248 } IP4_SETTINGS;
11249 
11250 #define _mbg_swab_ip4_settings( _p ) \
11251 do \
11252 { \
11253  _mbg_swab_ip4_addr( &(_p)->ip_addr ); \
11254  _mbg_swab_ip4_addr( &(_p)->netmask ); \
11255  _mbg_swab_ip4_addr( &(_p)->broad_addr ); \
11256  _mbg_swab_ip4_addr( &(_p)->gateway ); \
11257  _mbg_swab16( &(_p)->flags ); \
11258  _mbg_swab_mbg_vlan_cfg( &(_p)->vlan_cfg ); \
11259 } while ( 0 )
11260 
11261 
11262 
11274 typedef struct
11275 {
11279  char ver_str[GPS_ID_STR_SIZE];
11280  char sernum[GPS_ID_STR_SIZE];
11281  uint32_t rsvd_0;
11284 
11285 } LAN_IF_INFO;
11286 
11287 #define _mbg_swab_lan_if_info( _p ) \
11288 do \
11289 { \
11290  _mbg_swab16( &(_p)->type ); \
11291  _mbg_swab16( &(_p)->ver_code ); \
11292  _mbg_swab32( &(_p)->rsvd_0 ); \
11293  _mbg_swab16( &(_p)->flags ); \
11294  _mbg_swab16( &(_p)->rsvd_1 ); \
11295 } while ( 0 )
11296 
11297 
11302 {
11307 };
11308 
11309 
11316 {
11321 
11324 
11329 
11331 };
11332 
11333 
11340 {
11344 };
11345 
11359 {
11364 };
11365 
11366 /*
11367  * Default initializers for English mode string names. Initializers
11368  * for multi-language strings can be found in tmonlstr.h.
11369  */
11370 #define MBG_IP_ADDR_TYPE_STR_ENG_UNKNOWN "unknown"
11371 #define MBG_IP_ADDR_TYPE_STR_ENG_IP4 "IPv4"
11372 #define MBG_IP_ADDR_TYPE_STR_ENG_IP6 "IPv6"
11373 
11374 #define MBG_IP_ADDR_TYPE_NAMES_ENG \
11375 { \
11376  MBG_IP_ADDR_TYPE_STR_ENG_UNKNOWN, \
11377  MBG_IP_ADDR_TYPE_STR_ENG_IP4, \
11378  MBG_IP_ADDR_TYPE_STR_ENG_IP6 \
11379 }
11380 
11381 
11388 {
11394 };
11395 
11396 
11403 {
11408 };
11409 
11410 
11411 
11418 {
11427 
11436 
11444 
11446 };
11447 
11448 
11449 
11457 #define MBG_NET_INTF_LINK_SPEED_MODE_MASK_UNKNOWN ( 1UL << MBG_NET_INTF_LINK_SPEED_MODE_UNKNOWN )
11458 #define MBG_NET_INTF_LINK_SPEED_MODE_MASK_10_T_HALF ( 1UL << MBG_NET_INTF_LINK_SPEED_MODE_10_T_HALF )
11459 #define MBG_NET_INTF_LINK_SPEED_MODE_MASK_10_T_FULL ( 1UL << MBG_NET_INTF_LINK_SPEED_MODE_10_T_FULL )
11460 #define MBG_NET_INTF_LINK_SPEED_MODE_MASK_100_T_HALF ( 1UL << MBG_NET_INTF_LINK_SPEED_MODE_100_T_HALF )
11461 #define MBG_NET_INTF_LINK_SPEED_MODE_MASK_100_T_FULL ( 1UL << MBG_NET_INTF_LINK_SPEED_MODE_100_T_FULL )
11462 #define MBG_NET_INTF_LINK_SPEED_MODE_MASK_1000_T_HALF ( 1UL << MBG_NET_INTF_LINK_SPEED_MODE_1000_T_HALF )
11463 #define MBG_NET_INTF_LINK_SPEED_MODE_MASK_1000_T_FULL ( 1UL << MBG_NET_INTF_LINK_SPEED_MODE_1000_T_FULL )
11464 #define MBG_NET_INTF_LINK_SPEED_MODE_MASK_1000_KX_FULL ( 1UL << MBG_NET_INTF_LINK_SPEED_MODE_1000_KX_FULL )
11465 
11466 #define MBG_NET_INTF_LINK_SPEED_MODE_MASK_2500_X_FULL ( 1UL << MBG_NET_INTF_LINK_SPEED_MODE_2500_X_FULL )
11467 #define MBG_NET_INTF_LINK_SPEED_MODE_MASK_10000_T_FULL ( 1UL << MBG_NET_INTF_LINK_SPEED_MODE_10000_T_FULL )
11468 #define MBG_NET_INTF_LINK_SPEED_MODE_MASK_10000_KX4_FULL ( 1UL << MBG_NET_INTF_LINK_SPEED_MODE_10000_KX4_FULL )
11469 #define MBG_NET_INTF_LINK_SPEED_MODE_MASK_10000_KR_FULL ( 1UL << MBG_NET_INTF_LINK_SPEED_MODE_10000_KR_FULL )
11470 #define MBG_NET_INTF_LINK_SPEED_MODE_MASK_10000_R_FEC ( 1UL << MBG_NET_INTF_LINK_SPEED_MODE_10000_R_FEC )
11471 #define MBG_NET_INTF_LINK_SPEED_MODE_MASK_20000_MLD2_FULL ( 1UL << MBG_NET_INTF_LINK_SPEED_MODE_20000_MLD2_FULL )
11472 #define MBG_NET_INTF_LINK_SPEED_MODE_MASK_20000_KR2_FULL ( 1UL << MBG_NET_INTF_LINK_SPEED_MODE_20000_KR2_FULL )
11473 #define MBG_NET_INTF_LINK_SPEED_MODE_MASK_40000_KR4_FULL ( 1UL << MBG_NET_INTF_LINK_SPEED_MODE_40000_KR4_FULL )
11474 
11475 #define MBG_NET_INTF_LINK_SPEED_MODE_MASK_40000_CR4_FULL ( 1UL << MBG_NET_INTF_LINK_SPEED_MODE_40000_CR4_FULL )
11476 #define MBG_NET_INTF_LINK_SPEED_MODE_MASK_40000_SR4_FULL ( 1UL << MBG_NET_INTF_LINK_SPEED_MODE_40000_SR4_FULL )
11477 #define MBG_NET_INTF_LINK_SPEED_MODE_MASK_40000_LR4_FULL ( 1UL << MBG_NET_INTF_LINK_SPEED_MODE_40000_LR4_FULL )
11478 #define MBG_NET_INTF_LINK_SPEED_MODE_MASK_56000_KR4_FULL ( 1UL << MBG_NET_INTF_LINK_SPEED_MODE_56000_KR4_FULL )
11479 #define MBG_NET_INTF_LINK_SPEED_MODE_MASK_56000_CR4_FULL ( 1UL << MBG_NET_INTF_LINK_SPEED_MODE_56000_CR4_FULL )
11480 #define MBG_NET_INTF_LINK_SPEED_MODE_MASK_56000_SR4_FULL ( 1UL << MBG_NET_INTF_LINK_SPEED_MODE_56000_SR4_FULL )
11481 #define MBG_NET_INTF_LINK_SPEED_MODE_MASK_56000_LR4_FULL ( 1UL << MBG_NET_INTF_LINK_SPEED_MODE_56000_LR4_FULL )
11482 
11483 
11493 {
11503 };
11504 
11505 
11506 
11513 {
11522 };
11523 
11524 
11525 
11532 {
11540 };
11541 
11542 
11543 
11549 #define MBG_NET_INTF_LINK_PORT_TYPE_LONG_STRS \
11550 { \
11551  "Unknown", \
11552  "Twisted Pair", \
11553  "Fibre Optic", \
11554  "Coaxial BNC", \
11555  "Attachment Unit Interface", \
11556  "Media Independent Interface", \
11557  "Direct Attach SFP+" \
11558 }
11559 
11560 
11566 #define MBG_NET_INTF_LINK_PORT_TYPE_SHORT_STRS \
11567 { \
11568  "Unknown", \
11569  "TP", \
11570  "FO", \
11571  "BNC", \
11572  "AUI", \
11573  "MII", \
11574  "DA" \
11575 }
11576 
11577 
11578 
11591 {
11600 
11609 
11613 
11615 };
11616 
11617 
11618 
11626 #define MBG_NET_INTF_LINK_STATE_MASK_UP ( 1UL << MBG_NET_INTF_LINK_STATE_BIT_UP )
11627 #define MBG_NET_INTF_LINK_STATE_MASK_RUNNING ( 1UL << MBG_NET_INTF_LINK_STATE_BIT_RUNNING )
11628 #define MBG_NET_INTF_LINK_STATE_MASK_LOWER_UP ( 1UL << MBG_NET_INTF_LINK_STATE_BIT_LOWER_UP )
11629 #define MBG_NET_INTF_LINK_STATE_MASK_DORMANT ( 1UL << MBG_NET_INTF_LINK_STATE_BIT_DORMANT )
11630 #define MBG_NET_INTF_LINK_STATE_MASK_BROADCAST ( 1UL << MBG_NET_INTF_LINK_STATE_BIT_BROADCAST )
11631 #define MBG_NET_INTF_LINK_STATE_MASK_MULTICAST ( 1UL << MBG_NET_INTF_LINK_STATE_BIT_MULTICAST )
11632 #define MBG_NET_INTF_LINK_STATE_MASK_ALL_MULTI ( 1UL << MBG_NET_INTF_LINK_STATE_BIT_ALL_MULTI )
11633 #define MBG_NET_INTF_LINK_STATE_MASK_DEBUG ( 1UL << MBG_NET_INTF_LINK_STATE_BIT_DEBUG )
11634 
11635 #define MBG_NET_INTF_LINK_STATE_MASK_LOOPBACK ( 1UL << MBG_NET_INTF_LINK_STATE_BIT_LOOPBACK )
11636 #define MBG_NET_INTF_LINK_STATE_MASK_POINT_TO_POINT ( 1UL << MBG_NET_INTF_LINK_STATE_BIT_POINT_TO_POINT )
11637 #define MBG_NET_INTF_LINK_STATE_MASK_NO_ARP ( 1UL << MBG_NET_INTF_LINK_STATE_BIT_NO_ARP )
11638 #define MBG_NET_INTF_LINK_STATE_MASK_PROMISC ( 1UL << MBG_NET_INTF_LINK_STATE_BIT_PROMISC )
11639 #define MBG_NET_INTF_LINK_STATE_MASK_MASTER ( 1UL << MBG_NET_INTF_LINK_STATE_BIT_MASTER )
11640 #define MBG_NET_INTF_LINK_STATE_MASK_SLAVE ( 1UL << MBG_NET_INTF_LINK_STATE_BIT_SLAVE )
11641 #define MBG_NET_INTF_LINK_STATE_MASK_PORT_SEL ( 1UL << MBG_NET_INTF_LINK_STATE_BIT_PORT_SEL )
11642 #define MBG_NET_INTF_LINK_STATE_MASK_AUTO_MEDIA ( 1UL << MBG_NET_INTF_LINK_STATE_BIT_AUTO_MEDIA )
11643 
11644 #define MBG_NET_INTF_LINK_STATE_MASK_ECHO ( 1UL << MBG_NET_INTF_LINK_STATE_BIT_ECHO )
11645 #define MBG_NET_INTF_LINK_STATE_MASK_DYNAMIC ( 1UL << MBG_NET_INTF_LINK_STATE_BIT_DYNAMIC)
11646 #define MBG_NET_INTF_LINK_STATE_MASK_NO_TRAILERS ( 1UL << MBG_NET_INTF_LINK_STATE_BIT_NO_TRAILERS)
11647 
11648 
11658 {
11666 };
11667 
11668 
11669 
11676 {
11683 };
11684 
11685 
11686 
11697 {
11706 };
11707 
11708 
11709 
11716 {
11724 };
11725 
11726 
11727 
11733 #define MBG_NET_INTF_LINK_BOND_MODE_STRS \
11734 { \
11735  "Round Robin", \
11736  "Active Backup", \
11737  "XOR", \
11738  "Broadcast", \
11739  "802.3ad (LACP)", \
11740  "TLB", \
11741  "ALB" \
11742 }
11743 
11744 
11745 
11752 {
11756 };
11757 
11758 
11767 {
11772 };
11773 
11774 
11783 {
11787 };
11788 
11789 
11798 {
11803 };
11804 
11805 
11806 
11813 {
11817 };
11818 
11819 
11821 {
11827 };
11828 
11844 typedef struct
11845 {
11846  MBG_HOSTNAME hostname;
11847 
11853 
11856 
11858 
11859 #define _mbg_swab_net_glb_cfg_settings( _p ) \
11860 do \
11861 { \
11862  _mbg_swab32( &(_p)->flags ); \
11863 } while ( 0 )
11864 
11865 
11869 typedef struct
11870 {
11878  uint32_t reserved_1;
11879  uint32_t reserved_2;
11880  uint32_t feat_flags;
11881  uint32_t flags_2;
11882 
11884 
11885 #define _mbg_swab_net_glb_cfg_info( _p ) \
11886 do \
11887 { \
11888  _mbg_swab_net_glb_cfg_settings( &(_p)->glb_settings ); \
11889  _mbg_swab16( &(_p)->n_supp_intf_link ); \
11890  _mbg_swab16( &(_p)->n_supp_intf_addr ); \
11891  _mbg_swab16( &(_p)->n_supp_dns_srvr ); \
11892  _mbg_swab16( &(_p)->n_supp_dns_srch_dom ); \
11893  _mbg_swab16( &(_p)->n_supp_intf_route ); \
11894  _mbg_swab16( &(_p)->max_hostname_len ); \
11895  _mbg_swab32( &(_p)->reserved_1 ); \
11896  _mbg_swab32( &(_p)->reserved_2 ); \
11897  _mbg_swab32( &(_p)->feat_flags ); \
11898  _mbg_swab32( &(_p)->flags_2 ); \
11899 } while ( 0 )
11900 
11901 
11902 
11906 typedef struct
11907 {
11911 
11912  union u_addr
11913  {
11914  IP4_ADDR ip4_addr;
11916  } u_addr;
11917 
11918 } MBG_IP_ADDR;
11919 
11920 #define _mbg_swab_ip_addr( _p ) \
11921 do \
11922 { \
11923  _mbg_swab8( &(_p)->type ); \
11924  _mbg_swab8( &(_p)->reserved_1 ); \
11925  _mbg_swab16( &(_p)->reserved_2 ); \
11926  \
11927  switch ( (_p)->type ) \
11928  { \
11929  case MBG_IP_ADDR_TYPE_IP4: \
11930  _mbg_swab_ip4_addr( &(_p)->u_addr.ip4_addr ); \
11931  break; \
11932  \
11933  case MBG_IP_ADDR_TYPE_IP6: \
11934  _mbg_swab_ip6_addr( &(_p)->u_addr.ip6_addr ); \
11935  break; \
11936  } \
11937  \
11938 } while ( 0 )
11939 
11940 
11941 
11945 typedef struct
11946 {
11949 
11950 } MBG_IP_ADDR_IDX;
11951 
11952 #define _mbg_swab_ip_addr_idx( _p ) \
11953 do \
11954 { \
11955  _mbg_swab16( &(_p)->idx ); \
11956  _mbg_swab_ip_addr( &(_p)->addr ); \
11957 } while ( 0 )
11958 
11959 
11963 typedef struct
11964 {
11966 
11969  //##+++++ TODO should the flags field indicate if the port is UDP and/or TCP?
11970 
11972 
11973 #define _mbg_swab_ip_addr_port( _p ) \
11974 do \
11975 { \
11976  _mbg_swab_ip_addr( &(_p)->addr ); \
11977  _mbg_swab16( &(_p)->port ); \
11978  _mbg_swab16( &(_p)->flags ); \
11979 } while ( 0 )
11980 
11981 
11982 
11986 typedef struct
11987 {
11988  MBG_HOSTNAME name;
11989 
11990 } MBG_NET_NAME;
11991 
11992 #define _mbg_swab_net_name( _p ) \
11993 do \
11994 { \
11995  _mbg_swab_mbg_host_name( &(_p)->name ); \
11996 } while ( 0 )
11997 
11998 
11999 
12003 typedef struct
12004 {
12007 
12009 
12010 #define _mbg_swab_net_name_idx( _p ) \
12011 do \
12012 { \
12013  _mbg_swab16( &(_p)->idx ); \
12014  _mbg_swab_net_name( &(_p)->net_name ); \
12015 } while ( 0 )
12016 
12017 
12018 
12022 typedef struct
12023 {
12024  char name[MBG_IFNAMSIZ];
12027 
12028  uint32_t if_index;
12029  uint32_t common_if_index;
12030  uint32_t ass_if_index;
12032 
12034  uint32_t flags;
12035  uint32_t states;
12036 
12037  uint32_t hw_type;
12038  uint32_t mtu;
12039  uint32_t txqlen;
12040  uint32_t speed;
12041 
12046 
12048  uint8_t bond_state;
12050  uint16_t bond_idx;
12052 
12055  uint16_t reserved_1;
12057 
12058  uint32_t reserved_2;
12059  uint32_t reserved_3;
12060 
12062 
12063 #define _mbg_swab_net_intf_link_settings( _p ) \
12064 do \
12065 { \
12066  _mbg_swab32( &(_p)->if_index ); \
12067  _mbg_swab32( &(_p)->common_if_index ); \
12068  _mbg_swab32( &(_p)->ass_if_index ); \
12069  _mbg_swab32( &(_p)->flags ); \
12070  _mbg_swab32( &(_p)->states ); \
12071  _mbg_swab32( &(_p)->hw_type ); \
12072  _mbg_swab32( &(_p)->mtu ); \
12073  _mbg_swab32( &(_p)->txqlen ); \
12074  _mbg_swab32( &(_p)->speed ); \
12075  _mbg_swab16( &(_p)->bond_idx ); \
12076  _mbg_swab16( &(_p)->vlan_cfg ); \
12077  _mbg_swab16( &(_p)->reserved_1 ); \
12078  _mbg_swab32( &(_p)->reserved_2 ); \
12079  _mbg_swab32( &(_p)->reserved_3 ); \
12080 } while ( 0 )
12081 
12082 
12083 
12087 typedef struct
12088 {
12091 
12093 
12094 #define _mbg_swab_net_intf_link_settings_idx( _p ) \
12095 do \
12096 { \
12097  _mbg_swab16( &(_p)->idx ); \
12098  _mbg_swab_net_intf_link_settings( &(_p)->settings ); \
12099 } while ( 0 )
12100 
12101 
12102 
12106 typedef struct
12107 {
12109  uint32_t supp_flags;
12110  uint32_t supp_states;
12111  uint32_t supp_types;
12112  uint32_t supp_speed_modes;
12113  uint32_t supp_port_types;
12114  uint32_t supp_opts;
12115  uint32_t supp_bond_modes;
12116  uint32_t reserved_1;
12117  uint32_t reserved_2;
12118  uint32_t reserved_3;
12119  uint32_t reserved_4;
12121 
12122 #define _mbg_swab_net_intf_link_info( _p ) \
12123 do \
12124 { \
12125  _mbg_swab_net_intf_link_settings( &(_p)->link_settings ); \
12126  _mbg_swab32( &(_p)->supp_flags ); \
12127  _mbg_swab32( &(_p)->supp_states ); \
12128  _mbg_swab32( &(_p)->supp_types ); \
12129  _mbg_swab32( &(_p)->supp_speed_modes ); \
12130  _mbg_swab32( &(_p)->supp_port_types ); \
12131  _mbg_swab32( &(_p)->supp_opts ); \
12132  _mbg_swab32( &(_p)->supp_bond_modes ); \
12133  _mbg_swab32( &(_p)->reserved_1 ); \
12134  _mbg_swab32( &(_p)->reserved_2 ); \
12135  _mbg_swab32( &(_p)->reserved_3 ); \
12136  _mbg_swab32( &(_p)->reserved_4 ); \
12137 } while ( 0 )
12138 
12139 
12140 
12144 typedef struct
12145 {
12148 
12150 
12151 #define _mbg_swab_net_intf_link_info_idx( _p ) \
12152 do \
12153 { \
12154  _mbg_swab16( &(_p)->idx ); \
12155  _mbg_swab_net_intf_link_info( &(_p)->info ); \
12156 } while ( 0 )
12157 
12158 
12164 typedef struct
12165 {
12166  char label[MBG_IFNAMSIZ];
12167 
12168  uint32_t addr_index;
12169  uint32_t ass_if_index;
12170 
12171  uint32_t flags;
12172 
12175 
12179 
12180  uint32_t reserved_3;
12181  uint32_t reserved_4;
12182  uint32_t reserved_5;
12183 
12185 
12186 #define _mbg_swab_net_intf_addr_settings( _p ) \
12187 do \
12188 { \
12189  _mbg_swab32( &(_p)->addr_index ); \
12190  _mbg_swab32( &(_p)->ass_if_index ); \
12191  _mbg_swab32( &(_p)->flags ); \
12192  _mbg_swab_ip_addr( &(_p)->ip ); \
12193  _mbg_swab_ip_addr( &(_p)->broadcast ); \
12194  _mbg_swab16( &(_p)->reserved_2 ); \
12195  _mbg_swab32( &(_p)->reserved_3 ); \
12196  _mbg_swab32( &(_p)->reserved_4 ); \
12197  _mbg_swab32( &(_p)->reserved_5 ); \
12198 } while ( 0 )
12199 
12200 
12204 typedef struct
12205 {
12208 
12210 
12211 #define _mbg_swab_net_intf_addr_settings_idx( _p ) \
12212 do \
12213 { \
12214  _mbg_swab16( &(_p)->idx ); \
12215  _mbg_swab_net_intf_addr_settings( &(_p)->settings ); \
12216 } while ( 0 )
12217 
12218 
12222 typedef struct
12223 {
12225  uint32_t supp_flags;
12226  uint32_t reserved_1;
12227  uint32_t reserved_2;
12228 
12230 
12231 #define _mbg_swab_net_intf_addr_info( _p ) \
12232 do \
12233 { \
12234  _mbg_swab_net_intf_addr_settings( &(_p)->addr_settings ); \
12235  _mbg_swab32( &(_p)->supp_flags ); \
12236  _mbg_swab32( &(_p)->reserved_1 ); \
12237  _mbg_swab32( &(_p)->reserved_2 ); \
12238 } while ( 0 )
12239 
12240 
12244 typedef struct
12245 {
12248 
12250 
12251 #define _mbg_swab_net_intf_addr_info_idx( _p ) \
12252 do \
12253 { \
12254  _mbg_swab16( &(_p)->idx ); \
12255  _mbg_swab_net_intf_addr_info( &(_p)->info ); \
12256 } while ( 0 )
12257 
12258 
12264 typedef struct
12265 {
12269 
12271  MBG_IP_ADDR dst;
12273  uint8_t dst_prefix_bits;
12275 
12276  uint32_t ass_if_index;
12277  uint32_t ass_addr_index;
12278 
12280  uint32_t reserved_3;
12281  uint32_t reserved_4;
12282  uint32_t reserved_5;
12283 
12285 
12286 #define _mbg_swab_net_intf_route_settings( _p ) \
12287 do \
12288 { \
12289  _mbg_swab16( &(_p)->reserved_2 ); \
12290  _mbg_swab_ip_addr( &(_p)->gateway ); \
12291  _mbg_swab_ip_addr( &(_p)->dst ); \
12292  _mbg_swab32( &(_p)->ass_if_index ); \
12293  _mbg_swab32( &(_p)->ass_addr_index ); \
12294  _mbg_swab32( &(_p)->reserved_3 ); \
12295  _mbg_swab32( &(_p)->reserved_4 ); \
12296  _mbg_swab32( &(_p)->reserved_5 ); \
12297 } while ( 0 )
12298 
12299 
12303 typedef struct
12304 {
12307 
12309 
12310 #define _mbg_swab_net_intf_route_settings_idx( _p ) \
12311 do \
12312 { \
12313  _mbg_swab16( &(_p)->idx ); \
12314  _mbg_swab_net_intf_route_settings( &(_p)->settings ); \
12315 } while ( 0 )
12316 
12317 
12321 typedef struct
12322 {
12324  uint32_t reserved_1;
12325  uint32_t reserved_2;
12326  uint32_t reserved_3;
12327  uint32_t reserved_4;
12329 
12330 #define _mbg_swab_net_intf_route_info( _p ) \
12331 do \
12332 { \
12333  _mbg_swab_net_intf_route_settings( &(_p)->route_settings ); \
12334  _mbg_swab32( &(_p)->reserved_1 ); \
12335  _mbg_swab32( &(_p)->reserved_2 ); \
12336  _mbg_swab32( &(_p)->reserved_3 ); \
12337  _mbg_swab32( &(_p)->reserved_4 ); \
12338 } while ( 0 )
12339 
12340 
12344 typedef struct
12345 {
12348 
12350 
12351 #define _mbg_swab_net_intf_route_info_idx( _p ) \
12352 do \
12353 { \
12354  _mbg_swab16( &(_p)->idx ); \
12355  _mbg_swab_net_intf_route_info( &(_p)->info ); \
12356 } while ( 0 )
12357 
12358 
12377 #define MBG_UCAP_NET_DEFAULT_UDP_PORT 50815
12378 
12387 {
12392 };
12393 
12394 
12401 {
12405 };
12406 
12407 
12408 
12417 {
12421 };
12422 
12423 
12430 {
12433 };
12434 
12435 
12436 
12443 {
12446 };
12447 
12448 
12455 {
12457 };
12458 
12459 
12466 typedef struct
12467 {
12468  uint32_t num_recvs;
12469  uint32_t reserved_0;
12470  uint32_t reserved_1;
12471  uint32_t reserved_2;
12472 
12474 
12475 
12476 #define _mbg_swab_ucap_net_glb_settings( _p ) \
12477 do \
12478 { \
12479  _mbg_swab32( &(_p)->num_recvs ); \
12480  _mbg_swab32( &(_p)->reserved_0 ); \
12481  _mbg_swab32( &(_p)->reserved_1 ); \
12482  _mbg_swab32( &(_p)->reserved_2 ); \
12483 } while ( 0 )
12484 
12485 
12486 
12493 typedef struct
12494 {
12496 
12497  uint32_t n_supp_recvs;
12498  uint32_t supp_modes;
12499  uint32_t supp_protos;
12500  uint32_t reserved_0;
12501  uint32_t reserved_1;
12502  uint32_t supp_flags;
12503 
12505 
12506 
12507 #define _mbg_swab_ucap_net_glb_info( _p ) \
12508 do \
12509 { \
12510  _mbg_swab_ucap_net_glb_settings( &(_p)->settings ); \
12511  _mbg_swab32( &(_p)->n_supp_recvs ); \
12512  _mbg_swab32( &(_p)->supp_modes ); \
12513  _mbg_swab32( &(_p)->supp_protos ); \
12514  _mbg_swab32( &(_p)->reserved_0 ); \
12515  _mbg_swab32( &(_p)->reserved_1 ); \
12516  _mbg_swab32( &(_p)->supp_flags ); \
12517 } while ( 0 )
12518 
12519 
12520 
12524 typedef struct
12525 {
12529 
12530  uint32_t reserved_2;
12531  uint32_t reserved_3;
12532  uint32_t ucaps;
12533 
12535 
12537 
12538 
12539 #define _mbg_swab_ucap_net_recv_settings( _p ) \
12540 do \
12541 { \
12542  _mbg_swab16( &(_p)->reserved_1 ); \
12543  _mbg_swab32( &(_p)->reserved_2 ); \
12544  _mbg_swab32( &(_p)->reserved_3 ); \
12545  _mbg_swab32( &(_p)->ucaps ); \
12546  _mbg_swab_ip_addr_port( &(_p)->addr ); \
12547 } while ( 0 )
12548 
12549 
12550 
12560 typedef struct
12561 {
12564 
12566 
12567 
12568 #define _mbg_swab_ucap_net_recv_settings_idx( _p ) \
12569 do \
12570 { \
12571  _mbg_swab16( &(_p)->idx ); \
12572  _mbg_swab_ucap_net_recv_settings( &(_p)->settings ); \
12573 } while ( 0 )
12574 
12575 
12576 
12580 typedef struct
12581 {
12583 
12584  uint32_t reserved_0;
12585  uint32_t reserved_1;
12586  uint32_t reserved_2;
12587  uint32_t reserved_3;
12588 
12590 
12591 
12592 #define _mbg_swab_ucap_net_recv_info( _p ) \
12593 do \
12594 { \
12595  _mbg_swab_ucap_net_recv_settings( &(_p)->settings ); \
12596  _mbg_swab32( &(_p)->reserved_0 ); \
12597  _mbg_swab32( &(_p)->reserved_1 ); \
12598  _mbg_swab32( &(_p)->reserved_2 ); \
12599  _mbg_swab32( &(_p)->reserved_3 ); \
12600 } while ( 0 )
12601 
12602 
12603 
12613 typedef struct
12614 {
12617 
12619 
12620 
12621 #define _mbg_swab_ucap_net_recv_info_idx( _p ) \
12622 do \
12623 { \
12624  _mbg_swab16( &(_p)->idx ); \
12625  _mbg_swab_ucap_net_recv_info( &(_p)->info ); \
12626 } while ( 0 )
12627 
12643 {
12652 };
12653 
12654 
12661 {
12669 };
12670 
12671 
12672 
12678 #define PTP_NW_PROT_STRS \
12679 { \
12680  "Reserved", \
12681  "UDP/IPv4 (L3)", \
12682  "UDP/IPv6 (L3)", \
12683  "IEEE 802.3 (L2)", \
12684  "DeviceNet", \
12685  "ControlNet", \
12686  "PROFINET" \
12687 }
12688 
12689 
12695 #define PTP_NW_PROT_STRS_SHORT \
12696 { \
12697  "RSV", \
12698  "IP4", \
12699  "IP6", \
12700  "ETH", \
12701  "DN", \
12702  "CN", \
12703  "PN" \
12704 }
12705 
12706 
12711 {
12723 };
12724 
12725 
12729 #define PTP_PORT_STATE_STRS \
12730 { \
12731  "UNINITIALIZED", \
12732  "INITIALIZING", \
12733  "FAULTY", \
12734  "DISABLED", \
12735  "LISTENING", \
12736  "PRE_MASTER", \
12737  "MASTER", \
12738  "PASSIVE", \
12739  "UNCALIBRATED", \
12740  "SLAVE" \
12741 }
12742 
12743 
12747 typedef struct
12748 {
12750  const char *name;
12751 
12752 } PTP_TABLE;
12753 
12754 
12755 
12767 {
12771 };
12772 
12773 
12780 {
12783 };
12784 
12785 
12786 #define PTP_DELAY_MECH_NAME_E2E "E2E"
12787 #define PTP_DELAY_MECH_NAME_P2P "P2P"
12788 
12794 #define PTP_DELAY_MECH_NAMES \
12795 { \
12796  PTP_DELAY_MECH_NAME_E2E, \
12797  PTP_DELAY_MECH_NAME_P2P \
12798 }
12799 
12800 
12801 
12811 {
12836  //##++++ TODO: Add a code for 0xFE (unknown), or eventually
12837  // redesign the lookup of associated strings completely.
12838 };
12839 
12840 
12850 #define PTP_CLOCK_ACCURACY_STRS \
12851 { \
12852  "< 25 ns", \
12853  "< 100 ns", \
12854  "< 250 ns", \
12855  "< 1 us", \
12856  "< 2.5 us", \
12857  "< 10 us", \
12858  "< 25 us", \
12859  "< 100 us", \
12860  "< 250 us", \
12861  "< 1 ms", \
12862  "< 2.5 ms", \
12863  "< 10 ms", \
12864  "< 25 ms", \
12865  "< 100 ms", \
12866  "< 250 ms", \
12867  "< 1 s", \
12868  "< 10 s", \
12869  "more than 10 s", \
12870  "reserved_1", \
12871  "reserved_2", \
12872  "reserved_3", \
12873  "reserved_4" \
12874 }
12875 
12876 
12877 
12884 {
12893 };
12894 
12895 
12896 
12902 #define PTP_TIME_SOURCE_TABLE \
12903 { \
12904  { PTP_TIME_SOURCE_ATOMIC_CLOCK, "Atomic Clock" }, \
12905  { PTP_TIME_SOURCE_GPS, "GPS" }, \
12906  { PTP_TIME_SOURCE_TERRESTRIAL_RADIO, "Terrestrial Radio" }, \
12907  { PTP_TIME_SOURCE_PTP, "PTP" }, \
12908  { PTP_TIME_SOURCE_NTP, "NTP" }, \
12909  { PTP_TIME_SOURCE_HAND_SET, "HAND SET" }, \
12910  { PTP_TIME_SOURCE_OTHER, "OTHER" }, \
12911  { PTP_TIME_SOURCE_INTERNAL_OSCILLATOR, "Internal Oscillator" }, \
12912  { 0, NULL } \
12913 }
12914 
12915 
12932 {
12945 };
12946 
12947 
12963 {
12975 };
12976 
12977 
12978 #define PTP_ROLE_MSK_SLAVES ( PTP_ROLE_MSK_MULTICAST_SLAVE \
12979  | PTP_ROLE_MSK_UNICAST_SLAVE \
12980  | PTP_ROLE_MSK_MULTICAST_AUTO )
12981 
12982 #define PTP_ROLE_MSK_MASTERS ( PTP_ROLE_MSK_MULTICAST_MASTER \
12983  | PTP_ROLE_MSK_UNICAST_MASTER \
12984  | PTP_ROLE_MSK_MULTICAST_AUTO \
12985  | PTP_ROLE_BOTH_MASTER )
12986 
12987 
12994 #define PTP_ROLE_STRS \
12995 { \
12996  "Multicast Slave", \
12997  "Unicast Slave", \
12998  "Multicast Master", \
12999  "Unicast Master", \
13000  "Multicast (Auto)", \
13001  "UC+MC Master", \
13002  "NTP Server", \
13003  "NTP Client", \
13004  "Sync Monitor", \
13005  "V1 Master", \
13006  "V1 Slave" \
13007 }
13008 
13009 
13016 #define PTP_ROLE_STRS_SHORT \
13017 { \
13018  "MCS", \
13019  "UCS", \
13020  "MCM", \
13021  "UCM", \
13022  "MCA", \
13023  "UMM", \
13024  "NSV", \
13025  "NCL", \
13026  "MON", \
13027  "V1M", \
13028  "V1S" \
13029 }
13030 
13031 
13038 typedef struct
13039 {
13040  uint8_t b[8];
13041 
13042 } PTP_CLOCK_ID;
13043 
13044 #define _mbg_swab_ptp_clock_id( _p ) _nop_macro_fnc() // nothing to swap
13045 
13046 #define PTP_CLOCK_ID_WILDCARD { { 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF } }
13047 
13048 
13053 
13054 #define _mbg_swab_ptp_port_id( _p ) _mbg_swab16( _p )
13055 
13056 #define PTP_PORT_ID_WILDCARD 0xFFFF
13057 
13058 
13067 typedef struct
13068 {
13070  PTP_PORT_ID port_number;
13071 
13073 
13074 
13075 #define _mbg_swab_ptp_port_identity( _p ) \
13076 { \
13077  _mbg_swab_ptp_clock_id( &(_p)->clock_identity ); \
13078  _mbg_swab_ptp_port_id( &(_p)->port_number ); \
13079 }
13080 
13081 
13087 typedef struct
13088 {
13092 
13094 
13095 
13096 #define _mbg_swab_ptp_clock_quality( _p ) \
13097 { \
13098  _mbg_swab8( &(_p)->clock_class ); \
13099  _mbg_swab8( &(_p)->clock_accuracy ); \
13100  _mbg_swab16( &(_p)->log_variance ); \
13101 }
13102 
13103 
13110 typedef struct
13111 {
13113 
13115 
13116 
13117 #define _mbg_swab_ptp_time_interval( _p ) \
13118 { \
13119  _mbg_swab64( &(_p)->scaled_nanoseconds ); \
13120 }
13121 
13122 
13135 {
13139 };
13140 
13141 
13145 #define PTP_TIMESCALE_NAME_PTP "PTP Standard (TAI)"
13146 #define PTP_TIMESCALE_NAME_ARB "Arbitrary"
13147 
13151 #define PTP_TIMESCALE_NAME_PTP_SHORT "PTP"
13152 #define PTP_TIMESCALE_NAME_ARB_SHORT "Arb"
13153 
13154 
13161 #define PTP_TIMESCALE_NAMES \
13162 { \
13163  PTP_TIMESCALE_NAME_PTP, \
13164  PTP_TIMESCALE_NAME_ARB \
13165 }
13166 
13173 #define PTP_TIMESCALE_NAMES_SHORT \
13174 { \
13175  PTP_TIMESCALE_NAME_PTP_SHORT, \
13176  PTP_TIMESCALE_NAME_ARB_SHORT \
13177 }
13178 
13179 
13180 
13184 typedef struct
13185 {
13189  uint32_t flags;
13194 
13196 
13200 
13201  uint32_t tsu_secs;
13202  uint32_t reserved_2;
13203 
13208 
13210  DAC_VAL osc_dac_cal;
13211 
13214 
13216 
13217 } PTP_STATE;
13218 
13219 #define _mbg_swab_ptp_state( _p ) \
13220 do \
13221 { \
13222  _mbg_swab16( &(_p)->nw_prot ); \
13223  _mbg_swab32( &(_p)->flags ); \
13224  _mbg_swab_nano_time( &(_p)->offset ); \
13225  _mbg_swab_nano_time( &(_p)->path_delay ); \
13226  _mbg_swab_nano_time( &(_p)->mean_path_delay ); \
13227  _mbg_swab_nano_time( &(_p)->delay_asymmetry ); \
13228  _mbg_swab_ptp_clock_id( &(_p)->gm_id ); \
13229  _mbg_swab16( &(_p)->clock_offset_scaled_log_variance ); \
13230  _mbg_swab32( &(_p)->tsu_secs ); \
13231  _mbg_swab32( &(_p)->reserved_2 ); \
13232  _mbg_swab16( &(_p)->utc_offset ); \
13233  _mbg_swab_dac_val( &(_p)->osc_dac_cal ); \
13234  _mbg_swab16( &(_p)->reserved_3 ); \
13235 } while ( 0 )
13236 
13237 
13244 {
13254 };
13255 
13262 {
13271 };
13272 
13273 
13274 
13278 typedef struct
13279 {
13283 
13288 
13293 
13297 
13300 
13301  uint32_t upper_bound;
13302  uint32_t lower_bound;
13303 
13305  uint16_t flags_ex;
13307  uint32_t flags;
13308 
13310 
13311 #define _mbg_swab_ptp_cfg_settings( _p ) \
13312 do \
13313 { \
13314  _mbg_swab16( &(_p)->nw_prot ); \
13315  _mbg_swab16( &(_p)->sync_intv ); \
13316  _mbg_swab16( &(_p)->ann_intv ); \
13317  _mbg_swab16( &(_p)->delay_req_intv ); \
13318  _mbg_swab32( &(_p)->upper_bound ); \
13319  _mbg_swab32( &(_p)->lower_bound ); \
13320  _mbg_swab16( &(_p)->delay_asymmetry ); \
13321  _mbg_swab16( &(_p)->flags_ex ); \
13322  _mbg_swab32( &(_p)->flags ); \
13323 } while ( 0 )
13324 
13325 
13326 
13331 {
13335 };
13336 
13337 
13338 
13342 typedef struct
13343 {
13345 
13349 
13356 
13357  uint32_t supp_flags;
13358  uint32_t supp_nw_prot;
13359  uint32_t supp_opt_ext;
13360  uint32_t supp_delay_mech;
13361 
13362 } PTP_CFG_INFO;
13363 
13364 #define _mbg_swab_ptp_cfg_info( _p ) \
13365 do \
13366 { \
13367  _mbg_swab_ptp_cfg_settings( &(_p)->settings ); \
13368  _mbg_swab16( &(_p)->supp_flags_ex ); \
13369  _mbg_swab16( &(_p)->sync_intv_min ); \
13370  _mbg_swab16( &(_p)->sync_intv_max ); \
13371  _mbg_swab16( &(_p)->ann_intv_min ); \
13372  _mbg_swab16( &(_p)->ann_intv_max ); \
13373  _mbg_swab16( &(_p)->delay_req_intv_min ); \
13374  _mbg_swab16( &(_p)->delay_req_intv_max ); \
13375  _mbg_swab32( &(_p)->supp_flags ); \
13376  _mbg_swab32( &(_p)->supp_nw_prot ); \
13377  _mbg_swab32( &(_p)->supp_opt_ext ); \
13378  _mbg_swab32( &(_p)->supp_delay_mech ); \
13379 } while ( 0 )
13380 
13381 
13382 
13406 {
13415 
13424 
13433 
13442 
13444 };
13445 
13446 
13447 
13459 #define PTP_CFG_MSK_TIME_SCALE_IS_PTP ( 1UL << PTP_CFG_TIME_SCALE_IS_PTP )
13460 #define PTP_CFG_MSK_V1_HW_COMPAT ( 1UL << PTP_CFG_V1_HW_COMPAT )
13461 #define PTP_CFG_MSK_CAN_BE_UNICAST_SLAVE ( 1UL << PTP_CFG_CAN_BE_UNICAST_SLAVE )
13462 #define PTP_CFG_MSK_CAN_BE_MULTICAST_MASTER ( 1UL << PTP_CFG_CAN_BE_MULTICAST_MASTER )
13463 #define PTP_CFG_MSK_CAN_BE_UNICAST_MASTER ( 1UL << PTP_CFG_CAN_BE_UNICAST_MASTER )
13464 #define PTP_CFG_MSK_CAN_BE_MULTICAST_AUTO ( 1UL << PTP_CFG_CAN_BE_MULTICAST_AUTO )
13465 #define PTP_CFG_MSK_SUPP_UTC_VALID ( 1UL << PTP_CFG_SUPP_UTC_VALID )
13466 #define PTP_CFG_MSK_CAN_BE_BOTH_MASTER ( 1UL << PTP_CFG_CAN_BE_BOTH_MASTER )
13467 
13468 #define PTP_CFG_MSK_HYBRID_MASTER ( 1UL << PTP_CFG_HYBRID_MASTER )
13469 #define PTP_CFG_MSK_HYBRID_SLAVE ( 1UL << PTP_CFG_HYBRID_SLAVE )
13470 #define PTP_CFG_MSK_ONE_STEP_MASTER ( 1UL << PTP_CFG_ONE_STEP_MASTER )
13471 #define PTP_CFG_MSK_MNGMNT_MSGS_DISB ( 1UL << PTP_CFG_MNGMNT_MSGS_DISB )
13472 #define PTP_CFG_MSK_SUPP_MCAST_SLAVE_FLAG ( 1UL << PTP_CFG_SUPP_MCAST_SLAVE_FLAG )
13473 #define PTP_CFG_MSK_CAN_BE_MULTICAST_SLAVE ( 1UL << PTP_CFG_CAN_BE_MULTICAST_SLAVE )
13474 #define PTP_CFG_MSK_ONE_STEP_L2 ( 1UL << PTP_CFG_ONE_STEP_L2 )
13475 #define PTP_CFG_MSK_ONE_STEP_P2P ( 1UL << PTP_CFG_ONE_STEP_P2P )
13476 
13477 #define PTP_CFG_MSK_TSU_RESET ( 1UL << PTP_CFG_TSU_RESET )
13478 #define PTP_CFG_MSK_NTP_HW_TS_MASTER ( 1UL << PTP_CFG_NTP_HW_TS_MASTER )
13479 #define PTP_CFG_MSK_NTP_HW_TS_SLAVE ( 1UL << PTP_CFG_NTP_HW_TS_SLAVE)
13480 #define PTP_CFG_MSK_SYNCE_MASTER ( 1UL << PTP_CFG_SYNCE_MASTER )
13481 #define PTP_CFG_MSK_SYNCE_SLAVE ( 1UL << PTP_CFG_SYNCE_SLAVE )
13482 #define PTP_CFG_MSK_HAS_MUX ( 1UL << PTP_CFG_HAS_MUX )
13483 #define PTP_CFG_MSK_CAN_BE_TIME_MONITOR ( 1UL << PTP_CFG_CAN_BE_TIME_MONITOR )
13484 #define PTP_CFG_MSK_HAS_STATISTICS ( 1UL << PTP_CFG_HAS_STATISTICS )
13485 
13486 #define PTP_CFG_MSK_CAN_BE_V1_MASTER ( 1UL << PTP_CFG_CAN_BE_V1_MASTER )
13487 #define PTP_CFG_MSK_CAN_BE_V1_SLAVE ( 1UL << PTP_CFG_CAN_BE_V1_SLAVE )
13488 #define PTP_CFG_MSK_HAS_V2_COMMON_DATASETS ( 1UL << PTP_CFG_HAS_V2_COMMON_DATASETS )
13489 #define PTP_CFG_MSK_HAS_V1_COMMON_DATASETS ( 1UL << PTP_CFG_HAS_V1_COMMON_DATASETS )
13490 #define PTP_CFG_MSK_ATOI ( 1UL << PTP_CFG_ATOI )
13491 #define PTP_CFG_MSK_HAS_SMPTE_TLV_STATE ( 1UL << PTP_CFG_HAS_SMPTE_TLV_STATE )
13492 #define PTP_CFG_MSK_NTP_SW_SERVER ( 1UL << PTP_CFG_NTP_SW_SERVER )
13493 #define PTP_CFG_MSK_HAS_EXT_SUPP_FLAGS ( 1UL << PTP_CFG_HAS_EXT_SUPP_FLAGS )
13494 
13495 
13522 {
13529 };
13530 
13531 
13543 #define PTP_CFG_MSK_CAN_BE_PTP_PROBE ( 1UL << PTP_CFG_CAN_BE_PTP_PROBE )
13544 #define PTP_CFG_MSK_DISABLE_PTP ( 1UL << PTP_CFG_DISABLE_PTP )
13545 #define PTP_CFG_MSK_HAS_NTP_PKTGEN_IPV6 ( 1UL << PTP_CFG_HAS_NTP_PKTGEN_IPV6 )
13546 #define PTP_CFG_MSK_HAS_DELAY_ASYMMETRY_CFG ( 1UL << PTP_CFG_HAS_DELAY_ASYMMETRY_CFG )
13547 #define PTP_CFG_MSK_HAS_SOFT_NTP ( 1UL << PTP_CFG_HAS_SOFT_NTP )
13548 
13549 
13554 #define PTP_CFG_MSK_SUPPORT_PTP_UNICAST ( PTP_CFG_MSK_CAN_BE_UNICAST_SLAVE | \
13555  PTP_CFG_MSK_CAN_BE_UNICAST_MASTER )
13556 
13557 
13558 
13563 
13564 
13565 
13570 {
13573 };
13574 
13575 
13576 // TODO fix comment linkage
13583 {
13585 };
13586 
13587 
13588 
13595 {
13606 };
13607 
13608 
13615 {
13625 };
13626 
13627 
13628 
13639 {
13654 };
13655 
13656 
13663 {
13677 
13678 };
13679 
13680 
13686 #define PTP_PRESETS_STRS \
13687 { \
13688  "Custom", \
13689  "Default E2E IEEE1588-2008", \
13690  "Default P2P IEEE1588-2008", \
13691  "Power IEEE C37.238-2011", \
13692  "Telecom ITU-T G.8265.1", \
13693  "Telecom ITU-T G.8275.1", \
13694  "SMPTE ST 2059-2", \
13695  "AES67 Media Profile", \
13696  "IEEE 802.1AS", \
13697  "Utility IEC 61850-9-3", \
13698  "Telecom ITU-T G.8275.2", \
13699  "DOCSIS 3.1", \
13700  "Power IEEE C37.238-2017" \
13701 }
13702 
13703 
13704 
13708 #define PTP_POWER_PROFILE_GM_ID_MIN 3
13709 #define PTP_POWER_PROFILE_GM_ID_MAX 255
13710 
13711 typedef struct
13712 {
13718 
13720 
13721 #define _mbg_swab_ptp_power_profile_cfg( _p ) \
13722 do \
13723 { \
13724  _mbg_swab32( &(_p)->network_incaccuracy ); \
13725  _mbg_swab8( &(_p)->grandmaster_id ); \
13726  _mbg_swab8( &(_p)->reserved_1 ); \
13727  _mbg_swab16( &(_p)->grandmaster_id_2017 ); \
13728  _mbg_swab_tzdl( &(_p)->tzdl ); \
13729  _mbg_swab32( &(_p)->flags ); \
13730 } while ( 0 )
13731 
13732 
13733 
13734 #if defined( _PRELIMINARY_CODE )
13735 
13736 // TODO: These definitions are preliminary and maybe subject to changes.
13737 
13744 {
13752 };
13753 
13754 
13755 #define SMPTE_SYSTEM_FRAME_RATE_STR \
13756 { \
13757  "24Hz (23.98)", \
13758  "24Hz", \
13759  "25Hz", \
13760  "30Hz (29.97)", \
13761  "50Hz", \
13762  "60Hz (59.94)" \
13763 }
13764 
13765 
13766 #define SMPTE_FRAME_RATE_NUM \
13767 { \
13768  24000, \
13769  24000, \
13770  25000, \
13771  30000, \
13772  50000, \
13773  60000, \
13774 }
13775 
13776 #define SMPTE_FRAME_RATE_DENUM \
13777 { \
13778  1001, \
13779  1000, \
13780  1000, \
13781  1001, \
13782  1000, \
13783  1001, \
13784 }
13785 
13786 
13795 typedef struct
13796 {
13820 
13823 
13829  int32_t jumpSeconds;
13834  uint8_t timeOfNextJump[6];
13839  uint8_t timeOfNextJam[6];
13843  uint8_t timeOfPreviousJam[6];
13850  uint32_t reserved_5;
13851 
13867 
13870 
13871  uint32_t reserved_8;
13872  uint32_t reserved_9;
13873  uint32_t reserved_10;
13874 
13876 
13877 #define _mbg_swab_ptp_smpte_profile_cfg( _p ) \
13878 do \
13879 { \
13880  _mbg_swab32( &(_p)->defaultSystemFrameRateNum ); \
13881  _mbg_swab32( &(_p)->defaultSystemFrameRateDenum ); \
13882  _mbg_swab32( &(_p)->currentLocalOffset ); \
13883  _mbg_swab32( &(_p)->jumpSeconds ); \
13884  _mbg_swab32( &(_p)->reserved_5 ); \
13885  _mbg_swab32( &(_p)->previousJamLocalOffset ); \
13886  _mbg_swab32( &(_p)->reserved_8 ); \
13887  _mbg_swab32( &(_p)->reserved_8 ); \
13888  _mbg_swab32( &(_p)->reserved_9 ); \
13889  _mbg_swab32( &(_p)->reserved_10 ); \
13890 } while ( 0 )
13891 
13892 
13896 typedef struct
13897 {
13902  uint32_t reserved_4;
13903 
13905 
13906 #define _mbg_swab_ptp_telecom8275_profile_cfg( _p ) \
13907 do \
13908 { \
13909  _mbg_swab8( &(_p)->use_alternate_multicast_mac_address ); \
13910  _mbg_swab8( &(_p)->reserved_1 ); \
13911  _mbg_swab8( &(_p)->reserved_2 ); \
13912  _mbg_swab8( &(_p)->reserved_3 ); \
13913  _mbg_swab32( &(_p)->reserved_4 ); \
13914 } while ( 0 )
13915 
13916 
13917 
13924 
13925 
13926 
13933 {
13951 };
13952 
13953 
13954 #define N_SSM_CODES_OPTION_1 5
13955 #define N_SSM_CODES_OPTION_2 9
13956 
13957 
13963 #define ITU_SSM_CODE_OPT_1_STRS \
13964 { \
13965  "", \
13966  "", \
13967  "QL-PRC", \
13968  "", \
13969  "QL-SSU-A", \
13970  "", \
13971  "", \
13972  "", \
13973  "QL-SSU-B", \
13974  "", \
13975  "", \
13976  "QL-SEC", \
13977  "", \
13978  "", \
13979  "", \
13980  "QL-DNU" \
13981 }
13982 
13983 
13984 
13990 #define ITU_SSM_CODE_OPT_2_STRS \
13991 { \
13992  "QL-STU", \
13993  "QL-PRS", \
13994  "", \
13995  "", \
13996  "QL-TNC", \
13997  "", \
13998  "", \
13999  "QL-ST2", \
14000  "", \
14001  "", \
14002  "QL-ST3", \
14003  "", \
14004  "QL-SMC", \
14005  "QL-ST3E", \
14006  "QL-PROV", \
14007  "QL-DUS" \
14008 }
14009 
14010 
14011 
14017 #define ITU_SSM_CODE_STRS_COMBINED \
14018 { \
14019  "QL-STU/UKN", \
14020  "QL-PRS", \
14021  "QL-PRC", \
14022  "QL-INV3", \
14023  "QL-SSU-A/TNC", \
14024  "QL-INV5", \
14025  "QL-INV6", \
14026  "QL-ST2", \
14027  "QL-SSU-B", \
14028  "QL-INV9", \
14029  "QL-EEC2/ST3", \
14030  "QL-EEC1/SEC", \
14031  "QL-SMC", \
14032  "QL-ST3E", \
14033  "QL-PROV", \
14034  "QL-DNU/DUS", \
14035 }
14036 
14037 
14038 
14046 #define MAX_T1_SSM_QLVL 8
14047 
14048 
14049 
14058 {
14067 };
14068 
14069 
14070 
14078 #define T1_SSM_QLVL_ARRAY \
14079 { \
14080  T1_SSM_QLVL_ST1_TRACE, \
14081  T1_SSM_QLVL_SYNC_TRACE_UNKNOWN, \
14082  T1_SSM_QLVL_ST2_TRACE, \
14083  T1_SSM_QLVL_ST3_TRACE, \
14084  T1_SSM_QLVL_SONET_MIN_CLOCK_TRACE, \
14085  T1_SSM_QLVL_ST4_TRACE, \
14086  T1_SSM_QLVL_DNU_FOR_SYNC, \
14087  T1_SSM_QLVL_RESERVED \
14088 }
14089 
14090 
14091 
14099 #define T1_SSM_QLVL_STRS \
14100 { \
14101  "Stratum 1 traceable", \
14102  "Synchronized traceability unknown", \
14103  "Stratum 2 traceable", \
14104  "Stratum 3 traceable", \
14105  "SONET minimum clock traceable", \
14106  "Stratum 4 traceable", \
14107  "Do not use for sync", \
14108  "Reserved for network sync" \
14109 }
14110 
14111 
14112 
14119 {
14123 
14124 };
14125 
14126 
14127 
14134 {
14137 };
14138 
14139 
14140 
14146 #define SDH_NETWORK_OPTION_STRS \
14147 { \
14148  "SDH Network Opt. 1", \
14149  "SDH Network Opt. 2", \
14150 }
14151 
14152 
14153 
14154 //##++++ TODO: shouldn't this be merged with / replaced by MBG_NET_LINK_MODES?
14161 {
14162  GBIT_LINK_COPPER_AUTO, // valid if synce is disabled
14164  GBIT_LINK_COPPER_FORCE_OR_IS_MASTER, // Used in both structures, settings and status
14165  GBIT_LINK_COPPER_FORCE_OR_IS_SLAVE, // Used in both structures, settings and status
14169 };
14170 
14171 
14172 
14179 {
14186 };
14187 
14188 
14189 
14190 //##++++ TODO: shouldn't this be merged with MBG_NET_LINK_ROLE_BITS / MBG_NET_LINK_ROLE_MASKS?
14197 {
14205 };
14206 
14207 
14208 #define GBIT_LINK_STATUS_STRS \
14209 { \
14210  "MASTER (1000BASE-T)", \
14211  "SLAVE (1000BASE-T)", \
14212  "CFG FAULT", \
14213  "AUTO (100BASE-TX)", \
14214  "LINK DOWN", \
14215  "AUTO (SFP LINK UP)", \
14216 }
14217 
14218 #else // !defined( _PRELIMINARY_CODE ), dummy declarations
14219 
14220 typedef int PTP_SMPTE_PROFILE_CFG;
14221 typedef int PTP_TELECOMG8275_PROFILE_CFG;
14222 typedef int ITU_SSM_CODE;
14223 
14224 #endif // defined( _PRELIMINARY_CODE )
14225 
14226 
14227 
14231 typedef struct
14232 {
14241  uint32_t supp_flags;
14242  uint32_t reserved_1;
14243 
14245 
14246 #define _mbg_swab_ptp_uc_master_cfg_limits( _p ) \
14247 do \
14248 { \
14249  _mbg_swab16( &(_p)->n_supp_master ); \
14250  _mbg_swab16( &(_p)->sync_intv_min ); \
14251  _mbg_swab16( &(_p)->sync_intv_max ); \
14252  _mbg_swab16( &(_p)->ann_intv_min ); \
14253  _mbg_swab16( &(_p)->ann_intv_max ); \
14254  _mbg_swab16( &(_p)->delay_req_intv_min ); \
14255  _mbg_swab16( &(_p)->delay_req_intv_max ); \
14256  _mbg_swab16( &(_p)->reserved_0 ); \
14257  _mbg_swab32( &(_p)->supp_flags ); \
14258  _mbg_swab32( &(_p)->reserved_1 ); \
14259 } while ( 0 )
14260 
14261 
14262 
14274 typedef struct
14275 {
14276  MBG_HOSTNAME gm_host;
14278  PTP_PORT_ID gm_port_id;
14282  int32_t fix_offset;
14285  uint32_t reserved_1;
14286  uint32_t flags;
14287 
14289 
14290 #define _mbg_swab_ptp_uc_master_settings( _p ) \
14291 do \
14292 { \
14293  _mbg_swab_ptp_clock_id( &(_p)->gm_clock_id ); \
14294  _mbg_swab_ptp_port_id( &(_p)->gm_port_id ); \
14295  _mbg_swab16( &(_p)->sync_intv ); \
14296  _mbg_swab16( &(_p)->ann_intv ); \
14297  _mbg_swab16( &(_p)->delay_req_intv ); \
14298  _mbg_swab32( &(_p)->fix_offset ); \
14299  _mbg_swab16( &(_p)->message_duration ); \
14300  _mbg_swab16( &(_p)->reserved_0 ); \
14301  _mbg_swab32( &(_p)->reserved_1 ); \
14302  _mbg_swab32( &(_p)->flags ); \
14303 } while ( 0 )
14304 
14305 
14306 
14319 {
14322 };
14323 
14324 
14325 
14329 typedef struct
14330 {
14331  uint32_t idx;
14333 
14335 
14336 #define _mbg_swab_ptp_uc_master_settings_idx( _p ) \
14337 do \
14338 { \
14339  _mbg_swab32( &(_p)->idx ); \
14340  _mbg_swab_ptp_uc_master_settings( &(_p)->settings ); \
14341 } while ( 0 )
14342 
14343 
14344 
14351 typedef struct
14352 {
14354  uint32_t reserved;
14355  uint32_t flags;
14356 
14358 
14359 #define _mbg_swab_ptp_uc_master_info( _p ) \
14360 do \
14361 { \
14362  _mbg_swab_ptp_uc_master_settings( &(_p)->settings ); \
14363  _mbg_swab32( &(_p)->reserved ); \
14364  _mbg_swab32( &(_p)->flags ); \
14365 } while ( 0 )
14366 
14367 
14368 
14382 typedef struct
14383 {
14384  uint32_t idx;
14386 
14388 
14389 #define _mbg_swab_ptp_uc_master_info_idx( _p ) \
14390 do \
14391 { \
14392  _mbg_swab32( &(_p)->idx ); \
14393  _mbg_swab_ptp_uc_master_info( &(_p)->info ); \
14394 } while ( 0 )
14395 
14396 
14397 
14398 typedef struct
14399 {
14400  uint32_t counter_cfg;
14401  uint32_t flags;
14402  uint32_t reserved_1;
14403  uint32_t reserved_2;
14404 
14406 
14407 
14408 
14409 typedef struct
14410 {
14412  uint32_t supp_flags;
14413  uint32_t reserved_1;
14414 
14416 
14417 
14418 
14419 typedef struct
14420 {
14421  uint32_t status;
14422  uint32_t rx;
14423  uint32_t rxPerSec;
14424  uint32_t tx;
14425  uint32_t txPerSec;
14426  uint32_t errorRx;
14431  uint32_t announceMsgRx;
14433  uint32_t announceMsgTx;
14435  uint32_t syncMsgRx;
14436  uint32_t syncMsgPerSecRx;
14437  uint32_t syncMsgTx;
14438  uint32_t syncMsgPerSecTx;
14439  uint32_t followUpMsgRx;
14441  uint32_t followUpMsgTx;
14443  uint32_t dlyReqMsgRx;
14445  uint32_t dlyReqMsgTx;
14447  uint32_t dlyRespMsgRx;
14449  uint32_t dlyRespMsgTx;
14451  uint32_t pDlyReqMsgRx;
14453  uint32_t pDlyReqMsgTx;
14455  uint32_t pDlyRespMsgRx;
14457  uint32_t pDlyRespMsgTx;
14459  uint32_t pDlyFollowUpRx;
14461  uint32_t pDlyFollowUpTx;
14463  uint32_t signallingRx;
14465  uint32_t signallingTx;
14467  uint32_t mgmtRx;
14468  uint32_t mgmtPerSecRx;
14469  uint32_t mgmtTx;
14470  uint32_t mgmtPerSecTx;
14471  uint32_t mgmtErr;
14472  uint32_t annReceptTout;
14473 
14474  uint32_t numUcConn;
14475  uint32_t maxNumUcConn;
14476  uint32_t numMsgPerSec;
14477  uint32_t maxMsgPerSec;
14478 
14480 
14481 
14482 
14484 {
14487  /* reserved */
14495  /* reserved */
14509 };
14510 
14511 
14512 
14513 #define PTP_CODE_STRING_LENGTH 4
14514 #define PTP_SUBDOMAIN_NAME_LENGTH 16
14515 
14516 
14522 typedef struct
14523 {
14528  PTP_PORT_ID port_id;
14530 } PTP_V1_UUID;
14531 
14532 
14533 #define _mbg_swab_ptp_v1_uuid( _p ) \
14534 do \
14535 { \
14536  _mbg_swab16( &(_p)->reserved_2 ); \
14537  _mbg_swab_ptp_clock_id( &(_p)->clock_uuid ); \
14538  _mbg_swab_ptp_port_id( &(_p)->port_id ); \
14539  _mbg_swab16( &(_p)->reserved_3 ); \
14540 } while ( 0 )
14541 
14542 
14543 
14550 {
14556 };
14557 
14558 
14559 
14566 {
14572 };
14573 
14574 
14575 
14581 typedef struct {
14584  uint8_t clock_identifier[PTP_CODE_STRING_LENGTH];
14590  uint32_t flags;
14592 
14593 
14594 #define _mbg_swab_ptp_v1_default_dataset( _p ) \
14595 do \
14596 { \
14597  _mbg_swab_ptp_v1_uuid( &(_p)->uuid ); \
14598  _mbg_swab16( &(_p)->clock_variance ); \
14599  _mbg_swab16( &(_p)->number_ports ); \
14600  _mbg_swab16( &(_p)->number_foreign_records ); \
14601  _mbg_swab32( &(_p)->flags ); \
14602 } while ( 0 )
14603 
14604 
14605 
14611 typedef struct
14612 {
14618 
14619 
14620 #define _mbg_swab_ptp_v1_current_dataset( _p ) \
14621 do \
14622 { \
14623  _mbg_swab16( &(_p)->steps_removed ); \
14624  _mbg_swab16( &(_p)->reserved_1 ); \
14625  _mbg_swab_nano_time( &(_p)->offset_from_master ); \
14626  _mbg_swab_nano_time( &(_p)->one_way_delay ); \
14627 } while ( 0 )
14628 
14629 
14630 
14637 {
14644 };
14645 
14646 
14647 
14654 {
14661 };
14662 
14663 
14664 
14670 typedef struct
14671 {
14680  uint8_t grandmaster_identifier[PTP_CODE_STRING_LENGTH];
14684  uint32_t flags;
14685 
14687 
14688 
14689 #define _mbg_swab_ptp_v1_parent_dataset( _p ) \
14690 do \
14691 { \
14692  _mbg_swab_ptp_v1_uuid( &(_p)->uuid ); \
14693  _mbg_swab16( &(_p)->parent_last_sync_sequence_number ); \
14694  _mbg_swab16( &(_p)->parent_variance ); \
14695  _mbg_swab16( &(_p)->observed_variance ); \
14696  _mbg_swab16( &(_p)->reserved_1 ); \
14697  _mbg_swab32( &(_p)->observed_drift ); \
14698  _mbg_swab_ptp_v1_uuid( &(_p)->grandmaster_uuid ); \
14699  _mbg_swab16( &(_p)->grandmaster_variance ); \
14700  _mbg_swab16( &(_p)->grandmaster_sequence_number ); \
14701  _mbg_swab16( &(_p)->reserved_2 ); \
14702  _mbg_swab32( &(_p)->flags ); \
14703 } while ( 0 )
14704 
14705 
14706 
14713 {
14716 };
14717 
14718 
14719 
14726 {
14729 };
14730 
14731 
14732 
14737 typedef struct
14738 {
14741  uint32_t flags;
14742 
14744 
14745 
14746 #define _mbg_swab_ptp_v1_time_properties_dataset( _p ) \
14747 do \
14748 { \
14749  _mbg_swab16( &(_p)->current_utc_offset ); \
14750  _mbg_swab16( &(_p)->epoch_number ); \
14751  _mbg_swab32( &(_p)->flags ); \
14752 } while ( 0 )
14753 
14754 
14755 
14762 {
14764 };
14765 
14766 
14767 
14774 {
14776 };
14777 
14778 
14779 
14785 typedef struct
14786 {
14796  uint32_t flags;
14798 
14799 
14800 #define _mbg_swab_ptp_v1_port_dataset( _p ) \
14801 do \
14802 { \
14803  _mbg_swab16( &(_p)->last_sync_event_sequence_number ); \
14804  _mbg_swab16( &(_p)->last_general_event_sequence_number ); \
14805  _mbg_swab16( &(_p)->reserved_2 ); \
14806  _mbg_swab32( &(_p)->subdomain_address ); \
14807  _mbg_swab16( &(_p)->event_port_address ); \
14808  _mbg_swab16( &(_p)->general_port_address ); \
14809  _mbg_swab_ptp_v1_uuid( &(_p)->uuid ); \
14810  _mbg_swab32( &(_p)->flags ); \
14811 } while ( 0 )
14812 
14813 
14814 
14822 typedef struct
14823 {
14826 
14828 
14829 
14830 #define _mbg_swab_ptp_v1_port_dataset_idx( _p ) \
14831 { \
14832  _mbg_swab16( &(_p)->idx ); \
14833  _mbg_swab_ptp_v1_port_dataset( &(_p)->port_dataset ); \
14834 }
14835 
14836 
14844 typedef struct
14845 {
14849 
14851 
14852 #define _mbg_swab_ptp_v2_default_dataset_flags( _p ) \
14853  _nop_macro_fnc()
14854 
14855 
14865 typedef struct
14866 {
14876 
14878 
14879 
14880 #define _mbg_swab_ptp_v2_default_dataset( _p ) \
14881 { \
14882  _mbg_swab_ptp_v2_default_dataset_flags( &(_p)->flags ); \
14883  _mbg_swab8( &(_p)->reserved_1 ); \
14884  _mbg_swab16( &(_p)->number_ports ); \
14885  _mbg_swab8( &(_p)->priority_1 ); \
14886  _mbg_swab_ptp_clock_quality( &(_p)->clock_quality ); \
14887  _mbg_swab8( &(_p)->priority_2 ); \
14888  _mbg_swab_ptp_clock_id( &(_p)->clock_identity ); \
14889  _mbg_swab8( &(_p)->domain_number ); \
14890  _mbg_swab8( &(_p)->reserved_2 ); \
14891 }
14892 
14893 
14901 typedef struct
14902 {
14906 
14908 
14909 
14910 #define _mbg_swab_ptp_v2_current_dataset( _p ) \
14911 { \
14912  _mbg_swab16( &(_p)->steps_removed ); \
14913  _mbg_swab_ptp_time_interval( &(_p)->offset_from_master ); \
14914  _mbg_swab_ptp_time_interval( &(_p)->mean_path_delay ); \
14915 }
14916 
14917 
14925 typedef struct
14926 {
14929 
14931 
14932 #define _mbg_swab_ptp_v2_parent_dataset_flags( _p )\
14933  _nop_macro_fnc()
14934 
14935 
14936 
14947 typedef struct
14948 {
14953  int32_t parent_phase_change_rate;
14955  uint8_t grandmaster_priority_1;
14960 
14962 
14963 
14964 #define _mbg_swab_ptp_v2_parent_dataset( _p ) \
14965 { \
14966  _mbg_swab_ptp_port_identity( &(_p)->parent_port_identity ); \
14967  _mbg_swab_ptp_v2_parent_dataset_flags( &(_p)->flags ); \
14968  _mbg_swab8( &(_p)->reserved ); \
14969  _mbg_swab16( &(_p)->parent_log_variance ); \
14970  _mbg_swab32( &(_p)->parent_phase_change_rate ); \
14971  _mbg_swab8( &(_p)->grandmaster_priority_1 ); \
14972  _mbg_swab_ptp_clock_quality( &(_p)->grandmaster_clock_quality ); \
14973  _mbg_swab8( &(_p)->grandmaster_priority_2 ); \
14974  _mbg_swab_ptp_clock_id( &(_p)->grandmaster_identity ); \
14975 }
14976 
14977 
14985 typedef struct
14986 {
14994 
14996 
14997 
14998 #define _mbg_swab_ptp_v2_time_properties_dataset_flags( _p ) \
14999  _nop_macro_fnc()
15000 
15001 
15009 typedef struct
15010 {
15014 
15016 
15017 
15018 #define _mbg_swab_ptp_v2_time_properties_dataset( _p ) \
15019 { \
15020  _mbg_swab16( &(_p)->current_utc_offset ); \
15021  _mbg_swab_ptp_v2_time_properties_dataset_flags( &(_p)->flags ); \
15022  _mbg_swab8( &(_p)->time_source ); \
15023 }
15024 
15025 
15035 typedef struct
15036 {
15048 
15050 
15051 
15052 #define _mbg_swab_ptp_v2_port_dataset( _p ) \
15053 { \
15054  _mbg_swab_ptp_port_identity( &(_p)->port_identity ); \
15055  _mbg_swab8( &(_p)->port_state ); \
15056  _mbg_swab8( &(_p)->log_min_delay_req_interval ); \
15057  _mbg_swab_ptp_time_interval( &(_p)->peer_mean_path_delay ); \
15058  _mbg_swab8( &(_p)->log_announce_interval ); \
15059  _mbg_swab8( &(_p)->announce_receipt_timeout ); \
15060  _mbg_swab8( &(_p)->log_sync_interval ); \
15061  _mbg_swab8( &(_p)->delay_mechanism ); \
15062  _mbg_swab8( &(_p)->log_min_pdelay_req_interval ); \
15063 }
15064 
15065 
15073 typedef struct
15074 {
15077 
15079 
15080 
15081 #define _mbg_swab_ptp_v2_port_dataset_idx( _p ) \
15082 { \
15083  _mbg_swab16( &(_p)->idx ); \
15084  _mbg_swab_ptp_v2_port_dataset( &(_p)->port_dataset ); \
15085 }
15086 
15087 
15104 {
15110 };
15111 
15112 
15119 {
15124 };
15125 
15126 
15133 {
15160 
15162 };
15163 
15164 
15165 
15179 #define NTP_MSK_IPV4 ( 1UL << NTP_IPV4 )
15180 #define NTP_MSK_IPV6 ( 1UL << NTP_IPV6 )
15181 #define NTP_MSK_SYMM_KEYS ( 1UL << NTP_SYMM_KEYS )
15182 #define NTP_MSK_AUTOKEY ( 1UL << NTP_AUTOKEY )
15183 #define NTP_MSK_BURST ( 1UL << NTP_BURST )
15184 #define NTP_MSK_IBURST ( 1UL << NTP_IBURST )
15185 #define NTP_MSK_NO_SELECT ( 1UL << NTP_NO_SELECT )
15186 #define NTP_MSK_PREEMPT ( 1UL << NTP_PREEMPT )
15187 #define NTP_MSK_PREFER ( 1UL << NTP_PREFER )
15188 #define NTP_MSK_TRUE ( 1UL << NTP_TRUE )
15189 #define NTP_MSK_BROADCAST ( 1UL << NTP_BROADCAST )
15190 #define NTP_MSK_MULTICAST ( 1UL << NTP_MULTICAST )
15191 #define NTP_MSK_MANYCAST ( 1UL << NTP_MANYCAST )
15192 #define NTP_MSK_POOL ( 1UL << NTP_POOL )
15193 #define NTP_MSK_PEER ( 1UL << NTP_PEER )
15194 #define NTP_MSK_BROADCASTCLIENT ( 1UL << NTP_BROADCASTCLIENT)
15195 #define NTP_MSK_MULTICASTCLIENT ( 1UL << NTP_MULTICASTCLIENT)
15196 #define NTP_MSK_MANYCASTCLIENT ( 1UL << NTP_MANYCASTCLIENT)
15197 #define NTP_MSK_RESTRICTIONS ( 1UL << NTP_RESTRICTIONS )
15198 #define NTP_MSK_DISCARD ( 1UL << NTP_DISCARD )
15199 #define NTP_MSK_REFCLOCKS ( 1UL << NTP_REFCLOCKS )
15200 #define NTP_MSK_STATISTICS ( 1UL << NTP_STATISTICS )
15201 #define NTP_MSK_MISCELLANEOUS ( 1UL << NTP_MISCELLANEOUS )
15202 #define NTP_MSK_TRUSTED_KEYS ( 1UL << NTP_TRUSTED_KEYS )
15203 #define NTP_MSK_FIXED_REFCLOCKS ( 1UL << NTP_FIXED_REFCLOCKS )
15204 #define NTP_MSK_ADD_CONF ( 1UL << NTP_ADD_CONF )
15205 
15206 
15209 #define NTP_DEF_ADD_CONF_PATH "/etc/mbg"
15210 #define NTP_DEF_ADD_CONF_FILENAME "ntp.conf.add"
15211 #define NTP_DEF_ADD_CONF_FILE NTP_DEF_ADD_CONF_PATH "/" NTP_DEF_ADD_CONF_FILENAME
15212 
15213 
15214 
15220 typedef struct
15221 {
15226 
15227  uint32_t reserved_2;
15228  uint32_t reserved_3;
15229 
15230  uint32_t flags;
15231 
15233 
15234 #define _mbg_swab_ntp_glb_settings( _p ) \
15235 do \
15236 { \
15237  _mbg_swab32( &(_p)->flags ); \
15238 } while ( 0 )
15239 
15240 
15246 typedef struct
15247 {
15249 
15252 
15254  uint32_t reserved_3;
15255 
15256  uint32_t supp_ntp_roles;
15257  uint32_t supp_flags;
15258 
15259 } NTP_GLB_INFO;
15260 
15261 #define _mbg_swab_ntp_glb_info( _p ) \
15262 do \
15263 { \
15264  _mbg_swab_ntp_glb_settings( &(_p)->settings ); \
15265  _mbg_swab32( &(_p)->supp_ntp_roles ); \
15266  _mbg_swab32( &(_p)->supp_flags ); \
15267 } while ( 0 )
15268 
15269 
15270 #if defined( _PRELIMINARY_CODE )
15271 
15281 {
15286 };
15287 
15288 
15289 
15298 {
15302 };
15303 
15304 
15305 
15315 {
15333 };
15334 
15335 
15336 
15345 {
15362 };
15363 
15364 
15365 
15374 typedef struct
15375 {
15378  uint32_t supp_types;
15379  uint32_t supp_flags;
15380  uint32_t reserved;
15381 
15383 
15384 #define _mbg_swab_ntp_restr_limits( _p ) \
15385 do \
15386 { \
15387  _mbg_swab16( &(_p)->max_restrs ); \
15388  _mbg_swab16( &(_p)->cur_restrs ); \
15389  _mbg_swab32( &(_p)->supp_types ); \
15390  _mbg_swab32( &(_p)->supp_flags ); \
15391  _mbg_swab32( &(_p)->reserved ); \
15392 } while ( 0 )
15393 
15400 typedef struct
15401 {
15405  uint32_t flags;
15406 
15407  MBG_HOSTNAME addr;
15408 } NTP_RESTR;
15411 
15412 #define _mbg_swab_ntp_restr( _p ) \
15413 do \
15414 { \
15415  _mbg_swab16( &(_p)->reserved_2 ); \
15416  _mbg_swab32( &(_p)->flags ); \
15417  _mbg_swab_ntp_restr_discard( &(_p)->u.discard ); \
15418 } while ( 0 )
15419 
15420 
15421 
15427 typedef struct
15428 {
15429  uint32_t idx;
15431 
15432 } NTP_RESTR_IDX;
15433 
15434 #define _mbg_swab_ntp_restr_idx( _p ) \
15435 do \
15436 { \
15437  _mbg_swab32( &(_p)->idx ); \
15438  _mbg_swab_ntp_restr( &(_p)->restr ); \
15439 } while ( 0 )
15440 
15441 
15442 
15449 typedef struct
15450 {
15457 
15458  uint32_t reserved;
15459 
15461 
15462 #define _mbg_swab_ntp_discard_limits( _p ) \
15463 do \
15464 { \
15465  _mbg_swab16( &(_p)->monitor_min ); \
15466  _mbg_swab16( &(_p)->monitor_max ); \
15467  _mbg_swab32( &(_p)->reserved ); \
15468 } while ( 0 )
15469 
15470 
15471 
15475 typedef struct
15476 {
15480  uint32_t reserved;
15481 
15483 
15484 #define _mbg_swab_ntp_discard_settings( _p ) \
15485 do \
15486 { \
15487  _mbg_swab16( &(_p)->monitor ); \
15488  _mbg_swab32( &(_p)->reserved ); \
15489 } while ( 0 )
15490 
15491 
15498 {
15510 };
15511 
15512 
15513 
15520 {
15529 };
15530 
15531 
15532 
15540 typedef struct
15541 {
15542  uint32_t flags;
15543  uint32_t reserved_1;
15544  uint32_t reserved_2;
15545 
15547 
15548 #define _mbg_swab_ntp_stats_glb_settings( _p ) \
15549 do \
15550 { \
15551  _mbg_swab32( &(_p)->flags ); \
15552  _mbg_swab32( &(_p)->reserved_1 ); \
15553  _mbg_swab32( &(_p)->reserved_2 ); \
15554 } while ( 0 )
15555 
15556 
15563 typedef struct
15564 {
15566 
15567  uint32_t supp_stats;
15568  uint32_t reserved_1;
15569  uint32_t reserved_2;
15570  uint32_t reserved_3;
15571 
15573 
15574 #define _mbg_swab_ntp_stats_glb_info( _p ) \
15575 do \
15576 { \
15577  _mbg_swab_ntp_stats_glb_settings( &(_p)->settings ); \
15578  _mbg_swab32( &(_p)->supp_stats ); \
15579  _mbg_swab32( &(_p)->reserved_1 ); \
15580  _mbg_swab32( &(_p)->reserved_2 ); \
15581  _mbg_swab32( &(_p)->reserved_3 ); \
15582 } while ( 0 )
15583 
15584 
15585 #else // !defined( _PRELIMINARY_CODE ), dummy declarations
15586 
15587  typedef int NTP_RESTR_LIMITS;
15588  typedef int NTP_RESTR;
15589  typedef int NTP_RESTR_IDX;
15590  typedef int NTP_DISCARD_LIMITS;
15591  typedef int NTP_DISCARD_SETTINGS;
15592  typedef int NTP_STATS_GLB_SETTINGS;
15593  typedef int NTP_STATS_GLB_INFO;
15594 
15595 #endif // defined( _PRELIMINARY_CODE )
15596 
15597 
15607 {
15615 };
15616 
15617 
15618 
15627 {
15634 };
15635 
15636 
15670 #define NTP_MIN_REFCLOCK_FUDGE_FLAG 1
15671 #define N_NTP_REFCLOCK_FUDGE_FLAGS 4
15672 
15673 
15681 typedef struct
15682 {
15687 
15688  int8_t refid[4];
15689 
15694 
15697 
15700 
15701  uint32_t flags;
15702 
15703  uint32_t reserved_3;
15704 
15706 
15707 #define _mbg_swab_ntp_refclk_cfg_settings( _p ) \
15708 do \
15709 { \
15710  _mbg_swab_nano_time_64( &(_p)->time1 ); \
15711  _mbg_swab_nano_time_64( &(_p)->time2 ); \
15712  _mbg_swab16( &(_p)->drv_flags_enable ); \
15713  _mbg_swab16( &(_p)->drv_flags_value ); \
15714  _mbg_swab32( &(_p)->flags ); \
15715 } while ( 0 )
15716 
15717 
15718 
15724 typedef struct
15725 {
15726  uint32_t idx;
15728 
15730 
15731 #define _mbg_swab_ntp_refclk_cfg_settings_idx( _p ) \
15732 do \
15733 { \
15734  _mbg_swab32( &(_p)->idx ); \
15735  _mbg_swab_ntp_refclk_cfg_settings( &(_p)->settings ); \
15736 } while ( 0 )
15737 
15744 {
15746 
15748 };
15749 
15750 
15760 #define NTP_MSK_REFCLK_CFG_TRUSTTIME ( 1UL << NTP_REFCLK_CFG_TRUSTTIME )
15761 
15762 
15771 typedef struct
15772 {
15774 
15778 
15780 
15781 #define _mbg_swab_ntp_refclk_cfg_info( _p ) \
15782 do \
15783 { \
15784  _mbg_swab_ntp_refclk_cfg_settings( &(_p)->settings ); \
15785  _mbg_swab32( &(_p)->supp_refclk_types ); \
15786 } while ( 0 )
15787 
15788 
15789 
15795 typedef struct
15796 {
15797  uint32_t idx;
15799 
15801 
15802 #define _mbg_swab_ntp_refclk_cfg_info_idx( _p ) \
15803 do \
15804 { \
15805  _mbg_swab32( &(_p)->idx ); \
15806  _mbg_swab_ntp_refclk_cfg_info( &(_p)->info ); \
15807 } while ( 0 )
15808 
15809 
15819 {
15823 };
15824 
15825 
15826 
15833 {
15836 };
15837 
15838 
15844 #define NTP_SYMM_KEY_HASHES_STRS \
15845 { \
15846  "MD5", \
15847  "SHA1" \
15848 }
15849 
15850 
15851 
15859 typedef struct
15860 {
15863  uint32_t reserved_2;
15864  uint32_t reserved_3;
15865  uint32_t reserved_4;
15866 
15868 
15869 #define _mbg_swab_ntp_symm_key_limits( _p ) \
15870 do \
15871 { \
15872  _mbg_swab16( &(_p)->supp_hashes ); \
15873 } while ( 0 )
15874 
15875 
15876 
15879 #define N_NTP_SYMM_KEY_LEN 128
15880 
15883 #define N_NTP_SYMM_KEY_MAX_IP_ADDR 8
15884 
15885 
15886 
15892 typedef struct
15893 {
15897 
15901 
15903 
15905 
15907 
15908 #define _mbg_swab_ntp_symm_key_settings( _p ) \
15909 do \
15910 { \
15911  unsigned i; \
15912  \
15913  _mbg_swab16( &(_p)->id ); \
15914  \
15915  for ( i = 0; i < N_NTP_SYMM_KEY_MAX_IP_ADDR; ++i) \
15916  _mbg_swab_ip_addr( &(_p)->ip_addr[i] ); \
15917 } while ( 0 )
15918 
15919 
15920 
15926 typedef struct
15927 {
15928  uint32_t idx;
15930 
15932 
15933 #define _mbg_swab_ntp_symm_key_settings_idx( _p ) \
15934 do \
15935 { \
15936  _mbg_swab32( &(_p)->idx ); \
15937  _mbg_swab_ntp_symm_key_settings( &(_p)->settings ); \
15938 } while ( 0 )
15939 
15940 
15946 typedef struct
15947 {
15949 
15950  uint32_t reserved_1;
15951  uint32_t reserved_2;
15952  uint32_t reserved_3;
15953  uint32_t reserved_4;
15954 
15956 
15957 #define _mbg_swab_ntp_symm_key_info( _p ) \
15958 do \
15959 { \
15960  _mbg_swab_ntp_symm_key_settings( &(_p)->settings ); \
15961 } while ( 0 )
15962 
15963 
15969 typedef struct
15970 {
15971  uint32_t idx;
15973 
15975 
15976 #define _mbg_swab_ntp_symm_key_info_idx( _p ) \
15977 do \
15978 { \
15979  _mbg_swab32( &(_p)->idx ); \
15980  _mbg_swab_ntp_symm_key_info( &(_p)->info ); \
15981 } while ( 0 )
15982 
15983 
15989 typedef struct
15990 {
15993  uint32_t reserved_2;
15994 
15996 
15997 #define _mbg_swab_ntp_trusted_key_settings( _p ) \
15998 do \
15999 { \
16000  _mbg_swab16( &(_p)->id ); \
16001 } while ( 0 )
16002 
16003 
16009 typedef struct
16010 {
16011  uint32_t idx;
16013 
16015 
16016 #define _mbg_swab_ntp_trusted_key_settings_idx( _p ) \
16017 do \
16018 { \
16019  _mbg_swab32( &(_p)->idx ); \
16020  _mbg_swab_ntp_trusted_key_settings( &(_p)->settings ); \
16021 } while ( 0 )
16022 
16028 typedef struct
16029 {
16031 
16032  uint32_t reserved_1;
16033  uint32_t reserved_2;
16034  uint32_t reserved_3;
16035  uint32_t reserved_4;
16036 
16038 
16039 #define _mbg_swab_ntp_trusted_key_info( _p ) \
16040 do \
16041 { \
16042  _mbg_swab_ntp_trusted_key_settings( &(_p)->settings ); \
16043 } while ( 0 )
16044 
16045 
16051 typedef struct
16052 {
16053  uint32_t idx;
16055 
16057 
16058 #define _mbg_swab_ntp_trusted_key_info_idx( _p ) \
16059 do \
16060 { \
16061  _mbg_swab32( &(_p)->idx ); \
16062  _mbg_swab_ntp_trusted_key_info( &(_p)->info ); \
16063 } while ( 0 )
16064 
16065 
16072 {
16077 };
16078 
16079 
16080 
16087 {
16091 };
16092 
16093 
16094 
16101 typedef struct
16102 {
16103  uint32_t supp_flags;
16104  uint32_t reserved_1;
16105  uint32_t reserved_2;
16106 
16107 } NTP_MISC_LIMITS;
16108 
16109 #define _mbg_swab_ntp_misc_limits( _p ) \
16110 do \
16111 { \
16112  _mbg_swab32( &(_p)->supp_flags ); \
16113 } while ( 0 )
16114 
16115 
16116 
16123 typedef struct
16124 {
16128 
16130 
16131 #define _mbg_swab_ntp_misc_driftfile_settings( _p ) \
16132 do \
16133 { \
16134 } while ( 0 )
16135 
16136 
16143 {
16145 
16147 };
16148 
16149 
16150 
16157 {
16159 };
16160 
16161 
16168 typedef struct
16169 {
16173 
16174  uint32_t reserved_2;
16175 
16177 
16178 #define _mbg_swab_ntp_misc_orphan_mode_settings( _p ) \
16179 do \
16180 { \
16181 } while ( 0 )
16182 
16183 
16188 typedef struct
16189 {
16191 
16192  uint32_t supp_flags;
16193  uint32_t reserved_1;
16194  uint32_t reserved_2;
16195  uint32_t reserved_3;
16196 
16198 
16199 #define _mbg_swab_ntp_misc_orphan_mode_info( _p ) \
16200 do \
16201 { \
16202  _mbg_swab_ntp_misc_orphan_mode_settings( &(_p)->settings ); \
16203  _mbg_swab32( &(_p)->supp_flags ); \
16204 } while ( 0 )
16205 
16206 
16213 typedef struct
16214 {
16218 
16220 
16221 #define _mbg_swab_ntp_misc_leapfile_settings( _p ) \
16222 do \
16223 { \
16224  _mbg_swab16( &(_p)->reserved_2 ); \
16225 } while ( 0 )
16226 
16227 
16233 typedef struct
16234 {
16238 
16239  uint32_t reserved_3;
16240 
16241  uint32_t flags;
16242 
16244 
16245 #define _mbg_swab_ntp_clnt_mode_settings( _p ) \
16246 do \
16247 { \
16248  _mbg_swab32( &(_p)->reserved_1 ); \
16249  _mbg_swab32( &(_p)->reserved_2 ); \
16250  _mbg_swab32( &(_p)->flags ); \
16251 } while ( 0 )
16252 
16253 
16254 
16260 typedef struct
16261 {
16263 
16268 
16269  uint32_t reserved_1;
16270  uint32_t reserved_2;
16271 
16272  uint32_t supp_flags;
16273  uint32_t supp_peer_flags;
16274 
16276 
16277 #define _mbg_swab_ntp_clnt_mode_info( _p ) \
16278 do \
16279 { \
16280  _mbg_swab_ntp_clnt_mode_settings( &(_p)->settings ); \
16281  _mbg_swab32( &(_p)->reserved_1 ); \
16282  _mbg_swab32( &(_p)->reserved_2 ); \
16283  _mbg_swab32( &(_p)->supp_flags ); \
16284  _mbg_swab32( &(_p)->supp_peer_flags ); \
16285 } while ( 0 )
16286 
16287 
16288 
16297 typedef struct
16298 {
16301 
16306 
16307  uint32_t supp_assoc_types;
16308  uint32_t reserved_3;
16309 
16311  uint32_t supp_flags_peer;
16312  uint32_t supp_flags_pool;
16319  uint32_t reserved_4;
16320  uint32_t reserved_5;
16321  uint32_t reserved_6;
16322 
16323 } NTP_PEER_LIMITS;
16324 
16325 #define _mbg_swab_ntp_peer_limits( _p ) \
16326 do \
16327 { \
16328  _mbg_swab16( &(_p)->n_supp_peers ); \
16329  _mbg_swab16( &(_p)->n_cur_peers ); \
16330  _mbg_swab32( &(_p)->supp_assoc_types ); \
16331  _mbg_swab32( &(_p)->reserved_3 ); \
16332  _mbg_swab32( &(_p)->supp_flags_server ); \
16333  _mbg_swab32( &(_p)->supp_flags_peer ); \
16334  _mbg_swab32( &(_p)->supp_flags_pool ); \
16335  _mbg_swab32( &(_p)->supp_flags_broadcast ); \
16336  _mbg_swab32( &(_p)->supp_flags_multicast ); \
16337  _mbg_swab32( &(_p)->supp_flags_manycast ); \
16338  _mbg_swab32( &(_p)->supp_flags_broadcastclient ); \
16339  _mbg_swab32( &(_p)->supp_flags_multicastclient ); \
16340  _mbg_swab32( &(_p)->supp_flags_manycastclient ); \
16341  _mbg_swab32( &(_p)->reserved_4 ); \
16342  _mbg_swab32( &(_p)->reserved_5 ); \
16343  _mbg_swab32( &(_p)->reserved_6 ); \
16344 } while ( 0 )
16345 
16346 
16347 
16358 typedef struct
16359 {
16360  MBG_HOSTNAME hostname;
16361 
16367 
16368  uint32_t key;
16369  uint32_t reserved_3;
16371  uint32_t reserved_4;
16372 
16373  uint32_t flags;
16374 
16376 
16377 #define _mbg_swab_ntp_peer_settings( _p ) \
16378 do \
16379 { \
16380  _mbg_swab32( &(_p)->key ); \
16381  _mbg_swab32( &(_p)->reserved_3 ); \
16382  _mbg_swab32( &(_p)->reserved_4 ); \
16383  _mbg_swab32( &(_p)->flags ); \
16384 } while ( 0 )
16385 
16386 
16387 
16393 typedef struct
16394 {
16395  uint32_t idx;
16397 
16399 
16400 #define _mbg_swab_ntp_peer_settings_idx( _p ) \
16401 do \
16402 { \
16403  _mbg_swab32( &(_p)->idx ); \
16404  _mbg_swab_ntp_peer_settings( &(_p)->peer_settings ); \
16405 } while ( 0 )
16406 
16407 
16413 typedef struct
16414 {
16418 
16419  uint32_t reserved_3;
16420 
16421  uint32_t flags;
16422 
16424 
16425 #define _mbg_swab_ntp_srv_mode_settings( _p ) \
16426 do \
16427 { \
16428  _mbg_swab32( &(_p)->flags ); \
16429 } while ( 0 )
16430 
16431 
16437 typedef struct
16438 {
16440 
16444 
16445  uint32_t reserved_3;
16446 
16447  uint32_t supp_flags;
16448 
16450 
16451 #define _mbg_swab_ntp_srv_mode_info( _p ) \
16452 do \
16453 { \
16454  _mbg_swab_ntp_srv_mode_settings( &(_p)->settings ); \
16455  _mbg_swab32( &(_p)->supp_flags ); \
16456 } while ( 0 )
16457 
16458 
16465 typedef struct
16466 {
16469 
16471 
16472 #define _mbg_swab_ntp_short_tstamp( _p ) \
16473 do \
16474 { \
16475  _mbg_swab16( &(_p)->seconds ); \
16476  _mbg_swab16( &(_p)->fractions ); \
16477 }
16478 
16479 
16480 
16484 typedef struct
16485 {
16486  uint32_t seconds;
16487  uint32_t fractions;
16488 
16489 } NTP_TSTAMP;
16490 
16491 #define _mbg_swab_ntp_tstamp( _p ) \
16492 do \
16493 { \
16494  _mbg_swab32( &(_p)->seconds ); \
16495  _mbg_swab32( &(_p)->fractions ); \
16496 } while ( 0 )
16497 
16498 
16499 
16506 {
16514 };
16515 
16516 /*
16517  * Default initializers for English leapsecond string names. Initializers
16518  * for multi-language strings can be found in tmonlstr.h.
16519  */
16520 #define MBG_NTP_IMPL_STR_ENG "Implemetation Type:"
16521 
16522 #define MBG_NTP_IMPL_STR_ENG_UNKNOWN "Unknown NTP implementation"
16523 #define MBG_NTP_IMPL_STR_ENG_NTPD "Network Time Protocol daemon (ntpd)"
16524 #define MBG_NTP_IMPL_STR_ENG_NTPDATE "NTP client only (ntpdate)"
16525 #define MBG_NTP_IMPL_STR_ENG_SNTP "Simple Network Time Protocol (sntp)"
16526 #define MBG_NTP_IMPL_STR_ENG_W32TIME "Windows time service (w32time)"
16527 #define MBG_NTP_IMPL_STR_ENG_MBGNTP "Meinberg NTP implementation (mbgntp)"
16528 
16529 
16530 #define MBG_NTP_IMPL_NAMES_ENG \
16531 { \
16532  MBG_NTP_IMPL_STR_ENG_UNKNOWN, \
16533  MBG_NTP_IMPL_STR_ENG_NTPD, \
16534  MBG_NTP_IMPL_STR_ENG_NTPDATE, \
16535  MBG_NTP_IMPL_STR_ENG_SNTP, \
16536  MBG_NTP_IMPL_STR_ENG_W32TIME, \
16537  MBG_NTP_IMPL_STR_ENG_MBGNTP \
16538 }
16539 
16540 
16541 
16548 {
16561 };
16562 
16563 
16564 
16570 #define NTP_CPU_TYPES_STRS \
16571 { \
16572  "Unknown", \
16573  "x86", \
16574  "i386", \
16575  "i486", \
16576  "i586", \
16577  "i686", \
16578  "x64", \
16579  "x86_64", \
16580  "amd64", \
16581  "sun4u", \
16582  "arm" \
16583 }
16584 
16585 
16586 
16593 {
16601 };
16602 
16603 
16604 
16610 #define NTP_SYSTEMS_STRS \
16611 { \
16612  "Unknown", \
16613  "No OS", \
16614  "Windows", \
16615  "Linux", \
16616  "BSD", \
16617  "Solaris" \
16618 }
16619 
16620 
16621 
16629 {
16635 };
16636 
16637 
16638 
16639 /*
16640  * Default initializers for English leapsecond string names. Initializers
16641  * for multi-language strings can be found in tmonlstr.h.
16642  */
16643 #define MBG_NTP_LEAP_STR_ENG "Leapsecond indication:"
16644 
16645 #define MBG_NTP_LEAP_STR_ENG_NONE "None"
16646 #define MBG_NTP_LEAP_STR_ENG_ADD_SEC "Insert second"
16647 #define MBG_NTP_LEAP_STR_ENG_DEL_SEC "Delete second"
16648 #define MBG_NTP_LEAP_STR_ENG_ALARM "Alarm"
16649 
16650 #define MBG_NTP_LEAP_NAMES_ENG \
16651 { \
16652  MBG_NTP_LEAP_STR_ENG_NONE, \
16653  MBG_NTP_LEAP_STR_ENG_ADD_SEC, \
16654  MBG_NTP_LEAP_STR_ENG_DEL_SEC, \
16655  MBG_NTP_LEAP_STR_ENG_ALARM \
16656 }
16657 
16658 
16659 
16667 {
16679 };
16680 
16681 
16682 
16683 /*
16684  * Default initializers for English sync source string names. Initializers
16685  * for multi-language strings can be found in tmonlstr.h.
16686  */
16687 #define MBG_NTP_SYNC_SRC_STR_ENG_LABEL "Sync Source:"
16688 
16689 #define MBG_NTP_SYNC_SRC_STR_ENG_UNSPEC "Not yet synchronized"
16690 #define MBG_NTP_SYNC_SRC_STR_ENG_PPS "Pulse per second signal"
16691 #define MBG_NTP_SYNC_SRC_STR_ENG_LF_RADIO "VLF/LF radio"
16692 #define MBG_NTP_SYNC_SRC_STR_ENG_HF_RADIO "MF/HF radio"
16693 #define MBG_NTP_SYNC_SRC_STR_ENG_UHF_RADIO "VHF/UHF radio/satellite"
16694 #define MBG_NTP_SYNC_SRC_STR_ENG_LOCAL "local timecode"
16695 #define MBG_NTP_SYNC_SRC_STR_ENG_NTP "NTP"
16696 #define MBG_NTP_SYNC_SRC_STR_ENG_OTHER "other"
16697 #define MBG_NTP_SYNC_SRC_STR_ENG_WRISTWATCH "eyeball and wristwatch"
16698 #define MBG_NTP_SYNC_SRC_STR_ENG_TELEPHONE "telephone modem"
16699 
16700 #define MBG_NTP_SYNC_SRC_NAMES_ENG \
16701 { \
16702  MBG_NTP_SYNC_SRC_STR_ENG_UNSPEC, \
16703  MBG_NTP_SYNC_SRC_STR_ENG_PPS, \
16704  MBG_NTP_SYNC_SRC_STR_ENG_LF_RADIO, \
16705  MBG_NTP_SYNC_SRC_STR_ENG_HF_RADIO, \
16706  MBG_NTP_SYNC_SRC_STR_ENG_UHF_RADIO, \
16707  MBG_NTP_SYNC_SRC_STR_ENG_LOCAL, \
16708  MBG_NTP_SYNC_SRC_STR_ENG_NTP, \
16709  MBG_NTP_SYNC_SRC_STR_ENG_OTHER, \
16710  MBG_NTP_SYNC_SRC_STR_ENG_WRISTWATCH, \
16711  MBG_NTP_SYNC_SRC_STR_ENG_TELEPHONE \
16712 }
16713 
16714 
16715 
16723 {
16741 };
16742 
16743 
16744 
16745 /*
16746  * Default initializers for English sync source string names. Initializers
16747  * for multi-language strings can be found in tmonlstr.h.
16748  */
16749 #define MBG_NTP_SYS_EVT_STR_ENG_CNT_LABEL "System Event Counter:"
16750 #define MBG_NTP_SYS_EVT_STR_ENG_MSG_LABEL "System Event Message:"
16751 
16752 #define MBG_NTP_SYS_EVT_STR_ENG_UNSPEC "Unspecified NTP event"
16753 #define MBG_NTP_SYS_EVT_STR_ENG_FREQ_NOT_SET "Frequency file not available"
16754 #define MBG_NTP_SYS_EVT_STR_ENG_FREQ_SET "Frequency set from frequency file"
16755 #define MBG_NTP_SYS_EVT_STR_ENG_SPIKE_DETECT "Spike detected"
16756 #define MBG_NTP_SYS_EVT_STR_ENG_FREQ_MODE "Initial frequency training mode"
16757 #define MBG_NTP_SYS_EVT_STR_ENG_CLOCK_SYNC "Clock synchronized"
16758 #define MBG_NTP_SYS_EVT_STR_ENG_RESTART "Program restart"
16759 #define MBG_NTP_SYS_EVT_STR_ENG_PANIC_STOP "Clock error more than 600 s"
16760 #define MBG_NTP_SYS_EVT_STR_ENG_NO_SYSTEM_PEER "No system peer"
16761 #define MBG_NTP_SYS_EVT_STR_ENG_LEAP_ARMED "Leap second armed from file or autokey"
16762 #define MBG_NTP_SYS_EVT_STR_ENG_LEAP_DISARMED "Leap second disarmed"
16763 #define MBG_NTP_SYS_EVT_STR_ENG_LEAP_EVENT "Leap event"
16764 #define MBG_NTP_SYS_EVT_STR_ENG_CLOCK_STEP "Clock stepped"
16765 #define MBG_NTP_SYS_EVT_STR_ENG_KERNEL "Kernel information message"
16766 #define MBG_NTP_SYS_EVT_STR_ENG_TAI "Leap second values update from file"
16767 #define MBG_NTP_SYS_EVT_STR_ENG_STALE_LS_VALUES "New NIST leapseconds file needed"
16768 
16769 
16770 #define MBG_NTP_SYS_EVT_NAMES_ENG \
16771 { \
16772  MBG_NTP_SYS_EVT_STR_ENG_UNSPEC, \
16773  MBG_NTP_SYS_EVT_STR_ENG_FREQ_NOT_SET, \
16774  MBG_NTP_SYS_EVT_STR_ENG_FREQ_SET, \
16775  MBG_NTP_SYS_EVT_STR_ENG_SPIKE_DETECT, \
16776  MBG_NTP_SYS_EVT_STR_ENG_FREQ_MODE, \
16777  MBG_NTP_SYS_EVT_STR_ENG_CLOCK_SYNC, \
16778  MBG_NTP_SYS_EVT_STR_ENG_RESTART, \
16779  MBG_NTP_SYS_EVT_STR_ENG_PANIC_STOP, \
16780  MBG_NTP_SYS_EVT_STR_ENG_NO_SYSTEM_PEER, \
16781  MBG_NTP_SYS_EVT_STR_ENG_LEAP_ARMED, \
16782  MBG_NTP_SYS_EVT_STR_ENG_LEAP_DISARMED, \
16783  MBG_NTP_SYS_EVT_STR_ENG_LEAP_EVENT, \
16784  MBG_NTP_SYS_EVT_STR_ENG_CLOCK_STEP, \
16785  MBG_NTP_SYS_EVT_STR_ENG_KERNEL, \
16786  MBG_NTP_SYS_EVT_STR_ENG_TAI, \
16787  MBG_NTP_SYS_EVT_STR_ENG_STALE_LS_VALUES \
16788 }
16789 
16790 
16791 
16798 {
16811 };
16812 
16813 
16814 
16823 {
16835 };
16836 
16837 
16842 {
16848 };
16849 
16850 /*
16851  * Default initializers for NTP service state string names.
16852  */
16853 
16854 #define MBG_NTP_SERVICE_INIT_STR "NTP service initializing"
16855 #define MBG_NTP_SERVICE_SYNC_STR "NTP service synchronized"
16856 #define MBG_NTP_SERVICE_ASYNC_STR "NTP service not synchronized"
16857 #define MBG_NTP_SERVICE_STOPPED_STR "NTP service stopped"
16858 
16859 #define MBG_NTP_SERVICE_STATES_STRS \
16860 { \
16861  MBG_NTP_SERVICE_INIT_STR, \
16862  MBG_NTP_SERVICE_SYNC_STR, \
16863  MBG_NTP_SERVICE_ASYNC_STR, \
16864  MBG_NTP_SERVICE_STOPPED_STR \
16865 }
16866 
16872 typedef struct
16873 {
16874  uint32_t supp_flags;
16875 
16880 
16885 
16889 
16893 
16894  int32_t root_delay;
16895  int32_t root_disp;
16896 
16898 
16901 
16905 
16907 
16908  int32_t freq;
16909  int32_t sys_jitter;
16910  int32_t clk_jitter;
16911  int32_t clk_wander;
16912 
16916 
16917  uint32_t reserved_3;
16918 
16919 } NTP_SYS_STATE;
16920 
16921 #define _mbg_swab_ntp_sys_state( _p ) \
16922 do \
16923 { \
16924  _mbg_swab32( &(_p)->supp_flags ); \
16925  \
16926  _mbg_swab8( &(_p)->leap_ind ); \
16927  _mbg_swab8( &(_p)->sys_sync_src ); \
16928  _mbg_swab8( &(_p)->sys_evt_cnt ); \
16929  _mbg_swab8( &(_p)->sys_rec_evt ); \
16930  \
16931  _mbg_swab8( &(_p)->impl_type ); \
16932  _mbg_swab8( &(_p)->major_version ); \
16933  _mbg_swab8( &(_p)->minor_version ); \
16934  _mbg_swab8( &(_p)->micro_version ); \
16935  \
16936  _mbg_swab16( &(_p)->patch_lvl ); \
16937  _mbg_swab8( &(_p)->cpu_type ); \
16938  _mbg_swab8( &(_p)->system ); \
16939  \
16940  _mbg_swab8( &(_p)->stratum ); \
16941  _mbg_swab8( &(_p)->precision ); \
16942  _mbg_swab16( &(_p)->sys_assoc ); \
16943  \
16944  _mbg_swab32( &(_p)->root_delay ); \
16945  _mbg_swab32( &(_p)->root_disp ); \
16946  \
16947  _mbg_swab_ip_addr( &(_p)->ref_id ); \
16948  \
16949  _mbg_swab_ntp_tstamp( &(_p)->ref_time ); \
16950  _mbg_swab_ntp_tstamp( &(_p)->sys_time ); \
16951  \
16952  _mbg_swab16( &(_p)->sys_peer ); \
16953  _mbg_swab8( &(_p)->poll ); \
16954  _mbg_swab8( &(_p)->minpoll ); \
16955  \
16956  _mbg_swab64( &(_p)->offset ); \
16957  \
16958  _mbg_swab32( &(_p)->freq ); \
16959  _mbg_swab32( &(_p)->sys_jitter ); \
16960  _mbg_swab32( &(_p)->clk_jitter ); \
16961  _mbg_swab32( &(_p)->clk_wander ); \
16962  \
16963  _mbg_swab32( &(_p)->reserved_2 ); \
16964  _mbg_swab32( &(_p)->reserved_3 ); \
16965  \
16966 } while ( 0 )
16967 
16968 
16969 
16977 {
16987 };
16988 
16989 
16990 
16991 /*
16992  * Default initializers for English NTP peer mode string names. Initializers
16993  * for multi-language strings can be found in tmonlstr.h.
16994  */
16995 #define MBG_NTP_MODE_STR_ENG_HOST_LABEL "Host Mode:"
16996 #define MBG_NTP_MODE_STR_ENG_PEER_LABEL "Peer Mode:"
16997 
16998 #define MBG_NTP_PEER_MODE_STR_ENG_RESERVED "Reserved"
16999 #define MBG_NTP_PEER_MODE_STR_ENG_SYMM_ACT "Symm Act"
17000 #define MBG_NTP_PEER_MODE_STR_ENG_SYMM_PASS "Symm Pass"
17001 #define MBG_NTP_PEER_MODE_STR_ENG_CLIENT "Client"
17002 #define MBG_NTP_PEER_MODE_STR_ENG_SERVER "Server"
17003 #define MBG_NTP_PEER_MODE_STR_ENG_BROADCAST "Broadcast"
17004 #define MBG_NTP_PEER_MODE_STR_ENG_CONTROL "Control"
17005 #define MBG_NTP_PEER_MODE_STR_ENG_PRIVATE "Private"
17006 
17007 #define MBG_NTP_MODE_STAT_NAMES_ENG \
17008 { \
17009  MBG_NTP_PEER_MODE_STR_ENG_RESERVED, \
17010  MBG_NTP_PEER_MODE_STR_ENG_SYMM_ACT, \
17011  MBG_NTP_PEER_MODE_STR_ENG_SYMM_PASS, \
17012  MBG_NTP_PEER_MODE_STR_ENG_CLIENT, \
17013  MBG_NTP_PEER_MODE_STR_ENG_SERVER, \
17014  MBG_NTP_PEER_MODE_STR_ENG_BROADCAST, \
17015  MBG_NTP_PEER_MODE_STR_ENG_CONTROL, \
17016  MBG_NTP_PEER_MODE_STR_ENG_PRIVATE \
17017 }
17018 
17019 
17020 
17027 {
17037 };
17038 
17039 
17040 
17041 /*
17042  * Default initializers for English reach status string names. Initializers
17043  * for multi-language strings can be found in tmonlstr.h.
17044  */
17045 #define MBG_NTP_PEER_REACH_STAT_STR_ENG_LABEL "Reach State:"
17046 
17047 #define MBG_NTP_PEER_REACH_STAT_STR_ENG_UNKNOWN "Unknown"
17048 #define MBG_NTP_PEER_REACH_STAT_STR_ENG_NO_LINK "No link"
17049 #define MBG_NTP_PEER_REACH_STAT_STR_ENG_DNS_UNREACH "DNS Server unreached"
17050 #define MBG_NTP_PEER_REACH_STAT_STR_ENG_DNS_UNRESOLVED "DNS name not resolved"
17051 #define MBG_NTP_PEER_REACH_STAT_STR_ENG_PEER_UNREACH "Peer not reached"
17052 #define MBG_NTP_PEER_REACH_STAT_STR_ENG_PEER_NOT_SYNC "Peer not sync"
17053 #define MBG_NTP_PEER_REACH_STAT_STR_ENG_PEER_BAD_QUALITY "Peer has bad quality"
17054 #define MBG_NTP_PEER_REACH_STAT_STR_ENG_OK "Good"
17055 
17056 #define MBG_NTP_PEER_REACH_STAT_NAMES_ENG \
17057 { \
17058  MBG_NTP_PEER_REACH_STAT_STR_ENG_UNKNOWN, \
17059  MBG_NTP_PEER_REACH_STAT_STR_ENG_NO_LINK, \
17060  MBG_NTP_PEER_REACH_STAT_STR_ENG_DNS_UNREACH, \
17061  MBG_NTP_PEER_REACH_STAT_STR_ENG_DNS_UNRESOLVED, \
17062  MBG_NTP_PEER_REACH_STAT_STR_ENG_PEER_UNREACH, \
17063  MBG_NTP_PEER_REACH_STAT_STR_ENG_PEER_NOT_SYNC, \
17064  MBG_NTP_PEER_REACH_STAT_STR_ENG_PEER_BAD_QUALITY, \
17065  MBG_NTP_PEER_REACH_STAT_STR_ENG_OK \
17066 }
17067 
17068 
17069 
17077 {
17087 };
17088 
17089 
17090 
17091 /*
17092  * Default initializers for English peer select status string names. Initializers
17093  * for multi-language strings can be found in tmonlstr.h.
17094  */
17095 #define MBG_NTP_PEER_SEL_STATUS_STR_ENG_LABEL "Selected Status:"
17096 
17097 #define MBG_NTP_PEER_SEL_STATUS_STR_ENG_REJECT "Not valid"
17098 #define MBG_NTP_PEER_SEL_STATUS_STR_ENG_FALSETICK "Falsetick"
17099 #define MBG_NTP_PEER_SEL_STATUS_STR_ENG_EXCESS "Excess"
17100 #define MBG_NTP_PEER_SEL_STATUS_STR_ENG_OUTLYER "Outlyer"
17101 #define MBG_NTP_PEER_SEL_STATUS_STR_ENG_CANDIDATE "Candidate"
17102 #define MBG_NTP_PEER_SEL_STATUS_STR_ENG_BACKUP "Backup"
17103 #define MBG_NTP_PEER_SEL_STATUS_STR_ENG_SYS_PEER "System Peer"
17104 #define MBG_NTP_PEER_SEL_STATUS_STR_ENG_PPS_PEER "PPS Peer"
17105 
17106 #define MBG_NTP_PEER_SEL_STATUS_NAMES_ENG \
17107 { \
17108  MBG_NTP_PEER_SEL_STATUS_STR_ENG_REJECT, \
17109  MBG_NTP_PEER_SEL_STATUS_STR_ENG_FALSETICK, \
17110  MBG_NTP_PEER_SEL_STATUS_STR_ENG_EXCESS, \
17111  MBG_NTP_PEER_SEL_STATUS_STR_ENG_OUTLYER, \
17112  MBG_NTP_PEER_SEL_STATUS_STR_ENG_CANDIDATE, \
17113  MBG_NTP_PEER_SEL_STATUS_STR_ENG_BACKUP, \
17114  MBG_NTP_PEER_SEL_STATUS_STR_ENG_SYS_PEER, \
17115  MBG_NTP_PEER_SEL_STATUS_STR_ENG_PPS_PEER \
17116 }
17117 
17118 
17119 
17127 {
17134 };
17135 
17136 
17145 {
17151 };
17152 
17153 
17154 /*
17155  * Default initializers for English peer status string names. Initializers
17156  * for multi-language strings can be found in tmonlstr.h.
17157  */
17158 #define MBG_NTP_PEER_STATUS_STR_ENG_LABEL "Peer Status:"
17159 
17160 #define MBG_NTP_PEER_STATUS_STR_ENG_BCST "Broadcast association"
17161 #define MBG_NTP_PEER_STATUS_STR_ENG_REACH "Host reachable"
17162 #define MBG_NTP_PEER_STATUS_STR_ENG_AUTHENB "Authentication enabled"
17163 #define MBG_NTP_PEER_STATUS_STR_ENG_CONFIG "Persistant assosiation"
17164 
17165 #define MBG_NTP_PEER_STATUS_NAMES_ENG \
17166 { \
17167  MBG_NTP_PEER_STATUS_STR_ENG_BCST, \
17168  MBG_NTP_PEER_STATUS_STR_ENG_REACH, \
17169  MBG_NTP_PEER_STATUS_STR_ENG_REACH, \
17170  MBG_NTP_PEER_STATUS_STR_ENG_AUTHENB, \
17171  MBG_NTP_PEER_STATUS_STR_ENG_CONFIG \
17172 }
17173 
17174 
17175 
17183 {
17201 };
17202 
17203 
17204 
17205 /*
17206  * Default initializers for English event message codes. Initializers
17207  * for multi-language strings can be found in tmonlstr.h.
17208  */
17209 #define MBG_NTP_PEER_EVT_STR_ENG_CNT_LABEL "Peer Event Counter:"
17210 #define MBG_NTP_PEER_EVT_STR_ENG_MSG_LABEL "Peer Event Message:"
17211 
17212 #define MBG_NTP_PEER_EVT_STR_ENG_UNSPEC "Unspecified NTP event"
17213 #define MBG_NTP_PEER_EVT_STR_ENG_MOBILIZE "Association mobilized"
17214 #define MBG_NTP_PEER_EVT_STR_ENG_DEMOBILIZE "Association demobilized"
17215 #define MBG_NTP_PEER_EVT_STR_ENG_UNREACHABLE "Server unreachable"
17216 #define MBG_NTP_PEER_EVT_STR_ENG_REACHABLE "Server reachable"
17217 #define MBG_NTP_PEER_EVT_STR_ENG_RESTART "Association restart"
17218 #define MBG_NTP_PEER_EVT_STR_ENG_NO_REPLY "No server found"
17219 #define MBG_NTP_PEER_EVT_STR_ENG_RATE_EXCEEDED "Rate exceeded"
17220 #define MBG_NTP_PEER_EVT_STR_ENG_ACCESS_DENIED "Access denied"
17221 #define MBG_NTP_PEER_EVT_STR_ENG_LEAP_ARMED "Leap second armed from LI code"
17222 #define MBG_NTP_PEER_EVT_STR_ENG_SYS_PEER "Become system Peer"
17223 #define MBG_NTP_PEER_EVT_STR_ENG_CLOCK_EVENT "Clock event"
17224 #define MBG_NTP_PEER_EVT_STR_ENG_BAD_AUTH "Authentication failure"
17225 #define MBG_NTP_PEER_EVT_STR_ENG_POPCORN "Popcorn Spike suspressor"
17226 #define MBG_NTP_PEER_EVT_STR_ENG_INTERLEAVE_MODE "Entering Interleave mode"
17227 #define MBG_NTP_PEER_EVT_STR_ENG_INTERLEAVE_ERROR "Interleave error"
17228 
17229 
17230 #define MBG_NTP_PEER_EVT_NAMES_ENG \
17231 { \
17232  MBG_NTP_PEER_EVT_STR_ENG_UNSPEC, \
17233  MBG_NTP_PEER_EVT_STR_ENG_MOBILIZE, \
17234  MBG_NTP_PEER_EVT_STR_ENG_DEMOBILIZE, \
17235  MBG_NTP_PEER_EVT_STR_ENG_UNREACHABLE, \
17236  MBG_NTP_PEER_EVT_STR_ENG_REACHABLE, \
17237  MBG_NTP_PEER_EVT_STR_ENG_RESTART, \
17238  MBG_NTP_PEER_EVT_STR_ENG_NO_REPLY, \
17239  MBG_NTP_PEER_EVT_STR_ENG_RATE_EXCEEDED, \
17240  MBG_NTP_PEER_EVT_STR_ENG_ACCESS_DENIED, \
17241  MBG_NTP_PEER_EVT_STR_ENG_LEAP_ARMED, \
17242  MBG_NTP_PEER_EVT_STR_ENG_SYS_PEER, \
17243  MBG_NTP_PEER_EVT_STR_ENG_CLOCK_EVENT, \
17244  MBG_NTP_PEER_EVT_STR_ENG_BAD_AUTH, \
17245  MBG_NTP_PEER_EVT_STR_ENG_POPCORN, \
17246  MBG_NTP_PEER_EVT_STR_ENG_INTERLEAVE_MODE, \
17247  MBG_NTP_PEER_EVT_STR_ENG_INTERLEAVE_ERROR \
17248 }
17249 
17250 
17258 {
17273 };
17274 
17275 
17276 
17285 {
17299 };
17300 
17301 
17302 
17303 /*
17304  * Default initializers for English ntp flash state mask. Initializers
17305  * for multi-language strings can be found in tmonlstr.h.
17306  */
17307 #define MBG_NTP_FLASH_STR_ENG_LABEL "Flash Status:"
17308 
17309 #define MBG_NTP_FLASH_STR_ENG_PKT_DUP "Duplicate packet"
17310 #define MBG_NTP_FLASH_STR_ENG_PKT_BOGUS "Bogus packet"
17311 #define MBG_NTP_FLASH_STR_ENG_PKT_UNSYNC "Server not synchronized"
17312 #define MBG_NTP_FLASH_STR_ENG_PKT_DENIED "Access denied"
17313 #define MBG_NTP_FLASH_STR_ENG_PKT_AUTH "Authentication failure"
17314 #define MBG_NTP_FLASH_STR_ENG_PKT_STRATUM "Invalid leap or stratum"
17315 #define MBG_NTP_FLASH_STR_ENG_PKT_HEADER "Header distance exceeded"
17316 #define MBG_NTP_FLASH_STR_ENG_PKT_AUTOKEY "Autokey sequence error"
17317 #define MBG_NTP_FLASH_STR_ENG_PKT_CRYPTO "Autokey protocol error"
17318 #define MBG_NTP_FLASH_STR_ENG_PEER_STRATUM "Invalid header or stratum"
17319 #define MBG_NTP_FLASH_STR_ENG_PEER_DIST "Distance threshold exceeded"
17320 #define MBG_NTP_FLASH_STR_ENG_PEER_LOOP "Synchronization loop"
17321 #define MBG_NTP_FLASH_STR_ENG_PEER_UNREACH "Unreachable or nonselect"
17322 
17323 
17324 #define MBG_NTP_FLASH_NAMES_ENG \
17325 { \
17326  MBG_NTP_FLASH_STR_ENG_PKT_DUP, \
17327  MBG_NTP_FLASH_STR_ENG_PKT_BOGUS, \
17328  MBG_NTP_FLASH_STR_ENG_PKT_UNSYNC, \
17329  MBG_NTP_FLASH_STR_ENG_PKT_DENIED, \
17330  MBG_NTP_FLASH_STR_ENG_PKT_AUTH, \
17331  MBG_NTP_FLASH_STR_ENG_PKT_STRATUM, \
17332  MBG_NTP_FLASH_STR_ENG_PKT_HEADER, \
17333  MBG_NTP_FLASH_STR_ENG_PKT_AUTOKEY, \
17334  MBG_NTP_FLASH_STR_ENG_PKT_CRYPTO, \
17335  MBG_NTP_FLASH_STR_ENG_PEER_STRATUM, \
17336  MBG_NTP_FLASH_STR_ENG_PEER_DIST, \
17337  MBG_NTP_FLASH_STR_ENG_PEER_LOOP, \
17338  MBG_NTP_FLASH_STR_ENG_PEER_UNREACH \
17339 }
17340 
17341 
17342 
17349 {
17364 };
17365 
17366 
17375 {
17389 };
17390 
17391 
17392 
17400 typedef struct
17401 {
17402  uint32_t supp_flags;
17403 
17406 
17411 
17415 
17418 
17422 
17423  int32_t root_delay;
17424  int32_t root_disp;
17425 
17427 
17430 
17434 
17439 
17443 
17446 
17449 
17450  int32_t disp;
17451  int32_t jitter;
17452 
17453  uint32_t xleave;
17454 
17458 
17459  uint32_t reserved_9;
17460 
17462 
17463 
17464 
17465 #define _mbg_swab_ntp_peer_state( _p ) \
17466 do \
17467 { \
17468  _mbg_swab32( &(_p)->supp_flags ); \
17469  \
17470  _mbg_swab16( &(_p)->ass_id ); \
17471  _mbg_swab16( &(_p)->peer_status_flags ); \
17472  \
17473  _mbg_swab8( &(_p)->leap_ind ); \
17474  _mbg_swab8( &(_p)->peer_sel_stat ); \
17475  _mbg_swab8( &(_p)->peer_evt_cnt ); \
17476  _mbg_swab8( &(_p)->peer_rec_evt ); \
17477  \
17478  _mbg_swab8( &(_p)->peer_reach_stat ); \
17479  _mbg_swab8( &(_p)->reserved_1 ); \
17480  _mbg_swab16( &(_p)->reserved_2 ); \
17481  \
17482  _mbg_swab_ip_addr_port( &(_p)->src_addr ); \
17483  _mbg_swab_ip_addr_port( &(_p)->dst_addr ); \
17484  \
17485  _mbg_swab8( &(_p)->stratum ); \
17486  _mbg_swab8( &(_p)->precision ); \
17487  _mbg_swab16( &(_p)->reserved_3 ); \
17488  \
17489  _mbg_swab32( &(_p)->root_delay ); \
17490  _mbg_swab32( &(_p)->root_disp ); \
17491  \
17492  _mbg_swab_ip_addr( &(_p)->ref_id ); \
17493  \
17494  _mbg_swab_ntp_tstamp( &(_p)->ref_time ); \
17495  _mbg_swab_ntp_tstamp( &(_p)->rec_time ); \
17496  \
17497  _mbg_swab8( &(_p)->reach ); \
17498  _mbg_swab8( &(_p)->reserved_4 ); \
17499  _mbg_swab16( &(_p)->unreach ); \
17500  \
17501  _mbg_swab8( &(_p)->host_mode ); \
17502  _mbg_swab8( &(_p)->peer_mode ); \
17503  _mbg_swab8( &(_p)->host_poll ); \
17504  _mbg_swab8( &(_p)->peer_poll ); \
17505  \
17506  _mbg_swab8( &(_p)->headway ); \
17507  _mbg_swab8( &(_p)->reserved_5 ); \
17508  _mbg_swab16( &(_p)->flash_stat_flags ); \
17509  \
17510  _mbg_swab16( &(_p)->key_id ); \
17511  _mbg_swab16( &(_p)->reserved_6 ); \
17512  \
17513  _mbg_swab64( &(_p)->offset ); \
17514  _mbg_swab64( &(_p)->delay ); \
17515  \
17516  _mbg_swab32( &(_p)->disp ); \
17517  _mbg_swab32( &(_p)->jitter ); \
17518  \
17519  _mbg_swab32( &(_p)->xleave ); \
17520  \
17521  _mbg_swab8( &(_p)->n_filter_values ); \
17522  _mbg_swab8( &(_p)->reserved_7 ); \
17523  _mbg_swab16( &(_p)->reserved_8 ); \
17524  \
17525  _mbg_swab32( &(_p)->reserved_9 ); \
17526  \
17527 } while ( 0 )
17528 
17529 #define _mbg_swab_ntp_refclk_state ( _p ) _mbg_swab_ntp_peer_state( _p )
17530 
17531 
17539 typedef struct
17540 {
17541  uint32_t idx;
17543 
17545 
17546 
17547 #define _mbg_swab_ntp_peer_state_idx( _p ) \
17548 do \
17549 { \
17550  _mbg_swab32( &(_p)->idx ); \
17551  _mbg_swab_ntp_peer_state( &(_p)->peer_state ); \
17552 } while ( 0 )
17553 
17554 
17555 #define _mbg_swab_ntp_refclk_state_idx( _p ) _mbg_swab_ntp_peer_state_idx( _p )
17556 
17557 
17567 #define MAX_LNO_OUTPUT 4
17568 
17572 typedef struct
17573 {
17575 
17579 
17582 
17583 } LNO_STATE;
17584 
17585 #define _mbg_swab_lno_state( _p ) \
17586 do \
17587 { \
17588  int i; \
17589  \
17590  for ( i = 0; i < MAX_LNO_OUTPUT; i++ ) \
17591  _mbg_swab16( &(_p)->sine_lvl[i] ); \
17592  \
17593  _mbg_swab_16( &(_p)->max_sine_lvl ); \
17594  _mbg_swab_16( &(_p)->reserved_0 ); \
17595  _mbg_swab_16( &(_p)->flags ); \
17596 } while ( 0 )
17597 
17598 
17603 {
17606 };
17607 
17608 #define LNO_FLAG_PLL_LOCKED ( 1UL << LNO_FLAG_BIT_PLL_LOCKED )
17609 
17630 {
17631  VST_DATA_TYPE_MAC_ADDR, //##++++++++++++ This is just an example. More to be added.
17633 };
17634 
17635 
17639 typedef struct
17640 {
17645 
17646 } VST_HEADER;
17647 
17648 #define _mbg_swab_vst_header( _p ) \
17649 do \
17650 { \
17651  _mbg_swab16( &(_p)->data_type ); \
17652  _mbg_swab16( &(_p)->idx ); \
17653  _mbg_swab16( &(_p)->data_len ); \
17654  _mbg_swab16( &(_p)->reserved ); \
17655 } while ( 0 )
17656 
17698 typedef struct
17699 {
17702  uint32_t reserved;
17703  uint32_t flags;
17704 
17705 } SHS_SETTINGS;
17706 
17707 #define _mbg_swab_shs_settings( _p ) \
17708 do \
17709 { \
17710  _mbg_swab_nano_time( &(_p)->err_limit ); \
17711  _mbg_swab_nano_time( &(_p)->warn_limit ); \
17712  _mbg_swab32( &(_p)->reserved ); \
17713  _mbg_swab32( &(_p)->flags ); \
17714 } while ( 0 )
17715 
17716 
17717 
17724 typedef struct
17725 {
17728  uint32_t reserved;
17729  uint32_t supp_flags;
17730 
17731 } SHS_INFO;
17732 
17733 #define _mbg_swab_shs_info( _p ) \
17734 do \
17735 { \
17736  _mbg_swab_shs_settings( &(_p)->settings ); \
17737  _mbg_swab_nano_time( &(_p)->max_limit ); \
17738  _mbg_swab32( &(_p)->reserved ); \
17739  _mbg_swab32( &(_p)->flags ); \
17740 } while ( 0 )
17741 
17742 
17743 
17747 typedef struct
17748 {
17750  TM_STATUS_EXT clk_status_1;
17751  TM_STATUS_EXT clk_status_2;
17755  uint32_t flags;
17756 
17757 } SHS_STATUS;
17758 
17759 #define _mbg_swab_shs_status( _p ) \
17760 do \
17761 { \
17762  _mbg_swab_nano_time( &(_p)->time_diff ); \
17763  _mbg_swab32( &(_p)->clk_status_1 ); \
17764  _mbg_swab32( &(_p)->clk_status_2 ); \
17765  _mbg_swab16( &(_p)->reserved_2 ); \
17766  _mbg_swab32( &(_p)->flags ); \
17767 } while ( 0 )
17768 
17769 
17770 
17777 {
17784 };
17785 
17786 
17787 
17794 {
17799 };
17800 
17801 
17815 {
17819 };
17820 
17840 
17841 
17845 #define XBP_PORT_RESERVED ( (XBP_PORT) -1 )
17846 
17847 
17853 #define MAX_XBP_CASC_LVL 7
17854 
17855 
17861 typedef struct
17862 {
17864  XBP_PORT addr[MAX_XBP_CASC_LVL];
17865 
17866 } XBP_ADDR;
17867 
17868 #define _mbg_swab_xbp_addr( _p ) _nop_macro_fnc() // only single bytes
17869 
17870 
17871 
17875 typedef struct
17876 {
17877  uint32_t features;
17878  uint32_t flags;
17879  uint32_t reserved_0;
17880  uint32_t reserved_1;
17881  uint32_t reserved_2;
17882  uint32_t reserved_3;
17883 
17884 } XBP_LIMITS;
17885 
17886 #define _mbg_swab_xbp_limits( _p ) \
17887 do \
17888 { \
17889  _mbg_swab32( &(_p)->features ); \
17890  _mbg_swab32( &(_p)->flags ); \
17891  _mbg_swab32( &(_p)->reserved_0 ); \
17892  _mbg_swab32( &(_p)->reserved_1 ); \
17893  _mbg_swab32( &(_p)->reserved_2 ); \
17894  _mbg_swab32( &(_p)->reserved_3 ); \
17895 } while ( 0 )
17896 
17897 
17898 
17903 {
17906 };
17907 
17908 
17915 {
17917 };
17918 
17919 
17920 
17926 typedef struct
17927 {
17928  uint32_t node_count;
17929  uint32_t reserved_0;
17930  uint32_t reserved_1;
17931  // TODO: do we need additional fields here?
17932 
17933 } XBP_NODE_LIMITS;
17934 
17935 #define _mbg_swab_xbp_node_limits( _p ) \
17936 do \
17937 { \
17938  _mbg_swab32( &(_p)->node_count ); \
17939  _mbg_swab32( &(_p)->reserved_0 ); \
17940  _mbg_swab32( &(_p)->reserved_1 ); \
17941 } while ( 0 )
17942 
17943 
17944 
17951 {
17958 };
17959 
17960 
17967 {
17977 };
17978 
17979 
17980 #define XBP_SLOT_TYPE_STRS \
17981 { \
17982  "Unknown", \
17983  "PWR", \
17984  "CLK", \
17985  "SCU", \
17986  "CPU", \
17987  "MRI", \
17988  "ESI", \
17989  "IO" \
17990 }
17991 
17992 
17996 #define XBP_MAX_SLOT_NAME 5
17997 
17998 
18006 typedef struct
18007 {
18009 
18014 
18016 
18019 
18022 
18023 } XBP_NODE_INFO;
18024 
18025 #define _mbg_swab_xbp_node_info( _p ) \
18026 do \
18027 { \
18028  _mbg_swab_xbp_addr( &(_p)->addr ); \
18029  _mbg_swab_receiver_info( &(_p)->ri ); \
18030  _mbg_swab8( &(_p)->state ); \
18031  _mbg_swab8( &(_p)->slot_type ); \
18032  _mbg_swab8( &(_p)->slot_type_id ); \
18033  _mbg_swab8( &(_p)->reserved ); \
18034  _mbg_swab16( &(_p)->flags ); \
18035 } while ( 0 )
18036 
18037 
18038 
18044 typedef struct
18045 {
18046  uint32_t idx;
18048 
18050 
18051 #define _mbg_swab_xbp_node_info_idx( _p ) \
18052 do \
18053 { \
18054  _mbg_swab32( &(_p)->idx ); \
18055  _mbg_swab_xbp_node_info( &(_p)->node_info ); \
18056 } while ( 0 )
18057 
18058 
18075 typedef uint32_t MBG_TLV_UID;
18076 
18077 #define _mbg_swab_tlv_uid( _p ) \
18078  _mbg_swab32( _p )
18079 
18080 
18081 
18088 typedef uint32_t MBG_TLV_TYPE;
18089 
18090 #define _mbg_swab_tlv_type( _p ) \
18091  _mbg_swab32( _p )
18092 
18093 
18094 
18108 #define MAX_MBG_TLV_FEAT_TYPES 128 //### TODO Is this sufficient?
18109 
18110 
18125 {
18130 
18135 
18138 
18143 
18146 
18149 
18152 
18155 
18158 
18162 
18165 
18168 
18171 
18174 
18176  // NOTE If new TLV feature types are appended here then an appropriate
18177  // name string has to be appended to ::MBG_TLV_FEAT_TYPE_NAMES, and care must
18178  // be taken that ::N_MBG_TLV_FEAT_TYPES doesn't exceed ::MAX_MBG_TLV_FEAT_TYPES.
18179 };
18180 
18181 
18190 #define MBG_TLV_FEAT_TYPE_NAMES \
18191 { \
18192  "TLV Firmware Update", \
18193  "TLV Diagnostics File", \
18194  "TLV Firmware Rollback", \
18195  "TLV File Transfer", \
18196  "TLV Execute Command", \
18197  "TLV License Upgrade", \
18198  "TLV License Limits", \
18199  "TLV License PTPV2", \
18200  "TLV License NTP", \
18201  "TLV File Request", \
18202  "TLV License PTPV1 IDX", \
18203  "TLV License Sync Monitor", \
18204  "TLV Sync Monitor Full Status", \
18205  "TLV Unified Firmware Update" \
18206 }
18207 
18208 
18209 
18216 #define MAX_MBG_TLV_FEAT_BYTES ( MAX_MBG_TLV_FEAT_TYPES / 8 )
18217 
18218 
18232 typedef struct
18233 {
18235 
18237 
18238 
18239 
18249 #define _set_tlv_feat_bit( _tlv_feat_type, _tlv_feat_buffp ) \
18250  _set_array_bit( _tlv_feat_type, (_tlv_feat_buffp)->supp_tlv_feat.b, MAX_MBG_TLV_FEAT_BYTES )
18251 
18252 
18263 typedef struct
18264 {
18265  uint32_t reserved;
18266  uint32_t flags;
18268 
18269 } MBG_TLV_INFO;
18270 
18271 #define _mbg_swab_tlv_info( _p ) \
18272 do \
18273 { \
18274  _mbg_swab32( &(_p)->reserved ); \
18275  _mbg_swab32( &(_p)->flags ); \
18276 } while ( 0 )
18277 
18278 
18279 
18290 {
18297 };
18298 
18299 
18300 
18307 typedef struct
18308 {
18309  MBG_TLV_UID uid;
18310  MBG_TLV_TYPE type;
18311  uint32_t total_bytes;
18312  uint32_t reserved_1;
18313 
18314 } MBG_TLV_DATA;
18315 
18316 #define _mbg_swab_tlv_data( _p ) \
18317 do \
18318 { \
18319  _mbg_swab_tlv_uid( &(_p)->uid ); \
18320  _mbg_swab_tlv_type( &(_p)->type ); \
18321  _mbg_swab32( &(_p)->total_bytes ); \
18322  _mbg_swab32( &(_p)->reserved_1 ); \
18323 } while ( 0 )
18324 
18325 
18326 
18330 typedef struct
18331 {
18333  uint32_t read_bytes;
18334  uint32_t reserved_1;
18335 
18337 
18338 
18339 
18348 typedef struct
18349 {
18351  uint32_t reserved_1;
18352  uint32_t reserved_2;
18353 
18355 
18356 #define _mbg_swab_tlv_announce( _p ) \
18357 do \
18358 { \
18359  _mbg_swab_tlv_data( &(_p)->data ); \
18360  _mbg_swab32( &(_p)->reserved_1 ); \
18361  _mbg_swab32( &(_p)->reserved_2 ); \
18362 } while ( 0 )
18363 
18364 
18365 
18366 #define MSG_TLV_MAX_VALUE_SIZE 480
18367 
18371 typedef struct
18372 {
18373  MBG_TLV_UID uid;
18374  MBG_TLV_UID tlv_type;
18375  uint32_t cur_bytes;
18376  uint32_t trans_bytes;
18377  uint32_t total_bytes;
18378  uint32_t reserved_1;
18380  uint32_t reserved_2;
18381  uint32_t reserved_3;
18382 
18383 } MBG_TLV_HDR;
18384 
18385 #define _mbg_swab_tlv_header( _p ) \
18386 do \
18387 { \
18388  _mbg_swab_tlv_uid( &(_p)->uid ); \
18389  _mbg_swab_tlv_type( &(_p)->tlv_type ); \
18390  _mbg_swab32( &(_p)->cur_bytes ); \
18391  _mbg_swab32( &(_p)->trans_bytes ); \
18392  _mbg_swab32( &(_p)->total_bytes ); \
18393  _mbg_swab32( &(_p)->reserved_1 ); \
18394  _mbg_swab32( &(_p)->reserved_2 ); \
18395  _mbg_swab32( &(_p)->reserved_3 ); \
18396 } while ( 0 )
18397 
18398 
18399 
18403 typedef struct
18404 {
18407 
18408 } MBG_TLV;
18409 
18410 #define _mbg_swab_tlv( _p ) \
18411 do \
18412 { \
18413  _mbg_swab_tlv_header( &(_p)->hdr ); \
18414 } while ( 0 )
18415 
18436 typedef struct
18437 {
18440 
18448 
18449  double sqrt_A;
18450  double e;
18451  double M0;
18452  double omega;
18453  double OMEGA0;
18454  double OMEGADOT;
18455  double deltan;
18456  double i0;
18457  double idot;
18458  double crc;
18459  double crs;
18460  double cuc;
18461  double cus;
18462  double cic;
18463  double cis;
18464 
18465  double af0;
18466  double af1;
18467  double af2;
18468  double tgd;
18469 
18471 
18474 
18475 } EPH;
18476 
18477 
18478 
18486 typedef struct
18487 {
18490 
18493 
18494  double sqrt_A;
18495  double e;
18496 
18497  double M0;
18498  double omega;
18499  double OMEGA0;
18500  double OMEGADOT;
18501  double deltai;
18502  double af0;
18503  double af1;
18504 
18505 } ALM;
18506 
18507 
18508 
18512 typedef struct
18513 {
18516 
18520 
18522  HEALTH health[N_SVNO_GPS];
18523 
18524 } CFGH;
18525 
18526 
18527 
18564 typedef struct
18565 {
18568 
18570  double A0;
18571  double A1;
18572 
18577 
18578 } UTC;
18579 
18580 #define _mbg_swab_utc_parm( _p ) \
18581 do \
18582 { \
18583  _mbg_swab_csum( &(_p)->csum ); \
18584  _mbg_swab16( &(_p)->valid ); \
18585  _mbg_swab_t_gps( &(_p)->t0t ); \
18586  _mbg_swab_double( &(_p)->A0 ); \
18587  _mbg_swab_double( &(_p)->A1 ); \
18588  _mbg_swab16( &(_p)->WNlsf ); \
18589  _mbg_swab16( &(_p)->DNt ); \
18590 } while ( 0 )
18591 
18592 
18593 
18597 typedef struct
18598 {
18601 
18602  double alpha_0;
18603  double alpha_1;
18604  double alpha_2;
18605  double alpha_3;
18606 
18607  double beta_0;
18608  double beta_1;
18609  double beta_2;
18610  double beta_3;
18611 
18612 } IONO;
18613 
18614 
18615 
18619 typedef struct
18620 {
18623  char s[23];
18624 
18625 } ASCII_MSG;
18626 
18632 {
18643 };
18644 
18645 
18646 #define GPS_PLATFORM_STRS \
18647 { \
18648  "Portable ", \
18649  "Fixed ", \
18650  "Stationary ", \
18651  "Pedestrian ", \
18652  "Automotive ", \
18653  "Sea ", \
18654  "Airborne <1G", \
18655  "Airborne <2G", \
18656  "Airborne <4G" \
18657 }
18658 
18659 
18660 
18662 {
18667 };
18668 
18669 
18670 
18671 typedef struct
18672 {
18673  uint32_t time_mode;
18676  int32_t fixedPosX; // cm
18677  int32_t fixedPosY; // cm
18678  int32_t fixedPosZ; // cm
18679  uint32_t fixedPosVar; // cm
18680  uint32_t flags; // currently 0
18681  uint32_t reserved; // currently 0
18682 
18684 
18685 
18686 
18691 typedef struct
18692 {
18699  uint32_t flags; // currently 0
18700  uint32_t reserved; // currently 0
18702 
18704 
18705 
18706 
18727 typedef struct
18728 {
18732  uint32_t reserved_2;
18733 
18734 } MBG_LED_LIMITS;
18735 
18736 #define _mbg_swab_mbg_led_limits( _p ) \
18737 do \
18738 { \
18739  _mbg_swab8( &(_p)->num_leds ); \
18740  _mbg_swab8( &(_p)->reserved_0 ); \
18741  _mbg_swab16( &(_p)->reserved_1 ); \
18742  _mbg_swab32( &(_p)->reserved_2 ); \
18743 } while ( 0 )
18744 
18745 
18746 
18755 {
18761 };
18762 
18763 
18764 
18773 {
18778 };
18779 
18780 
18790 #define MBG_LED_MODE_STRS \
18791 { \
18792  "Off", \
18793  "On", \
18794  "Flash", \
18795  "Flash 5s" \
18796 }
18797 
18798 
18799 
18808 {
18814 };
18815 
18816 
18817 
18826 {
18831 };
18832 
18833 
18834 
18844 #define MBG_LED_COLOR_STRS \
18845 { \
18846  "Green", \
18847  "Red", \
18848  "Yellow", \
18849  "Blue" \
18850 }
18851 
18852 
18853 
18859 typedef struct
18860 {
18864 
18866 
18867 #define _mbg_swab_mbg_led_settings( _p ) \
18868 do \
18869 { \
18870  _mbg_swab8( &(_p)->mode ); \
18871  _mbg_swab8( &(_p)->color ); \
18872  _mbg_swab16( &(_p)->reserved ); \
18873 } while ( 0 )
18874 
18875 
18876 
18883 typedef struct
18884 {
18887 
18889 
18890 #define _mbg_swab_mbg_led_settings_idx( _p ) \
18891 do \
18892 { \
18893  _mbg_swab16( &(_p)->idx ); \
18894  _mbg_swab_mbg_led_settings( &(_p)->settings ); \
18895 } while ( 0 )
18896 
18897 
18898 
18908 typedef struct
18909 {
18911  uint32_t supp_modes;
18912  uint32_t supp_colors;
18913  uint32_t reserved;
18914  uint32_t flags;
18915 
18916 } MBG_LED_INFO;
18917 
18918 #define _mbg_swab_mbg_led_info( _p ) \
18919 do \
18920 { \
18921  _mbg_swab_mbg_led_settings( &(_p)->settings ); \
18922  _mbg_swab32( &(_p)->supp_modes ); \
18923  _mbg_swab32( &(_p)->supp_colors ); \
18924  _mbg_swab32( &(_p)->reserved ); \
18925  _mbg_swab32( &(_p)->flags ); \
18926 } while ( 0 )
18927 
18928 
18929 
18936 typedef struct
18937 {
18940 
18942 
18943 #define _mbg_swab_mbg_led_info_idx( _p ) \
18944 do \
18945 { \
18946  _mbg_swab16( &(_p)->idx ); \
18947  _mbg_swab_mbg_led_info( &(_p)->info ); \
18948 } while ( 0 )
18949 
18974 typedef struct
18975 {
18979  uint32_t features; // ### TODO Mask of supported features, see ::MBG_LNE_FEAT_MASKS
18981  uint32_t reserved_2;
18982 
18983 } MBG_LNE_LIMITS;
18984 
18985 #define _mbg_swab_mbg_lne_limits( _p ) \
18986 do \
18987 { \
18988  _mbg_swab8( &(_p)->num_ports ); \
18989  _mbg_swab8( &(_p)->reserved_0 ); \
18990  _mbg_swab16( &(_p)->reserved_1 ); \
18991  _mbg_swab32( &(_p)->features ); \
18992  _mbg_swab32( &(_p)->reserved_2 ); \
18993 } while ( 0 )
18994 
18995 
18996 
18997 #if 0 //### TODO //#################
18998 
19006 enum MBG_LNE_FEAT_BITS
19007 {
19008  MBG_LNE_FEAT_BIT_SWITCH_PWR,
19009  N_MBG_LNE_FEAT_BITS
19010 };
19011 
19012 
19013 
19021 enum MBG_LNE_FEAT_MASKS
19022 {
19023  MBG_LNE_FEAT_MASK_SWITCH_PWR = ( 1UL << MBG_LNE_FEAT_BIT_SWITCH_PWR )
19024 };
19025 
19026 #endif
19027 
19028 
19029 
19035 typedef struct
19036 {
19037  uint32_t reserved_0;
19038  uint32_t reserved_1;
19039  uint32_t reserved_2;
19040  uint32_t flags;
19041 
19043 
19044 #define _mbg_swab_mbg_lne_port_settings( _p ) \
19045 do \
19046 { \
19047  _mbg_swab32( &(_p)->reserved_0 ); \
19048  _mbg_swab32( &(_p)->reserved_1 ); \
19049  _mbg_swab32( &(_p)->reserved_2 ); \
19050  _mbg_swab32( &(_p)->flags ); \
19051 } while ( 0 )
19052 
19053 
19054 
19061 typedef struct
19062 {
19065 
19067 
19068 #define _mbg_swab_mbg_lne_port_settings_idx( _p ) \
19069 do \
19070 { \
19071  _mbg_swab16( &(_p)->idx ); \
19072  _mbg_swab_mbg_lne_port_settings( &(_p)->settings ); \
19073 } while ( 0 )
19074 
19075 
19076 
19086 typedef struct
19087 {
19090  uint32_t reserved_0;
19091  uint32_t reserved_1;
19092  uint32_t reserved_2;
19093  uint32_t flags;
19094 
19096 
19097 #define _mbg_swab_mbg_lne_port_info( _p ) \
19098 do \
19099 { \
19100  _mbg_swab_mbg_lne_port_settings( &(_p)->settings ); \
19101  _mbg_swab_mbg_mac_addr( &(_p)->mac_addr ); \
19102  _mbg_swab32( &(_p)->reserved_0 ); \
19103  _mbg_swab32( &(_p)->reserved_1 ); \
19104  _mbg_swab32( &(_p)->reserved_2 ); \
19105  _mbg_swab32( &(_p)->flags ); \
19106 } while ( 0 )
19107 
19108 
19109 
19116 typedef struct
19117 {
19120 
19122 
19123 #define _mbg_swab_mbg_lne_port_info_idx( _p ) \
19124 do \
19125 { \
19126  _mbg_swab16( &(_p)->idx ); \
19127  _mbg_swab_mbg_lne_port_info( &(_p)->info ); \
19128 } while ( 0 )
19129 
19130 
19131 
19140 {
19143 };
19144 
19145 
19146 
19155 {
19157 };
19158 
19159 
19179 {
19183 };
19184 
19185 
19186 
19192 typedef struct
19193 {
19197 
19198 } MBG_PWR_CTL;
19199 
19200 #define _mbg_swab_mbg_pwr_ctl( _p ) \
19201 do \
19202 { \
19203  _mbg_swab8( &(_p)->state ); \
19204  _mbg_swab8( &(_p)->reserved_0 ); \
19205  _mbg_swab16( &(_p)->reserved_1 ); \
19206 } while ( 0 )
19207 
19228 {
19240 };
19241 
19250 {
19261 };
19262 
19263 
19265 {
19272 };
19273 
19274 #define MBG_EXT_SYS_INFO_PROC_STRS \
19275 { \
19276  "None", \
19277  "Cortex A9", \
19278  "Cortex SAM3u", \
19279  "Cortex SAM3s", \
19280  "Cortex STM32F4" \
19281 }
19282 
19284 {
19291 };
19292 
19293 #define MBG_EXT_SYS_INFO_FPGA_STRS \
19294 { \
19295  "None", \
19296  "Cyclone5 SoC", \
19297  "Cyclone5", \
19298  "Cyclone4GX15", \
19299  "Cyclone4CE22" \
19300 }
19301 
19303 {
19308 };
19309 
19310 #define MBG_EXT_SYS_INFO_CORE_MOD_STRS \
19311 { \
19312  "None", \
19313  "u-blox LEA-M8F", \
19314  "u-blox LEA-M8T" \
19315 }
19316 
19317 /*
19318  * OS Type can be used a GPS_MODEL_CODE
19319  */
19321 {
19329 };
19330 
19331 
19332 #define MBG_EXT_SYS_INFO_OS_SHORT_STRS \
19333 { \
19334  " ", \
19335  "p", \
19336  "n", \
19337  "u", \
19338  "s", \
19339  "x" \
19340 }
19341 
19342 
19343 #define MBG_EXT_SYS_INFO_OS_STRS \
19344 { \
19345  "none", \
19346  "pico", \
19347  "nano", \
19348  "micro", \
19349  "sync", \
19350  "any" \
19351 }
19352 
19354 #define MBG_EXT_SYS_INFO_CPU_MSK 0xff
19355 
19357 #define MBG_EXT_SYS_INFO_CPU_GEN_MSK 0xf
19358 
19360 #define MBG_EXT_SYS_INFO_CPU_VAR_MSK 0xf
19361 
19362 #define _mbg_ext_sys_info_get_cpu(var) (((var) >> 8) & MBG_EXT_SYS_INFO_CPU_MSK)
19363 #define _mbg_ext_sys_info_get_cpu_gen(var) (((var) >> 4) & MBG_EXT_SYS_INFO_CPU_GEN_MSK)
19364 #define _mbg_ext_sys_info_get_cpu_var(var) ((var) & MBG_EXT_SYS_INFO_CPU_VAR_MSK)
19365 
19367 {
19372 };
19373 
19374 #define MBG_EXT_SYS_INFO_CPU_STRS \
19375 { \
19376  "Unknown", \
19377  "HPS USB host", \
19378  "HPS USB device" \
19379 }
19380 
19381 #define __CPU_CODEC(cpu, gen, var) \
19382  (((cpu) & MBG_EXT_SYS_INFO_CPU_MSK) << 8) | \
19383  (((gen) & MBG_EXT_SYS_INFO_CPU_GEN_MSK) << 4) | \
19384  ((var) & MBG_EXT_SYS_INFO_CPU_VAR_MSK)
19385 
19390 #define HPS_USB_HOST_G1_V0 __CPU_CODEC(MBG_EXT_SYS_INFO_CPU_HPS_USB_HOST, 1, 0)
19391 
19396 #define HPS_USB_DEVICE_G1_V0 __CPU_CODEC(MBG_EXT_SYS_INFO_CPU_HPS_USB_DEVICE, 1, 0)
19397 
19402 #define HPS_USB_DEVICE_G1_V1 __CPU_CODEC(MBG_EXT_SYS_INFO_CPU_HPS_USB_DEVICE, 1, 1)
19403 
19404 typedef struct
19405 {
19406  uint32_t supp_members;
19407 
19408  uint32_t sw_rev;
19409  uint32_t hw_rev;
19410  uint32_t os_rev;
19411  uint32_t fpga_rev;
19412 
19417 
19418  uint32_t core_mod_rev;
19419 
19420  uint32_t ram_size;
19421  uint32_t storage_size;
19422 
19424 
19425  /* Reserved for future use, currently 0 */
19426  uint8_t reserved_rev_3[3];
19427 
19433 
19435  uint32_t reserved_rev_5;
19436  uint32_t reserved_rev_6;
19437  uint32_t reserved_rev_7;
19438  uint32_t reserved_rev_8;
19439  uint32_t reserved_rev_9;
19440 
19442 
19443 #define _mbg_swab_ext_sys_info( _p ) \
19444 do \
19445 { \
19446  _mbg_swab32( &(_p)->supp_members ); \
19447  _mbg_swab32( &(_p)->sw_rev ); \
19448  _mbg_swab32( &(_p)->hw_rev ); \
19449  _mbg_swab32( &(_p)->os_rev ); \
19450  _mbg_swab32( &(_p)->fpga_rev ); \
19451  _mbg_swab16( &(_p)->proc_type ); \
19452  _mbg_swab16( &(_p)->fpga_type ); \
19453  _mbg_swab16( &(_p)->core_mod_type ); \
19454  _mbg_swab16( &(_p)->os_type ); \
19455  _mbg_swab16( &(_p)->reserved ); \
19456  _mbg_swab32( &(_p)->core_mod_rev ); \
19457  _mbg_swab32( &(_p)->ram_size ); \
19458  _mbg_swab32( &(_p)->storage_size ); \
19459  _mbg_swab16( &(_p)->os_target ); \
19460 } while ( 0 )
19461 
19462 
19463 #define _mbg_encode_revision( _major, _minor, _patch ) \
19464  ( ( (_major) << 24) | ( (_minor) << 16 ) | (_patch) )
19465 
19466 
19467 #define _mbg_decode_revision( _rev, _major, _minor, _patch ) \
19468 { \
19469  (_major) = ( (_rev) >> 24 ) & 0xff; \
19470  (_minor) = ( (_rev) >> 16 ) & 0xff; \
19471  (_patch) = (_rev) & 0xffff; \
19472 }
19473 
19474 
19486 #define MBG_MAX_LICENSES 32
19487 
19488 
19498 typedef struct
19499 {
19504 
19505 
19507 {
19513 };
19514 
19515 
19522 {
19525 };
19526 
19527 
19536 {
19538 };
19539 
19540 
19546 typedef struct
19547 {
19551  uint32_t supp_flags;
19552  uint32_t reserved_3;
19553  uint32_t reserved_4;
19554 
19556 
19557 #define _mbg_swab_license_base( _p ) \
19558 do \
19559 { \
19560  _mbg_swab32( &(_p)->supp_flags ); \
19561 } while ( 0 )
19562 
19563 
19570 {
19574 };
19575 
19576 
19585 {
19588 };
19589 
19590 
19595 typedef struct
19596 {
19598  uint32_t supp_members;
19599  uint32_t reserved_1;
19602  uint32_t max_mtrans;
19603  uint32_t reserved_3;
19604  uint32_t reserved_4;
19605  uint32_t reserved_5;
19606  uint32_t reserved_6;
19607 
19609 
19610 #define _mbg_swab_license_ptpv2( _p ) \
19611 do \
19612 { \
19613  _mbg_swab_license_base( &(_p)->base ); \
19614  _mbg_swab32( &(_p)->supp_members ); \
19615  _mbg_swab16( &(_p)->max_uclients ); \
19616  _mbg_swab32( &(_p)->max_mtrans ); \
19617 } while ( 0 )
19618 
19619 
19620 typedef struct
19621 {
19622  uint32_t idx;
19624 
19626 
19627 #define _mbg_swab_license_ptpv2_idx( _p ) \
19628 do \
19629 { \
19630  _mbg_swab_license_ptpv2( &(_p)->license ); \
19631  _mbg_swab32( &(_p)->idx ); \
19632 } while ( 0 )
19633 
19634 
19641 {
19644 };
19645 
19646 
19655 {
19657 };
19658 
19659 
19663 typedef struct
19664 {
19666  uint32_t supp_members;
19667  uint32_t max_rps;
19668  uint32_t reserved_1;
19669  uint32_t reserved_2;
19670  uint32_t reserved_3;
19671  uint32_t reserved_4;
19672  uint32_t reserved_5;
19673  uint32_t reserved_6;
19674 
19675 } MBG_LICENSE_NTP;
19676 
19677 #define _mbg_swab_license_ntp( _p ) \
19678 do \
19679 { \
19680  _mbg_swab_license_base( &(_p)->base ); \
19681  _mbg_swab32( &(_p)->supp_members ); \
19682  _mbg_swab32( &(_p)->max_rps ); \
19683 } while ( 0 )
19684 
19685 
19686 
19687 typedef struct
19688 {
19689  uint32_t idx;
19691 
19693 
19694 #define _mbg_swab_license_ntp_idx( _p ) \
19695 do \
19696 { \
19697  _mbg_swab_license_ntp( &(_p)->license ); \
19698  _mbg_swab32( &(_p)->idx ); \
19699 } while ( 0 )
19700 
19707 {
19710 };
19711 
19712 
19721 {
19723 };
19724 
19725 
19729 typedef struct
19730 {
19732  uint32_t supp_members;
19733  uint32_t max_rps;
19734  uint32_t reserved_1;
19735  uint32_t reserved_2;
19736  uint32_t reserved_3;
19737  uint32_t reserved_4;
19738  uint32_t reserved_5;
19739  uint32_t reserved_6;
19740 
19742 
19743 #define _mbg_swab_license_ptpv1( _p ) \
19744 do \
19745 { \
19746  _mbg_swab_license_base( &(_p)->base ); \
19747  _mbg_swab32( &(_p)->supp_members ); \
19748  _mbg_swab32( &(_p)->max_rps ); \
19749 } while ( 0 )
19750 
19751 
19752 typedef struct
19753 {
19754  uint32_t idx;
19756 
19758 
19759 #define _mbg_swab_license_ptpv1_idx( _p ) \
19760 do \
19761 { \
19762  _mbg_swab_license_ptpv1( &(_p)->license ); \
19763  _mbg_swab32( &(_p)->idx ); \
19764 } while ( 0 )
19765 
19772 {
19776 };
19777 
19778 
19787 {
19790 };
19791 
19792 
19797 typedef struct
19798 {
19800  uint32_t supp_members;
19801  uint32_t reserved_1;
19804  uint32_t reserved_2;
19805  uint32_t reserved_3;
19806  uint32_t reserved_4;
19807  uint32_t reserved_5;
19808  uint32_t reserved_6;
19809 
19811 
19812 #define _mbg_swab_license_time_monitor( _p ) \
19813 do \
19814 { \
19815  _mbg_swab_license_base( &(_p)->base ); \
19816  _mbg_swab32( &(_p)->supp_members ); \
19817  _mbg_swab16( &(_p)->max_ptpv2_clients ); \
19818  _mbg_swab16( &(_p)->max_ntp_clients ); \
19819 } while ( 0 )
19820 
19821 
19822 typedef struct
19823 {
19824  uint32_t idx;
19826 
19828 
19829 #define _mbg_swab_license_time_monitor_idx( _p ) \
19830 do \
19831 { \
19832  _mbg_swab_license_time_monitor( &(_p)->license ); \
19833  _mbg_swab32( &(_p)->idx ); \
19834 } while ( 0 )
19835 
19853 typedef struct
19854 {
19855  uint32_t base_clk;
19856  uint32_t num_clk_phase;
19857  uint32_t reserved_9;
19858  uint32_t reserved_8;
19859  uint32_t reserved_7;
19860  uint32_t reserved_6;
19861  uint32_t reserved_5;
19862  uint32_t reserved_4;
19863  uint32_t reserved_3;
19864  uint32_t reserved_2;
19865  uint32_t reserved_1;
19866  uint32_t reserved_0;
19867 
19869 
19870 #define _mbg_swab_mbg_clk_res_info( _p ) \
19871 do \
19872 { \
19873  _mbg_swab32( &(_p)->base_clk ); \
19874  _mbg_swab32( &(_p)->num_clk_phase ); \
19875  _mbg_swab32( &(_p)->reserved_9 ); \
19876  _mbg_swab32( &(_p)->reserved_8 ); \
19877  _mbg_swab32( &(_p)->reserved_7 ); \
19878  _mbg_swab32( &(_p)->reserved_6 ); \
19879  _mbg_swab32( &(_p)->reserved_5 ); \
19880  _mbg_swab32( &(_p)->reserved_4 ); \
19881  _mbg_swab32( &(_p)->reserved_3 ); \
19882  _mbg_swab32( &(_p)->reserved_2 ); \
19883  _mbg_swab32( &(_p)->reserved_1 ); \
19884  _mbg_swab32( &(_p)->reserved_0 ); \
19885 } while ( 0 )
19886 
19899 {
19901  /* ### TODO FIXME
19902  * Network transaction requires at least and as first command:
19903  * - ::GPS_NET_GLB_CFG (::MBG_NET_GLB_CFG_INFO)
19904  * Depending on ::MBG_NET_GLB_CFG_INFO::glb_settings and its num_[...]
19905  * members there are a couple of index commands which should be handled in any order:
19906  * - ::GPS_NET_DNS_SRVR (::MBG_IP_ADDR_IDX)
19907  * - ::GPS_NET_DNS_SRCH_DOM (::MBG_NET_NAME_IDX)
19908  * - ::GPS_NET_INTF_LINK_IDX (::MBG_NET_INTF_LINK_INFO_IDX)
19909  * - ::GPS_NET_INTF_ADDR_IDX (::MBG_NET_INTF_ADDR_INFO_IDX)
19910  * - ::GPS_NET_INTF_ROUTE_IDX (::MBG_NET_INTF_ROUTE_INFO_IDX)
19911  */
19914  /*
19915  * Commands in any order if supp. by ::MBG_SNMP_GLB_INFO::max_[...]
19916  * and ::MBG_SNMP_GLB_INFO::supp_versions
19917  *
19918  * Should be used within ::MBG_TRANSACTION_TYPE_MONITORING but may also be
19919  * used stand-alone.
19920  *
19921  * - ::GPS_SNMP_GLB_SETTINGS
19922  * - ::GPS_SNMP_V12_SETTINGS_IDX
19923  * - ::GPS_SNMP_V12_TRAP_SETTINGS_IDX
19924  * - ::GPS_SNMP_V3_SETTINGS_IDX
19925  * - ::GPS_SNMP_V3_TRAP_SETTINGS_IDX
19926  */
19928  /*
19929  * NTP transaction requires at least and as first command:
19930  * ::GPS_NTP_GLB_CFG
19931  * Commands in any order if supp. by ::MBG_NTP_GLB_INFO
19932  * and ::MBG_SNMP_GLB_INFO::supp_versions
19933  *
19934  * - ::GPS_NTP_REFCLK_CFG
19935  * - ::GPS_NTP_MISC_LIMITS
19936  * - ::GPS_NTP_MISC_ORPHAN_MODE
19937  * - ::GPS_NTP_SYMM_KEY_LIMITS
19938  * - ::GPS_NTP_SYMM_KEY_CFG
19939  * - ::GPS_NTP_TRUSTED_KEY_CFG
19940  * - ::GPS_NTP_CLNT_MODE_CFG
19941  * - ::GPS_NTP_SRV_MODE_CFG
19942  * - ::GPS_NTP_PEER_SETTINGS_IDX
19943  * - ::GPS_NTP_SYS_STATE
19944  * - ::GPS_NTP_PEER_STATE_IDX
19945  */
19947  /*
19948  * IO Port transaction used to read or write ALL_IO_PORT_INFO
19949  * Commands related to this transaction:
19950  *
19951  * - ::GPS_IO_PORT_LIMITS
19952  * - ::GPS_IO_PORT_SETTINGS_IDX
19953  * - ::GPS_IO_PORT_INFO_IDX
19954  * - ::GPS_IO_PORT_TYPE_INFO_IDX
19955  * - ::GPS_IO_PORT_STATUS_IDX
19956  */
19958  /*
19959  * Commands in any order if ::MBG_XFEATURE_MONITORING is set in
19960  * ::MBG_XFEATURE_BUFFER.
19961  *
19962  * Transactions ::MBG_TRANSACTION_TYPE_MONITORING_SNMP and
19963  * ::MBG_TRANSACTION_TYPE_EVENTS may also be opened within
19964  * ::MBG_TRANSACTION_TYPE_MONITORING transaction.
19965  *
19966  * - ::GPS_MONITORING_LIMITS
19967  * - ::GPS_MONITORING_STATUS
19968  */
19970  /*
19971  * Commands in any order if ::MBG_XFEATURE_MONITORING is set in
19972  * ::MBG_XFEATURE_BUFFER.
19973  *
19974  * Should be used within ::MBG_TRANSACTION_TYPE_MONITORING but may also be
19975  * used stand-alone.
19976  *
19977  * - ::GPS_EVENT_IDX
19978  * - ::GPS_EVENT_STAT_IDX
19979  */
19981 
19982  /*
19983  * User Management transaction is supported,
19984  * if ::MBG_XFEATURE_MONITORING is set in ::MBG_XFEATURE_BUFFER and
19985  * requires at least and as first command: ::GPS_USER_MNGMNT_INFO
19986  *
19987  * Other commands in any order
19988  *
19989  * - ::GPS_USER_INFO_IDX
19990  * - ::GPS_USER_LEVEL_INFO_IDX
19991  * - ::GPS_USER_STATUS_IDX
19992  */
19994 
19995  /*
19996  * Should be used within ::MBG_TRANSACTION_TYPE_MONITORING but may also be
19997  * used stand-alone.
19998  *
19999  * - ::GPS_SYSLOG_GLB_INFO
20000  * - ::GPS_SYSLOG_INFO_IDX
20001  */
20003 
20004  /*
20005  * Firmware Management transaction is supported,
20006  * if ::MBG_XFEATURE_FW_MNGMNT is set in ::MBG_XFEATURE_BUFFER and
20007  * requires at least and as first command: ::GPS_FW_GLB_INFO
20008  *
20009  * Other commands in any order
20010  *
20011  * - ::GPS_FW_INFO_IDX
20012  * - ::GPS_FW_UFU_INFO_IDX
20013  */
20015 
20016  /*
20017  * Database transaction is supported,
20018  * if ::MBG_XFEATURE_DATABASE is set in ::MBG_XFEATURE_BUFFER and
20019  * requires at least and as first command: ::GPS_DATABASE_GLB_INFO
20020  *
20021  * Other commands in any order
20022  *
20023  * - ::GPS_DATABASE_GLB_INFO
20024  * - ::GPS_DATABASE_INFO_IDX
20025  */
20027 
20029 };
20030 
20031 
20032 #define MBG_TRANSACTION_MSK_SET 0x8000
20033 #define MBG_TRANSACTION_MSK_SUCCESS 0x4000
20034 
20035 #define _mbg_is_set_transaction( _type ) ( ( _type ) & MBG_TRANSACTION_MSK_SET )
20036 #define _mbg_transaction_type_set( _type ) ( ( _type ) |= MBG_TRANSACTION_MSK_SET )
20037 
20038 #define _mbg_transaction_success( _type ) ( ( _type ) & MBG_TRANSACTION_MSK_SUCCESS )
20039 #define _mbg_transaction_set_success( _type ) ( ( _type ) |= MBG_TRANSACTION_MSK_SUCCESS )
20040 
20041 
20056 {
20073 };
20074 
20081 #define MBG_IO_PORT_TYPE_NONE ( (uint16_t) -1 )
20082 
20083 
20092 #define MBG_IO_PORT_TYPE_STRS \
20093 { \
20094  "PPS", \
20095  "10 MHz", \
20096  "2048 KHz", \
20097  "GPIO", \
20098  "Ethernet", \
20099  "Terminal", \
20100  "Multi", \
20101  "Prog. Output", \
20102  "Switch", \
20103  "Timecode", \
20104  "Light", \
20105  "Antenna", \
20106  "UART", \
20107  "DCF77", \
20108  "Power" \
20109 }
20110 
20111 
20118 {
20124 };
20125 
20126 
20135 #define MBG_IO_PORT_DIR_STRS \
20136 { \
20137  "Input", \
20138  "Output", \
20139  "Input/Output" \
20140 }
20141 
20142 
20151 {
20155 };
20156 
20157 
20166 {
20181 };
20182 
20183 
20192 #define MBG_IO_PORT_SRC_STRS \
20193 { \
20194  "Static", \
20195  "Locally generated", \
20196  "Associated clock", \
20197  "Active clock", \
20198  "Clock 1 fixed", \
20199  "Clock 2 fixed", \
20200  "Any rate converter", \
20201  "Oscillator", \
20202  "SyncE", \
20203  "Switch card", \
20204  "Configurable", \
20205  "External" \
20206 }
20207 
20208 
20217 {
20230 };
20231 
20232 
20240 {
20262 };
20263 
20264 
20271 #define MBG_IO_PORT_CONN_TYPE_VAR_POLS \
20272 { \
20273  1, \
20274  1, \
20275  1, \
20276  1, \
20277  1, \
20278  1, \
20279  1, \
20280  1, \
20281  1, \
20282  1, \
20283  1, \
20284  1, \
20285  16, \
20286  1, \
20287  1, \
20288  1, \
20289  1, \
20290  1, \
20291  4, \
20292  1 \
20293 }
20294 
20295 
20304 #define MBG_IO_PORT_CONN_TYPE_STRS \
20305 { \
20306  "SMA", \
20307  "BNC", \
20308  "D-Sub 25", \
20309  "RJ45", \
20310  "SFP", \
20311  "USB Micro B", \
20312  "USB A", \
20313  "USB B", \
20314  "SMA Antenna", \
20315  "RJ45 Ethernet", \
20316  "DFK 2-Pin", \
20317  "DFK 3-Pin", \
20318  "DFK 16-Pin", \
20319  "BNC isolated", \
20320  "D-Sub 9", \
20321  "Fibre ST", \
20322  "XHE SPI", \
20323  "LED Button", \
20324  "Quad LED", \
20325  "DFK 5-Pin" \
20326 }
20327 
20328 
20330 {
20337 };
20338 
20339 
20341 {
20347 };
20348 
20349 
20351 {
20356 };
20357 
20358 
20359 #define MBG_IO_PORT_BG_COLOUR_STRS \
20360 { \
20361  "Silver", \
20362  "Black", \
20363  "Blue" \
20364 }
20365 
20366 
20375 {
20381 };
20382 
20383 
20389 #define MBG_IO_PORT_SHAPE_LEVEL_STRS \
20390 { \
20391  "None", \
20392  "Sine wave", \
20393  "Rectangle Pulse" \
20394 }
20395 
20396 
20411 typedef struct
20412 {
20417 
20418  uint32_t reserved;
20419  uint32_t flags;
20420 
20425 
20429 
20430  uint32_t reserved_3[7];
20431 
20433 
20434 #define _mbg_swab_io_port_limits( _p ) \
20435 do \
20436 { \
20437  _mbg_swab32( &(_p)->flags ); \
20438 } while ( 0 )
20439 
20440 
20441 
20453 {
20462 };
20463 
20464 
20473 #define MBG_IO_PORT_OP_MODE_STRS \
20474 { \
20475  "Disabled", \
20476  "Always enabled", \
20477  "If sync only", \
20478  "Always after sync", \
20479  "Enabled", \
20480  "Passed through" \
20481 }
20482 
20483 
20484 
20493 {
20500 };
20501 
20502 
20511 {
20517 };
20518 
20519 
20528 #define MBG_IO_PORT_GRP_ROLE_STRS \
20529 { \
20530  "None", \
20531  "Master", \
20532  "Slave", \
20533  "Passive" \
20534 }
20535 
20536 
20545 {
20550 };
20551 
20552 
20560 {
20570 };
20571 
20572 
20574 {
20579 };
20580 
20581 
20582 typedef struct
20583 {
20584  uint32_t supp_members;
20586 
20588 
20589 #define _mbg_swab_io_port_ant_info( _p ) \
20590 do \
20591 { \
20592  _mbg_swab32( &(_p)->supp_members ); \
20593  _mbg_swab_mbg_gnss_mode_info( &(_p)->gnss_info ); \
20594 } while ( 0 )
20595 
20596 typedef struct
20597 {
20599  ANT_CABLE_LEN ant_cab_len;
20600  IGNORE_LOCK ignore_lock;
20601  /* Do not include pcpsdefs.h -> Use the non-typedefed type */
20603 
20605 
20606 #define _mbg_swab_io_port_ant_settings( _p ) \
20607 do \
20608 { \
20609  _mbg_swab_mbg_gnss_mode_settings( &(_p)->gnss_settings ); \
20610  _mbg_swab_ant_cable_len( &(_p)->ant_cab_len ); \
20611  _mbg_swab16( &(_p)->ignore_lock ); \
20612  _mbg_swab16( &(_p)->tr_dist ); \
20613 } while ( 0 )
20614 
20615 
20630 typedef union
20631 {
20637 
20639 
20640 #define _mbg_swab_io_port_settings_u( _type, _p, _recv ) \
20641 do \
20642 { \
20643  switch ( (_type) ) \
20644  { \
20645  case MBG_IO_PORT_TYPE_GPIO: \
20646  _mbg_swab_mbg_gpio_settings( &(_p)->gpio_settings, (_recv) ); \
20647  break; \
20648  \
20649  case MBG_IO_PORT_TYPE_POUT: \
20650  if ( _recv ) \
20651  _mbg_swab_pout_settings_on_get( &(_p)->pout_settings ); \
20652  else _mbg_swab_pout_settings_on_set( &(_p)->pout_settings ); \
20653  break; \
20654  \
20655  case MBG_IO_PORT_TYPE_TIMECODE: \
20656  _mbg_swab_irig_settings( &(_p)->irig_settings ); \
20657  break; \
20658  \
20659  case MBG_IO_PORT_TYPE_ANTENNA: \
20660  _mbg_swab_io_port_ant_settings( &(_p)->ant_settings ); \
20661  break; \
20662  \
20663  case MBG_IO_PORT_TYPE_UART: \
20664  _mbg_swab_port_settings( &(_p)->uart_settings ); \
20665  break; \
20666  \
20667  default: break; \
20668  } \
20669 } while ( 0 )
20670 
20671 
20672 #define MBG_IO_PORT_SETTINGS_MIN_SIZE 32
20673 
20674 
20689 typedef struct
20690 {
20696  uint8_t reserved_1[2];
20697  uint32_t reserved_2[6];
20698 
20699  /*
20700  * Struct members above represent minimum amount of data to be sent.
20701  * See ::MBG_IO_PORT_SETTINGS_MIN_SIZE
20702  */
20703 
20705 
20707 
20708 #define _mbg_swab_io_port_settings( _p, _recv ) \
20709 do \
20710 { \
20711  uint16_t t = (_p)->port_type; \
20712  if ( (_recv) ) \
20713  _mbg_swab16( &t ); \
20714  _mbg_swab16( &(_p)->port_type ); \
20715  _mbg_swab_io_port_settings_u( t, &(_p)->data, (_recv) ); \
20716 } while ( 0 )
20717 
20718 
20719 
20720 
20738 typedef struct
20739 {
20740  uint32_t idx;
20742 
20744 
20745 #define _mbg_swab_io_port_settings_idx( _p, _recv ) \
20746 do \
20747 { \
20748  _mbg_swab32( &(_p)->idx ); \
20749  _mbg_swab_io_port_settings( &(_p)->settings, (_recv) ); \
20750 } while ( 0 )
20751 
20752 
20753 #define MBG_IO_PORT_SETTINGS_IDX_MIN_SIZE (MBG_IO_PORT_SETTINGS_MIN_SIZE + sizeof( uint32_t ))
20754 
20755 
20756 #define MBG_IO_PORT_SETTINGS_IDX_SIZES \
20757 { \
20758  MBG_IO_PORT_SETTINGS_IDX_MIN_SIZE, /* MBG_IO_PORT_TYPE_PPS */ \
20759  MBG_IO_PORT_SETTINGS_IDX_MIN_SIZE, /* MBG_IO_PORT_TYPE_10MHz */ \
20760  MBG_IO_PORT_SETTINGS_IDX_MIN_SIZE, /* MBG_IO_PORT_TYPE_2048KHz */ \
20761  MBG_IO_PORT_SETTINGS_IDX_MIN_SIZE + sizeof( MBG_GPIO_SETTINGS ), /* MBG_IO_PORT_TYPE_GPIO */ \
20762  MBG_IO_PORT_SETTINGS_IDX_MIN_SIZE, /* MBG_IO_PORT_TYPE_ETHERNET */ \
20763  MBG_IO_PORT_SETTINGS_IDX_MIN_SIZE, /* MBG_IO_PORT_TYPE_TERMINAL */ \
20764  MBG_IO_PORT_SETTINGS_IDX_MIN_SIZE, /* MBG_IO_PORT_TYPE_MULTI */ \
20765  MBG_IO_PORT_SETTINGS_IDX_MIN_SIZE + sizeof( POUT_SETTINGS ), /* MBG_IO_PORT_TYPE_POUT */ \
20766  MBG_IO_PORT_SETTINGS_IDX_MIN_SIZE, /* MBG_IO_PORT_TYPE_SWITCH */ \
20767  MBG_IO_PORT_SETTINGS_IDX_MIN_SIZE + sizeof( IRIG_SETTINGS ), /* MBG_IO_PORT_TYPE_TIMECODE */ \
20768  MBG_IO_PORT_SETTINGS_IDX_MIN_SIZE, /* MBG_IO_PORT_TYPE_LIGHT */ \
20769  MBG_IO_PORT_SETTINGS_IDX_MIN_SIZE + sizeof( MBG_IO_PORT_ANT_SETTINGS ), /* MBG_IO_PORT_TYPE_ANTENNA */ \
20770  MBG_IO_PORT_SETTINGS_IDX_MIN_SIZE + sizeof( PORT_SETTINGS ), /* MBG_IO_PORT_TYPE_UART */ \
20771  MBG_IO_PORT_SETTINGS_IDX_MIN_SIZE, /* MBG_IO_PORT_TYPE_DCF77 */ \
20772  MBG_IO_PORT_SETTINGS_IDX_MIN_SIZE /* MBG_IO_PORT_TYPE_POWER */ \
20773 }
20774 
20775 
20777 {
20779 };
20780 
20781 
20783 {
20785 };
20786 
20787 
20788 #define MBG_NO_PHYS_GROUP 0xFF
20789 #define MBG_NO_LOG_GROUP 0xFF
20790 #define MBG_IO_PORT_STR_SIZE 16
20791 
20806 typedef struct
20807 {
20818  uint32_t pols;
20819  uint32_t flags;
20820  uint32_t reserved_2[2];
20821  char use_str[MBG_IO_PORT_STR_SIZE];
20822  char rel_str[MBG_IO_PORT_STR_SIZE];
20824 
20826 
20827 #define _mbg_port_has_phys_group( _p ) ( ( _p )->phys_grp != MBG_NO_PHYS_GROUP )
20828 
20829 #define _mbg_swab_io_port_info( _p, _recv ) \
20830 do \
20831 { \
20832  _mbg_swab16( &(_p)->supp_op_modes ); \
20833  _mbg_swab16( &(_p)->supp_phys_grp_roles ); \
20834  _mbg_swab32( &(_p)->pols ); \
20835  _mbg_swab32( &(_p)->flags ); \
20836  _mbg_swab_io_port_settings( &(_p)->settings, (_recv) ); \
20837 } while ( 0 )
20838 
20839 
20840 
20841 #define MBG_IO_PORT_INFO_MIN_SIZE ( 60 + MBG_IO_PORT_SETTINGS_MIN_SIZE )
20842 
20843 
20862 typedef struct
20863 {
20864  uint32_t idx;
20866 
20868 
20869 #define _mbg_swab_io_port_info_idx( _p, _recv ) \
20870 do \
20871 { \
20872  _mbg_swab32( &(_p)->idx ); \
20873  _mbg_swab_io_port_info( &(_p)->info, (_recv) ); \
20874 } while ( 0 )
20875 
20876 
20877 
20878 #define MBG_IO_PORT_INFO_IDX_MIN_SIZE (MBG_IO_PORT_INFO_MIN_SIZE + sizeof( uint32_t ))
20879 
20880 
20881 #define MBG_IO_PORT_INFO_IDX_SIZES \
20882 { \
20883  MBG_IO_PORT_INFO_IDX_MIN_SIZE, /* MBG_IO_PORT_TYPE_PPS */ \
20884  MBG_IO_PORT_INFO_IDX_MIN_SIZE, /* MBG_IO_PORT_TYPE_10MHz */ \
20885  MBG_IO_PORT_INFO_IDX_MIN_SIZE, /* MBG_IO_PORT_TYPE_2048KHz */ \
20886  MBG_IO_PORT_INFO_IDX_MIN_SIZE + sizeof( MBG_GPIO_SETTINGS ), /* MBG_IO_PORT_TYPE_GPIO */ \
20887  MBG_IO_PORT_INFO_IDX_MIN_SIZE, /* MBG_IO_PORT_TYPE_ETHERNET */ \
20888  MBG_IO_PORT_INFO_IDX_MIN_SIZE, /* MBG_IO_PORT_TYPE_TERMINAL */ \
20889  MBG_IO_PORT_INFO_IDX_MIN_SIZE, /* MBG_IO_PORT_TYPE_MULTI */ \
20890  MBG_IO_PORT_INFO_IDX_MIN_SIZE + sizeof( POUT_SETTINGS ), /* MBG_IO_PORT_TYPE_POUT */ \
20891  MBG_IO_PORT_INFO_IDX_MIN_SIZE, /* MBG_IO_PORT_TYPE_SWITCH */ \
20892  MBG_IO_PORT_INFO_IDX_MIN_SIZE + sizeof( IRIG_SETTINGS ), /* MBG_IO_PORT_TYPE_TIMECODE */ \
20893  MBG_IO_PORT_INFO_IDX_MIN_SIZE, /* MBG_IO_PORT_TYPE_LIGHT */ \
20894  MBG_IO_PORT_INFO_IDX_MIN_SIZE + sizeof( MBG_IO_PORT_ANT_SETTINGS ), /* MBG_IO_PORT_TYPE_ANTENNA */ \
20895  MBG_IO_PORT_INFO_IDX_MIN_SIZE + sizeof( PORT_SETTINGS ), /* MBG_IO_PORT_TYPE_UART */ \
20896  MBG_IO_PORT_INFO_IDX_MIN_SIZE, /* MBG_IO_PORT_TYPE_DCF77 */ \
20897  MBG_IO_PORT_INFO_IDX_MIN_SIZE /* MBG_IO_PORT_TYPE_POWER */ \
20898 }
20899 
20900 
20916 typedef union
20917 {
20923 
20925 
20926 #define _mbg_swab_io_port_type_info_u( _type, _p, _recv ) \
20927 do \
20928 { \
20929  switch ( (_type) ) \
20930  { \
20931  case MBG_IO_PORT_TYPE_GPIO: \
20932  _mbg_swab_mbg_gpio_limits( &(_p)->gpio_limits, (_recv) ); \
20933  break; \
20934  \
20935  case MBG_IO_PORT_TYPE_POUT: \
20936  _mbg_swab_pout_info_on_get( &(_p)->pout_info ); \
20937  break; \
20938  \
20939  case MBG_IO_PORT_TYPE_TIMECODE: \
20940  _mbg_swab_irig_info( &(_p)->irig_info ); \
20941  break; \
20942  \
20943  case MBG_IO_PORT_TYPE_ANTENNA: \
20944  _mbg_swab_io_port_ant_info( &(_p)->ant_info ); \
20945  break; \
20946  \
20947  case MBG_IO_PORT_TYPE_UART: \
20948  _mbg_swab_port_info( &(_p)->uart_info ); \
20949  break; \
20950  \
20951  default: break; \
20952  } \
20953 } while ( 0 )
20954 
20955 
20956 
20957 #define MBG_IO_PORT_TYPE_INFO_MIN_SIZE 32
20958 
20959 
20974 typedef struct
20975 {
20981  uint8_t reserved_2[1];
20982  uint32_t supp_srcs;
20983  uint32_t reserved_3[5];
20984 
20985  /*
20986  * Struct members above represent minimum amount of data to be sent.
20987  * See ::MBG_IO_PORT_TYPE_INFO_MIN_SIZE
20988  */
20989 
20991 
20993 
20994 #define _mbg_swab_io_port_type_info( _p, _recv ) \
20995 do \
20996 { \
20997  uint16_t t = (_p)->port_type; \
20998  if ( (_recv) ) \
20999  _mbg_swab16( &t ); \
21000  _mbg_swab16( &(_p)->port_type ); \
21001  _mbg_swab_io_port_type_info_u( t, &(_p)->data, (_recv) ); \
21002  _mbg_swab32( &(_p)->supp_srcs ); \
21003 } while ( 0 )
21004 
21005 
21006 #define MBG_IO_PORT_TYPE_INFO_IDX_MIN_SIZE (MBG_IO_PORT_TYPE_INFO_MIN_SIZE + 2 * sizeof( uint32_t ))
21007 
21008 
21009 #define MBG_IO_PORT_TYPE_INFO_IDX_SIZES \
21010 { \
21011  MBG_IO_PORT_TYPE_INFO_IDX_MIN_SIZE, /* MBG_IO_PORT_TYPE_PPS */ \
21012  MBG_IO_PORT_TYPE_INFO_IDX_MIN_SIZE, /* MBG_IO_PORT_TYPE_10MHz */ \
21013  MBG_IO_PORT_TYPE_INFO_IDX_MIN_SIZE, /* MBG_IO_PORT_TYPE_2048KHz */ \
21014  MBG_IO_PORT_TYPE_INFO_IDX_MIN_SIZE + sizeof( MBG_GPIO_LIMITS ), /* MBG_IO_PORT_TYPE_GPIO */ \
21015  MBG_IO_PORT_TYPE_INFO_IDX_MIN_SIZE, /* MBG_IO_PORT_TYPE_ETHERNET */ \
21016  MBG_IO_PORT_TYPE_INFO_IDX_MIN_SIZE, /* MBG_IO_PORT_TYPE_TERMINAL */ \
21017  MBG_IO_PORT_TYPE_INFO_IDX_MIN_SIZE, /* MBG_IO_PORT_TYPE_MULTI */ \
21018  MBG_IO_PORT_TYPE_INFO_IDX_MIN_SIZE + sizeof( POUT_INFO ), /* MBG_IO_PORT_TYPE_POUT */ \
21019  MBG_IO_PORT_TYPE_INFO_IDX_MIN_SIZE, /* MBG_IO_PORT_TYPE_SWITCH */ \
21020  MBG_IO_PORT_TYPE_INFO_IDX_MIN_SIZE + sizeof( IRIG_INFO ), /* MBG_IO_PORT_TYPE_TIMECODE */ \
21021  MBG_IO_PORT_TYPE_INFO_IDX_MIN_SIZE, /* MBG_IO_PORT_TYPE_LIGHT */ \
21022  MBG_IO_PORT_TYPE_INFO_IDX_MIN_SIZE + sizeof( MBG_IO_PORT_ANT_INFO ), /* MBG_IO_PORT_TYPE_ANTENNA */ \
21023  MBG_IO_PORT_TYPE_INFO_IDX_MIN_SIZE + sizeof( PORT_INFO ), /* MBG_IO_PORT_TYPE_UART */ \
21024  MBG_IO_PORT_TYPE_INFO_IDX_MIN_SIZE, /* MBG_IO_PORT_TYPE_DCF77 */ \
21025  MBG_IO_PORT_TYPE_INFO_IDX_MIN_SIZE /* MBG_IO_PORT_TYPE_POWER */ \
21026 }
21027 
21028 
21046 typedef struct
21047 {
21048  uint32_t port_idx;
21049  uint32_t port_type_idx;
21051 
21053 
21054 #define _mbg_swab_io_port_type_info_idx( _p, _recv ) \
21055 do \
21056 { \
21057  _mbg_swab32( &(_p)->port_idx ); \
21058  _mbg_swab32( &(_p)->port_type_idx ); \
21059  _mbg_swab_io_port_type_info( &(_p)->info, (_recv) ); \
21060 } while ( 0 )
21061 
21062 
21063 
21064 #define MAX_IO_PORT_STATUS_BITS 64
21065 
21066 
21072 {
21084 };
21085 
21086 
21095 #define MBG_IO_PORT_STATUS_STRS \
21096 { \
21097  "Disabled", \
21098  "Carrier detected", \
21099  "Input signal has never been avail", \
21100  "Input signal is avail", \
21101  "Input signal is currently lost", \
21102  "Short circuit", \
21103  "Red", \
21104  "Green", \
21105  "Blue", \
21106  "Yellow" \
21107 }
21108 
21109 
21116 #define MAX_IO_PORT_STATUS_BYTES ( MAX_IO_PORT_STATUS_BITS / 8 )
21117 
21118 
21132 typedef struct
21133 {
21135 
21137 
21138 #define _mbg_swab_io_port_status_buffer( _p ) \
21139  _nop_macro_fnc()
21140 
21141 
21142 
21152 #define _set_io_port_status_bit( _status_bit, _status_buffp ) \
21153  _set_array_bit( _status_bit, (_status_buffp)->b, MAX_IO_PORT_STATUS_BYTES )
21154 
21155 
21165 #define _clear_io_port_status_bit( _status_bit, _status_buffp ) \
21166  _clear_array_bit( _status_bit, (_status_buffp)->b, MAX_IO_PORT_STATUS_BYTES )
21167 
21168 
21183 typedef struct
21184 {
21187 
21192 
21193  uint32_t reserved_2[4];
21194 
21196 
21197 #define _mbg_port_has_log_group( _p ) ( ( _p )->log_grp != MBG_NO_LOG_GROUP )
21198 
21199 #define _mbg_swab_io_port_status( _p ) \
21200 do \
21201 { \
21202  _mbg_swab_io_port_status_buffer( &(_p)->supp_stati ); \
21203  _mbg_swab_io_port_status_buffer( &(_p)->status ); \
21204 } while ( 0 )
21205 
21206 
21207 
21225 typedef struct
21226 {
21227  uint32_t idx;
21229 
21231 
21232 #define _mbg_swab_io_port_status_idx( _p ) \
21233 do \
21234 { \
21235  _mbg_swab32( &(_p)->idx ); \
21236  _mbg_swab_io_port_status( &(_p)->status ); \
21237 } while ( 0 )
21238 
21239 
21255 #define MBG_MONITORING_STR_SIZE 32
21256 
21258 {
21263 };
21264 
21265 #define MBG_MONITORING_TYPE_STRS \
21266 { \
21267  "SNMP", \
21268  "Email", \
21269  "Syslog" \
21270 }
21271 
21273 {
21277 };
21278 
21279 
21280 
21281 typedef struct
21282 {
21285  uint32_t reserved_2[3];
21286 
21288 
21289 #define _mbg_swab_monitoring_limits( _p ) \
21290 do \
21291 { \
21292  _mbg_swab16( &(_p)->supp_types ); \
21293  _mbg_swab16( &(_p)->supp_num_events ); \
21294 } while ( 0 )
21295 
21296 
21297 
21298 /* If ::MBG_MONITORING_TYPE_MSK_SNMP is set in ::MBG_MONITORING_LIMITS::supp_types */
21299 
21301 {
21306 };
21307 
21308 #define MBG_SNMP_VERSION_STRS \
21309 { \
21310  "Version 1", \
21311  "Version 2c", \
21312  "Version 3" \
21313 }
21314 
21316 {
21320 };
21321 
21322 
21324 {
21328 };
21329 
21330 
21331 #define MBG_SNMP_FLAG_STRS \
21332 { \
21333  "System user", \
21334  "Additional config" \
21335 }
21336 
21337 
21339 {
21342 };
21343 
21344 
21345 #define SNMP_DEF_ADD_CONF_PATH "/etc/mbg"
21346 #define SNMP_DEF_ADD_CONF_FILENAME "snmp.conf.add"
21347 #define SNMP_DEF_ADD_CONF_FILE SNMP_DEF_ADD_CONF_PATH "/" SNMP_DEF_ADD_CONF_FILENAME
21348 
21349 
21350 
21351 typedef struct
21352 {
21359  uint32_t reserved_2[3];
21360  char location[MBG_MONITORING_STR_SIZE];
21363  char description[MBG_MONITORING_STR_SIZE];
21364  char reserved_3[MBG_MONITORING_STR_SIZE];
21365  char reserved_4[MBG_MONITORING_STR_SIZE];
21366 
21368 
21369 #define _mbg_swab_snmp_glb_settings( _p ) \
21370 do \
21371 { \
21372  _mbg_swab16( &(_p)->listening_port ); \
21373 } while ( 0 )
21374 
21375 
21376 
21377 typedef struct
21378 {
21385  uint8_t reserved_1[1];
21387  uint32_t reserved_2[2];
21389 
21391 
21392 #define _mbg_swab_snmp_glb_info( _p ) \
21393 do \
21394 { \
21395  _mbg_swab_snmp_glb_settings( &(_p)->settings ); \
21396  _mbg_swab16( &(_p)->supp_flags ); \
21397 } while ( 0 )
21398 
21399 
21400 
21402 {
21406 };
21407 
21408 
21409 #define MBG_SNMP_ACCESS_TYPE_STRS \
21410 { \
21411  "Read-only", \
21412  "Read-write" \
21413 }
21414 
21415 
21416 
21417 typedef struct
21418 {
21421  uint8_t reserved_1[2];
21422  uint32_t reserved_2[3];
21423  char community[MBG_MONITORING_STR_SIZE];
21424 
21426 
21427 #define _mbg_swab_snmp_v12_settings( _p ) \
21428 do \
21429 { \
21430 } while ( 0 )
21431 
21432 
21433 
21434 typedef struct
21435 {
21436  uint32_t idx;
21438 
21440 
21441 #define _mbg_swab_snmp_v12_settings_idx( _p ) \
21442 do \
21443 { \
21444  _mbg_swab32( &(_p)->idx ); \
21445  _mbg_swab_snmp_v12_settings( &(_p)->settings ); \
21446 } while ( 0 )
21447 
21448 
21449 
21450 typedef struct
21451 {
21453  uint32_t reserved_1[4];
21454 
21456 
21457 #define _mbg_swab_snmp_v12_info( _p ) \
21458 do \
21459 { \
21460  _mbg_swab_snmp_v12_settings( &(_p)->settings ); \
21461 } while ( 0 )
21462 
21463 
21464 
21465 typedef struct
21466 {
21467  uint32_t idx;
21469 
21471 
21472 #define _mbg_swab_snmp_v12_info_idx( _p ) \
21473 do \
21474 { \
21475  _mbg_swab32( &(_p)->idx ); \
21476  _mbg_swab_snmp_v12_info( &(_p)->info ); \
21477 } while ( 0 )
21478 
21479 
21480 
21481 typedef struct
21482 {
21486  uint32_t reserved_2[3];
21487  char reserved_3[MBG_MONITORING_STR_SIZE];
21488  char reserved_4[MBG_MONITORING_STR_SIZE];
21490  MBG_HOSTNAME receiver_addr;
21493 
21495 
21496 #define _mbg_swab_snmp_v12_trap_settings( _p ) \
21497 do \
21498 { \
21499  _mbg_swab_snmp_v12_settings( &(_p)->v12_settings ); \
21500  _mbg_swab16( &(_p)->dest_port ); \
21501 } while ( 0 )
21502 
21503 
21504 
21505 typedef struct
21506 {
21507  uint32_t idx;
21509 
21511 
21512 #define _mbg_swab_snmp_v12_trap_settings_idx( _p ) \
21513 do \
21514 { \
21515  _mbg_swab32( &(_p)->idx ); \
21516  _mbg_swab_snmp_v12_trap_settings( &(_p)->settings ); \
21517 } while ( 0 )
21518 
21519 
21520 
21521 typedef struct
21522 {
21524  uint32_t reserved_1[4];
21525 
21527 
21528 #define _mbg_swab_snmp_v12_trap_info( _p ) \
21529 do \
21530 { \
21531  _mbg_swab_snmp_v12_trap_settings( &(_p)->settings ); \
21532 } while ( 0 )
21533 
21534 
21535 
21536 typedef struct
21537 {
21538  uint32_t idx;
21540 
21542 
21543 #define _mbg_swab_snmp_v12_trap_info_idx( _p ) \
21544 do \
21545 { \
21546  _mbg_swab32( &(_p)->idx ); \
21547  _mbg_swab_snmp_v12_trap_info( &(_p)->info ); \
21548 } while ( 0 )
21549 
21550 
21551 
21553 {
21558 };
21559 
21560 #define MBG_SNMP_V3_SEC_LEVEL_STRS \
21561 { \
21562  "No auth no priv", \
21563  "Auth no priv", \
21564  "Auth priv" \
21565 }
21566 
21567 
21569 {
21574 };
21575 
21576 #define MBG_SNMP_V3_AUTH_PROTOCOL_STRS \
21577 { \
21578  "None", \
21579  "MD5", \
21580  "SHA" \
21581 }
21582 
21583 
21585 {
21590 };
21591 
21592 
21593 #define MBG_SNMP_V3_PRIV_PROTOCOL_STRS \
21594 { \
21595  "None", \
21596  "DES", \
21597  "AES" \
21598 }
21599 
21600 
21601 
21602 typedef struct
21603 {
21607  uint8_t priv_protocol;
21609  uint16_t flags;
21612  uint32_t reserved_1[3];
21613  char user_name[MBG_MONITORING_STR_SIZE];
21614  char auth_passwd[MBG_MONITORING_STR_SIZE];
21615  char sec_engine_id[MBG_MONITORING_STR_SIZE];
21617  char context_engine_id[MBG_MONITORING_STR_SIZE];
21618  char context_name[MBG_MONITORING_STR_SIZE];
21619  char reserved_2[MBG_MONITORING_STR_SIZE];
21620  char reserved_3[MBG_MONITORING_STR_SIZE];
21621  char priv_passwd[MBG_MONITORING_STR_SIZE];
21622  uint32_t boots;
21623  uint32_t time;
21624  uint32_t reserved_4[2];
21625 
21627 
21628 #define _mbg_swab_snmp_v3_settings( _p ) \
21629 do \
21630 { \
21631  _mbg_swab32( &(_p)->boots ); \
21632  _mbg_swab32( &(_p)->time ); \
21633 } while ( 0 )
21634 
21635 
21636 
21637 typedef struct
21638 {
21639  uint32_t idx;
21641 
21643 
21644 #define _mbg_swab_snmp_v3_settings_idx( _p ) \
21645 do \
21646 { \
21647  _mbg_swab32( &(_p)->idx ); \
21648  _mbg_swab_snmp_v3_settings( &(_p)->settings ); \
21649 } while ( 0 )
21650 
21651 
21652 
21653 typedef struct
21654 {
21656  uint32_t reserved_1[4];
21657 
21659 
21660 #define _mbg_swab_snmp_v3_info( _p ) \
21661 do \
21662 { \
21663  _mbg_swab_snmp_v3_settings( &(_p)->settings ); \
21664 } while ( 0 )
21665 
21666 
21667 
21668 typedef struct
21669 {
21670  uint32_t idx;
21672 
21674 
21675 #define _mbg_swab_snmp_v3_info_idx( _p ) \
21676 do \
21677 { \
21678  _mbg_swab32( &(_p)->idx ); \
21679  _mbg_swab_snmp_v3_info( &(_p)->info ); \
21680 } while ( 0 )
21681 
21682 
21683 
21684 typedef struct
21685 {
21688  uint8_t reserved_1[2];
21689  uint32_t reserved_2[3];
21691  MBG_HOSTNAME receiver_addr;
21694 
21696 
21697 #define _mbg_swab_snmp_v3_trap_settings( _p ) \
21698 do \
21699 { \
21700  _mbg_swab_snmp_v3_settings( &(_p)->v3_settings ); \
21701  _mbg_swab16( &(_p)->dest_port ); \
21702 } while ( 0 )
21703 
21704 
21705 
21706 typedef struct
21707 {
21708  uint32_t idx;
21710 
21712 
21713 #define _mbg_swab_snmp_v3_trap_settings_idx( _p ) \
21714 do \
21715 { \
21716  _mbg_swab32( &(_p)->idx ); \
21717  _mbg_swab_snmp_v3_trap_settings( &(_p)->settings ); \
21718 } while ( 0 )
21719 
21720 
21721 
21722 typedef struct
21723 {
21725  uint32_t reserved_1[4];
21726 
21728 
21729 #define _mbg_swab_snmp_v3_trap_info( _p ) \
21730 do \
21731 { \
21732  _mbg_swab_snmp_v3_trap_settings( &(_p)->settings ); \
21733 } while ( 0 )
21734 
21735 
21736 
21737 typedef struct
21738 {
21739  uint32_t idx;
21741 
21743 
21744 #define _mbg_swab_snmp_v3_trap_info_idx( _p ) \
21745 do \
21746 { \
21747  _mbg_swab32( &(_p)->idx ); \
21748  _mbg_swab_snmp_v3_trap_info( &(_p)->info ); \
21749 } while ( 0 )
21750 
21751 
21752 
21754 {
21759 };
21760 
21761 #define MBG_EVENT_TYPE_STRS \
21762 { \
21763  "NTP state", \
21764  "Heartbeat", \
21765  "Receiver state" \
21766 }
21767 
21768 
21770 {
21777 };
21778 
21779 #define MBG_EVENT_SEVERITY_STRS \
21780 { \
21781  "OK", \
21782  "Info", \
21783  "Warning", \
21784  "Error", \
21785  "Critical" \
21786 }
21787 
21788 typedef struct
21789 {
21794  uint32_t reserved_3[6];
21795 
21797 
21798 #define _mbg_swab_event_settings( _p ) \
21799 do \
21800 { \
21801  _mbg_swab16( &(_p)->triggers ); \
21802  _mbg_swab16( &(_p)->interval ); \
21803 } while ( 0 )
21804 
21805 
21806 
21812 typedef struct
21813 {
21814  uint32_t idx;
21816 
21818 
21819 #define _mbg_swab_event_settings_idx( _p ) \
21820 do \
21821 { \
21822  _mbg_swab32( &(_p)->idx ); \
21823  _mbg_swab_event_settings( &(_p)->settings ); \
21824 } while ( 0 )
21825 
21826 
21827 
21829 {
21832 };
21833 
21834 
21836 {
21838 };
21839 
21840 
21841 
21863 #define MBG_OWN_EVENT_CHASSIS 0xFF
21864 #define MBG_OWN_EVENT_SLOT_TYPE 0xFF
21865 #define MBG_OWN_EVENT_SLOT_TYPE_ID 0xFF
21866 #define MBG_INV_EVENT_PORT 0xFF
21867 
21868 
21872 typedef struct
21873 {
21881 
21887 
21888  uint32_t reserved_3[6];
21889 
21890 } MBG_EVENT_INFO;
21891 
21892 #define _mbg_swab_event_info( _p ) \
21893 do \
21894 { \
21895  _mbg_swab_event_settings( &(_p)->settings ); \
21896  _mbg_swab16( &(_p)->type ); \
21897  _mbg_swab16( &(_p)->value_dict_entries ); \
21898  _mbg_swab16( &(_p)->supp_flags ); \
21899  _mbg_swab16( &(_p)->supp_triggers ); \
21900  _mbg_swab16( &(_p)->flags ); \
21901 } while ( 0 )
21902 
21903 
21904 
21915 typedef struct
21916 {
21917  uint32_t idx;
21919 
21921 
21922 #define _mbg_swab_event_info_idx( _p ) \
21923 do \
21924 { \
21925  _mbg_swab32( &(_p)->idx ); \
21926  _mbg_swab_event_info( &(_p)->info ); \
21927 } while ( 0 )
21928 
21929 
21931 {
21940 };
21941 
21942 
21943 
21944 #define MBG_EVENT_VALUE_TYPE_STRS \
21945 { \
21946  "None", \
21947  "Signed32", \
21948  "Unsigned32", \
21949  "String", \
21950  "Signed range", \
21951  "Unsigned range", \
21952  "Selection" \
21953 }
21954 
21955 
21956 
21957 typedef char MBG_EVENT_STR[64];
21958 
21959 
21960 
21961 typedef struct
21962 {
21963  int32_t value;
21964  MBG_EVENT_STR string;
21965 
21967 
21968 #define _mbg_swab_event_value_selection( _p ) \
21969 do \
21970 { \
21971  _mbg_swab32( &(_p)->value ); \
21972 } while ( 0 )
21973 
21974 
21975 
21976 typedef struct
21977 {
21978  int32_t min;
21979  int32_t max;
21980 
21982 
21983 #define _mbg_swab_event_value_irange( _p ) \
21984 do \
21985 { \
21986  _mbg_swab32( &(_p)->min ); \
21987  _mbg_swab32( &(_p)->max ); \
21988 } while ( 0 )
21989 
21990 
21991 
21992 typedef struct
21993 {
21994  uint32_t min;
21995  uint32_t max;
21996 
21998 
21999 #define _mbg_swab_event_value_urange( _p ) \
22000 do \
22001 { \
22002  _mbg_swab32( &(_p)->min ); \
22003  _mbg_swab32( &(_p)->max ); \
22004 } while ( 0 )
22005 
22006 
22007 /*
22008  * Maximum size is limited to 68 bytes -> MBG_EVENT_VALUE_SELECTION
22009  * Don't enlarge it due to compatibility reasons!!
22010  */
22011 typedef union
22012 {
22016 
22017 } MBG_EVENT_VALUE;
22018 
22019 #define _mbg_swab_event_value( _p, _type ) \
22020 do \
22021 { \
22022  switch ( (_type) ) \
22023  { \
22024  case MBG_EVENT_VALUE_TYPE_SELECTION: \
22025  _mbg_swab_event_value_selection( &(_p)->selection ); \
22026  break; \
22027  \
22028  case MBG_EVENT_VALUE_TYPE_IRANGE: \
22029  _mbg_swab_event_value_irange( &(_p)->irange ); \
22030  break; \
22031  \
22032  case MBG_EVENT_VALUE_TYPE_URANGE: \
22033  _mbg_swab_event_value_urange( &(_p)->urange ); \
22034  break; \
22035  \
22036  default: \
22037  break; \
22038  } \
22039 } while ( 0 )
22040 
22041 
22042 
22043 typedef struct
22044 {
22045  uint32_t idx;
22047 
22049 
22050 #define _mbg_swab_event_value_idx( _p, _type ) \
22051 do \
22052 { \
22053  _mbg_swab32( &(_p)->idx ); \
22054  _mbg_swab_event_value( &(_p)->value, (_type) ); \
22055 } while ( 0 )
22056 
22057 
22058 /*
22059  * Maximum union size is limited to 64 bytes -> MBG_EVENT_STR
22060  * Don't enlarge the union due to compatibility reasons!!
22061  */
22062 typedef struct
22063 {
22064  uint32_t last_changed;
22065  uint32_t reserved_1[3];
22067  uint8_t reserved_2[3];
22068  union
22069  {
22070  int32_t i32;
22071  uint32_t u32;
22072  MBG_EVENT_STR string;
22073 
22074  } u;
22075 
22077 
22078 #define _mbg_swab_event_status( _p, _type ) \
22079 do \
22080 { \
22081  _mbg_swab32( &(_p)->last_changed ); \
22082  switch ( (_type) ) \
22083  { \
22084  case MBG_EVENT_VALUE_TYPE_INTEGER32: \
22085  _mbg_swab32( &(_p)->u.i32 ); \
22086  break; \
22087  \
22088  case MBG_EVENT_VALUE_TYPE_UNSIGNED32: \
22089  _mbg_swab32( &(_p)->u.u32 ); \
22090  break; \
22091  \
22092  default: \
22093  break; \
22094  } \
22095 } while ( 0 )
22096 
22097 
22098 
22099 typedef struct
22100 {
22101  uint32_t idx;
22103 
22105 
22106 #define _mbg_swab_event_status_idx( _p, _type ) \
22107 do \
22108 { \
22109  _mbg_swab32( &(_p)->idx ); \
22110  _mbg_swab_event_status( &(_p)->status, (_type) ); \
22111 } while ( 0 )
22112 
22113 
22114 
22116 {
22119 };
22120 
22121 
22123 {
22125 };
22126 
22127 
22129 {
22133 };
22134 
22135 #define MBG_SYSLOG_PROTOCOL_STRS \
22136 { \
22137  "UDP", \
22138  "TCP" \
22139 }
22140 
22141 
22143 {
22146 };
22147 
22148 
22149 typedef struct
22150 {
22152  uint8_t reserved_1[3];
22153  uint32_t reserved_2[3];
22154 
22156 
22157 #define _mbg_swab_syslog_glb_settings( _p ) \
22158 do \
22159 { \
22160 } while ( 0 )
22161 
22162 
22163 typedef struct
22164 {
22166 
22168  uint8_t reserved_1[3];
22169  uint32_t supp_flags;
22170  uint32_t supp_protocols;
22171 
22172  uint32_t reserved_2[5];
22173 
22175 
22176 #define _mbg_swab_syslog_glb_info( _p ) \
22177 do \
22178 { \
22179  _mbg_swab_syslog_glb_settings( &(_p)->settings ); \
22180  _mbg_swab32( &(_p)->supp_flags ); \
22181  _mbg_swab32( &(_p)->supp_protocols ); \
22182 } while ( 0 )
22183 
22184 
22185 typedef struct
22186 {
22191  uint32_t flags;
22192  uint32_t reserved_3[6];
22193 
22195 
22196 #define _mbg_swab_syslog_settings( _p ) \
22197 do \
22198 { \
22199  _mbg_swab16( &(_p)->port ); \
22200  _mbg_swab32( &(_p)->flags ); \
22201 } while ( 0 )
22202 
22203 
22204 typedef struct
22205 {
22207  uint32_t idx;
22208 
22210 
22211 #define _mbg_swab_syslog_settings_idx( _p ) \
22212 do \
22213 { \
22214  _mbg_swab_syslog_settings( &(_p)->settings ); \
22215  _mbg_swab32( &(_p)->idx ); \
22216 } while ( 0 )
22217 
22218 
22219 typedef struct
22220 {
22222  uint32_t reserved[8];
22223 
22224 } MBG_SYSLOG_INFO;
22225 
22226 #define _mbg_swab_syslog_info( _p ) \
22227 do \
22228 { \
22229  _mbg_swab_syslog_settings( &(_p)->settings ); \
22230 } while ( 0 )
22231 
22232 
22233 typedef struct
22234 {
22236  uint32_t idx;
22237 
22239 
22240 #define _mbg_swab_syslog_info_idx( _p ) \
22241 do \
22242 { \
22243  _mbg_swab_syslog_info( &(_p)->info ); \
22244  _mbg_swab32( &(_p)->idx ); \
22245 } while ( 0 )
22246 
22247 
22266 #define MBG_TAINTED_CFG_BYTES 256
22267 #define MBG_TAINTED_CFG_FLAG_BYTES (MBG_TAINTED_CFG_BYTES >> 3)
22268 
22274 {
22302 };
22303 
22304 typedef struct
22305 {
22308  uint32_t reserved[4];
22309 
22310 } MBG_TAINTED_CFG;
22311 
22312 #define _mbg_swab_tainted_cfg( _p ) do {} while ( 0 )
22313 
22314 #define _mbg_tainted_cfg_increase(c, cfg) \
22315 do \
22316 { \
22317  if ( ( c >= MBG_TAINTED_CFG_BYTES ) || ( c >= N_MBG_TAINTED_CFGS ) ) \
22318  break; \
22319  \
22320  ++(cfg)->tainted_cfgs[ c ]; \
22321  \
22322 } while ( 0 );
22323 
22333 #define _set_supp_tainted_cfg_bit( _cfg_bit, _tainted_cfg ) \
22334  _set_array_bit( _cfg_bit, (_tainted_cfg)->supp_cfgs, MBG_TAINTED_CFG_FLAG_BYTES )
22335 
22345 #define _clear_supp_tainted_cfg_bit( _cfg_bit, _tainted_cfg ) \
22346  _clear_array_bit( _cfg_bit, (_tainted_cfg)->supp_cfgs, MBG_TAINTED_CFG_FLAG_BYTES )
22347 
22354 #define _check_supp_tainted_cfg_bit( _cfg_bit, _tainted_cfg ) \
22355  check_feat_supp_byte_array( _cfg_bit, (_tainted_cfg)->supp_cfgs, MBG_TAINTED_CFG_FLAG_BYTES )
22356 
22370 typedef enum
22371 {
22384  USER_PERM_MRS,
22451  USER_PERM_NTP,
22467  USER_PERM_PTP,
22481  USER_PERM_FDM,
22529  N_USER_PERMS
22532 
22533 } MBG_USER_PERMS;
22534 
22535 
22541 #define MBG_USER_PERM_STRS \
22542 { \
22543  "System", \
22544  "Receiver", \
22545  "Ref. Sources", \
22546  "Serial Ports", \
22547  "IO Ports", \
22548  "Monitoring", \
22549  "Network", \
22550  "NTP", \
22551  "PTP", \
22552  "FDM", \
22553  "Sensors", \
22554  "Password", \
22555  "Users", \
22556  "Firmware", \
22557  "Services", \
22558  "Database" \
22559 }
22560 
22561 
22562 typedef enum
22563 {
22568 
22569 } MBG_USER_SCOPES;
22570 
22571 
22572 typedef enum
22573 {
22577 
22579 
22580 
22581 #define MAX_USER_PERM_BYTES 64
22582 #define MAX_USER_PERM_BITS MAX_USER_PERM_BYTES * 8
22583 
22584 
22585 typedef enum
22586 {
22593 
22595 
22596 
22597 #define MAX_USER_CHANNEL_BYTES 16
22598 #define MAX_USER_CHANNEL_BITS MAX_USER_CHANNEL_BYTES * 8
22599 
22600 
22606 #define MBG_USER_CHANNEL_STRS \
22607 { \
22608  "Web Interface", \
22609  "Device Manager", \
22610  "Shell", \
22611  "SNMP", \
22612  "Netconf" \
22613 }
22614 
22615 
22627 typedef struct
22628 {
22630 
22632 
22633 
22640 #define _set_user_perm( _user_perm_bit, _user_perm_buffp ) \
22641  _set_array_bit( _user_perm_bit, (_user_perm_buffp)->b, MAX_USER_PERM_BYTES )
22642 
22643 
22650 #define _clear_user_perm( _user_perm_bit, _user_perm_buffp ) \
22651  _clear_array_bit( _user_perm_bit, (_user_perm_buffp)->b, MAX_USER_PERM_BYTES )
22652 
22653 
22660 #define _check_user_perm( _user_perm_bit, _user_perm_buffp ) \
22661  check_feat_supp_byte_array( _user_perm_bit, (_user_perm_buffp)->b, MAX_USER_PERM_BYTES )
22662 
22663 
22673 typedef struct
22674 {
22676 
22678 
22679 
22686 #define _set_user_channel( _user_channel_bit, _user_channel_buffp ) \
22687  _set_array_bit( _user_channel_bit, (_user_channel_buffp)->b, MAX_USER_CHANNEL_BYTES )
22688 
22689 
22696 #define _clear_user_channel( _user_channel_bit, _user_channel_buffp ) \
22697  _clear_array_bit( _user_channel_bit, (_user_channel_buffp)->b, MAX_USER_CHANNEL_BYTES )
22698 
22699 
22706 #define _check_user_channel( _user_channel_bit, _user_channel_buffp ) \
22707  check_feat_supp_byte_array( _user_channel_bit, (_user_channel_buffp)->b, MAX_USER_CHANNEL_BYTES )
22708 
22709 
22710 typedef enum
22711 {
22715 
22717 
22718 
22719 typedef enum
22720 {
22723 
22725 
22726 
22727 typedef struct
22728 {
22729  uint32_t num_users;
22730  uint32_t num_levels;
22731  uint32_t reserved_1[2];
22732 
22733  uint32_t flags;
22734 
22735  uint32_t reserved_2[16];
22736 
22738 
22739 
22740 #define _mbg_swab_user_mngmnt_settings( _p ) \
22741 do \
22742 { \
22743  _mbg_swab32( &(_p)->num_users ); \
22744  _mbg_swab32( &(_p)->num_levels ); \
22745  _mbg_swab32( &(_p)->flags ); \
22746 } while ( 0 )
22747 
22748 
22749 typedef struct
22750 {
22752 
22753  uint32_t n_supp_users;
22754  uint32_t n_supp_levels;
22755 
22759 
22760  uint32_t supp_flags;
22761 
22762  uint32_t reserved[16];
22763 
22765 
22766 
22767 #define _mbg_swab_user_mngmnt_info( _p ) \
22768 do \
22769 { \
22770  _mbg_swab_user_mngmnt_settings( &(_p)->settings ); \
22771  _mbg_swab32( &(_p)->n_supp_users ); \
22772  _mbg_swab32( &(_p)->n_supp_levels ); \
22773  _mbg_swab32( &(_p)->supp_flags ); \
22774 } while ( 0 )
22775 
22776 
22777 typedef enum
22778 {
22782 
22783 } MBG_USER_TYPE;
22784 
22785 
22786 typedef enum
22787 {
22797 
22799 
22800 
22801 typedef enum
22802 {
22810 
22812 
22813 
22814 #define MBG_MAX_USER_NAME_LEN 32
22815 #define MBG_MAX_USER_PASSWORD_LEN 32
22816 
22817 
22818 typedef struct
22819 {
22821  char password[MBG_MAX_USER_PASSWORD_LEN];
22822 
22823  uint32_t level_id;
22824 
22825  uint32_t warn_days;
22826  uint32_t exp_days;
22827  uint32_t max_fails;
22828  uint32_t flags;
22831 
22833 
22837 
22838  uint32_t reserved[16];
22839 
22841 
22842 
22843 #define _mbg_swab_user_settings( _p ) \
22844 do \
22845 { \
22846  _mbg_swab32( &(_p)->warn_days ); \
22847  _mbg_swab32( &(_p)->exp_days ); \
22848  _mbg_swab32( &(_p)->max_fails ); \
22849  _mbg_swab32( &(_p)->flags ); \
22850 } while ( 0 )
22851 
22852 
22853 typedef struct
22854 {
22855  uint32_t idx;
22857 
22859 
22860 
22861 #define _mbg_swab_user_settings_idx( _p ) \
22862 do \
22863 { \
22864  _mbg_swab32( &(_p)->idx ); \
22865  _mbg_swab_user_settings( &(_p)->settings ); \
22866 } while ( 0 )
22867 
22868 
22869 typedef struct
22870 {
22872 
22876 
22877  uint32_t uid;
22878  uint32_t gid;
22879 
22880  uint32_t password_doc;
22881 
22882  uint32_t supp_flags;
22883  uint32_t reserved_3[16];
22884 
22885 } MBG_USER_INFO;
22886 
22887 
22888 #define _mbg_swab_user_info( _p ) \
22889 do \
22890 { \
22891  _mbg_swab_user_settings( &(_p)->settings ); \
22892  _mbg_swab32( &(_p)->uid ); \
22893  _mbg_swab32( &(_p)->gid ); \
22894  _mbg_swab32( &(_p)->password_doc ); \
22895  _mbg_swab32( &(_p)->supp_flags ); \
22896 } while ( 0 )
22897 
22898 
22899 typedef struct
22900 {
22901  uint32_t idx;
22903 
22905 
22906 
22907 #define _mbg_swab_user_info_idx( _p ) \
22908 do \
22909 { \
22910  _mbg_swab32( &(_p)->idx ); \
22911  _mbg_swab_user_info( &(_p)->info ); \
22912 } while ( 0 )
22913 
22914 
22915 typedef enum
22916 {
22922 
22924 
22925 
22926 typedef enum
22927 {
22932 
22934 
22935 
22936 typedef struct
22937 {
22938  uint32_t flags;
22939  uint32_t login_cnt;
22940  uint32_t num_fails;
22941 
22945 
22946  uint32_t reserved[16];
22947 
22948 } MBG_USER_STATUS;
22949 
22950 
22951 #define _mbg_swab_user_status( _p ) \
22952 do \
22953 { \
22954  _mbg_swab32( &(_p)->flags ); \
22955  _mbg_swab32( &(_p)->login_cnt ); \
22956  _mbg_swab32( &(_p)->num_fails ); \
22957 } while ( 0 )
22958 
22959 
22960 typedef struct
22961 {
22962  uint32_t idx;
22964 
22966 
22967 
22968 #define _mbg_swab_user_status_idx( _p ) \
22969 do \
22970 { \
22971  _mbg_swab32( &(_p)->idx ); \
22972  _mbg_swab_user_status( &(_p)->status ); \
22973 } while ( 0 )
22974 
22975 
22990 typedef enum
22991 {
22992  MBG_SVC_TYPE_NTP, // Device supports NTP service (ntpd, or OpenNTP, etc ...)
22993  MBG_SVC_TYPE_SNMP, // Device supports SNMP service (net-snmp, etc...)
22995 
22997 
22998 
22999 #define MBG_SERVICE_TYPE_STRS \
23000 { \
23001  "NTP", \
23002  "SNMP" \
23003 }
23004 
23005 
23006 typedef enum
23007 {
23010 
23012 
23013 
23014 typedef struct
23015 {
23017  uint8_t reserved_1[3];
23018  uint32_t reserved_2[3];
23019 
23021 
23022 
23023 #define _mbg_swab_svc_mgmt_info( _p ) do {} while ( 0 )
23024 
23025 
23026 #define MBG_SVC_NAME_LEN 32
23027 #define MBG_SVC_CMD_LEN 192
23028 
23029 
23030 typedef enum
23031 {
23036 
23038 
23039 
23040 #define MBG_SERVICE_STATE_STRS \
23041 { \
23042  "Unknown", \
23043  "Running", \
23044  "Stopped" \
23045 }
23046 
23047 
23048 typedef enum
23049 {
23054 
23055 } MBG_SERVICE_CTL;
23056 
23057 
23058 typedef struct
23059 {
23060  char cmdline[MBG_SVC_CMD_LEN];
23062  uint8_t reserved_1[3];
23063  uint32_t reserved_2[3];
23064 
23066 
23067 
23068 #define _mbg_swab_svc_settings( _p ) do {} while ( 0 )
23069 
23070 
23071 typedef struct
23072 {
23073  uint32_t idx;
23075 
23077 
23078 
23079 #define _mbg_swab_svc_settings_idx( _p ) \
23080 do \
23081 { \
23082  _mbg_swab32( &(_p)->idx ); \
23083  _mbg_swab_svc_settings( &(_p)->settings ); \
23084 } while ( 0 )
23085 
23086 
23087 typedef enum
23088 {
23092 
23094 
23095 
23096 typedef enum
23097 {
23100 
23102 
23103 
23104 typedef struct
23105 {
23109  uint8_t reserved_1[2];
23110  char name[MBG_SVC_NAME_LEN];
23111  uint32_t reserved_2[5];
23112 
23114 
23115 
23116 #define _mbg_swab_svc_info( _p ) \
23117 do \
23118 { \
23119  _mbg_swab_svc_settings( &(_p)->settings ); \
23120 } while ( 0 )
23121 
23122 
23123 typedef struct
23124 {
23125  uint32_t idx;
23127 
23129 
23130 
23131 #define _mbg_swab_svc_info_idx( _p ) \
23132 do \
23133 { \
23134  _mbg_swab32( &(_p)->idx ); \
23135  _mbg_swab_svc_info( &(_p)->info ); \
23136 } while ( 0 )
23137 
23138 
23139 typedef struct
23140 {
23142  uint8_t reserved_1[3];
23143  uint32_t reserved_2[3];
23144 
23146 
23147 
23148 #define _mbg_swab_svc_status( _p ) do {} while ( 0 )
23149 
23150 
23151 typedef struct
23152 {
23153  uint32_t idx;
23155 
23157 
23158 
23159 #define _mbg_swab_svc_status_idx( _p ) \
23160 do \
23161 { \
23162  _mbg_swab32( &(_p)->idx ); \
23163  _mbg_swab_svc_status( &(_p)->status ); \
23164 } while ( 0 )
23165 
23166 
23181 typedef struct
23182 {
23187  uint32_t reserved_1[15];
23188 
23189 } MBG_FW_GLB_INFO;
23190 
23191 
23192 #define _mbg_swab_fw_glb_info( _p ) \
23193 do \
23194 { \
23195 } while ( 0 )
23196 
23197 
23199 {
23206 };
23207 
23208 
23210 {
23215 };
23216 
23217 
23219 {
23231 };
23232 
23233 
23234 #define MBG_FW_FILE_STRS \
23235 { \
23236  "Unknown file(s)", \
23237  "Incremental file(s)", \
23238  "Meinberg device tree", \
23239  "Preloader", \
23240  "Root filesystem", \
23241  "Kernel device tree", \
23242  "FPGA firmware binary", \
23243  "Initial ramdisk", \
23244  "Version.txt", \
23245  "Kernel" \
23246 }
23247 
23248 
23250 {
23261 };
23262 
23263 
23264 typedef struct
23265 {
23266  uint32_t revision;
23267  uint32_t flags;
23271  uint8_t reserved_2[3];
23272  uint32_t files;
23273  uint32_t reserved_3[11];
23274 
23275 } MBG_FW_INFO;
23276 
23277 
23278 #define _mbg_swab_fw_info( _p ) \
23279 do \
23280 { \
23281  _mbg_swab32( &(_p)->revision ); \
23282  _mbg_swab32( &(_p)->flags ); \
23283  _mbg_swab16( &(_p)->num_ufus ); \
23284 } while ( 0 )
23285 
23286 
23287 typedef struct
23288 {
23289  uint32_t idx;
23291 
23292 } MBG_FW_INFO_IDX;
23293 
23294 
23295 #define _mbg_swab_fw_info_idx( _p ) \
23296 do \
23297 { \
23298  _mbg_swab32( &(_p)->idx ); \
23299  _mbg_swab_fw_info( &(_p)->info ); \
23300 } while ( 0 )
23301 
23302 
23303 typedef struct
23304 {
23305  uint32_t revision;
23307  uint8_t reserved_1[3];
23310  uint32_t reserved_3[5];
23311 
23312 } MBG_FW_UFU_INFO;
23313 
23314 
23315 #define _mbg_swab_fw_ufu_info( _p ) \
23316 do \
23317 { \
23318  _mbg_swab32( &(_p)->revision ); \
23319  _mbg_swab16( &(_p)->model_code ); \
23320 } while ( 0 )
23321 
23322 
23323 typedef struct
23324 {
23328 
23330 
23331 
23332 #define _mbg_swab_fw_ufu_info_idx( _p ) \
23333 do \
23334 { \
23335  _mbg_swab16( &(_p)->fw_idx ); \
23336  _mbg_swab16( &(_p)->ufu_idx ); \
23337  _mbg_swab_fw_ufu_info( &(_p)->info ); \
23338 } while ( 0 )
23339 
23340 
23345 {
23349 
23353 
23358 
23363 
23367 
23369 };
23370 
23371 
23372 typedef struct
23373 {
23380  uint16_t model_code;
23383  uint32_t reserved_4[4];
23384 
23386 
23387 
23388 #define _mbg_swab_fw_ufu_flash_cmd( _p ) \
23389 do \
23390 { \
23391  _mbg_swab16( &(_p)->ufu_idx ); \
23392  _mbg_swab16( &(_p)->model_code ); \
23393 } while ( 0 )
23394 
23395 
23410 {
23415 };
23416 
23417 
23418 #define MBG_DATABASE_TYPE_STRS \
23419 { \
23420  "SQLite", \
23421  "MySQL", \
23422  "PostgreSQL" \
23423 }
23424 
23425 
23426 typedef struct
23427 {
23431  uint32_t reserved_3[3];
23432 
23434 
23435 
23436 #define _mbg_swab_database_glb_info( _p ) \
23437 do \
23438 { \
23439  _mbg_swab16( &(_p)->supp_dbs ); \
23440 } while ( 0 )
23441 
23442 
23444 {
23448 };
23449 
23450 
23452 {
23455 };
23456 
23457 
23458 #define MBG_DATABASE_MAX_STR 32
23459 
23460 
23461 typedef struct
23462 {
23465  uint32_t reserved_2[7];
23467  char password[MBG_DATABASE_MAX_STR];
23468 
23476 
23477  char dbname[MBG_DATABASE_MAX_STR];
23478  char reserved_3[MBG_DATABASE_MAX_STR];
23479  char reserved_4[MBG_DATABASE_MAX_STR];
23480 
23482 
23483 
23484 #define _mbg_swab_database_settings( _p ) \
23485 do \
23486 { \
23487  _mbg_swab16( &(_p)->port ); \
23488 } while ( 0 )
23489 
23490 
23491 typedef struct
23492 {
23493  uint32_t idx;
23495 
23497 
23498 
23499 #define _mbg_swab_database_settings_idx( _p ) \
23500 do \
23501 { \
23502  _mbg_swab32( &(_p)->idx ); \
23503  _mbg_swab_database_settings( &(_p)->settings ); \
23504 } while ( 0 )
23505 
23506 
23508 {
23511 };
23512 
23513 
23515 {
23518 };
23519 
23520 
23522 {
23530 };
23531 
23532 
23534 {
23541 };
23542 
23543 
23544 typedef struct
23545 {
23549 
23552 
23555 
23557 
23563 
23564  uint32_t reserved_3[2];
23565 
23567 
23568 
23569 #define _mbg_swab_database_info( _p ) \
23570 do \
23571 { \
23572  _mbg_swab_database_settings( &(_p)->settings ); \
23573  _mbg_swab16( &(_p)->supp_members ); \
23574  _mbg_swab16( &(_p)->supp_cfgs ); \
23575 } while ( 0 )
23576 
23577 
23578 typedef struct
23579 {
23580  uint32_t idx;
23582 
23584 
23585 
23586 #define _mbg_swab_database_info_idx( _p ) \
23587 do \
23588 { \
23589  _mbg_swab32( &(_p)->idx ); \
23590  _mbg_swab_database_info( &(_p)->info ); \
23591 } while ( 0 )
23592 
23593 
23595 {
23598 };
23599 
23600 
23601 typedef struct
23602 {
23603  uint32_t cmd;
23604  uint32_t length;
23605  uint32_t reserved[2];
23606  unsigned char payload[240];
23607 
23609 
23610 
23611 #define _mbg_swab_database_cmd( _p ) \
23612 do \
23613 { \
23614  _mbg_swab32( &(_p)->cmd ); \
23615  _mbg_swab32( &(_p)->length ); \
23616 } while ( 0 )
23617 
23618 
23623 #if defined( _USING_BYTE_ALIGNMENT )
23624  #pragma pack() // set default alignment
23625  #undef _USING_BYTE_ALIGNMENT
23626 #endif
23627 
23628 /* End of header body */
23629 
23630 #endif /* _GPSDEFS_H */
PTP_V1_TIME_PROP_DATASET_FLAGS_MASKS
PTPv1 time drop dataset flag masks used with MBG_PTP_V1_TIME_PROPERTIES_DATASET::flags.
Definition: gpsdefs.h:14725
double deltan
+- Mean Motion Diff. from computed value [rad/sec]
Definition: gpsdefs.h:18455
(reserved)
Definition: gpsdefs.h:8080
PTP_CFG_FLAGS
Flags bits used with PTP configuration.
Definition: gpsdefs.h:13405
MBG_IP_ADDR broadcast
Broadcast address associated with this interface.
Definition: gpsdefs.h:12174
uint8_t reserved_2
reserved, currently always 0
Definition: gpsdefs.h:9132
uint32_t reserved_1
Reserved for future use, currently 0.
Definition: gpsdefs.h:19801
See MBG_SYSLOG_PROTOCOL_TCP.
Definition: gpsdefs.h:22145
output voltage in val/exp, output state in flags
Definition: gpsdefs.h:9890
int16_t ann_intv_max
log2 of maximum announce interval [s]
Definition: gpsdefs.h:13353
uint32_t fractions
binary fractional part of a second, 0xFFFFFFFF -> 0.9999999... s (resolution 2^-32s =~ 233 ps) ...
Definition: gpsdefs.h:16487
MBG_TLV_UID uid
Unique source ID. See MBG_TLV_DATA::uid.
Definition: gpsdefs.h:18373
Current SHS settings and general SHS capabilities.
Definition: gpsdefs.h:17724
uint32_t reserved_3
reserved, currently 0
Definition: gpsdefs.h:15254
uint8_t num_v12_trap_receivers
Number of configured v3 settings, see MBG_SNMP_V3_INFO_IDX.
Definition: gpsdefs.h:21355
uint8_t slot_type
The IMS slot type, see XBP_SLOT_TYPES.
Definition: gpsdefs.h:18017
UFU file has been flashed.
Definition: gpsdefs.h:9639
uint32_t reserved_3
Reserved for future use, currently 0.
Definition: gpsdefs.h:19603
General NTP restriction limits to be read from a device.
Definition: gpsdefs.h:15374
MBG_IMS_FDM_STATE_FLAG_BITS
Enumeration of flag bits used to define MBG_IMS_FDM_STATE_FLAG_MASKS.
Definition: gpsdefs.h:10231
see NTP_PEER_STATE_SUPP_ASS_ID
Definition: gpsdefs.h:17377
TM_GPS_STATUS_BITS_EX
Enumeration of extended status bits used with TM_STATUS_EXT.
Definition: gpsdefs.h:2691
Current SHS status.
Definition: gpsdefs.h:17747
POUT_DATA pout_data
Additional configuration data, see POUT_DATA.
Definition: gpsdefs.h:5706
MBG_PTP_V2_PORT_DATASET port_dataset
see MBG_PTP_V2_PORT_DATASET
Definition: gpsdefs.h:15076
A structure to used to read the status of the PTP protocol stack.
Definition: gpsdefs.h:13184
MBG_IP_ADDR addr
network address
Definition: gpsdefs.h:11948
SMPTE ST 2059-2 profile extension, only if PTP_MSK_OPT_EXT_SMPTE is set.
Definition: gpsdefs.h:13646
uint8_t reserved_5
Reserved, currently always 0.
Definition: gpsdefs.h:17441
src can be used for phase synchronization
Definition: gpsdefs.h:6776
MBG_SYSLOG_GLB_SETTINGS settings
MBG_SYSLOG_GLB_SETTINGS.
Definition: gpsdefs.h:22165
XMR_EXT_SRC_FEAT_FLAG_MSKS
XMR source feature flag bit masks.
Definition: gpsdefs.h:7268
#define MAX_LNO_OUTPUT
Definition: gpsdefs.h:17567
uint16_t rsvd_1
reserved, currently always 0
Definition: gpsdefs.h:11283
CSUM csum
checksum of the remaining bytes
Definition: gpsdefs.h:18599
uint32_t type
sync type, see :: MBG_GPIO_SYNC_TYPES
Definition: gpsdefs.h:8692
uint16_t supp_flags_ex
A bit mask of extended supported features, see PTP_CFG_FLAG_EX_MASKS.
Definition: gpsdefs.h:13348
uint32_t reserved_1
Reserved for future use, currently 0.
Definition: gpsdefs.h:19668
see NTP_FLASH_STAT_PKT_AUTOKEY
Definition: gpsdefs.h:17293
MBG_BAUD_RATE_CODES
Enumeration of serial port baud rates.
Definition: gpsdefs.h:3231
uint8_t type
see MULTI_REF_TYPES, and note for XMRIF_BIT_MRF_NONE_SUPP
Definition: gpsdefs.h:6703
MBG_LICENSE_PTPV1_MEMBER_MSKS
Bit masks of PTPV1 license specific members.
Definition: gpsdefs.h:19720
Query MBG_NET_INTF_ROUTE_SETTINGS by its index.
Definition: gpsdefs.h:12303
uint16_t flags
additional information, see RECEIVER_INFO_FLAG_MASKS
Definition: gpsdefs.h:890
GBIT Link is currently clock slave.
Definition: gpsdefs.h:14199
uint8_t instance
instance number, if multiple instances are supported, else 0
Definition: gpsdefs.h:6704
see NTP_RESTR_FLAG_NOSERVE
Definition: gpsdefs.h:15355
uint32_t reserved_1
Reserved, currently always 0.
Definition: gpsdefs.h:12585
uint32_t reserved_0
currently reserved, unused, always 0
Definition: gpsdefs.h:19090
See MBG_SVC_CAN_BE_DISABLED.
Definition: gpsdefs.h:23098
Supports XHE external rubidium unit I/O commands.
Definition: gpsdefs.h:2358
supports filter jitter, see NTP_PEER_STATE::jitter
Definition: gpsdefs.h:17361
Configuration settings for a specific PTP unicast master.
Definition: gpsdefs.h:14329
[R/-] supports unicast slave role, see PTP_ROLE_UNICAST_SLAVE
Definition: gpsdefs.h:13409
Flags structure for the PTPv2 default dataset.
Definition: gpsdefs.h:14844
Ephemeris data used for orbit.
Definition: gpsdefs.h:10952
MBG_OPT_SETTINGS settings
current settings
Definition: gpsdefs.h:5344
uint32_t reserved_3
Reserved, currently always 0.
Definition: gpsdefs.h:12531
see MBG_GPIO_FIXED_FREQ_2048kHz
Definition: gpsdefs.h:7924
uint32_t reserved_4
Reserved for future use, currently 0.
Definition: gpsdefs.h:19553
NTP parse driver.
Definition: gpsdefs.h:15610
see MBG_NET_INTF_LINK_PORT_TYPE_MII
Definition: gpsdefs.h:11538
uint32_t reserved_2
reserved, currently 0
Definition: gpsdefs.h:16270
#define REMOTE
Definition: gpsdefs.h:10556
uint32_t reserved
reserved, currently always 0
Definition: gpsdefs.h:7779
see SHS_FLAG_BIT_DISB_PPS
Definition: gpsdefs.h:17817
uint8_t pulse_shift_res
pulse shift resolution, in [ns], only if POUT_SUPP_PULSE_SHIFT, see POUT_DATA::pulse_shift ...
Definition: gpsdefs.h:6286
MBG_GPIO_FLAGS
Enumeration of general flags used with a GPIO.
Definition: gpsdefs.h:9102
MBG_IMS_FDM_SETTINGS settings
Definition: gpsdefs.h:10318
Variable frequency input, freq == 0 if input not used.
Definition: gpsdefs.h:7665
uint32_t uid
user id assigned by the OS
Definition: gpsdefs.h:22877
uint16_t reserved_2
reserved, currently always 0
Definition: gpsdefs.h:11910
uint16_t max_ntp_clients
Maximum number of supported NTP clients to be monitored.
Definition: gpsdefs.h:19803
see MBG_GPIO_BITS_OUT_FLAG_B8ZS
Definition: gpsdefs.h:8287
uint32_t reserved0
reserved, currently always 0
Definition: gpsdefs.h:8544
NTP_SYSTEMS
Enumeration of operating systems using NTP.
Definition: gpsdefs.h:16592
Output switched on if both position verified and time synchronized.
Definition: gpsdefs.h:5839
Oscillator.
Definition: gpsdefs.h:20175
uint8_t XBP_PORT
An XBP port specifier.
Definition: gpsdefs.h:17839
see PTP_OPT_EXT_TELECOM
Definition: gpsdefs.h:13618
external oscillator disciplined and looped back via 1 PPS I/O
Definition: gpsdefs.h:6438
uint32_t num_clk_phase
Number of multi-phase clock signals.
Definition: gpsdefs.h:19856
uint8_t n_outputs
actual number of outputs [0..MAX_LNO_OUTPUT-1]
Definition: gpsdefs.h:17577
MBG_GPIO_BITS_OUT_SUPP bits_out
if MBG_GPIO_SETTINGS::type is MBG_GPIO_TYPE_BITS_OUT
Definition: gpsdefs.h:9216
int8_t precision
Precision of the peer clock (2^precision)
Definition: gpsdefs.h:17420
CSUM csum
Definition: gpsdefs.h:2513
see POUT_BIT_SUPP_DCF77_UTC, POUT_SUPP_DCF77_UTC
Definition: gpsdefs.h:6332
Clock 1 fixed (CPU board only)
Definition: gpsdefs.h:20172
uint32_t reserved
reserved, currently always 0
Definition: gpsdefs.h:7611
Number of event log entries that can be stored and yet have been saved.
Definition: gpsdefs.h:9540
#define DEFAULT_N_COM
Definition: gpsdefs.h:3911
has programmable synthesizer output
Definition: gpsdefs.h:2185
uint32_t reserved_rev_8
Definition: gpsdefs.h:19438
see IFLAGS_BIT_DISABLE_TFOM
Definition: gpsdefs.h:5041
uint8_t tc_line1
second time code line location, valid lines: 6-22
Definition: gpsdefs.h:8542
uint32_t reserved_1
reserved, currently not used
Definition: gpsdefs.h:17880
uint32_t reserved_0
Reserved, currently always 0.
Definition: gpsdefs.h:12469
Address is an autoconf address, which should be ignored in the configuration.
Definition: gpsdefs.h:11801
uint32_t num_io
number of supported GPIO ports
Definition: gpsdefs.h:7610
fully synchronized
Definition: gpsdefs.h:2882
[R/W] PTP Module can run as NTP Server in Software mode in parallel to PTP HW time stamp modes ...
Definition: gpsdefs.h:13440
NTP Unicast Client.
Definition: gpsdefs.h:12940
MBG_IMS_SENSOR_STATE state
sensor state
Definition: gpsdefs.h:9866
[R/W] maybe required for certain NIC chips, not used by Meinberg
Definition: gpsdefs.h:13408
uint8_t reserved_2
Future use.
Definition: gpsdefs.h:15693
uint16_t MBG_VLAN_CFG
VLAN configuration.
Definition: gpsdefs.h:11193
uint16_t last_sync_event_sequence_number
Definition: gpsdefs.h:14789
NTP atom driver (standalone PPS)
Definition: gpsdefs.h:15612
int32_t BAUD_RATE
A data type to configure a serial port&#39;s baud rate.
Definition: gpsdefs.h:3190
uint16_t idx
0..MBG_UCAP_NET_GLB_INFO::n_supp_recvs-1
Definition: gpsdefs.h:12615
MBG_GNSS_MODE_SETTINGS settings
Current GNSS mode settings.
Definition: gpsdefs.h:10696
uint32_t supp_fmts
bit mask of supported formats, see MBG_GPIO_BITS_FORMAT_MASKS
Definition: gpsdefs.h:8210
uint8_t max_servers
Maximum number of configurable servers.
Definition: gpsdefs.h:22167
A structure used to store user permissions.
Definition: gpsdefs.h:22627
STR_MODE_MASKS
Bit masks associated with STR_MODES.
Definition: gpsdefs.h:3777
uint16_t freq
always EF_FREQ_ALL
Definition: gpsdefs.h:3146
see STR_AUTO
Definition: gpsdefs.h:3782
int32_t val
sensor value, in units according to the type
Definition: gpsdefs.h:9841
RECEIVER_INFO ri
Definition: gpsdefs.h:18013
uint16_t epld_control
EPLD control word, see SCU_CTRL_MASKS.
Definition: gpsdefs.h:10452
has PTP Unicast support
Definition: gpsdefs.h:2204
number of defined scales
Definition: gpsdefs.h:8815
see NTP_RESTR_FLAG_NOPEER
Definition: gpsdefs.h:15354
PORT_SETTINGS uart_settings
Definition: gpsdefs.h:20636
the number of known modes
Definition: gpsdefs.h:3765
uint8_t type
see MBG_IP_ADDR_TYPES
Definition: gpsdefs.h:11908
MBG_IO_PORT_TYPE_INFO_U data
Port type specific data.
Definition: gpsdefs.h:20990
Summary of configuration and health data of all satellites.
Definition: gpsdefs.h:18512
Network Time Protocol (NTP)
Definition: gpsdefs.h:6427
modulated
Definition: gpsdefs.h:4532
CSUM csum
checksum of the remaining bytes
Definition: gpsdefs.h:18514
NTP trusted key settings.
Definition: gpsdefs.h:15989
Configuration settings of a specific serial port.
Definition: gpsdefs.h:3594
TM_GPS tm
time converted to UTC and/or local time according to TZDL settings
Definition: gpsdefs.h:2717
uint8_t n_str_type
max num of string types supported by any port
Definition: gpsdefs.h:888
[R/-] supports the NTP HW time stamping in Slave mode
Definition: gpsdefs.h:13427
PTP_CFG_FLAGS_EX
Extended flags bits used with PTP configuration.
Definition: gpsdefs.h:13521
See MBG_IO_PORT_SRC_OSC.
Definition: gpsdefs.h:20225
double A1
+- Clock Correction Coefficient 1 [sec/sec]
Definition: gpsdefs.h:18571
NTP_MISC_MSKS
Flag masks associated with NTP_MISC_FLAGS.
Definition: gpsdefs.h:16086
MBG_GPIO_FREQ freq
Current frequency.
Definition: gpsdefs.h:10160
Ephemeris parameters of one specific satellite.
Definition: gpsdefs.h:18436
See MBG_FW_FILE_KERNEL.
Definition: gpsdefs.h:23260
A structure used to hold a fixed frequency value.
Definition: gpsdefs.h:846
uint8_t poll_intv_max
maximal supported NTP polling interval
Definition: gpsdefs.h:16267
NTP supports SHA1 as key hashing algorithm.
Definition: gpsdefs.h:15821
uint8_t sec
0..59,60
Definition: gpsdefs.h:5575
uint16_t reserved_6
Reserved, currently always 0.
Definition: gpsdefs.h:17445
NTP trusted key info, with index.
Definition: gpsdefs.h:16051
MBG_GPIO_FREQ freq
frequency in range MBG_GPIO_FREQ_IN_SUPP::freq_min..MBG_GPIO_FREQ_IN_SUPP::freq_max, or 0 if input is not used
Definition: gpsdefs.h:7776
uint8_t max_refclks
number of supported refclks NTP_REFCLK_CFG_INFO
Definition: gpsdefs.h:16441
uint32_t reserved_3
Reserved, currently always 0.
Definition: gpsdefs.h:12587
NTP stats can generally be enabled or disabled.
Definition: gpsdefs.h:15499
uint32_t reserved_2
< Currently reserved, unused, always 0
Definition: gpsdefs.h:18981
1958-01-01 00:00:00
Definition: gpsdefs.h:8445
uint32_t level_id
unique id for user level, only used if MBG_USER_INFO::type is USER_TYPE_LEVEL
Definition: gpsdefs.h:22823
COM_PARM parm
transmission speed, framing, etc.
Definition: gpsdefs.h:3509
see MBG_GPIO_DIGITAL_AUDIO_RESERVED_FLAG
Definition: gpsdefs.h:9032
uint32_t flags
NTP flags, see NTP_FLAG_MASKS.
Definition: gpsdefs.h:16421
Signal acquired.
Definition: gpsdefs.h:10922
uint32_t supp_flags_manycast
supported flags for manycast associations
Definition: gpsdefs.h:16315
uint8_t label_rear
Indicates, that the label is on the rear side.
Definition: gpsdefs.h:20426
See MBG_IO_PORT_DIR_OUT.
Definition: gpsdefs.h:20153
GNSS_SAT_INFO gnss_sat_info
see GNSS_SAT_INFO
Definition: gpsdefs.h:10782
system peer
Definition: gpsdefs.h:17084
uint8_t parent_clock_class
clock class of the parent node
Definition: gpsdefs.h:13212
Output settings for FDM devices plus index.
Definition: gpsdefs.h:10026
MBG_IO_PORT_STATUS status
Definition: gpsdefs.h:21228
uint32_t flags
flags, see MBG_GPIO_VIDEO_OUT_FLAG_MASKS
Definition: gpsdefs.h:8536
Internal time not valid/set.
Definition: gpsdefs.h:5227
uint32_t supp_assoc_types
supported types of NTP associations
Definition: gpsdefs.h:16307
uint32_t flags
Currently reserved, unused, always 0.
Definition: gpsdefs.h:18914
see NTP_RESTR_FLAG_FLAKE
Definition: gpsdefs.h:15346
antenna short circuit detected
Definition: gpsdefs.h:9622
MBG_GPIO_SETTINGS settings
current settings
Definition: gpsdefs.h:9256
Analog output reflects frequency deviation.
Definition: gpsdefs.h:10091
See MBG_FW_FLAG_ACTIVE.
Definition: gpsdefs.h:23212
IO Port Type Info Index.
Definition: gpsdefs.h:21046
see MBG_GPIO_BITS_ERR_LOS
Definition: gpsdefs.h:8194
NANO_TIME last_mue
mean value (mue) of prev. interval
Definition: gpsdefs.h:7324
Static, not configurable.
Definition: gpsdefs.h:20168
MBG_GPIO_STUDIO_CLOCK_SCALES
Enumeration of studio clock scales.
Definition: gpsdefs.h:8798
HD frame/field sync.
Definition: gpsdefs.h:8616
see WRN_COLD_BOOT
Definition: gpsdefs.h:6633
uint32_t reserved_rev_5
Definition: gpsdefs.h:19435
MBG_LED_INFO info
LED info.
Definition: gpsdefs.h:18939
server reachable
Definition: gpsdefs.h:17188
IO Port Type Status.
Definition: gpsdefs.h:21225
1 PPS input signal
Definition: gpsdefs.h:6424
Configuration of a GPIO variable frequency input.
Definition: gpsdefs.h:7774
MBG_NET_INTF_LINK_BOND_STATES
Network interface link bonding states.
Definition: gpsdefs.h:11751
MBG_TLV_FEAT_BUFFER supp_tlv_feat
A byte array of supported TLV feature bits, see MBG_TLV_FEAT_TYPES.
Definition: gpsdefs.h:18267
uint32_t reserved0
reserved, currently always 0
Definition: gpsdefs.h:8726
SHS_STATES
SHS configuration flag bits.
Definition: gpsdefs.h:17776
see MBG_IMS_FDM_OUTPUT_MODE_TD
Definition: gpsdefs.h:10106
voltage in val/exp, output state in flags
Definition: gpsdefs.h:9887
u-blox GNSS module with Galileo support
Definition: gpsdefs.h:19306
Status information on a single ref time source.
Definition: gpsdefs.h:6858
modulated
Definition: gpsdefs.h:4548
uint32_t reserved_0
Definition: gpsdefs.h:19866
XMR_EXT_SRC_INFO structure supported
Definition: gpsdefs.h:7089
Auto detect line frequency.
Definition: gpsdefs.h:10195
uint32_t login_cnt
current number of active logins
Definition: gpsdefs.h:22939
MBG_NET_INTF_ROUTE_SETTINGS settings
see MBG_NET_INTF_ROUTE_SETTINGS
Definition: gpsdefs.h:12306
see NTP_FLASH_STAT_PEER_STRATUM
Definition: gpsdefs.h:17295
Supports user authentication and command GPS_AUTH_USER_INFO.
Definition: gpsdefs.h:2361
see NTP_REFCLK_TYPE_LOCAL
Definition: gpsdefs.h:15628
uint8_t dflt_clk_class_unsync_cold
Definition: gpsdefs.h:13289
An IPv4 or IPv6 network address.
Definition: gpsdefs.h:11906
See MBG_FW_FILE_PRELOADER.
Definition: gpsdefs.h:23254
uint16_t reserved_0
reserved, currently always 0
Definition: gpsdefs.h:17580
1) MBG_TLV_TYPE_BLOB => MBG_LICENSE_PTPV1_IDX, see License information
Definition: gpsdefs.h:18164
Ethernet (raw layer 2)
Definition: gpsdefs.h:12647
uint8_t port_state
one of the enumerated port states, see PTP_PORT_STATES
Definition: gpsdefs.h:13188
uint32_t flags
reserved, currently always 0
Definition: gpsdefs.h:7964
60Hz line frequency
Definition: gpsdefs.h:10197
undefined type
Definition: gpsdefs.h:5138
MBG_IO_PORT_TYPE_INFO info
Definition: gpsdefs.h:21050
indicates that the device has a network interface
Definition: gpsdefs.h:10503
XBP_SLOT_TYPES
Possible IMS slot types of an XBP device.
Definition: gpsdefs.h:17966
entering interleave mode
Definition: gpsdefs.h:17198
PTP state changed to PRE_MASTER.
Definition: gpsdefs.h:9631
NTP_CLNT_MODE_SETTINGS settings
Definition: gpsdefs.h:16262
MBG_GPIO_BITS_FORMATS
Enumeration of BITS signal formats.
Definition: gpsdefs.h:8014
MBG_GPIO_DIGITAL_AUDIO_FLAGS
Enumeration of flags used with GPIO type digital audio outputs.
Definition: gpsdefs.h:9015
uint16_t type
record type, see CAL_REC_TYPES
Definition: gpsdefs.h:5120
MBG_SNMP_V3_TRAP_SETTINGS settings
Definition: gpsdefs.h:21724
uint8_t reserved
Reserved, currently always 0.
Definition: gpsdefs.h:10752
uint16_t fw_idx
0...MBG_FW_GLB_INFO::installed_fws - 1
Definition: gpsdefs.h:23325
uint8_t sys_evt_cnt
Number of events, since the last time the event code changed.
Definition: gpsdefs.h:16878
antenna is disconnected
Definition: gpsdefs.h:6614
MBG_IO_PORT_STATUS_BUFFER status
See MBG_IO_PORT_STATUS_BUFFER.
Definition: gpsdefs.h:21186
Supports XBP_NODE_LIMITS and associated structures.
Definition: gpsdefs.h:17904
MBG_MONITORING_TYPE_MSKS
Definition: gpsdefs.h:21272
IRIG_SETTINGS irig_settings
Definition: gpsdefs.h:20634
uint32_t supp_flags
See MBG_LICENSE_BASE_MSKS.
Definition: gpsdefs.h:19551
see PTP_FLAG_LS_ANN_NEG
Definition: gpsdefs.h:13267
enabled, but not synchronized
Definition: gpsdefs.h:2880
uint8_t delay_mechanism
propagation delay measuring option, see PTP_DELAY_MECHS
Definition: gpsdefs.h:15044
XMR_QL_INFO info
Definition: gpsdefs.h:7581
Digital Audio output (DARS, ...)
Definition: gpsdefs.h:7673
NTP_RESTR_TYPE_MSKS
Bit masks associated with NTP_RESTR_TYPES.
Definition: gpsdefs.h:15297
connect COM0 channels to XPORT
Definition: gpsdefs.h:10531
MBG_SERVICE_TYPES
Definition: gpsdefs.h:22990
MBG_EVENT_VALUE_URANGE urange
Definition: gpsdefs.h:22015
MBG_LICENSE_BASE base
See MBG_LICENSE_BASE.
Definition: gpsdefs.h:19799
An entry for a table of parameters which can not be accessed by an enumerated index.
Definition: gpsdefs.h:12747
MBG_IO_PORT_ANT_INFO ant_info
Definition: gpsdefs.h:20922
uint32_t idx
index, 0..PTP_UC_MASTER_CFG_LIMITS::n_supp_master-1
Definition: gpsdefs.h:14384
uint32_t reserved_4
Future use.
Definition: gpsdefs.h:16035
MBG_LICENSE_BASE_MSKS
Bit masks of common supported base license flags.
Definition: gpsdefs.h:19535
uint32_t reserved_3
Reserved, currently 0.
Definition: gpsdefs.h:12326
uint16_t reserved_1
reserved, currently always 0
Definition: gpsdefs.h:10118
The MAC address of a network interface.
Definition: gpsdefs.h:11031
uint32_t max_fails
Definition: gpsdefs.h:22827
MBG_IMS_FDM_OUTPUT_INFO info
Definition: gpsdefs.h:10069
DCF77 PZF providing much more accuracy than a standard LWR.
Definition: gpsdefs.h:6434
uint16_t data_type
data type identifier, see VST_DATA_TYPES for common types
Definition: gpsdefs.h:17641
fixed frequency
Definition: gpsdefs.h:6430
MBG_EXT_SYS_INFO_PROC_TYPES
Definition: gpsdefs.h:19264
MBG_DAC_SPECS dac_specs
DAC specific limits.
Definition: gpsdefs.h:9965
uint32_t idx
the index of the user
Definition: gpsdefs.h:22855
see MBG_FRAMING_7E2
Definition: gpsdefs.h:3388
uint16_t reserved_1
Currently reserved, unused, always 0.
Definition: gpsdefs.h:18978
see NTP_PEER_STATUS_REACH
Definition: gpsdefs.h:17147
POUT_SETTINGS_FLAGS
Flag bit masks used with POUT_SETTINGS::flags.
Definition: gpsdefs.h:6230
uint16_t max_sine_lvl
max level of an output, e.g. 1024
Definition: gpsdefs.h:17576
entering warm boot mode
Definition: gpsdefs.h:9619
PTP state changed to DISABLED.
Definition: gpsdefs.h:9629
see MBG_NET_INTF_LINK_BOND_MODE_ALB
Definition: gpsdefs.h:11723
uint32_t supp_flags
supported flags, currently always 0
Definition: gpsdefs.h:8725
uint16_t PTP_PORT_ID
A PTP port ID.
Definition: gpsdefs.h:13052
see BVAR_BIT_CFGH_INVALID
Definition: gpsdefs.h:811
authentication failure
Definition: gpsdefs.h:17263
Supports the GPS_BEGIN_TRANSACTION and GPS_END_TRANSACTION commands, see also MBG_TRANSACTION_TYPES.
Definition: gpsdefs.h:2351
Invalid config, e.g. data csum error.
Definition: gpsdefs.h:5220
NTP restriction, plus index.
Definition: gpsdefs.h:15427
MBG_IMS_FDM_LINE_FREQS
Enumeration known line frequencies.
Definition: gpsdefs.h:10193
NTP_PEER_STATUS_FLAGS
Enumeration of NTP peer status codes.
Definition: gpsdefs.h:17126
see MBG_GPIO_STUDIO_CLOCK_SCALE_1_DIV_8
Definition: gpsdefs.h:8831
1000baseKX Full Duplex (1 GBit/s)
Definition: gpsdefs.h:11426
number of known flags
Definition: gpsdefs.h:8881
HD blanking interval.
Definition: gpsdefs.h:8617
Trusttime of refclk configurable.
Definition: gpsdefs.h:15745
supports "ignore lock", MBG_OPT_BIT_EMU_SYNC can be set alternatively
Definition: gpsdefs.h:2193
uint32_t reserved
Currently reserved, unused, always 0.
Definition: gpsdefs.h:18913
see MBG_NET_INTF_LINK_PORT_TYPE_UNKNOWN
Definition: gpsdefs.h:11533
entering cold boot mode
Definition: gpsdefs.h:9618
uint8_t month
1..12
Definition: gpsdefs.h:5556
see NTP_SYS_STATE_SUPP_ROOT_DELAY
Definition: gpsdefs.h:16827
MBG_GPIO_SETTINGS gpio_settings
Definition: gpsdefs.h:20632
uint16_t supp_types
See MBG_MONITORING_TYPE_MSKS.
Definition: gpsdefs.h:21283
the number of defined flag bits
Definition: gpsdefs.h:13253
Global settings for user captures via network.
Definition: gpsdefs.h:12466
minimum message duration [s]
Definition: gpsdefs.h:14320
[R/-] can be Monitoring device for external PTP or NTP devices //### TODO Shouldn&#39;t this be an XFEATU...
Definition: gpsdefs.h:13431
select clk for comm. (clk1 = 0)
Definition: gpsdefs.h:10530
MBG_IP_ADDR_TYPES
Enumeration of types used with MBG_IP_ADDR::type.
Definition: gpsdefs.h:11358
int32_t u_max
max. possible real voltage range [mV], positive or negative, depending on MBG_DAC_SPECS::dac_val_max ...
Definition: gpsdefs.h:9935
uint32_t mgmtTx
Management message Tx counter.
Definition: gpsdefs.h:14469
uint32_t reserved_2
reserved, currently unused and always 0
Definition: gpsdefs.h:9297
kernel information message
Definition: gpsdefs.h:16737
uint32_t reserved_1
Future use.
Definition: gpsdefs.h:16104
see MBG_NET_INTF_LINK_BOND_MODE_XOR
Definition: gpsdefs.h:11719
Settings of an IPv4-only network interface.
Definition: gpsdefs.h:11239
MBG_IO_PORT_DIR_MSKS
Bit masks of Meinberg I/O port directions.
Definition: gpsdefs.h:20150
Supports programmable LED API, see Meinberg LED API definitions.
Definition: gpsdefs.h:2347
see PTP_PRESETS_SMPTE
Definition: gpsdefs.h:13670
int32_t frac
fractions of a second, 1/RECEIVER_INFO::ticks_per_sec units
Definition: gpsdefs.h:2603
see USER_CFG_CAN_LOGIN
Definition: gpsdefs.h:22803
uint32_t node_count
Number of XBP nodes available in the system.
Definition: gpsdefs.h:17928
uint32_t line_freq
nominal line frequency, see MBG_IMS_FDM_LINE_FREQS
Definition: gpsdefs.h:10270
GPS UTC correction parameters.
Definition: gpsdefs.h:18564
number of know status bits
Definition: gpsdefs.h:6959
uint32_t IP4_ADDR
An IPv4 address.
Definition: gpsdefs.h:11045
See MBG_IO_PORT_SRC_SYNCE.
Definition: gpsdefs.h:20226
MBG_IO_PORT_FLAGS
Definition: gpsdefs.h:20329
See NTP_MISC_FLAG_LEAPFILE.
Definition: gpsdefs.h:16090
uint32_t reserved_2
currently reserved, always 0
Definition: gpsdefs.h:11879
has on-board IRIG input
Definition: gpsdefs.h:2188
see MBG_GPIO_FIXED_FREQ_8kHz
Definition: gpsdefs.h:7920
uint16_t idx
index if several records of same type are supported, see IRIG_RX_COMP_GROUPS
Definition: gpsdefs.h:5121
number of known flags
Definition: gpsdefs.h:8272
reserved, used internally by firmware only
Definition: gpsdefs.h:6433
MBG_USER_TYPE
Definition: gpsdefs.h:22777
MBG_FRAMING_MASKS
Bit masks associated with framings enumerated in MBG_FRAMING_CODES.
Definition: gpsdefs.h:3384
#define PTP_CODE_STRING_LENGTH
Definition: gpsdefs.h:14513
MBG_EXT_SYS_INFO_MSKS
Bit masks of supported revision numbers.
Definition: gpsdefs.h:19249
Net Sync Monitor for external PTP or NTP devices.
Definition: gpsdefs.h:12941
uint16_t n_supp_master
number of unicast masters which can be specified
Definition: gpsdefs.h:14233
antenna currently disconnected
Definition: gpsdefs.h:2643
see MBG_SNMP_ADD_CONF
Definition: gpsdefs.h:21341
board supply current in val/exp, output state in flags
Definition: gpsdefs.h:9893
Switched clock from back plane (e.g. selected by RSC)
Definition: gpsdefs.h:20171
PTP_PORT_IDENTITY parent_port_identity
Identity of the master port, that issues the sync messages, see PTP_PORT_IDENTITY.
Definition: gpsdefs.h:14949
Only used with IP4_SETTINGS::flags. Set if port link has been established.
Definition: gpsdefs.h:11323
MBG_GPIO_TYPES
Enumeration of GPIO types.
Definition: gpsdefs.h:7663
NTP_PEER_STATE_SUPP_FLAGS
Enumeration of supported NTP peer state values.
Definition: gpsdefs.h:17348
#define N_POUT_TIMES
The number of POUT_TIME settings for each programmable pulse output.
Definition: gpsdefs.h:5632
uint32_t reserved_5
Reserved for future use, currently 0.
Definition: gpsdefs.h:19672
Other orbit information is used.
Definition: gpsdefs.h:10957
daylight saving is in effect
Definition: gpsdefs.h:2633
#define MBG_IO_PORT_STR_SIZE
Definition: gpsdefs.h:20790
uint32_t reserved
reserved, currently always 0
Definition: gpsdefs.h:8112
uint8_t max_trusted_keys
number of available trusted keys, see NTP_TRUSTED_KEY_INFO_IDX
Definition: gpsdefs.h:15251
int16_t DAC_VAL
Definition: gpsdefs.h:10581
ref. clock is IRIG time code receiver
Definition: gpsdefs.h:10546
uint8_t max_v12_trap_receivers
Only valid if MBG_SNMP_GLB_INFO::supp_versions contains MBG_SNMP_VERSION_MSK_V1 or MBG_SNMP_VERSION_M...
Definition: gpsdefs.h:21383
uint16_t WNlsf
Week number of nearest leap second.
Definition: gpsdefs.h:18573
pure IEEE1588-2008 (PTPv2) with E2E
Definition: gpsdefs.h:13641
uint8_t supp_dirs
See MBG_IO_PORT_DIR_MSKS.
Definition: gpsdefs.h:20978
Supports specific LNE API, see Definitions specific to LNE devices.
Definition: gpsdefs.h:2348
Global NTP statistics settings to be read from / written to a device.
Definition: gpsdefs.h:15540
A structure used to configure a PTP port.
Definition: gpsdefs.h:13278
uint16_t idx
string type index, 0..RECEIVER_INFO::n_str_type-1
Definition: gpsdefs.h:3735
MBG_GPIO_FIXED_FREQ_MASKS
Bit masks associated with MBG_GPIO_FIXED_FREQS.
Definition: gpsdefs.h:7918
supports frequency offset, see NTP_SYS_STATE::freq
Definition: gpsdefs.h:16804
Current settings and general capabilities of an LNE port.
Definition: gpsdefs.h:19086
Baud rate index exceeds num supp by driver SW.
Definition: gpsdefs.h:3533
PTP_CLOCK_ACCURACIES
An enumeration of accuracy classes used with PTP.
Definition: gpsdefs.h:12810
uint32_t reserved_6
Reserved for future use, currently 0.
Definition: gpsdefs.h:19739
Structure that represents a timestamp in NTP Timestamp Format.
Definition: gpsdefs.h:16484
uint32_t flags
Definition: gpsdefs.h:5325
XMR_HOLDOVER_STATUS_FLAG_MASKS
XMR holdover status flag masks.
Definition: gpsdefs.h:7236
CSUM csum
checksum of the remaining bytes */
Definition: gpsdefs.h:18621
uint16_t drv_flags_value
0 or 1, if (drv_flags_enable & x) == 1, see NTP_FUDGE_FLAG_NUMBERS
Definition: gpsdefs.h:15699
see V1_TPROP_LEAP_61
Definition: gpsdefs.h:14728
int16_t azim
Azimuth [deg], range: 0..360 deg.
Definition: gpsdefs.h:10816
uint8_t prefix_bits
Number of subnet mask bits for CIDR notation, e.g. 24 for /24.
Definition: gpsdefs.h:12176
uint16_t reserved_2
Future use.
Definition: gpsdefs.h:15404
uint32_t pDlyRespMsgPerSecTx
PDelay Response message Tx counter.
Definition: gpsdefs.h:14458
IP6_ADDR addr
bit mask of the bytes holding the address bits, b[0] == LSBs
Definition: gpsdefs.h:11076
uint32_t flags
see PTP_CFG_FLAG_MASKS
Definition: gpsdefs.h:13307
PAL standard (Germany) 625i.
Definition: gpsdefs.h:8339
see MBG_GPIO_STUDIO_CLOCK_SCALE_256
Definition: gpsdefs.h:8842
number of known bits
Definition: gpsdefs.h:17605
input signal is disconnected
Definition: gpsdefs.h:6947
(reserved)
Definition: gpsdefs.h:8076
see PTP_OPT_EXT_6185093
Definition: gpsdefs.h:13622
DCLS only.
Definition: gpsdefs.h:4116
uint32_t line_freq
Nominal line frequency, see MBG_IMS_FDM_LINE_FREQS.
Definition: gpsdefs.h:10166
(reserved)
Definition: gpsdefs.h:8069
uint32_t signallingPerSecTx
Signalling message Tx counter.
Definition: gpsdefs.h:14466
see HQ_FMT_STANAG4246_PTTI
Definition: gpsdefs.h:9404
uint16_t flags
status flags, see LNO_STATE_FLAG_BITS
Definition: gpsdefs.h:17581
See MBG_IO_PORT_OP_MODE_PASSTHROUGH.
Definition: gpsdefs.h:20499
uint8_t soc
signal outage counter, incremented on loss of signal
Definition: gpsdefs.h:6865
LNO state.
Definition: gpsdefs.h:17572
see MBG_NET_INTF_LINK_OPT_CAN_SYNCE_OUT
Definition: gpsdefs.h:11679
Structure that contains an index value and the NTP peer state.
Definition: gpsdefs.h:17539
int16_t range
an optional base 10 exponent
Definition: gpsdefs.h:849
UTC or local time according to UTC parameters and TZDL configuration
Definition: gpsdefs.h:5469
POUT_SETTINGS pout_settings
Definition: gpsdefs.h:6252
if set, enables output
Definition: gpsdefs.h:8880
uint8_t supp_tc_modes
supported tc_modes, see MBG_GPIO_VIDEO_TC_MODE_MASKS
Definition: gpsdefs.h:8579
MBG_MAC_ADDR mac_addr
MAC address.
Definition: gpsdefs.h:11277
Root filesystem.
Definition: gpsdefs.h:23224
see GNSS_TYPE_BEIDOU
Definition: gpsdefs.h:10645
Firmware cannot be erased / deleted (e.g. OSV)
Definition: gpsdefs.h:23202
PTP_DELAY_MECHS
An enumeration of PTP delay mechanisms.
Definition: gpsdefs.h:12766
MBG_GPIO_CFG_LIMIT_FLAG_MASKS
GPIO limits flag masks associated with MBG_GPIO_CFG_LIMIT_FLAG_BITS.
Definition: gpsdefs.h:7646
see TM_BIT_EXT_SYNC
Definition: gpsdefs.h:2669
uint32_t max_mtrans
Maximal number of supported multicast transactions per second.
Definition: gpsdefs.h:19602
see MBG_GPIO_FIXED_FREQ_5MHz
Definition: gpsdefs.h:7925
pulse length is limited to the value POUT_SETTINGS::mode_param
Definition: gpsdefs.h:6317
uint8_t phys_grp
Physical group number (i.e. SFP/RJ45 on HPS100), or MBG_NO_PHYS_GROUP.
Definition: gpsdefs.h:20814
(reserved)
Definition: gpsdefs.h:8073
NTP_ORPHAN_MODE_FLAGS
Enumeration of NTP supported (various) misc options.
Definition: gpsdefs.h:16142
uint32_t reserved_2
reserved, currently always 0
Definition: gpsdefs.h:8241
MBG_NTP_SERVICE_STATES
Enumeration of supported NTP service state values.
Definition: gpsdefs.h:16841
uint32_t reserved_2
Future use.
Definition: gpsdefs.h:18380
A The structure used to store the configuration of two serial ports.
Definition: gpsdefs.h:3929
uint16_t PTP_HW_FEATURES
Register in TSU-GbE FPGA to determine board features of the current TSU board revision.
Definition: gpsdefs.h:13562
uint8_t priority_1
priority 1 attribute for the local clock
Definition: gpsdefs.h:14870
MBG_LICENSE_BASE_FLAGS
Bits used to define MBG_LICENSE_BASE_MSKS.
Definition: gpsdefs.h:19521
uint32_t reserved
Reserved, currently 0.
Definition: gpsdefs.h:20418
See MBG_IO_PORT_SRC_SWITCH_CARD.
Definition: gpsdefs.h:20227
uint16_t reserved_2
Future use.
Definition: gpsdefs.h:21886
Rec. G.811.
Definition: gpsdefs.h:8068
supports SHS (Secure Hybrid System) API and structures
Definition: gpsdefs.h:2215
uint32_t reserved_4
Future use.
Definition: gpsdefs.h:15865
uint8_t min_min
Minimum value for min.
Definition: gpsdefs.h:15453
TM_GPS tm_on
date/time when daylight saving starts
Definition: gpsdefs.h:2944
The data structure used with the PCPS_GEN_IO_GET_INFO command.
Definition: gpsdefs.h:10364
Information on a supported string format.
Definition: gpsdefs.h:3704
XMR_REF_STATUS_BITS
XMULTI_REF status bits.
Definition: gpsdefs.h:6944
MBG_USER_PERM_BUF cfg_write_perm
current config write permissions, see MBG_USER_PERM_BUF and MBG_USER_PERMS
Definition: gpsdefs.h:22944
uint32_t csc_limit
max. cycle slip [1/1000 cycle units]
Definition: gpsdefs.h:8113
uint16_t reserved3
reserved, currently always 0
Definition: gpsdefs.h:8583
uint16_t supp_cfgs
Definition: gpsdefs.h:23556
see MBG_LED_MODE_ON
Definition: gpsdefs.h:18775
See MBG_LICENSE_PTPV2_MEMBER_MAX_MTRANS.
Definition: gpsdefs.h:19587
uint32_t reserved_2
Reserved, currently always 0.
Definition: gpsdefs.h:12586
(reserved)
Definition: gpsdefs.h:8071
uint8_t reserved_1
reserved, currently always 0
Definition: gpsdefs.h:22874
Time scale configuration settings plus capabilities.
Definition: gpsdefs.h:5519
uint16_t monitor
TODO Which is the unit of this field?
Definition: gpsdefs.h:15479
see NTP_ROLE_CLIENT_SERVER
Definition: gpsdefs.h:15123
PTP_OPT_EXTS
Known optional PTP protocol extensions, see PTP_CFG_SETTINGS::opt_ext.
Definition: gpsdefs.h:13594
See MBG_IO_PORT_SRC_LOCAL.
Definition: gpsdefs.h:20219
Instead of a standard L1 antenna, a Meinberg antenna/converter can be used with this GNSS device...
Definition: gpsdefs.h:2364
MBG_GPIO_VIDEO_TC_MODE_MASKS
Bit masks associated with MBG_GPIO_VIDEO_TC_MODES.
Definition: gpsdefs.h:8505
uint8_t sa_bits
number of SA bit group for E1 SSM, MIN_SA_BITS_GROUP..MAX_SA_BITS_GROUP
Definition: gpsdefs.h:8236
uint8_t epoch
epoch, see MBG_GPIO_VIDEO_EPOCHS
Definition: gpsdefs.h:8538
the user is allowed to login (should not be set for root)
Definition: gpsdefs.h:22788
the number of known status codes
Definition: gpsdefs.h:3127
see PTP_PRESETS_TELECOM_PTS
Definition: gpsdefs.h:13674
MBG_IO_PORT_ANT_SETTINGS ant_settings
Definition: gpsdefs.h:20635
MBG_EVT_CODE code
event ID or&#39;ed with severity level, see MBG_EVENT_CODES
Definition: gpsdefs.h:9567
supports VST (Versatile Storage) API and structures
Definition: gpsdefs.h:2214
uint32_t err_msk
controls which types of error can be ignored, see MBG_GPIO_BITS_ERR_MASKS
Definition: gpsdefs.h:8135
uint32_t followUpMsgRx
Accepted Follow-up message Rx counter.
Definition: gpsdefs.h:14439
uint8_t reserved
reserved, currently always 0
Definition: gpsdefs.h:14993
PTP_TIME_INTERVAL offset_from_master
current time difference between master and slave, see PTP_TIME_INTERVAL
Definition: gpsdefs.h:14904
The number of known bits.
Definition: gpsdefs.h:5232
uint16_t MBG_EVT_INFO
Definition: gpsdefs.h:9558
MBG_SERVICE_STATE
Definition: gpsdefs.h:23030
uint8_t release_candidate
Release candidate revision information.
Definition: gpsdefs.h:23306
see V1_DFLT_INITIALIZABLE
Definition: gpsdefs.h:14569
AssistNow Autonomous orbit is used.
Definition: gpsdefs.h:10955
int16_t ann_intv
announce interval [log2 s]
Definition: gpsdefs.h:14280
CSUM csum
checksum of the remaining bytes
Definition: gpsdefs.h:18438
supports symmetric key id, see NTP_PEER_STATE::key_id
Definition: gpsdefs.h:17359
[R/-] supports PTPv1 SLAVE role
Definition: gpsdefs.h:13435
LAN interface on an XPORT, superseded by RSC devices.
Definition: gpsdefs.h:11303
See MBG_FW_FILE_INCREMENTAL.
Definition: gpsdefs.h:23252
see MBG_EXT_SYS_INFO_BIT_SW_REV
Definition: gpsdefs.h:19251
uint16_t reserved_3
reserved, currently always 0
Definition: gpsdefs.h:13215
uint16_t supp_flags
See MBG_EVENT_SUPP_FLAG_MSKS.
Definition: gpsdefs.h:21884
uint32_t reserved_3
Future use.
Definition: gpsdefs.h:16195
DNS server could not be reached.
Definition: gpsdefs.h:17030
serial time string contains UTC time
Definition: gpsdefs.h:5362
slave in multicast mode
Definition: gpsdefs.h:12933
MBG_DATABASE_MEMBER_MSKS
Definition: gpsdefs.h:23533
uint32_t n_supp_users
supported number of users
Definition: gpsdefs.h:22753
XYZ_FIELDS
Sequence and number of components of a cartesian position.
Definition: gpsdefs.h:2735
Global network configuration settings.
Definition: gpsdefs.h:11844
NTP_IMPL
Enumeration of known NTP implementations.
Definition: gpsdefs.h:16505
uint8_t peer_rec_evt
Most recent event message, see NTP_PEER_EVT_BITS.
Definition: gpsdefs.h:17410
see GNSS_TYPE_WAAS
Definition: gpsdefs.h:10647
uint32_t maxMsgPerSec
max allowed number of all messages per second in Multicast/Hybrid mode (due to licence or CPU perform...
Definition: gpsdefs.h:14477
see MBG_NET_INTF_LINK_BOND_MODE_BROADCAST
Definition: gpsdefs.h:11720
PTP_CLOCK_QUALITY grandmaster_clock_quality
Quality of the grandmaster clock, see PTP_CLOCK_QUALITY.
Definition: gpsdefs.h:14957
timebase is in transition (being slewed) after sources have been switched
Definition: gpsdefs.h:7224
NTP refclock settings index.
Definition: gpsdefs.h:15724
uint32_t reserved_0
currently reserved, unused, always 0
Definition: gpsdefs.h:19037
uint16_t reserved_0
currently unused
Definition: gpsdefs.h:7427
double beta_0
Ionosph. Corr. Coeff. Beta 0 [sec].
Definition: gpsdefs.h:18607
uint8_t reserved_1
Reserved, currently always 0.
Definition: gpsdefs.h:16914
min. WAAS satellite number
Definition: gpsdefs.h:659
has initially been sync&#39;d, but now running free
Definition: gpsdefs.h:2881
uint32_t fd_scale
scale for MBG_IMS_FDM_LIMITS::fd_neg_limit and MBG_IMS_FDM_LIMITS::fd_pos_limit
Definition: gpsdefs.h:10122
char MBG_EVENT_STR[64]
Definition: gpsdefs.h:21957
uint8_t num_intf_link
number of detected/configured physical network interfaces (links), see MBG_NET_INTF_LINK_INFO_IDX ...
Definition: gpsdefs.h:11848
Address has been automatically assigned by DHCP via IPv6.
Definition: gpsdefs.h:11800
uint8_t port_state
state of the protocol engine associated with this port, see PTP_PORT_STATES
Definition: gpsdefs.h:15038
int64_t offset
[ns] Combined offset to the system peer
Definition: gpsdefs.h:16906
uint16_t num_sensors
number of sensors provided by the device
Definition: gpsdefs.h:9794
T_GPS tot_63
time of transmission, page 63
Definition: gpsdefs.h:18518
uint32_t supp_flags
See NTP_ORPHAN_MODE_MSK.
Definition: gpsdefs.h:16192
ITU-T G.8265.1 profile extension, only if PTP_MSK_OPT_EXT_TELECOM is set.
Definition: gpsdefs.h:13644
uint16_t reserved_1
Currently reserved, unused, always 0.
Definition: gpsdefs.h:19196
uint16_t reserved_2
reserved, currently 0
Definition: gpsdefs.h:15253
max. number of active GPS satellites
Definition: gpsdefs.h:657
PPS output is active.
Definition: gpsdefs.h:5219
supports navigation engine configuration
Definition: gpsdefs.h:2201
NTP_GLB_STATS_FLAGS
Enumeration of NTP supported statistics.
Definition: gpsdefs.h:15497
A structure used to configure the priority of the supported ref sources.
Definition: gpsdefs.h:6574
MBG_EVENT_SEVERITIES
Definition: gpsdefs.h:21769
uint32_t dlyRespMsgTx
Delay response message Tx counter.
Definition: gpsdefs.h:14449
NTP orphan mode settings to be read from / written to a device.
Definition: gpsdefs.h:16168
MBG_GPIO_STUDIO_CLOCK_BASE_FREQS
Enumeration of studio clock base frequencies.
Definition: gpsdefs.h:8749
uint8_t dflt_clk_class_sync_cold
Definition: gpsdefs.h:13291
FPGA firmware binary.
Definition: gpsdefs.h:23226
see MBG_GPIO_VIDEO_HD_FORMAT_720_P_59_94Hz
Definition: gpsdefs.h:8364
uint32_t supp_flags_pool
supported flags for unicast pool associations
Definition: gpsdefs.h:16312
NAV_TIME_MODE_SETTINGS nav_time_mode_settings
Definition: gpsdefs.h:18701
Detailed GNSS satellite status, plus index.
Definition: gpsdefs.h:10968
see MBG_GPIO_BITS_E1_TIMING
Definition: gpsdefs.h:8035
see MBG_FRAMING_7O2
Definition: gpsdefs.h:3393
short int16_t
Definition: words.h:212
[R/W] PTP Port state can be set to DISABLED permanentely
Definition: gpsdefs.h:13524
MBG_SNMP_V12_SETTINGS settings
Definition: gpsdefs.h:21452
On board RTC invalid.
Definition: gpsdefs.h:5229
uint8_t tc_mode
time code mode, see MBG_GPIO_VIDEO_TC_MODES
Definition: gpsdefs.h:8540
see MBG_FRAMING_8E2
Definition: gpsdefs.h:3395
see MBG_IMS_FDM_STATE_FLAG_BIT_PLT_IS_LOCKED
Definition: gpsdefs.h:10249
MBG_NET_NAME net_name
Definition: gpsdefs.h:12006
MBG_LED_SETTINGS settings
Current LED settings.
Definition: gpsdefs.h:18910
uint8_t grasp_rear
Indicates, that the grasp is on the rear side.
Definition: gpsdefs.h:20427
NTP_REFCLK_TYPE_MSKS
Bit masks associated with NTP_REFCLK_TYPES.
Definition: gpsdefs.h:15626
MBG_NET_INTF_LINK_SPEEDS
Network interface link speeds [Mb/s].
Definition: gpsdefs.h:11492
MBG_GPIO_BITS_IN_SETTINGS bits_in
if MBG_GPIO_SETTINGS::type is MBG_GPIO_TYPE_BITS_IN
Definition: gpsdefs.h:9143
MBG_DATABASE_TYPES
Definition: gpsdefs.h:23409
1) MBG_TLV_TYPE_BLOB => MBG_LICENSE_TIME_MONITOR_IDX, see License information
Definition: gpsdefs.h:18167
uint32_t signallingTx
Signalling message Tx counter.
Definition: gpsdefs.h:14465
uint32_t freq_min
minimum output frequency [Hz], see MBG_GPIO_FREQ_OUT_SETTINGS::freq
Definition: gpsdefs.h:7868
see MBG_UCAP_NET_TRANSF_PROTO_UNKNOWN
Definition: gpsdefs.h:12431
see MBG_FRAMING_8N2
Definition: gpsdefs.h:3390
uint32_t reserved_1
Future use.
Definition: gpsdefs.h:18351
see V1_PARENT_FOLLOWUP_CAPABLE
Definition: gpsdefs.h:14655
Always enable port.
Definition: gpsdefs.h:20456
PTPV2 specific license information.
Definition: gpsdefs.h:19595
Structure used to transfer calibration records.
Definition: gpsdefs.h:5179
MBG_OPT_BITS
Enumeration of flag bits used to define MBG_OPT_FLAGS.
Definition: gpsdefs.h:5360
uint8_t pt_idx
index of the port types (e.g. 0 for PPO0, 1 for PPO1, ...)
Definition: gpsdefs.h:20695
see V1_PARENT_EXT_TIMING
Definition: gpsdefs.h:14656
pulse-per-second signal (Cs, Ru, GPS, etc.)
Definition: gpsdefs.h:16669
NTP_MISC_FLAGS
Enumeration of NTP supported (various) misc options.
Definition: gpsdefs.h:16071
see MBG_GPIO_STUDIO_CLOCK_SCALE_64
Definition: gpsdefs.h:8840
min. Glonass satellite number (64 + sat slot ID)
Definition: gpsdefs.h:663
SMPTE296M-1 720p at 59.94 Hz.
Definition: gpsdefs.h:8342
Firmware has successfully been installed.
Definition: gpsdefs.h:9625
Per second, same as STR_PER_SEC, COM0 and COM1.
Definition: gpsdefs.h:3961
Number of defined extended features.
Definition: gpsdefs.h:2369
uint32_t flags
Future use.
Definition: gpsdefs.h:18266
uint8_t reserved_1
Reserved, currently 0.
Definition: gpsdefs.h:12267
PTPv1 current dataset containing information about the synchronization status of the device...
Definition: gpsdefs.h:14611
MBG_UCAP_NET_TRANSF_PROTO_MASKS
Masks for transfer protocol used with MBG_UCAP_NET_GLB_INFO::supp_protos.
Definition: gpsdefs.h:12429
(reserved)
Definition: gpsdefs.h:8067
A timestamp with nanosecond resolution, but 64 bit size.
Definition: words.h:621
all fixed freq. outputs on, use with ENABLE_FLAGS::freq
Definition: gpsdefs.h:3170
int16_t freq
four digits used; scale: 0.1 Hz; e.g. 1234 -> 123.4 Hz
Definition: gpsdefs.h:2858
uint32_t flags
reserved, currently always 0
Definition: gpsdefs.h:7780
Switch Card Unit fixed (SCU, RSC, ...)
Definition: gpsdefs.h:20177
NTP driftfile settings to be read from / written to a device.
Definition: gpsdefs.h:16123
uint16_t idx
Definition: gpsdefs.h:7580
uint32_t flags
See NTP_FLAG_MASKS. Only flags specified in ::FIXME can be used here.
Definition: gpsdefs.h:15701
Whatever preloader magic file.
Definition: gpsdefs.h:23223
MBG_FW_FILES
Definition: gpsdefs.h:23218
uint8_t leap_61
set, if the last minute of the current UTC day containts 61 seconds
Definition: gpsdefs.h:14987
uint16_t idx
port index, 0..RECEIVER_INFO::n_com_ports-1
Definition: gpsdefs.h:3596
ENABLE_FLAGS_CODES
Codes used with ENABLE_FLAGS.
Definition: gpsdefs.h:3164
uint32_t supp_ref
Definition: gpsdefs.h:6810
see MBG_TIME_SCALE_TAI
Definition: gpsdefs.h:5484
MBG_NET_INTF_LINK_OPT_MASKS
Network interface link option masks.
Definition: gpsdefs.h:11675
uint32_t mgmtPerSecRx
Accepted Management message Rx counter.
Definition: gpsdefs.h:14468
The GNSS_SAT_INFO_IDX structure is supported by the device.
Definition: gpsdefs.h:10723
PTP_OPT_EXT_MASKS
Flag masks used with PTP_CFG_INFO::supp_opt_ext.
Definition: gpsdefs.h:13614
uint8_t reserved_1
Reserved, currently always 0.
Definition: gpsdefs.h:17413
see GNSS_TYPE_QZSS
Definition: gpsdefs.h:10649
uint32_t max_rps
Maximum number of supported NTP requests per second.
Definition: gpsdefs.h:19667
See MBG_DATABASE_MEMBER_FLAGS.
Definition: gpsdefs.h:23535
Supports monitoring / notifications, see Monitoring / notification.
Definition: gpsdefs.h:2357
IO Port Type Info Union.
Definition: gpsdefs.h:20916
uint32_t format
video format, see MBG_GPIO_VIDEO_FORMATS
Definition: gpsdefs.h:8535
see MBG_GPIO_FIXED_FREQ_19440kHz
Definition: gpsdefs.h:7927
uint32_t reserved_1
Reserved for future use.
Definition: gpsdefs.h:18312
See MBG_SYSLOG_FLAG_NULL_TIMESTAMP.
Definition: gpsdefs.h:22124
uint32_t password_doc
time of last password change (days since 1970)
Definition: gpsdefs.h:22880
MBG_SERVICE_SETTINGS settings
Definition: gpsdefs.h:23106
uint32_t flags
additional options configured, see NTP_FLAG_MASKS
Definition: gpsdefs.h:16373
see MBG_GNSS_FLAG_HAS_PRIORITY
Definition: gpsdefs.h:10737
MBG_USER_CHANNEL_BUF channels
Channels, that are allowed for this user, see MBG_USER_CHANNEL_BUF.
Definition: gpsdefs.h:22832
String mode index exceeds num supp by driver SW.
Definition: gpsdefs.h:3544
PTP_CLOCK_ID clock_uuid
Definition: gpsdefs.h:14527
Sounds stupid but think of heartbeat.
Definition: gpsdefs.h:21932
uint8_t max_v3_trap_receivers
Only valid if MBG_SNMP_GLB_INFO::supp_versions contains MBG_SNMP_VERSION_MSK_V3.
Definition: gpsdefs.h:21384
uint32_t supp_members
See MBG_LICENSE_NTP_MEMBER_MSKS.
Definition: gpsdefs.h:19666
uint32_t flags
see MBG_IMS_STATE_FLAG_MASKS
Definition: gpsdefs.h:9796
peer is not sync (leap alarm, stratum 16)
Definition: gpsdefs.h:17033
see XMR_EXT_SRC_FEAT_FLAG_BIT_COASTING
Definition: gpsdefs.h:7272
see MBG_GPIO_STUDIO_CLOCK_SCALE_1
Definition: gpsdefs.h:8834
see NTP_PEER_STATE_SUPP_FLASH_STAT
Definition: gpsdefs.h:17384
association mobilized
Definition: gpsdefs.h:17185
int16_t sync_intv_max
log2 of maximum sync interval [s]
Definition: gpsdefs.h:14235
Status information on a ref time source at a specific priority level.
Definition: gpsdefs.h:6885
40000baseCR4 Full Duplex (40 GBit/s)
Definition: gpsdefs.h:11437
See NTP_GLB_STATS_FLAG_SYSSTATS.
Definition: gpsdefs.h:15527
[R/W] time scale is PTP/TAI, else arbitrary
Definition: gpsdefs.h:13407
see MBG_NET_INTF_LINK_PORT_TYPE_DA
Definition: gpsdefs.h:11539
PTPv1 port dataset containing information about the appropriate port of the device.
Definition: gpsdefs.h:14785
double af2
+- Clock Correction Coefficient 2 [sec/sec^2]
Definition: gpsdefs.h:18467
see MBG_FRAMING_7E1
Definition: gpsdefs.h:3387
uint16_t reserved_1
reserved, currently always 0
Definition: gpsdefs.h:9131
uint8_t ann_rcpt_timeout
announce msg. receipt timeout, see PTP_ANN_RCPT_TIMEOUT_LIMITS
Definition: gpsdefs.h:13294
uint32_t supp_shapes
bit mask of supported signal shapes, see MBG_GPIO_SIGNAL_SHAPE_MASKS
Definition: gpsdefs.h:7872
double e
Eccentricity [—].
Definition: gpsdefs.h:18450
uint8_t n_supp_peers
maximal number of configurable peers
Definition: gpsdefs.h:16264
MBG_LICENSE_PTPV1 license
Definition: gpsdefs.h:19755
uint8_t scale
current time scale code, see MBG_TIME_SCALES
Definition: gpsdefs.h:5507
oscillator cfg is supported, see RECEIVER_INFO::osc_type
Definition: gpsdefs.h:2481
uint8_t reserved_1
reserved, currently always 0
Definition: gpsdefs.h:17753
see GBIT_LINK_COPPER_AUTO_MSK
Definition: gpsdefs.h:14180
1) MBG_TLV_TYPE_BLOB => MBG_LICENSE_PTPV2_IDX, see License information
Definition: gpsdefs.h:18154
uint16_t epld_status
EPLD status word, see SCU_STAT_MASKS.
Definition: gpsdefs.h:10451
See MBG_IO_PORT_GRP_ROLE_MASTER.
Definition: gpsdefs.h:20547
IO Port Info.
Definition: gpsdefs.h:20806
see NTP_FLASH_STAT_PKT_HEADER
Definition: gpsdefs.h:17292
POUT_MODES
Enumeration of known operation modes for programmable pulse outputs.
Definition: gpsdefs.h:5792
see BVAR_BIT_ALM_NOT_COMPLETE
Definition: gpsdefs.h:812
uint32_t csc_limit_max
1/1000 units of the signal period, limited due to 10 ns sampling interval, see MBG_GPIO_FREQ_IN_SETTI...
Definition: gpsdefs.h:7808
Forwarded signals from backplane (e.g. PPS of BPE)
Definition: gpsdefs.h:20460
uint32_t pDlyRespMsgRx
Accepted PDelay Response message Rx counter.
Definition: gpsdefs.h:14455
uint32_t reserved0
reserved, currently always 0
Definition: gpsdefs.h:8913
MBG_USER_MNGMNT_SETTINGS settings
settings, see MBG_USER_MNGMNT_SETTINGS
Definition: gpsdefs.h:22751
MBG_LICENSE_BASE_TYPES
Definition: gpsdefs.h:19506
uint32_t type
GPIO type, see MBG_GPIO_TYPES.
Definition: gpsdefs.h:9129
PTP state changed to UNINITIALIZED.
Definition: gpsdefs.h:9626
int16_t channel
-1: the current on-board time; >= 0 the capture channel number
Definition: gpsdefs.h:2715
MBG_USER_STAT_FLAG_MASKS
Definition: gpsdefs.h:22926
uint32_t tx
overall Tx packet counter
Definition: gpsdefs.h:14424
uint8_t mday
1..28,29,30,31
Definition: gpsdefs.h:5555
PORT_INFO_FLAG_BITS
Flags bits used to define PORT_INFO_FLAGS.
Definition: gpsdefs.h:3646
see NTP_RESTR_FLAG_MSSNTP
Definition: gpsdefs.h:15351
MBG_EVENT_VALUE value
Definition: gpsdefs.h:22046
MBG_GPIO_PORT_STATES
GPIO port states.
Definition: gpsdefs.h:9340
T_GPS t0c
Reference Time Clock [—].
Definition: gpsdefs.h:18446
56000baseCR4 Full Duplex (56 GBit/s)
Definition: gpsdefs.h:11441
see XMRSF_BIT_ASYMMETRY_STEP_DETECTION
Definition: gpsdefs.h:6788
see NTP_PEER_STATE_SUPP_KEY_ID
Definition: gpsdefs.h:17385
uint32_t BUILTIN_FEATURE_MASK
Definitions used to classify devices and built-in features.
Definition: gpsdefs.h:1286
User captures are being transferred automatically.
Definition: gpsdefs.h:12390
uint32_t supp_line_freqs
Bit mask of supported line frequencies, see MBG_IMS_FDM_LINE_FREQ_MASKS.
Definition: gpsdefs.h:10319
#define MAX_USER_PERM_BYTES
Definition: gpsdefs.h:22581
PTP_HW_FEAT_MASKS
Bit masks used with PTP_HW_FEATURES.
Definition: gpsdefs.h:13582
uint8_t pos_row
Row position of this port.
Definition: gpsdefs.h:20816
uint32_t flags
reserved, currently always 0
Definition: gpsdefs.h:8136
int8_t delta_tlsf
Future UTC offset to GPS system time after next leap second transition [sec].
Definition: gpsdefs.h:18576
NTP_TRUSTED_KEY_SETTINGS settings
Definition: gpsdefs.h:16012
Local date and time computed from GPS time.
Definition: gpsdefs.h:2593
See MBG_LICENSE_TIME_MONITOR_MEMBER_MAX_NTP_CLIENTS.
Definition: gpsdefs.h:19789
indicates that MBG_GPIO_STATUS is supported
Definition: gpsdefs.h:7633
(reserved)
Definition: gpsdefs.h:8072
ITU-T G.8265.1 profile extension.
Definition: gpsdefs.h:13598
see MBG_NET_INTF_LINK_PORT_TYPE_TP
Definition: gpsdefs.h:11534
uint8_t ttl
time-to-live to use with broadcast/multicast/manycast
Definition: gpsdefs.h:16365
MBG_GPIO_VIDEO_FORMAT_MASKS
Bit masks associated with MBG_GPIO_VIDEO_FORMATS.
Definition: gpsdefs.h:8357
uint16_t reserved1
reserved, currently always 0
Definition: gpsdefs.h:8944
reserved, DO NOT USE!
Definition: gpsdefs.h:10505
See MBG_IO_PORT_ANT_MEMBER_CAB_LEN.
Definition: gpsdefs.h:20577
see PTP_PRESETS_DOCSIS_31
Definition: gpsdefs.h:13675
uint16_t idx
Definition: gpsdefs.h:12005
see MBG_LED_MODE_FLASH_5S
Definition: gpsdefs.h:18777
MULTI_REF_SETTINGS settings
current settings
Definition: gpsdefs.h:6588
uint8_t op_mode
MBG_IO_PORT_OP_MODE_BITS
Definition: gpsdefs.h:20694
double af1
+- Clock Correction Coefficient 1 [sec/sec]
Definition: gpsdefs.h:18466
MBG_SERVICE_INFO_FLAGS
Definition: gpsdefs.h:23087
see PTP_ROLE_MULTICAST_SLAVE
Definition: gpsdefs.h:12964
number of known flags
Definition: gpsdefs.h:9018
uint32_t supp_flags_peer
supported flags for unicast symmetric-active assocations
Definition: gpsdefs.h:16311
IRIG_RX_COMP comp_data
IRIG receiver delay compensation.
Definition: gpsdefs.h:5182
Port can be in- & output in parallel like network port.
Definition: gpsdefs.h:20122
NTP supports loopstats.
Definition: gpsdefs.h:15502
NANO_TIME offset
estimated time offset from the upstream time source
Definition: gpsdefs.h:13190
uint16_t ITU_SSM_CODE
A type which holds one of the ITU-T SSM codes.
Definition: gpsdefs.h:13923
uint32_t supp_shapes
bit mask of supported signal shapes, see MBG_GPIO_SIGNAL_SHAPE_MASKS
Definition: gpsdefs.h:7990
uint32_t ticks_per_sec
resolution of fractions of seconds, see GPS_TICKS_PER_SEC
Definition: gpsdefs.h:881
uint8_t reserved_1
reserved, currently 0
Definition: gpsdefs.h:16416
uint32_t td_pos_limit
max. time deviation limit, 1/MBG_IMS_FDM_LIMITS::td_scale s units
Definition: gpsdefs.h:10125
NTP supports statistics (e.g. clockstats, loopstats, etc...)
Definition: gpsdefs.h:15155
reserved, DO NOT USE!
Definition: gpsdefs.h:10504
NTP supports MD5 as key hashing algorithm.
Definition: gpsdefs.h:15820
the port currently operates in unicast mode
Definition: gpsdefs.h:13250
uint32_t n_supp_recvs
Number of supported network receivers, see MBG_UCAP_NET_RECV_INFO_IDX.
Definition: gpsdefs.h:12497
Supports the GPS_REBOOT command.
Definition: gpsdefs.h:2352
see MBG_NET_INTF_LINK_TYPE_BOND
Definition: gpsdefs.h:11786
uint32_t supp_flags
See MBG_SYSLOG_FLAG_MSKS.
Definition: gpsdefs.h:22169
MBG_GPIO_VIDEO_OUT_FLAG_MASKS
Bit masks associated with MBG_GPIO_VIDEO_OUT_FLAGS.
Definition: gpsdefs.h:8425
NTP symmetric key specific settings.
Definition: gpsdefs.h:15892
Current IRIG settings and supported codes.
Definition: gpsdefs.h:5054
Supports the GPS_SAVE_CFG command.
Definition: gpsdefs.h:2346
see USER_MNGMNT_SUPP_USER_LEVEL_CFG
Definition: gpsdefs.h:22722
Precision Time Protocol (PTP/IEEE1588)
Definition: gpsdefs.h:6428
uint16_t idx
0..MBG_NET_GLB_CFG_SETTINGS::num_intf_addr-1
Definition: gpsdefs.h:12246
See MBG_FW_FILE_RBF.
Definition: gpsdefs.h:23257
both NTP client and server
Definition: gpsdefs.h:15108
authentication failure
Definition: gpsdefs.h:17196
Configuration settings of a serial port.
Definition: gpsdefs.h:3507
MBG_DATABASE_SETTINGS::flags is valid
Definition: gpsdefs.h:23523
XMR_SETTINGS_FLAG_BITS
Bit masks used to define XMR_SETTINGS_FLAG_MSKS.
Definition: gpsdefs.h:6768
NTP_REFCLK_CFG_SETTINGS settings
See NTP_REFCLK_CFG_SETTINGS.
Definition: gpsdefs.h:15727
PTP_V1_UUID grandmaster_uuid
Definition: gpsdefs.h:14678
uint16_t CSUM
checksum used by some structures stored in non-volatile memory
Definition: gpsdefs.h:705
uint16_t max_ptpv2_clients
Maximum number of supported PTPv2 clients to be monitored.
Definition: gpsdefs.h:19802
see MBG_UCAP_NET_SUPP_FLAG_IPV6
Definition: gpsdefs.h:12456
uint32_t reserved
Future use.
Definition: gpsdefs.h:18265
RECEIVER_INFO_FLAG_BITS
Bits used to define RECEIVER_INFO_FLAG_MASKS.
Definition: gpsdefs.h:2479
MBG_USER_MNGMNT_FLAGS
Definition: gpsdefs.h:22710
Supported options of a BITS type GPIO output.
Definition: gpsdefs.h:8312
see MBG_NET_INTF_ADDR_BIT_AUTOCONF
Definition: gpsdefs.h:11816
unsigned short uint16_t
Definition: words.h:213
uint32_t reserved0
reserved, currently always 0
Definition: gpsdefs.h:9079
XMR_QL_SETTINGS settings
Definition: gpsdefs.h:7572
IRIG_RX_COMP_GROUPS
Types to be used with CAL_REC_HDR::idx.
Definition: gpsdefs.h:5149
uint32_t pDlyRespMsgPerSecRx
Accepted PDelay Response message Rx counter.
Definition: gpsdefs.h:14456
uint16_t flags
See MBG_GNSS_MODE_INFO_FLAG_MASKS.
Definition: gpsdefs.h:10698
RECEIVER_MODES
Satellite receiver modes of operation.
Definition: gpsdefs.h:10566
uint16_t flags
see HAVEQUICK_FLAG_MASKS
Definition: gpsdefs.h:9459
A structure used to configure optional settings.
Definition: gpsdefs.h:5342
Media Independent Interface (MII), external receiver.
Definition: gpsdefs.h:11519
MBG_USER_CHANNELS
Definition: gpsdefs.h:22585
NTP "discard" rate limiting settings as described at ntp.org&#39;s manual.
Definition: gpsdefs.h:15475
[R/-] supports multicast master role, see PTP_ROLE_MULTICAST_MASTER
Definition: gpsdefs.h:13410
number of known errors
Definition: gpsdefs.h:8181
NTP services disabled.
Definition: gpsdefs.h:15105
int32_t currentLocalOffset
Definition: gpsdefs.h:13824
frequency file not available
Definition: gpsdefs.h:16725
int8_t log_delay_req_intv
Definition: gpsdefs.h:13207
See MBG_IO_PORT_DIR_IN_OUT.
Definition: gpsdefs.h:20154
MBG_DATE d
date to switch
Definition: gpsdefs.h:5589
Always enable port after being sync once.
Definition: gpsdefs.h:20458
Event logging supported.
Definition: gpsdefs.h:2208
uint8_t num_rows
Number of port rows this device supports.
Definition: gpsdefs.h:20415
MBG_HOSTNAME hostname
hostname, eventually FQDN including domain name
Definition: gpsdefs.h:11846
see PTP_OPT_EXT_TELECOM_PTS
Definition: gpsdefs.h:13623
see MBG_BAUD_RATE_115200
Definition: gpsdefs.h:3320
Interface-Local scope.
Definition: gpsdefs.h:11108
LED shows yellow light.
Definition: gpsdefs.h:21082
uint8_t proto
Transfer protocol, see MBG_UCAP_NET_TRANSF_PROTO.
Definition: gpsdefs.h:12527
TX output local time instead of UTC.
Definition: gpsdefs.h:5023
XMR holdover status.
Definition: gpsdefs.h:7157
number of known flags
Definition: gpsdefs.h:9105
port is used internally and should not be displayed by config apps
Definition: gpsdefs.h:3648
Link is running on Fast Ethernet (no MASTER/SLAVE decision)
Definition: gpsdefs.h:14201
peer could not be reached
Definition: gpsdefs.h:17032
see PORT_INFO_FLAG_BIT_BIN_PROT_HS
Definition: gpsdefs.h:3662
uint8_t headway
Indicator for the KoD packet, TODO: further investigation.
Definition: gpsdefs.h:17440
MBG_TLV_TYPES
Enumeration of known TLV types.
Definition: gpsdefs.h:18289
AUTOMATIC/REMOTE or MANUAL Mode.
Definition: gpsdefs.h:10500
see TM_BIT_SYN_FLAG
Definition: gpsdefs.h:2674
[R/-] PTP stack supports configuration of static delay asymmetry to be compensated ...
Definition: gpsdefs.h:13526
See MBG_IO_PORT_SRC_ARC.
Definition: gpsdefs.h:20224
int8_t sec
seconds, 0..59, or 60 in case of inserted leap second
Definition: gpsdefs.h:2602
Output state of FDM device.
Definition: gpsdefs.h:9960
NTP leapfile settings to be read from / written to a device.
Definition: gpsdefs.h:16213
number of defined protocols
Definition: gpsdefs.h:12651
uint32_t reserved_3
Reserved for future use, currently 0.
Definition: gpsdefs.h:19552
see PTP_NW_PROT_RESERVED
Definition: gpsdefs.h:12662
see USER_SCOPE_STATUS_READ
Definition: gpsdefs.h:22574
Unknown slot type, i.e. slot type not supp.
Definition: gpsdefs.h:17968
uint16_t reserved_0
reserved, currently always 0
Definition: gpsdefs.h:14284
Master port in group, i.e. configurable port of LIU.
Definition: gpsdefs.h:20513
uint32_t supp_flags
Supported NTP system state values, see NTP_SYS_STATE_SUPP_FLAG_MASKS.
Definition: gpsdefs.h:16874
PTPv1 Slave in Multicast mode.
Definition: gpsdefs.h:12943
Information on available XBP nodes.
Definition: gpsdefs.h:17926
MBG_IMS_FDM_FLAGS
IMS FDM flags.
Definition: gpsdefs.h:10293
uint8_t n_channels
number of satellites which can be tracked simultaneously
Definition: gpsdefs.h:880
MBG_IO_PORT_SETTINGS settings
See MBG_IO_PORT_SETTINGS.
Definition: gpsdefs.h:20823
MBG_SNMP_FLAG_MSKS
Definition: gpsdefs.h:21338
uint32_t reserved_3
Reserved for future use, currently 0.
Definition: gpsdefs.h:19805
uint32_t supp_formats
see HAVEQUICK_FORMAT_MASKS
Definition: gpsdefs.h:9482
NTP refclock info, with index.
Definition: gpsdefs.h:15795
see TM_BIT_DL_ENB
Definition: gpsdefs.h:2663
MBG_UCAP_NET_TRANSF_MODE_MASKS
Masks for transfer mode used with MBG_UCAP_NET_GLB_INFO::supp_modes.
Definition: gpsdefs.h:12400
see PTP_PRESETS_CUSTOM
Definition: gpsdefs.h:13664
uint32_t reserved_0
Definition: gpsdefs.h:7281
PTP_CLOCK_ID clock_identity
identity of the local clock, see PTP_CLOCK_ID
Definition: gpsdefs.h:14873
impossible to lock to external 10 MHz reference
Definition: gpsdefs.h:6615
uint16_t good_svs
Numb. of satellites that can currently be received and used.
Definition: gpsdefs.h:10594
MBG_IO_PORT_GRP_ROLE_MSKS
Masks for MBG_IO_PORT_GRP_ROLE_BITS.
Definition: gpsdefs.h:20544
Supports DAC control via PCI or USB bus API.
Definition: gpsdefs.h:2366
uint8_t rear
Indicates, whether the port is on the front or rear side.
Definition: gpsdefs.h:20817
uint8_t num_servers
Number of configured servers.
Definition: gpsdefs.h:22151
supports root dispersion, see NTP_SYS_STATE::root_disp
Definition: gpsdefs.h:16803
uint32_t type
GPIO type, see MBG_GPIO_TYPES.
Definition: gpsdefs.h:9205
uint8_t ptp_timescale
set, if the timescale of the grandmaster clock is PTP
Definition: gpsdefs.h:14990
Slot for power supply units.
Definition: gpsdefs.h:17969
PORT_INFO_FLAGS
Bit masks used with PORT_INFO::flags.
Definition: gpsdefs.h:3659
uint32_t scale
scale, see MBG_GPIO_STUDIO_CLOCK_SCALES
Definition: gpsdefs.h:8911
the number of known states
Definition: gpsdefs.h:2883
uint8_t hop_count
Used as index to the addr array.
Definition: gpsdefs.h:17863
MBG_NET_INTF_LINK_BOND_MODES
Network interface link bonding mode.
Definition: gpsdefs.h:11696
NTP_LI_BITS
Enumeration of NTP leap indication bits.
Definition: gpsdefs.h:16628
uint8_t reserved_1
Future use.
Definition: gpsdefs.h:15692
uint32_t flags
Restriction flags, see NTP_RESTR_FLAG_MSKS.
Definition: gpsdefs.h:15405
MBG_USER_STAT_FLAGS
Definition: gpsdefs.h:22915
uint8_t reserved_2
reserved, currently 0
Definition: gpsdefs.h:16305
MBG_TIME_SCALES
Known time scales.
Definition: gpsdefs.h:5467
uint32_t supp_flags
Supported flags, see MBG_UCAP_NET_SUPP_FLAG_MASKS.
Definition: gpsdefs.h:12502
see NTP_SYMM_KEY_HASH_MD5
Definition: gpsdefs.h:15834
PTP state changed to PASSIVE.
Definition: gpsdefs.h:9633
CAL_REC_TYPES
Types to be used with CAL_REC_HDR::type.
Definition: gpsdefs.h:5136
Peer settings for NTP devices to configure an upload NTP server.
Definition: gpsdefs.h:16358
#define MAX_SUPP_BASE_FREQUENCIES
max. supported base frequencies for studio clock outputs
Definition: gpsdefs.h:8930
see MBG_BAUD_RATE_300
Definition: gpsdefs.h:3311
int32_t sys_jitter
[us] Combined jitter of the system
Definition: gpsdefs.h:16909
MBG_MONITORING_TYPES
Definition: gpsdefs.h:21257
T_GPS tot_51
time of transmission, page 51
Definition: gpsdefs.h:18517
Framing index exceeds num supp by driver SW.
Definition: gpsdefs.h:3536
uint32_t network_incaccuracy
Pre-defined network inaccuracy from master in [ns].
Definition: gpsdefs.h:13713
uint32_t rxPerSec
overall Rx packet counter
Definition: gpsdefs.h:14423
#define BOOT
Definition: gpsdefs.h:10557
uint16_t reserved_1
reserved, currently unused and always 0
Definition: gpsdefs.h:9296
uint16_t listening_port
snmpd listening port, 161 by default
Definition: gpsdefs.h:21357
uint16_t reserved
reserved, currently always 0
Definition: gpsdefs.h:9484
See NTP_GLB_STATS_FLAG_RAWSTATS.
Definition: gpsdefs.h:15526
uint32_t flags
See MBG_IO_PORT_MSKS.
Definition: gpsdefs.h:20419
MBG_IMS_FDM_OUTPUT_STATE state
Definition: gpsdefs.h:9990
HEALTH health
[—]
Definition: gpsdefs.h:18491
1980-01-06 00:00:00
Definition: gpsdefs.h:8447
uint32_t freq_max
maximum output frequency [Hz]
Definition: gpsdefs.h:7807
An event log entry.
Definition: gpsdefs.h:9564
uint32_t supp_modes
supported modes, see MBG_IMS_FDM_OUTPUT_MODE_MASKS
Definition: gpsdefs.h:10048
XMULTI_REF_SETTINGS settings
current settings
Definition: gpsdefs.h:6802
uint16_t idx
0..MBG_UCAP_NET_GLB_SETTINGS::num_recvs-1
Definition: gpsdefs.h:12562
the number of defined bits
Definition: gpsdefs.h:3650
PTPv1 Master in Multicast mode.
Definition: gpsdefs.h:12942
Only use this for MBG_IO_PORT_SETTINGS::direction if MBG_IO_PORT_SETTINGS::op_mode is MBG_IO_PORT_OP_...
Definition: gpsdefs.h:20119
uint32_t RI_FEATURES
A data type to specify feature flags within RECEIVER_INFO.
Definition: gpsdefs.h:864
see MBG_GPIO_STUDIO_CLOCK_SCALE_1_DIV_16
Definition: gpsdefs.h:8830
COM_HANSHAKE_MODES
Enumeration of handshake modes.
Definition: gpsdefs.h:3180
output 5 MHz rather than 100 kHz
Definition: gpsdefs.h:2194
IO Port Settings Index.
Definition: gpsdefs.h:20738
See NTP_ORPHAN_MODE_FLAG_SUPP_DISABLE.
Definition: gpsdefs.h:16158
uint32_t supp_flags
a bit mask indicating which flags are supported
Definition: gpsdefs.h:14241
uint32_t pDlyReqMsgTx
PDelay Request message Tx counter.
Definition: gpsdefs.h:14453
see USER_CFG_CAN_DISABLE_ON_FAILS
Definition: gpsdefs.h:22805
uint8_t reserved_3
Future use.
Definition: gpsdefs.h:15900
char IP6_ADDR_STR[(43+1)]
A buffer for an IPv6 address string.
Definition: gpsdefs.h:11091
see SMPTE_TAI_EPOCH_1958
Definition: gpsdefs.h:8463
uint32_t supp_modes
bit mask of modes supp. for this string type, see STR_MODE_MASKS
Definition: gpsdefs.h:3706
MBG_DATABASE_INFO_FLAGS
Definition: gpsdefs.h:23507
XMR timing metrics for a particular source, with index.
Definition: gpsdefs.h:7468
MBG_SNMP_VERSIONS
Definition: gpsdefs.h:21300
IO Port Settings.
Definition: gpsdefs.h:20689
uint32_t read_bytes
Number of bytes read.
Definition: gpsdefs.h:18333
int16_t phase
-MAX_SYNTH_PHASE..+MAX_SYNTH_PHASE; >0 -> pulses later
Definition: gpsdefs.h:2860
uint32_t os_rev
Definition: gpsdefs.h:19410
MBG_SNMP_FLAGS
Definition: gpsdefs.h:21323
uint8_t type
See MBG_LICENSE_BASE_TYPES.
Definition: gpsdefs.h:19548
uint32_t idx
index, 0..PTP_UC_MASTER_CFG_LIMITS::n_supp_master-1
Definition: gpsdefs.h:14331
PTPv1 parent dataset containing information about the master (parent) of the device.
Definition: gpsdefs.h:14670
uint16_t number_ports
number of PTP ports on the device
Definition: gpsdefs.h:14869
MBG_DATABASE_CMDS
Definition: gpsdefs.h:23594
uint32_t mgmtPerSecTx
Management message Tx counter.
Definition: gpsdefs.h:14470
uint8_t reserved_1
Future use and padding, currently 0.
Definition: gpsdefs.h:20810
#define PTP_SUBDOMAIN_NAME_LENGTH
Definition: gpsdefs.h:14514
IO Port Type Info.
Definition: gpsdefs.h:20974
uint16_t reserved_2
Future use.
Definition: gpsdefs.h:15898
uint32_t td_neg_limit
min. time deviation limit, 1/MBG_IMS_FDM_LIMITS::td_scale s units
Definition: gpsdefs.h:10124
MBG_FW_FLAG_MSKS
Definition: gpsdefs.h:23209
uint16_t grandmaster_sequence_number
Definition: gpsdefs.h:14682
uint32_t supp_epochs
supported epochs, see MBG_GPIO_VIDEO_EPOCH_MASKS
Definition: gpsdefs.h:8577
uint32_t announceMsgPerSecRx
Accepted Announce message Rx counter.
Definition: gpsdefs.h:14432
int8_t clock_accuracy
see PTP_CLOCK_ACCURACIES
Definition: gpsdefs.h:13090
uint8_t supp_versions
See MBG_SNMP_VERSION_MSKS.
Definition: gpsdefs.h:21380
MBG_TRANSACTION_TYPES
Type of upcoming transaction sequence.
Definition: gpsdefs.h:19898
MBG_GPIO_STUDIO_CLOCK_OUT_SETTINGS studio_clk_out
if MBG_GPIO_SETTINGS::type is MBG_GPIO_TYPE_STUDIO_CLOCK_OUT
Definition: gpsdefs.h:9147
Baud rate not supp by given port.
Definition: gpsdefs.h:3535
POUT_SETTINGS pout_settings
Definition: gpsdefs.h:20633
uint32_t supp_freq
bit mask of supported fixed frequencies, see MBG_GPIO_FIXED_FREQ_MASKS
Definition: gpsdefs.h:7989
XBP_DEVICE_STATES
Possible states of an XBP device.
Definition: gpsdefs.h:17950
uint8_t flags
See MBG_SERVICE_INFO_MSKS.
Definition: gpsdefs.h:23108
uint8_t masterLockingStatus
Definition: gpsdefs.h:13809
used to receive full TimeMon Status structure
Definition: gpsdefs.h:18170
Simple Network Time Protocol (sntp)
Definition: gpsdefs.h:16510
Client settings of an NTP device.
Definition: gpsdefs.h:16233
see XMR_STATS_FLAG_BIT_AUTO_BIAS_VALID
Definition: gpsdefs.h:7379
uint32_t reserved_9
Definition: gpsdefs.h:19857
a leap second is being announced
Definition: gpsdefs.h:13248
uint8_t wday
reserved, currently always 0
Definition: gpsdefs.h:5591
10 MHz fixed frequency output.
Definition: gpsdefs.h:5850
reference time signal not settled
Definition: gpsdefs.h:6952
uint16_t flags
Currently reserved, always 0.
Definition: gpsdefs.h:18021
standard system user
Definition: gpsdefs.h:22779
NTP supports sysstats.
Definition: gpsdefs.h:15505
send a burst of eight packets at each polling cycle
Definition: gpsdefs.h:15138
entering normal operation
Definition: gpsdefs.h:9620
uint32_t supp_flags
supported NTP flags, see NTP_FLAG_MASKS
Definition: gpsdefs.h:15257
GLONASS, Russia.
Definition: gpsdefs.h:10626
uint8_t mode
Driver specific "mode" ::FIXME Flag to enable "mode"?
Definition: gpsdefs.h:15685
int16_t valid
flag data are valid
Definition: gpsdefs.h:18600
modulated
Definition: gpsdefs.h:4533
MBG_GPIO_CFG_LIMIT_FLAG_BITS
GPIO limits flag bits used to define MBG_GPIO_CFG_LIMIT_FLAG_MASKS.
Definition: gpsdefs.h:7631
Real physical network interface.
Definition: gpsdefs.h:11768
Configuration settings for a HaveQuick input or output.
Definition: gpsdefs.h:9456
NTP_REFCLK_CFG_FLAGS
Enumeration of NTP refclock config flags.
Definition: gpsdefs.h:15743
See MBG_IO_PORT_OP_MODE_DISABLED. Other bits should be 0 in this case.
Definition: gpsdefs.h:21073
enable B8ZS encoding (T1 mode only)
Definition: gpsdefs.h:8271
uint32_t fsize
Definition: gpsdefs.h:2514
MBG_HOSTNAME name
Definition: gpsdefs.h:11988
double alpha_2
Ionosph. Corr. Coeff. Alpha 2 [sec/deg^2].
Definition: gpsdefs.h:18604
uint8_t max_symm_keys
number of available symm keys that can be generated, see NTP_SYMM_KEY_INFO_IDX
Definition: gpsdefs.h:15250
XMR_HOLDOVER_STATUS and associated types supported
Definition: gpsdefs.h:7087
Current settings and general capabilities of a specific unicast master.
Definition: gpsdefs.h:14382
PTP_UC_MASTER_INFO info
capabilities and current settings
Definition: gpsdefs.h:14385
uint32_t ucaps
Bit mask for active user captures.
Definition: gpsdefs.h:12532
see NTP_SYS_STATE_SUPP_SYS_ASSOC
Definition: gpsdefs.h:16833
impossible to lock to external 1 PPS reference
Definition: gpsdefs.h:6616
uint8_t announce_receipt_timeout
shall be an integral multiple of MBG_PTP_V2_PORT_DATASET::log_announce_interval
Definition: gpsdefs.h:15042
uint16_t supp_flags
Definition: gpsdefs.h:21386
double alpha_1
Ionosph. Corr. Coeff. Alpha 1 [sec/deg].
Definition: gpsdefs.h:18603
see MBG_GPIO_DEPENDS_ON_ASS_IO_IDX
Definition: gpsdefs.h:9119
the user is disabled, because the max number of login fails has been exceeded
Definition: gpsdefs.h:22920
Query MBG_NET_INTF_ROUTE_INFO by its index.
Definition: gpsdefs.h:12344
uint16_t reserved_2
reserved, currently 0
Definition: gpsdefs.h:16237
Almanac parameters incomplete.
Definition: gpsdefs.h:792
uint32_t reserved_3
Future use.
Definition: gpsdefs.h:15570
uint8_t bg_colour
Background colour of the IO ports, see MBG_IO_PORT_BG_COLOURS.
Definition: gpsdefs.h:20416
uint16_t drv_flags_enable
Enable/disable driver specific flags, see NTP_FUDGE_FLAG_NUMBERS.
Definition: gpsdefs.h:15698
Handshake mode not supp by given port.
Definition: gpsdefs.h:3540
Device has ports at the front side.
Definition: gpsdefs.h:20332
uint16_t reserved
Currently reserved, unused, always 0.
Definition: gpsdefs.h:18863
Supports the GPS_UCAP_NET_GLB_INFO and GPS_UCAP_NET_RECV_INFO_IDX commands, see User Captures via Net...
Definition: gpsdefs.h:2354
NTP_CPU_TYPES
Enumeration of CPU types using NTP.
Definition: gpsdefs.h:16547
Information on an XBP node with specific index.
Definition: gpsdefs.h:18044
uint32_t flags
currently unused, always 0
Definition: gpsdefs.h:9844
double crs
+- Sine Corr. Term to Orbit Radius [m]
Definition: gpsdefs.h:18459
code A1xx
Definition: gpsdefs.h:5152
supports MBG_OPT_SETTINGS
Definition: gpsdefs.h:2196
SMPTE274M-6 1080i at 50 Hz.
Definition: gpsdefs.h:8341
MBG_USER_PERM_BUF cfg_read_perm
config read permission configuration, see MBG_USER_PERM_BUF and MBG_USER_PERMS
Definition: gpsdefs.h:22835
see PTP_FLAG_TIMESCALE_IS_PTP
Definition: gpsdefs.h:13265
uint8_t ssm
synchronization status message, if supported by signal source
Definition: gpsdefs.h:6864
uint32_t reserved_2
currently reserved, unused, always 0
Definition: gpsdefs.h:19092
uint32_t flags
see XMR_INST_FLAG_BIT_MASKS
Definition: gpsdefs.h:7056
uint16_t num_ufus
Number of available UFUs.
Definition: gpsdefs.h:23268
uint32_t reserved_1
Future use.
Definition: gpsdefs.h:16193
BEIDOU, China.
Definition: gpsdefs.h:10627
uint32_t reserved_2
Future use.
Definition: gpsdefs.h:15951
uint32_t reserved2
reserved, currently always 0
Definition: gpsdefs.h:8947
VLF/LF radio (WWVB, DCF77, etc.)
Definition: gpsdefs.h:16670
NTP supports cryptostats.
Definition: gpsdefs.h:15501
[R/-] supports PTPv1 MASTER role
Definition: gpsdefs.h:13434
see MBG_GNSS_FLAG_SAT_INFO_IDX_SUPP_SER
Definition: gpsdefs.h:10738
has on-board IRIG output
Definition: gpsdefs.h:2187
uint16_t sys_peer
Index of the current system peer.
Definition: gpsdefs.h:16902
uint32_t sec
the second of that week
Definition: gpsdefs.h:2566
delete second 23:59:59 of the current day
Definition: gpsdefs.h:16632
uint16_t supp_triggers
See MBG_MONITORING_TYPE_MSKS.
Definition: gpsdefs.h:21885
ref type cfg&#39;d for this level is not supported
Definition: gpsdefs.h:6946
RI_FEATURES features
optional features, see GPS_FEATURE_MASKS
Definition: gpsdefs.h:882
GPS_BUILTIN_FEATURE_BITS
Enumeration of classifiers and built-in features.
Definition: gpsdefs.h:1295
Code locked and time synchronized.
Definition: gpsdefs.h:10924
reach status is fine
Definition: gpsdefs.h:17035
see PTP_PRESETS_TELECOM_PHASE
Definition: gpsdefs.h:13669
uint8_t priority_2
priority 2 attribute for the local clock
Definition: gpsdefs.h:14872
see MBG_GPIO_VIDEO_HD_FORMAT_1080_I_50Hz
Definition: gpsdefs.h:8363
uint16_t seconds
Definition: gpsdefs.h:16467
MBG_TIME_SCALE_SETTINGS max_settings
number of scales, all supported flags
Definition: gpsdefs.h:5522
see WRN_10MHZ_UNLOCK
Definition: gpsdefs.h:6636
see GBIT_LINK_COPPER_FORCE_OR_IS_SLAVE
Definition: gpsdefs.h:14183
see MBG_BAUD_RATE_38400
Definition: gpsdefs.h:3318
SYNTH_STATES
Enumeration of synthesizer states.
Definition: gpsdefs.h:2876
supports association ID, see NTP_PEER_STATE::ass_id
Definition: gpsdefs.h:17351
peer shall be treated as a pool server
Definition: gpsdefs.h:15147
1) MBG_TLV_TYPE_BLOB => MBG_LICENSE_LIMITS, see License information
Definition: gpsdefs.h:18151
uint16_t reserved_2
reserved, currently 0
Definition: gpsdefs.h:16417
uint16_t n_supp_intf_addr
max. number of supported interface addresses, see MBG_NET_INTF_ADDR_SETTINGS_IDX, MBG_NET_INTF_ADDR_I...
Definition: gpsdefs.h:11873
Supports tainted config structures, see Tainted config.
Definition: gpsdefs.h:2359
Output is normally always &#39;off&#39;, or always &#39;on&#39;, if flag POUT_INVERTED is set.
Definition: gpsdefs.h:5795
A GPIO port&#39;s current settings and limits.
Definition: gpsdefs.h:9254
uint32_t idx
port index, 0..MBG_GPIO_CFG_LIMITS::num_io-1
Definition: gpsdefs.h:9186
[R/-] PTP Config has extended supp_flags
Definition: gpsdefs.h:13441
NTP_GLB_STATS_MASKS
Flag masks associated with NTP_GLB_STATS_FLAGS.
Definition: gpsdefs.h:15519
PTPv1 time drop dataset.
Definition: gpsdefs.h:14737
Supports database(s), see Database(s).
Definition: gpsdefs.h:2367
impossible to lock to GPS
Definition: gpsdefs.h:6617
See MBG_LICENSE_TIME_MONITOR_MEMBER_MAX_PTPV2_CLIENTS.
Definition: gpsdefs.h:19788
uint8_t reserved
reserved, currently always 0
Definition: gpsdefs.h:14848
int32_t root_disp
[us] Total dispersion to the system peer
Definition: gpsdefs.h:16895
see MBG_GPIO_FIXED_FREQ_48kHz
Definition: gpsdefs.h:7921
PAL M (Brazil) 525i.
Definition: gpsdefs.h:8344
see MBG_GPIO_STUDIO_CLOCK_SCALE_8
Definition: gpsdefs.h:8837
Indicate there are unknown files (older FW scans newer files)
Definition: gpsdefs.h:23220
#define RAW_IRIG_SIZE
Definition: gpsdefs.h:5411
number of supported presets
Definition: gpsdefs.h:13653
uint8_t delay_mech
see PTP_DELAY_MECHS
Definition: gpsdefs.h:13284
uint32_t reserved1
reserved, currently always 0
Definition: gpsdefs.h:8727
uint16_t reserved_1
Future use.
Definition: gpsdefs.h:15992
MBG_IO_PORT_SETTINGS_U data
Data union for settings&#39; type.
Definition: gpsdefs.h:20704
SCU_STAT_MASKS
Bit masks used to check the SCU EPLD status.
Definition: gpsdefs.h:10493
uint16_t GPS_CMD
The type of a GPS command code.
Definition: gpsdefs.h:719
uint32_t reserved
reserved for future use, currently always 0
Definition: gpsdefs.h:3624
Firmware reset to factory defaults.
Definition: gpsdefs.h:9638
oscillator control loop not settled
Definition: gpsdefs.h:2642
server unreachable
Definition: gpsdefs.h:17187
MBG_TLV_TYPE type
One of the MBG_TLV_TYPES or MBG_TLV_FEAT_TYPES depending on the type of message.
Definition: gpsdefs.h:18310
both serial ports on, use with ENABLE_FLAGS::serial
Definition: gpsdefs.h:3168
ITU_SSM_CODES
ITU-T SSM codes acc. to Recommendation G.781.
Definition: gpsdefs.h:13932
uint16_t steps_removed
number of communication paths between local clock and grandmaster
Definition: gpsdefs.h:14903
uint8_t ptp_prot_version
PTP protocol version, 1, or 2, usually 2 for v2.
Definition: gpsdefs.h:13187
uint32_t reserved_5
Reserved, currently 0.
Definition: gpsdefs.h:12182
the timescale is PTP standard, not arbitrary
Definition: gpsdefs.h:13247
MBG_IP_ADDR ref_id
Reference ID of the current system peer, see MBG_IP_ADDR.
Definition: gpsdefs.h:16897
uint8_t avg
Specify the minimum average interpacket spacing in log2 s.
Definition: gpsdefs.h:15477
uint16_t n_supp_intf_link
max. number of supported physical network interfaces (links), see MBG_NET_INTF_LINK_SETTINGS_IDX, MBG_NET_INTF_LINK_INFO_IDX
Definition: gpsdefs.h:11872
MBG_GPIO_FREQ_IN_SETTINGS freq_in
if MBG_GPIO_SETTINGS::type is MBG_GPIO_TYPE_FREQ_IN
Definition: gpsdefs.h:9140
Specific output settings and limits.
Definition: gpsdefs.h:10045
frequency set from frequency file
Definition: gpsdefs.h:16726
String type index exceeds num supp by device.
Definition: gpsdefs.h:3542
TM_GPS tm_disconn
time of antenna disconnect
Definition: gpsdefs.h:3103
see NTP_RESTR_FLAG_LIMITED
Definition: gpsdefs.h:15349
uint8_t num_dns_srvr
number of configured DNS servers, see MBG_IP_ADDR_IDX
Definition: gpsdefs.h:11850
permission to read/change the user password
Definition: gpsdefs.h:22507
56000baseLR4 Full Duplex (56 GBit/s)
Definition: gpsdefs.h:11443
uint8_t avg_min
Minimum value for avg.
Definition: gpsdefs.h:15451
see MBG_GPIO_BITS_T1_FRAMED
Definition: gpsdefs.h:8034
double af0
+- Clock Correction Coefficient 0 [sec]
Definition: gpsdefs.h:18465
uint8_t type
Restriction type, see NTP_RESTR_TYPES.
Definition: gpsdefs.h:15402
uint16_t reserved_3
Future use.
Definition: gpsdefs.h:23382
Input signal is avail right now.
Definition: gpsdefs.h:21076
uint8_t value
the parameter value
Definition: gpsdefs.h:12749
see STR_PER_MIN
Definition: gpsdefs.h:3781
uint32_t supp_protos
Supported transfer protocols, see MBG_UCAP_NET_TRANSF_PROTO_MASKS.
Definition: gpsdefs.h:12499
MBG_OPT_FLAGS
Bit masks according to MBG_OPT_BITS.
Definition: gpsdefs.h:5373
double OMEGA0
+- Longit. of Asc. Node of orbit plane [rad]
Definition: gpsdefs.h:18499
Configuration of a GPIO as BITS output module.
Definition: gpsdefs.h:8232
MBG_TAINTED_CFGS
Array positions in MBG_TAINTED_CFG::tainted_cfgs.
Definition: gpsdefs.h:22273
uint32_t flags
Flags, see MBG_IMS_FDM_FLAG_MASKS.
Definition: gpsdefs.h:10321
uint32_t reserved_2
Future use.
Definition: gpsdefs.h:16033
see XMR_STATS_FLAG_BIT_STEP_DETECTED
Definition: gpsdefs.h:7377
GPS_MODEL_CODES
Known device ID codes for RECEIVER_INFO::model_code.
Definition: gpsdefs.h:912
char int8_t
Definition: words.h:209
uint32_t reserved_rev_6
Definition: gpsdefs.h:19436
see PTP_DELAY_MECH_E2E
Definition: gpsdefs.h:12781
See MBG_LICENSE_NTP_MEMBER_MAX_RPS.
Definition: gpsdefs.h:19656
see NTP_ROLE_SERVER
Definition: gpsdefs.h:15122
uint16_t flags
see XMR_SETTINGS_FLAG_MSKS and XMR_EXT_SRC_INFO::supp_flags
Definition: gpsdefs.h:6723
#define FPGA_NAME_SIZE
Definition: gpsdefs.h:2505
uint32_t reserved_1
currently reserved, unused, always 0
Definition: gpsdefs.h:7331
see MBG_IMS_FDM_LINE_FREQ_50HZ
Definition: gpsdefs.h:10210
uint32_t supp_flags
bit mask of supported flags, see MBG_GPIO_BITS_OUT_FLAG_MASKS
Definition: gpsdefs.h:8315
this ref source has low jitter
Definition: gpsdefs.h:6956
MBG_PTP_V2_TIME_PROPERTIES_DATASET_FLAGS flags
flags field, see MBG_PTP_V2_TIME_PROPERTIES_DATASET_FLAGS
Definition: gpsdefs.h:15012
See MBG_IO_PORT_SRC_CONFIGURABLE.
Definition: gpsdefs.h:20228
IGNORE_LOCK ignore_lock
Definition: gpsdefs.h:20600
uint16_t parent_last_sync_sequence_number
Definition: gpsdefs.h:14673
uint8_t reserved
reserved, currently always 0
Definition: gpsdefs.h:15047
uint8_t ptp_role
one of the supported PTP roles, see PTP_ROLES
Definition: gpsdefs.h:13285
see MBG_NET_INTF_LINK_BOND_MODE_ACTIVEBACKUP
Definition: gpsdefs.h:11718
PTP_V1_DEFAULT_DATASET_FLAGS_MASKS
PTPv1 default dataset flag masks used with MBG_PTP_V1_DEFAULT_DATASET::flags.
Definition: gpsdefs.h:14565
NTP supports clockstats.
Definition: gpsdefs.h:15500
uint8_t ssm
ssm for E1 mode, 0..N_GPIO_SSM_VALS-1
Definition: gpsdefs.h:8237
MBG_DATABASE_SETTINGS::dbname is valid
Definition: gpsdefs.h:23528
uint32_t reserved
Reserved, currently always 0.
Definition: gpsdefs.h:10168
host reachable
Definition: gpsdefs.h:17129
see NTP_FLASH_STAT_PKT_AUTH
Definition: gpsdefs.h:17290
MBG_DATABASE_SETTINGS_FLAG_MSKS
Definition: gpsdefs.h:23451
See NTP_GLB_STATS_FLAG_CLOCKSTATS.
Definition: gpsdefs.h:15522
uint32_t hw_rev
Definition: gpsdefs.h:19409
MBG_LICENSE_BASE base
See MBG_LICENSE_BASE.
Definition: gpsdefs.h:19665
distance threshold exceeded
Definition: gpsdefs.h:17269
uint8_t grasp_col
Column position of the device grasp, consider MBG_IO_PORT_MSK_NO_GRASP.
Definition: gpsdefs.h:20423
NTP supports "discard" rate limiting.
Definition: gpsdefs.h:15153
uint16_t event_port_address
Definition: gpsdefs.h:14793
uint16_t mode
Mode of operation, see RECEIVER_MODES.
Definition: gpsdefs.h:10593
Configuration of a GPIO as studio clock output module.
Definition: gpsdefs.h:8908
Only one of the supported GNSS systems can be used at the same time.
Definition: gpsdefs.h:10721
uint32_t flags
reserved, currently always 0
Definition: gpsdefs.h:7874
int8_t mday
day of month, 1..31
Definition: gpsdefs.h:2597
become system peer
Definition: gpsdefs.h:17194
General GPIO config info to be read from a device.
Definition: gpsdefs.h:7608
MBG_TLV_UID tlv_type
"Subtype" identifying current TLV, see MBG_TLV_TYPES
Definition: gpsdefs.h:18374
This default restriction only applies to IPv6.
Definition: gpsdefs.h:15331
MBG_IP_ADDR_PORT addr
Destination IP and port address of the network receiver, see MBG_IP_ADDR_PORT.
Definition: gpsdefs.h:12534
uint8_t slot_type
See XBP_NODE_INFO::slot_type, or MBG_OWN_EVENT_SLOT_TYPE.
Definition: gpsdefs.h:21877
MBG_GPIO_DIGITAL_AUDIO_TYPE_MASKS
Bit masks associated with MBG_GPIO_DIGITAL_AUDIO_TYPES.
Definition: gpsdefs.h:8991
uint16_t os_target
Definition: gpsdefs.h:19432
int8_t stratum
Stratum number to be fudged; -1 if unspecified and thus default is to be used.
Definition: gpsdefs.h:15686
T_GPS t0t
Reference Time UTC Parameters [wn|sec].
Definition: gpsdefs.h:18569
uint32_t reserved_2
reserved, currently not used
Definition: gpsdefs.h:17881
PTPv2 port dataset.
Definition: gpsdefs.h:15035
MBG_GPIO_INFO info
limits and current settings of this GPIO port
Definition: gpsdefs.h:9276
uint32_t MBG_TLV_TYPE
A data type to hold one of the MBG_TLV_TYPES or MBG_TLV_FEAT_TYPES.
Definition: gpsdefs.h:18088
uint32_t reserved1
reserved, currently always 0
Definition: gpsdefs.h:9080
uint8_t n_com_ports
number of on-board serial ports
Definition: gpsdefs.h:887
MBG_USER_STATUS status
status, see MBG_USER_STATUS
Definition: gpsdefs.h:22963
uint32_t reserved0
reserved, currently always 0
Definition: gpsdefs.h:8694
(reserved)
Definition: gpsdefs.h:8075
MBG_TLV_DATA data
See MBG_TLV_DATA.
Definition: gpsdefs.h:18350
1) MBG_TLV_TYPE_FILE => Encrypted license file as data blob
Definition: gpsdefs.h:18148
eyeball and wristwatch
Definition: gpsdefs.h:16676
see IP4_BIT_LINK
Definition: gpsdefs.h:11342
NTP_SYNC_SRC_BITS
Enumeration of NTP synchronization source bits.
Definition: gpsdefs.h:16666
A generic structure used to specify FDM limits.
Definition: gpsdefs.h:10114
uint16_t mode
Mode of operation, see POUT_MODES.
Definition: gpsdefs.h:5694
uint32_t reserved_5
Reserved for future use, currently 0.
Definition: gpsdefs.h:19605
PTP_NW_PROT_MASKS
Bit masks for enumerated protocols possibly used with PTP.
Definition: gpsdefs.h:12660
uint32_t reserved_2
Currently reserved, unused, always 0.
Definition: gpsdefs.h:18732
NTP_FLASH_STAT_FLAG_MASKS
Flag masks for NTP_FLASH_STAT_FLAGS.
Definition: gpsdefs.h:17284
src is allowed to operate as zero asymmetry master
Definition: gpsdefs.h:6770
(reserved)
Definition: gpsdefs.h:8078
see PTP_NW_PROT_DEVICE_NET
Definition: gpsdefs.h:12666
uint32_t reserved_1
Definition: gpsdefs.h:7552
A structure used to store extended device features.
Definition: gpsdefs.h:2438
uint16_t model_code
One of GPS_MODEL_CODES.
Definition: gpsdefs.h:23308
the announced leap second is negative
Definition: gpsdefs.h:13249
Network Time Protocol daemon (ntpd)
Definition: gpsdefs.h:16508
Supports extended revision information, see Extended system information.
Definition: gpsdefs.h:2350
Port is output like 10Mhz.
Definition: gpsdefs.h:20121
XMR_EXT_SRC_FEAT_FLAG_BITS
XMR source feature flag bits.
Definition: gpsdefs.h:7251
has simple LAN IPv4 interface, superseded by GPS_FEAT_NET_CFG
Definition: gpsdefs.h:2189
NANO_TIME_64 time1
Driver specific.
Definition: gpsdefs.h:15695
see HQ_FLAG_SIGNAL_INVERTED
Definition: gpsdefs.h:9522
Supports commands GPS_REGISTER_PUSH_MSGS and GPS_UNREGISTER_PUSH_MSGS.
Definition: gpsdefs.h:2360
uint8_t reserved_1
Future use.
Definition: gpsdefs.h:15896
time difference exceeds error limit
Definition: gpsdefs.h:17781
A PTP clock identity.
Definition: gpsdefs.h:13038
#define IP6_ADDR_STR_SIZE
Buffer size required to store an IPv6 address string.
Definition: gpsdefs.h:11088
current second is leap second
Definition: gpsdefs.h:2635
uint32_t reserved_4
reserved, currently 0
Definition: gpsdefs.h:16371
Query MBG_NET_INTF_ADDR_SETTINGS by its index.
Definition: gpsdefs.h:12204
uint16_t fpga_start_seg
Definition: gpsdefs.h:2532
#define MBG_MAX_USER_NAME_LEN
Definition: gpsdefs.h:22814
IFLAGS_BIT_MASKS
Bit masks used with IRIG_SETTINGS::flags.
Definition: gpsdefs.h:5039
STR_MODES
Enumeration of modes supported for time string transmission.
Definition: gpsdefs.h:3757
XMR_STATS_FLAGS_BITS
Enumeration of bits used to define XMR_STATS_FLAGS_MSKS.
Definition: gpsdefs.h:7360
Originally Shipped Version.
Definition: gpsdefs.h:23200
uint8_t L2code
code on L2 channel [—]
Definition: gpsdefs.h:18472
uint8_t reserved_1
reserved, currently always 0
Definition: gpsdefs.h:14868
invalid leap or stratum
Definition: gpsdefs.h:17264
indicates 4 power supplies instead of 2
Definition: gpsdefs.h:10506
uint32_t supp_types
supported types, see MBG_GPIO_VIDEO_SYNC_TYPE_MASKS
Definition: gpsdefs.h:8724
MBG_NET_INTF_LINK_TYPES
Network interface link type bits.
Definition: gpsdefs.h:11766
Structure that represents a timestamp in NTP Short Format.
Definition: gpsdefs.h:16465
uint16_t timeout
Definition: gpsdefs.h:5703
modulated
Definition: gpsdefs.h:4550
int32_t dac_val
current DAC value, positive or negative
Definition: gpsdefs.h:9962
XMR statistics for a particular source, with index.
Definition: gpsdefs.h:7403
slave in unicast mode
Definition: gpsdefs.h:12934
MBG_GPIO_STUDIO_CLOCK_BASE_FREQ_MASKS
Bit masks associated with MBG_GPIO_STUDIO_CLOCK_BASE_FREQS.
Definition: gpsdefs.h:8766
SMPTE296M-3 720p at 50 Hz.
Definition: gpsdefs.h:8340
marks a server as not to be selected for time synchronization
Definition: gpsdefs.h:15140
MBG_GPIO_VIDEO_SYNC_OUT_SETTINGS video_sync_out
if MBG_GPIO_SETTINGS::type is MBG_GPIO_TYPE_VIDEO_SYNC_OUT
Definition: gpsdefs.h:9146
see MBG_FRAMING_7N2
Definition: gpsdefs.h:3386
double tgd
+- estimated group delay differential [sec]
Definition: gpsdefs.h:18468
Antenna is disconnected, tm_reconn and delta_t not yet set.
Definition: gpsdefs.h:3125
uint32_t reserved1
reserved, currently always 0
Definition: gpsdefs.h:8545
uint32_t idx
Definition: gpsdefs.h:23289
int16_t year
year number, 0..9999
Definition: gpsdefs.h:2595
Supports GPS_GNSS_MODE.
Definition: gpsdefs.h:2368
see STR_PER_SEC
Definition: gpsdefs.h:3780
uint8_t source
MBG_IO_PORT_SRCS
Definition: gpsdefs.h:20693
uint8_t domain_number
domain attribute of the local clock
Definition: gpsdefs.h:14874
supports headway, see NTP_PEER_STATE::headway
Definition: gpsdefs.h:17357
long wave receiver. e.g. DCF77 AM, WWVB, MSF, JJY
Definition: gpsdefs.h:6435
double cuc
+- Cosine Corr. Term to Arg. of Latitude [rad]
Definition: gpsdefs.h:18460
uint32_t supp_limits
supported ITU limit masks for BITS signal see ITU_LIMIT_MASKS
Definition: gpsdefs.h:7810
number of predefined fixed frequencies
Definition: gpsdefs.h:7908
A generic structure used to hold a GPIO port&#39;s settings.
Definition: gpsdefs.h:9127
XBP_NODE_INFO node_info
RECEIVER_INFO of the device behind this node
Definition: gpsdefs.h:18047
MBG_EVENT_STATUS status
Definition: gpsdefs.h:22102
uint32_t supp_flags
see MBG_NET_INTF_ADDR_MASKS
Definition: gpsdefs.h:12225
Only use this for MBG_IO_PORT_SETTINGS::source if MBG_IO_PORT_SETTINGS::op_mode is MBG_IO_PORT_OP_MOD...
Definition: gpsdefs.h:20167
uint32_t ass_if_index
Index of the associated interface link, see MBG_NET_INTF_LINK_SETTINGS::if_index. ...
Definition: gpsdefs.h:12169
MBG_GPIO_SIGNAL_SHAPES
Enumeration of known signal shapes.
Definition: gpsdefs.h:7703
see XMRSF_BIT_IS_PHASE_SRC
Definition: gpsdefs.h:6792
uint8_t reach
Shift register for the last 8 polling intervals.
Definition: gpsdefs.h:17431
MBG_IMS_FDM_OUTPUT_SETTINGS settings
Definition: gpsdefs.h:10029
uint32_t reserved_1
Reserved for future use, currently 0.
Definition: gpsdefs.h:19734
Framing index exceeds num supp by device.
Definition: gpsdefs.h:3537
see MBG_GPIO_BITS_E1_FRAMED
Definition: gpsdefs.h:8033
uint32_t reserved_5
Definition: gpsdefs.h:19861
number of known flag bits
Definition: gpsdefs.h:6320
Osc has warmed up.
Definition: gpsdefs.h:5218
enable Bit for output MUX, set if enabled
Definition: gpsdefs.h:10502
Output signal generated by the programmable frequency synthesizer.
Definition: gpsdefs.h:5858
NTP_MODE_BITS
Enumeration of NTP mode bits.
Definition: gpsdefs.h:16976
MBG_FW_FILE_MSKS
Definition: gpsdefs.h:23249
see GBIT_LINK_COPPER_PREFER_MASTER
Definition: gpsdefs.h:14184
NTP via IPv6/UDP.
Definition: gpsdefs.h:15135
no event (empty entry)
Definition: gpsdefs.h:9615
IO Port Type Status.
Definition: gpsdefs.h:21183
uint32_t syncMsgRx
Accepted Sync message Rx counter.
Definition: gpsdefs.h:14435
PTP_STATE_FLAG_MASKS
Flags masks used with PTP_STATE::flags.
Definition: gpsdefs.h:13261
Windows time service (w32time)
Definition: gpsdefs.h:16511
MBG_IO_PORT_SRCS
Port type sources.
Definition: gpsdefs.h:20165
uint16_t reserved_2
Reserved for future use, currently 0.
Definition: gpsdefs.h:19550
uint8_t major_version
Major version number.
Definition: gpsdefs.h:16882
see NTP_FLASH_STAT_PEER_UNREACH
Definition: gpsdefs.h:17298
uint32_t upper_bound
sync state set to false if above this limit [ns]
Definition: gpsdefs.h:13301
MBG_DATABASE_SETTINGS::password is valid
Definition: gpsdefs.h:23526
double beta_2
Ionosph. Corr. Coeff. Beta 2 [sec/deg^2].
Definition: gpsdefs.h:18609
PTP over E1.
Definition: gpsdefs.h:6429
MBG_GPIO_DIGITAL_AUDIO_OUT_SUPP digital_audio_out
if MBG_GPIO_SETTINGS::type is ::;MBG_GPIO_TYPE_DIGITAL_AUDIO_OUT
Definition: gpsdefs.h:9220
popcorn spike suppressor
Definition: gpsdefs.h:17197
MBG_TLV_UID uid
Unique ID identifying following TLVs, 0 if empty/not set.
Definition: gpsdefs.h:18309
Quality unknown, existing synchronization network.
Definition: gpsdefs.h:8066
uint32_t u32
dummy to force at least 32 bit alignment
Definition: gpsdefs.h:8131
On board time set externally.
Definition: gpsdefs.h:5228
HAVEQUICK_SETTINGS settings
current settings
Definition: gpsdefs.h:9481
uint32_t idx
sensor index, 0..MBG_IMS_STATE::num_sensors-1
Definition: gpsdefs.h:9865
see SDH_NETWORK_OPTION_1
Definition: gpsdefs.h:14135
accept static bias correction from zero asymmetry master
Definition: gpsdefs.h:6771
Configuration settings for a single programmable pulse output.
Definition: gpsdefs.h:5692
uint32_t flags
reserved, currently always 0
Definition: gpsdefs.h:14286
see USER_STAT_DISABLED_ON_EXP
Definition: gpsdefs.h:22930
int32_t milli_phase
phase [1/1000 degree units], see MBG_GPIO_FREQ_OUT_SUPP::milli_phase_max
Definition: gpsdefs.h:7839
supports precision indication, see NTP_SYS_STATE::precision
Definition: gpsdefs.h:16801
UFU flashing is in progress.
Definition: gpsdefs.h:9640
The value in XMR_STATS::auto_bias is valid.
Definition: gpsdefs.h:7364
see MBG_NET_INTF_LINK_OPT_CAN_AUTONEG
Definition: gpsdefs.h:11680
PTP_PORT_IDENTITY port_identity
identity of the local port, see PTP_PORT_IDENTITY
Definition: gpsdefs.h:15037
codes B1xx, AFNOR, IEEE1344
Definition: gpsdefs.h:5151
Structure that represents the current system status of an NTP device.
Definition: gpsdefs.h:16872
see IP4_BIT_DHCP
Definition: gpsdefs.h:11341
src can be used as a trusted src for spoofing detection
Definition: gpsdefs.h:6773
the port is currently slave
Definition: gpsdefs.h:13246
No other fields valid since antenna has not yet been disconnected.
Definition: gpsdefs.h:3124
initial frequency training mode
Definition: gpsdefs.h:16728
100baseT Full Duplex (100 MBit/s)
Definition: gpsdefs.h:11423
int8_t hour
hours, 0..23
Definition: gpsdefs.h:2600
VST_DATA_TYPES
Known common VST data types.
Definition: gpsdefs.h:17629
Locally generated, e.g. on (carrier) board.
Definition: gpsdefs.h:20169
uint32_t supp_formats
supported video formats, see MBG_GPIO_VIDEO_FORMAT_MASKS
Definition: gpsdefs.h:8575
uint32_t supp_flags
supported NTP flags, see NTP_FLAG_MASKS
Definition: gpsdefs.h:16272
10 MHz output is always disabled
Definition: gpsdefs.h:2207
see MBG_GPIO_STUDIO_CLOCK_SCALE_16
Definition: gpsdefs.h:8838
supports interleave delay, see NTP_PEER_STATE::xleave
Definition: gpsdefs.h:17362
uint16_t BVAR_STAT
Status flags of battery buffered data.
Definition: gpsdefs.h:770
[R/-] supports TSU reset via register cmd
Definition: gpsdefs.h:13425
PCPS_GEN_IO_TYPES
Data types used with GEN_IO_INFO::type.
Definition: gpsdefs.h:10388
uint8_t frequency_traceable
set, if the frequency determining the timescale is traceable to a primary reference ...
Definition: gpsdefs.h:14992
Analog output reflects time deviation.
Definition: gpsdefs.h:10092
modulated
Definition: gpsdefs.h:4552
uint8_t timeout
In seconds.
Definition: gpsdefs.h:21686
MBG_GNSS_MODE_INFO_FLAG_MASKS
Flag masks used with MBG_GNSS_MODE_INFO::flags.
Definition: gpsdefs.h:10734
struct NTP_PEER_STATE NTP_REFCLK_STATE
see MBG_OPT_BIT_STR_UTC
Definition: gpsdefs.h:5375
[R/-] supports the NTP HW time stamping in Master mode
Definition: gpsdefs.h:13426
in holdover mode after previous synchronization
Definition: gpsdefs.h:2640
uint8_t port_idx
Index of the associated IO port, or MBG_INV_EVENT_PORT.
Definition: gpsdefs.h:21878
see MBG_NET_GLB_SUPP_BONDING
Definition: gpsdefs.h:11405
PTP_PORT_ID port_number
Definition: gpsdefs.h:13070
uint32_t supp_stats
See NTP_GLB_STATS_MASKS.
Definition: gpsdefs.h:15567
PTPv2 time properties dataset.
Definition: gpsdefs.h:15009
MBG_GPIO_SIGNAL_SHAPE_MASKS
Bit masks associated with MBG_GPIO_SIGNAL_SHAPES.
Definition: gpsdefs.h:7722
Port is input like PPS In.
Definition: gpsdefs.h:20120
int8_t min
minutes, 0..59
Definition: gpsdefs.h:2601
double beta_1
Ionosph. Corr. Coeff. Beta 1 [sec/deg].
Definition: gpsdefs.h:18608
uint8_t communication_technology
Definition: gpsdefs.h:14524
Meinberg device tree describes e.g. front connectors.
Definition: gpsdefs.h:23222
uint8_t supp_base_freqs
supported base frequencies, see MBG_GPIO_STUDIO_CLOCK_BASE_FREQ_MASKS
Definition: gpsdefs.h:8942
number of compensation values
Definition: gpsdefs.h:5157
XMR_INST_FLAGS
Enumeration of flag bits used with XMULTI_REF instances.
Definition: gpsdefs.h:7078
EGNOS, European Geostationary Navigation Overlay Service.
Definition: gpsdefs.h:10630
int16_t delay_asymmetry
Definition: gpsdefs.h:13304
see XMRIF_BIT_HOLDOVER_STATUS_SUPP
Definition: gpsdefs.h:7106
supports precision indication, see NTP_PEER_STATE::precision
Definition: gpsdefs.h:17354
IP4_ADDR ip_addr
the IP address
Definition: gpsdefs.h:11241
String mode index exceeds num supp by device.
Definition: gpsdefs.h:3545
see MBG_GPIO_BITS_ERR_LOF
Definition: gpsdefs.h:8195
Time scale configuration settings.
Definition: gpsdefs.h:5505
uint32_t flags
See MBG_FW_FLAG_MSKS.
Definition: gpsdefs.h:23267
see WRN_10MHZ_MISSING
Definition: gpsdefs.h:6639
uint32_t reserved_1
Currently reserved, always 0.
Definition: gpsdefs.h:17930
uint8_t poll_intv_min
minimal supported NTP polling interval
Definition: gpsdefs.h:16266
This default restriction only applies to IPv4.
Definition: gpsdefs.h:15330
NTP refclocks not configurable.
Definition: gpsdefs.h:15158
output level can&#39;t be inverted, thus POUT_INVERTED is not supported for this output ...
Definition: gpsdefs.h:6318
See MBG_IO_PORT_SRC_ASSOC_CLOCK.
Definition: gpsdefs.h:20220
uint32_t supp_flags
a bit mask of supported features, see PTP_CFG_FLAG_MASKS
Definition: gpsdefs.h:13357
Supported options of a video type GPIO output.
Definition: gpsdefs.h:8573
Slot for processing units.
Definition: gpsdefs.h:17972
MBG_IMS_SENSORS
IMS sensor types.
Definition: gpsdefs.h:9884
uint8_t poll_intv_max
maximum supported NTP polling interval
Definition: gpsdefs.h:16303
uint32_t frac
fractional part, binary (0x80000000 –> 0.5, 0xFFFFFFFF –> 0.9999999...)
Definition: gpsdefs.h:7753
Firmware has been activated.
Definition: gpsdefs.h:9636
see MBG_EXT_SYS_INFO_BIT_OS_TYPE
Definition: gpsdefs.h:19256
MBG_LICENSE_TIME_MONITOR_MEMBER_MSKS
Bit masks of Sync Monitor license specific members.
Definition: gpsdefs.h:19786
Supports power control, see Definitions for power control API.
Definition: gpsdefs.h:2349
NTP refclock specific settings.
Definition: gpsdefs.h:15681
MBG_USER_SETTINGS settings
Definition: gpsdefs.h:22871
PTP state changed to UNCALIBRATED.
Definition: gpsdefs.h:9634
NTP statistics settings.
Definition: gpsdefs.h:15563
uint8_t reserved_0
reserved, currently always 0
Definition: gpsdefs.h:8127
modulated (G143 is undefined, SBS not supported with Gxxx)
Definition: gpsdefs.h:4542
1) MBG_TLV_TYPE_BLOB => Unified Firmware Update (UFU) file, see mbg_ufu.h
Definition: gpsdefs.h:18173
MBG_EVENT_VALUE_TYPES
Definition: gpsdefs.h:21930
uint8_t n_outputs
number of outputs per module
Definition: gpsdefs.h:10116
uint8_t parent_clock_accuracy
clock accuracy of the parent node, see PTP_CLOCK_ACCURACIES
Definition: gpsdefs.h:13213
Device has ports at the rear side.
Definition: gpsdefs.h:20333
Current settings and general capabilities of a programmable pulse output.
Definition: gpsdefs.h:6281
uint8_t dynamic_platform
Definition: gpsdefs.h:18693
MBG_IO_PORT_STATUS_BITS
Port Type Status Bits.
Definition: gpsdefs.h:21071
uint32_t reserved_3
reserved, currently 0
Definition: gpsdefs.h:16239
XMR_STATS_FLAGS_MSKS
Flag bit masks used with XMR_STATS::flags.
Definition: gpsdefs.h:7375
NTP_TSTAMP sys_time
Current system time, see NTP_TSTAMP.
Definition: gpsdefs.h:16900
uint8_t sec_level
See MBG_SNMP_V3_SEC_LEVELS.
Definition: gpsdefs.h:21605
see MBG_UCAP_NET_TRANSF_MODE_UNKNOWN
Definition: gpsdefs.h:12402
uint8_t release_candidate
Release candidate revision information.
Definition: gpsdefs.h:23270
uint8_t peer_reach_stat
Current reach status of the peer, see NTP_REACH_STAT_BITS.
Definition: gpsdefs.h:17412
MBG_EVENT_STR string
Definition: gpsdefs.h:22072
uint16_t fpga_type
See MBG_EXT_SYS_INFO_FPGA_TYPES.
Definition: gpsdefs.h:19414
see MBG_GPIO_STUDIO_CLOCK_BASE_FREQ_48KHZ
Definition: gpsdefs.h:8770
uint16_t reserved_2
reserved, currently always 0
Definition: gpsdefs.h:22875
Status information on a single GPIO port.
Definition: gpsdefs.h:9292
uint8_t max_v3_settings
Only valid if MBG_SNMP_GLB_INFO::supp_versions contains MBG_SNMP_VERSION_MSK_V3.
Definition: gpsdefs.h:21382
uint32_t reserved_3
Future use.
Definition: gpsdefs.h:15952
See MBG_IO_PORT_SRC_CLK2.
Definition: gpsdefs.h:20223
see POUT_BIT_NOT_INVERTIBLE, POUT_INVERTED
Definition: gpsdefs.h:6334
See NTP_GLB_STATS_FLAG_FILEGEN.
Definition: gpsdefs.h:15528
uint8_t ptp_proto_version
PTP protocol version, 1, or 2, usually 2 for v2.
Definition: gpsdefs.h:13346
uint16_t value_dict_entries
Number of entries in value dictionary, see MBG_EVENT_VALUE_IDX.
Definition: gpsdefs.h:21880
PTP_PRESETS_MASKS
Flag masks used with PTP_CFG_INFO::supp_opt_ext.
Definition: gpsdefs.h:13662
#define MBG_MAX_LICENSES
Definition: gpsdefs.h:19486
number of known optional extensions
Definition: gpsdefs.h:13605
MBG_HOSTNAME receiver_addr
Definition: gpsdefs.h:21490
NTP via IPv4/UDP.
Definition: gpsdefs.h:15134
see PTP_FLAG_IS_SLAVE
Definition: gpsdefs.h:13264
uint8_t access_type
See MBG_SNMP_ACCESS_TYPES, ignore in trap settings.
Definition: gpsdefs.h:21604
10000baseKR Full Duplex (10 GBit/s)
Definition: gpsdefs.h:11431
uint16_t reserved_1
Definition: gpsdefs.h:23269
See MBG_IO_PORT_SRC_STATIC.
Definition: gpsdefs.h:20218
uint32_t trans_bytes
Number of bytes transferred so far related to this TLV type.
Definition: gpsdefs.h:18376
MBG_GPIO_FIXED_FREQS
Enumeration of predefined fixed frequencies.
Definition: gpsdefs.h:7898
IPV6_MULTICAST_SCOPES
Possible IPv6 Multicast Scopes.
Definition: gpsdefs.h:11106
const char * name
the parameter name
Definition: gpsdefs.h:12750
insert second after 23:59:59 of the current day
Definition: gpsdefs.h:16631
see PTP_PRESETS_DFLT_P2P
Definition: gpsdefs.h:13666
int8_t curr_prio
current priority level, 0..XMULTI_REF_INSTANCES::n_xmr_settings, or XMR_PRIO_LVL_UNSPEC ...
Definition: gpsdefs.h:7160
GPS_OSC_TYPES
Known oscillator types used with RECEIVER_INFO::osc_type.
Definition: gpsdefs.h:2095
General NTP peer settings limits to be read from a device.
Definition: gpsdefs.h:16297
uint32_t supp_types
supported digital audio types, see MBG_GPIO_DIGITAL_AUDIO_TYPE_MASKS
Definition: gpsdefs.h:9077
See MBG_IO_PORT_FLAG_REAR_PORTS.
Definition: gpsdefs.h:20344
SCU_CTRL_MASKS
Bit masks used to control the SCU EPLD.
Definition: gpsdefs.h:10521
#define MAX_XFEATURE_BYTES
Array size required to store all extended features.
Definition: gpsdefs.h:2421
uint32_t rsvd_0
reserved, currently always 0
Definition: gpsdefs.h:11281
Fixed frequency output.
Definition: gpsdefs.h:7667
NTP_FLAGS
Enumeration of global NTP flags.
Definition: gpsdefs.h:15132
number of defined base frequencies
Definition: gpsdefs.h:8754
XMR_QL_SETTINGS settings
Definition: gpsdefs.h:7563
int8_t precision
Precision of the system clock (2^precision)
Definition: gpsdefs.h:16891
uint32_t reserved_1
Future use.
Definition: gpsdefs.h:15950
uint32_t reserved_0
Definition: gpsdefs.h:7561
CAL_REC_IRIG_RX_COMP (read/write)
Definition: gpsdefs.h:10391
[R/-] PTPv2 common dataset structures (see IEEE1588-2008, chapter 8.2) can be queried ...
Definition: gpsdefs.h:13436
uint32_t reserved
reserved, currently always 0
Definition: gpsdefs.h:10271
Output switched on if receiver position verified (condition nav_solved).
Definition: gpsdefs.h:5833
see NTP_SYS_STATE_SUPP_FREQ
Definition: gpsdefs.h:16829
supports Time Code for SD Black Bursts
Definition: gpsdefs.h:8412
codes B0xx, AFNOR DC, IEEE1344 DC
Definition: gpsdefs.h:5153
MBG_USER_PERM_BUF stat_read_perm
current status read permissions, see MBG_USER_PERM_BUF and MBG_USER_PERMS
Definition: gpsdefs.h:22942
uint32_t reserved_1
currently reserved, unused, always 0
Definition: gpsdefs.h:19038
number of known codes
Definition: gpsdefs.h:4128
See MBG_DATABASE_SETTINGS_FLAG_ENABLE.
Definition: gpsdefs.h:23453
state of time sync signal clk_2
Definition: gpsdefs.h:10496
see TM_BIT_NO_WARM
Definition: gpsdefs.h:2672
Generic state of an IMS sensor.
Definition: gpsdefs.h:9837
uint32_t flags
See NTP_GLB_STATS_MASKS.
Definition: gpsdefs.h:15542
MBG_LNE_PORT_SETTINGS settings
LNE settings.
Definition: gpsdefs.h:19064
NTP_PEER_SEL_STATUS_BITS
Enumeration of NTP peer selection status.
Definition: gpsdefs.h:17076
Common license information.
Definition: gpsdefs.h:19546
uint32_t supp_flags
supported flags, see MBG_USER_CFG_FLAG_MASKS
Definition: gpsdefs.h:22882
MBG_NET_INTF_ADDR_SETTINGS settings
see MBG_NET_INTF_ADDR_SETTINGS
Definition: gpsdefs.h:12207
#define N_NTP_SYMM_KEY_MAX_IP_ADDR
Definition: gpsdefs.h:15883
see MBG_BAUD_RATE_230400
Definition: gpsdefs.h:3321
uint8_t static_hold_threshold
Definition: gpsdefs.h:18696
MBG_IP_ADDR ip
IP address associated with this interface.
Definition: gpsdefs.h:12173
Any rate converter.
Definition: gpsdefs.h:20174
uint8_t opt_ext
optional configuration extension, see PTP_OPT_EXTS
Definition: gpsdefs.h:13295
PTP_HW_FEAT_BITS
Bits used to define PTP_HW_FEAT_MASKS.
Definition: gpsdefs.h:13569
see IP4_BIT_VLAN
Definition: gpsdefs.h:11343
Peer-to-Peer (in PTP2 specs: 0x02)
Definition: gpsdefs.h:12769
Configuration settings for a single LNE port.
Definition: gpsdefs.h:19035
uint8_t host_poll
Host NTP polling interval.
Definition: gpsdefs.h:17437
uint8_t enable
Generally enable / disable orphan mode.
Definition: gpsdefs.h:16170
int16_t ann_intv
log2 of the announce interval [s]
Definition: gpsdefs.h:13298
Definition: gpsdefs.h:2754
Unknown NTP implementation.
Definition: gpsdefs.h:16507
uint32_t reserved_3
Reserved, currently 0.
Definition: gpsdefs.h:12280
uint8_t slot_id
slot number on the chassis
Definition: gpsdefs.h:9793
see WRN_1PPS_UNLOCK
Definition: gpsdefs.h:6637
double alpha_3
Ionosph. Corr. Coeff. Alpha 3 [sec/deg^3].
Definition: gpsdefs.h:18605
uint16_t n_xmr_settings
number of XMULTI_REF_INFO_IDX or XMULTI_REF_STATUS_IDX which can be retrieved
Definition: gpsdefs.h:7057
uint32_t supp_modes
Supported modes, see MBG_LED_MODE_MASKS.
Definition: gpsdefs.h:18911
uint8_t osv_fw
Index of OSV firmware.
Definition: gpsdefs.h:23186
uint8_t use_alternate_multicast_address
Definition: gpsdefs.h:13898
[R/-] supports the configurable usage of the Alternate Time Offset Indicator TLV
Definition: gpsdefs.h:13438
double A0
+- Clock Correction Coefficient 0 [sec]
Definition: gpsdefs.h:18570
uint32_t numMsgPerSec
Number of all messages per second (TX/RX)
Definition: gpsdefs.h:14476
uint16_t nw_prot
see PTP_NW_PROTS
Definition: gpsdefs.h:13280
WDT_OK set to zero if watchdog expired.
Definition: gpsdefs.h:10510
See MBG_SVC_TYPE_NTP.
Definition: gpsdefs.h:23008
IEC/IEEE FDIS 61850-9-3, only if PTP_MSK_OPT_EXT_6185093 is set.
Definition: gpsdefs.h:13649
uint32_t reserved_0
reserved, currently always 0
Definition: gpsdefs.h:9461
Current settings and general capabilities of an LED.
Definition: gpsdefs.h:18908
Additional parameters for Telecom8275.1 profile.
Definition: gpsdefs.h:13896
uint32_t reserved_3
Future use.
Definition: gpsdefs.h:16034
uint16_t port
Remote host port.
Definition: gpsdefs.h:23464
see GNSS_TYPE_GALILEO
Definition: gpsdefs.h:10646
[R/-] indicates that PTP_CFG_CAN_BE_MULTICAST_SLAVE flag is supported and can be checked ...
Definition: gpsdefs.h:13420
A GPIO port&#39;s current settings and limits, plus port index.
Definition: gpsdefs.h:9273
MBG_MAC_ADDR mac_addr
The MAC address assigned to this port.
Definition: gpsdefs.h:19089
Variable frequency output.
Definition: gpsdefs.h:7666
uint16_t reserved_1
Currently reserved, unused, always 0.
Definition: gpsdefs.h:18731
NTP_SYMM_KEY_HASH_MASKS
Flag masks associated with NTP_SYMM_KEY_HASHES.
Definition: gpsdefs.h:15832
uint32_t reserved_3
Future use.
Definition: gpsdefs.h:15864
ITU limits violated (valid if device has XMR_METRICS)
Definition: gpsdefs.h:6957
NTP symm key info, with index.
Definition: gpsdefs.h:15969
TLV structure containing information on current TLV transaction and its current data.
Definition: gpsdefs.h:18403
CAL_REC_HDR hdr
data header
Definition: gpsdefs.h:5181
NANO_TIME max_limit
if not 0, the max. allowed value for SHS_SETTINGS::err_limit and SHS_SETTINGS::warn_limit ...
Definition: gpsdefs.h:17727
uint32_t reserved_0
reserved, currently not used
Definition: gpsdefs.h:17879
GBIT_LINK_STATUS
Link status for SyncE on a 1000BASE-T interface.
Definition: gpsdefs.h:14196
uint16_t model_code
identifier for receiver model, see GPS_MODEL_CODES
Definition: gpsdefs.h:875
uint16_t sys_assoc
Association ID of the current system peer, do not use NTP_SYS_STATE::sys_peer if this is supported...
Definition: gpsdefs.h:16892
uint8_t impl_type
NTP implementation type, see NTP_IMPL.
Definition: gpsdefs.h:16881
MBG_PWR_STATES
Device power states.
Definition: gpsdefs.h:19178
POUT_IF_SYNC_ONLY is supported for this output
Definition: gpsdefs.h:6315
MBG_GPIO_DIGITAL_AUDIO_TYPES
Enumeration of types used with GPIO type digital audio outputs.
Definition: gpsdefs.h:8975
MBG_GPIO_STUDIO_CLOCK_FLAGS
Enumeration of flags used with studio clock type GPIO outputs.
Definition: gpsdefs.h:8878
MBG_SNMP_V3_AUTH_PROTOCOLS
Definition: gpsdefs.h:21568
configured as unused input
Definition: gpsdefs.h:9342
uint32_t reserved_4
Reserved, currently 0.
Definition: gpsdefs.h:12327
see PTP_PRESETS_8021AS
Definition: gpsdefs.h:13672
select bit for output MUX, ( clk_1 = 0 )
Definition: gpsdefs.h:10501
uint32_t mgmtErr
Management error counter (rx)
Definition: gpsdefs.h:14471
see MBG_NET_INTF_LINK_BOND_MODE_8023AD
Definition: gpsdefs.h:11721
MBG_LICENSE_PTPV1_MEMBERS
Bits used to define MBG_LICENSE_PTPV1_MEMBER_MSKS.
Definition: gpsdefs.h:19706
supports standard values of NTP_PEER_STATE, all fields except below and reserved
Definition: gpsdefs.h:17350
PTP_UC_MASTER_SETTINGS settings
current settings
Definition: gpsdefs.h:14353
int32_t root_delay
[us] Total roundtrip delay to the system peer
Definition: gpsdefs.h:16894
uint8_t num_dbs
Number of configurable databases.
Definition: gpsdefs.h:23428
See MBG_LICENSE_PTPV2_MEMBER_MAX_UCLIENTS.
Definition: gpsdefs.h:19586
[R/W] supports hybrid mode in master roles
Definition: gpsdefs.h:13416
see MBG_NET_GLB_SUPP_EXT_ROUTING
Definition: gpsdefs.h:11407
must be set to enable remote operation
Definition: gpsdefs.h:10529
see MBG_BAUD_RATE_9600
Definition: gpsdefs.h:3316
Save database (cyclically) to a persistent storage.
Definition: gpsdefs.h:23446
The time of day including hundredths of seconds.
Definition: gpsdefs.h:5571
see TM_BIT_LOCAL
Definition: gpsdefs.h:2661
A 1 PPS signal with a fixed 20 us pulse length.
Definition: gpsdefs.h:5871
uint32_t signallingPerSecRx
Accepted Signalling message Rx counter.
Definition: gpsdefs.h:14464
number of supported sensor types
Definition: gpsdefs.h:9895
the user shall be warned about upcoming password expiration
Definition: gpsdefs.h:22917
PTP clock quality.
Definition: gpsdefs.h:13087
uint32_t reserved_2
Future use.
Definition: gpsdefs.h:15569
PTP_PORT_ID port_id
Definition: gpsdefs.h:14528
Additional parameters for SMPTE ST 2059-2 profile.
Definition: gpsdefs.h:13795
1972-01-01 00:00:00
Definition: gpsdefs.h:8446
double idot
+- Rate of Inclination Angle [rad/sec]
Definition: gpsdefs.h:18457
see NTP_SYS_STATE_SUPP_ROOT_DISP
Definition: gpsdefs.h:16828
See MBG_IO_PORT_FLAG_HORIZONTAL_LAYOUT.
Definition: gpsdefs.h:20342
uint8_t reserved_2
reserved, currently always 0
Definition: gpsdefs.h:14875
MBG_EXT_SYS_INFO_OS_TYPES
Definition: gpsdefs.h:19320
MBG_GPIO_VIDEO_OUT_SUPP video_out
if MBG_GPIO_SETTINGS::type is MBG_GPIO_TYPE_VIDEO_OUT
Definition: gpsdefs.h:9217
10baseT Full Duplex (10 MBit/s)
Definition: gpsdefs.h:11421
uint32_t reserved_3
reserved, currently unused and always 0
Definition: gpsdefs.h:9298
1000baseT Half Duplex (1 GBit/s)
Definition: gpsdefs.h:11424
uint8_t label_col
Column position of the device label, consider MBG_IO_PORT_MSK_NO_LABEL.
Definition: gpsdefs.h:20421
other (IEEE 1588, openntp, crony, etc.)
Definition: gpsdefs.h:16675
Input signal is currently not avail, but has been avail before.
Definition: gpsdefs.h:21077
uint16_t flags
reserved, currently always 0
Definition: gpsdefs.h:3709
MBG_SNMP_V12_SETTINGS settings
Definition: gpsdefs.h:21437
uint32_t reserved_1
currently reserved, unused, always 0
Definition: gpsdefs.h:19091
uint32_t length
Payload data length of MBG_DATABASE_CMD::payload.
Definition: gpsdefs.h:23604
[R/W] supports hybrid mode in slave roles
Definition: gpsdefs.h:13417
Information on a specific supported string format.
Definition: gpsdefs.h:3733
NTP supports misc options (e.g. tinker, driftfile, orphan mode, etc...)
Definition: gpsdefs.h:15156
see MBG_IMS_FDM_STATE_FLAG_BIT_TD_OVERFLOW
Definition: gpsdefs.h:10251
uint32_t reserved_2
Future use.
Definition: gpsdefs.h:15863
1970-01-01 00:00:00
Definition: gpsdefs.h:8444
int16_t status
current status of antenna, see ANT_STATUS_CODES
Definition: gpsdefs.h:3102
number of defined video formats
Definition: gpsdefs.h:8345
double sqrt_A
Square Root of semi-major Axis [sqrt(m)].
Definition: gpsdefs.h:18494
PTP default, TAI.
Definition: gpsdefs.h:13136
On request &#39;?&#39; only, same as STR_ON_REQ, COM0 and COM1.
Definition: gpsdefs.h:3960
A structure used to specify a variable frequency.
Definition: gpsdefs.h:7750
RSC device, supersedes XPORT.
Definition: gpsdefs.h:11305
leap second pending
Definition: gpsdefs.h:2634
NTP supports specifying trusted symmetric keys.
Definition: gpsdefs.h:15157
uint32_t ass_if_index
Index of the associated interface link, see MBG_NET_INTF_LINK_SETTINGS::if_index. ...
Definition: gpsdefs.h:12276
uint16_t reserved_1
reserved for future use, currently unused and always 0
Definition: gpsdefs.h:6287
uint32_t reserved_2
currently reserved, unused, always 0
Definition: gpsdefs.h:19039
Input signal has NEVER been avail.
Definition: gpsdefs.h:21075
NTP supports peerstats.
Definition: gpsdefs.h:15503
License supports upgrading / modifying.
Definition: gpsdefs.h:19523
int64_t offset
[ns] filter offset to this NTP peer
Definition: gpsdefs.h:17447
Reference source configuration for a specific priority level.
Definition: gpsdefs.h:6749
Organization-Local scope.
Definition: gpsdefs.h:11113
LAN interface is a special PTP interface.
Definition: gpsdefs.h:11304
Settings, features and flags for receivers of user captures via network.
Definition: gpsdefs.h:12613
uint8_t hour
0..23
Definition: gpsdefs.h:5573
the number of known modes
Definition: gpsdefs.h:7198
MBG_DATABASE_INFO_FLAG_MSKS
Definition: gpsdefs.h:23514
uint32_t flags
see PTP_STATE_FLAGS
Definition: gpsdefs.h:13189
uint8_t max_fws
Maximum installable firmwares.
Definition: gpsdefs.h:23183
Client settings info of an NTP device.
Definition: gpsdefs.h:16260
uint32_t reserved_5
Reserved for future use, currently 0.
Definition: gpsdefs.h:19738
SSU-A.
Definition: gpsdefs.h:8070
uint8_t slot_type_id
ID depending on the XBP_NODE_INFO::slot_type, i.e. 1 for CLK1.
Definition: gpsdefs.h:18018
End-to-End (in PTP2 specs: 0x01)
Definition: gpsdefs.h:12768
number of known types
Definition: gpsdefs.h:8618
loss of signal
Definition: gpsdefs.h:8179
see PTP_OPT_EXT_POWER
Definition: gpsdefs.h:13617
MBG_IMS_FDM_OUTPUT_MODES
Enumeration of known output modes.
Definition: gpsdefs.h:10089
Kernel (not necessarily Linux)
Definition: gpsdefs.h:23229
see NTP_RESTR_FLAG_IPV6
Definition: gpsdefs.h:15361
NANO_TIME_64 t_ref
Current reference time.
Definition: gpsdefs.h:10162
uint8_t reserved
Reserved field to yield even structure size.
Definition: gpsdefs.h:736
allow user to login more than once (i.e. via TCP & Web)
Definition: gpsdefs.h:22791
uint32_t timestamp
time stamp when the record was taken, UTC, seconds since 1970
Definition: gpsdefs.h:7323
Only used as action trigger on a remote site, expects no data.
Definition: gpsdefs.h:18137
uint32_t reserved_4
Reserved for future use, currently 0.
Definition: gpsdefs.h:19604
NTP_RESTR restr
Definition: gpsdefs.h:15430
IOD IODE2
Issue of Data, Ephemeris (Subframe 2)
Definition: gpsdefs.h:18443
see PTP_ROLE_MULTICAST_MASTER
Definition: gpsdefs.h:12973
MBG_USER_SCOPES
Definition: gpsdefs.h:22562
uint32_t start_addr
Definition: gpsdefs.h:2515
DAC_VAL dac_cal
Oscillator calibration DAC value ( see OSC_DAC_RANGE, OSC_DAC_BIAS )
Definition: gpsdefs.h:10597
uint8_t reserved_0
Currently reserved, unused, always 0.
Definition: gpsdefs.h:19195
MBG_GPIO_VIDEO_OUT_SETTINGS video_out
if MBG_GPIO_SETTINGS::type is MBG_GPIO_TYPE_VIDEO_OUT
Definition: gpsdefs.h:9145
uint32_t reserved_2
Future use.
Definition: gpsdefs.h:16105
MBG_IMS_FDM_STATE_FLAG_MASKS
Bit masks used with MBG_IMS_FDM_STATE::flags.
Definition: gpsdefs.h:10246
uint8_t log_grp_role
Logical group role (i.e. bond master, bond slave), see MBG_IO_PORT_GRP_ROLE_BITS. ...
Definition: gpsdefs.h:21191
see MBG_GPIO_VIDEO_OUT_HAS_TC_SD
Definition: gpsdefs.h:8428
see NTP_SYS_STATE_SUPP_STD
Definition: gpsdefs.h:16824
Antenna has been disconnect, and receiver sync. after reconnect, so all fields valid.
Definition: gpsdefs.h:3126
Time deviation overflow occurred.
Definition: gpsdefs.h:10236
the number of defined sources, must not exceed MAX_N_MULTI_REF_TYPES
Definition: gpsdefs.h:6440
[R/-] PTPv1 common dataset structures can be queried
Definition: gpsdefs.h:13437
XMR source provides XMR_METRICS.
Definition: gpsdefs.h:7254
GBIT Linkup on SFP interface.
Definition: gpsdefs.h:14203
uint32_t maxNumUcConn
Maximum Number of Unicast client connections (due to licence or CPU performance)
Definition: gpsdefs.h:14475
uint8_t gnss_type
GNSS type as enumerated in MBG_GNSS_TYPES.
Definition: gpsdefs.h:10751
MBG_SYSLOG_FLAGS
Definition: gpsdefs.h:22115
MBG_SNMP_V3_SETTINGS v3_settings
Definition: gpsdefs.h:21690
MULTI_REF_STATUS_BITS
Enumeration of multi ref status bits.
Definition: gpsdefs.h:6609
see PTP_FLAG_UTC_VALID
Definition: gpsdefs.h:13269
The GNSS_SV_STATUS_IDX structure is supported by the device.
Definition: gpsdefs.h:10724
uint16_t peer_status_flags
Peer status flags, see NTP_PEER_STATUS_FLAG_MASKS.
Definition: gpsdefs.h:17405
A structure used to query current TLV capabilities.
Definition: gpsdefs.h:18263
MBG_HOSTNAME gm_host
grandmaster&#39;s hostname or IP address
Definition: gpsdefs.h:14276
uint8_t protocol
See MBG_SYSLOG_PROTOCOLS.
Definition: gpsdefs.h:22188
time scale configured to return GPS time
Definition: gpsdefs.h:2693
simultanous multicast and unicast master
Definition: gpsdefs.h:12938
MBG_SNMP_VERSION_MSKS
Definition: gpsdefs.h:21315
Bonding interface, which acts as bonding master.
Definition: gpsdefs.h:11770
uint8_t chassis_id
chassis ID, 0 if installed on the backplane
Definition: gpsdefs.h:9792
see TM_BIT_INVT
Definition: gpsdefs.h:2667
A structure used to store user channels.
Definition: gpsdefs.h:22673
uint16_t flags
reserved currently 0
Definition: gpsdefs.h:10448
use a trusted source for consistency check and spoofing detection
Definition: gpsdefs.h:6774
uint8_t str_type
index of the supported time string formats, see STR_TYPE_INFO_IDX
Definition: gpsdefs.h:3511
TM_STATUS_EXT clk_status_1
status of first clock
Definition: gpsdefs.h:17750
A structure used to store compensation values.
Definition: gpsdefs.h:5089
SD blanking interval.
Definition: gpsdefs.h:8613
uint8_t domain_number
the PTP clock domain number, 0:3
Definition: gpsdefs.h:13282
see USER_SCOPE_CONFIG_WRITE
Definition: gpsdefs.h:22576
MBG_EVT_IDS
Enumeration of event IDs.
Definition: gpsdefs.h:9613
uint8_t peer_sel_stat
Current selection status of the peer, see NTP_PEER_SEL_STATUS_BITS.
Definition: gpsdefs.h:17408
int32_t dac_val_max
max. possible DAC Value, positive or negative
Definition: gpsdefs.h:9932
uint32_t fd_neg_limit
min. frequency deviation limit, 1/MBG_IMS_FDM_LIMITS::fd_scale Hz units
Definition: gpsdefs.h:10120
uint8_t mode
Transfer mode, see MBG_UCAP_NET_TRANSF_MODE.
Definition: gpsdefs.h:12526
supports combined jitter, see NTP_SYS_STATE::sys_jitter
Definition: gpsdefs.h:16805
MBG_LICENSE_PTPV2 license
Definition: gpsdefs.h:19623
NTP_ORPHAN_MODE_MSK
Flag masks associated with NTP_ORPHAN_MODE_FLAGS.
Definition: gpsdefs.h:16156
XMR_INST_FLAG_BIT_MASKS
Bit masks associated with XMR_INST_FLAGS.
Definition: gpsdefs.h:7103
Device supports command GPS_FDM_SET_TD.
Definition: gpsdefs.h:10295
UTC parameters are valid
Definition: gpsdefs.h:13251
uint8_t tc_line0
first time code line location, valid lines: 6-22
Definition: gpsdefs.h:8541
PTP_PRESETS
Enumeration of PTP cfg presets used with PTP_CFG_SETTINGS::selected_presets.
Definition: gpsdefs.h:13638
uint32_t type
digital audio type, see MBG_GPIO_DIGITAL_AUDIO_TYPES
Definition: gpsdefs.h:9047
see BVAR_BIT_IONO_INVALID
Definition: gpsdefs.h:814
see V1_DFLT_PREFERRED
Definition: gpsdefs.h:14568
see NTP_PEER_STATE_SUPP_JITTER
Definition: gpsdefs.h:17387
uint16_t svs_in_view
Num. of satellites that should be visible above the horizon.
Definition: gpsdefs.h:10754
uint32_t flags
flags, see MBG_USER_MNGMNT_FLAG_MASKS
Definition: gpsdefs.h:22733
uint8_t num_trusted_keys
number of activated symm keys
Definition: gpsdefs.h:15224
see TM_BIT_HOLDOVER
Definition: gpsdefs.h:2670
uint32_t fw_id
firmware identification
Definition: gpsdefs.h:10447
A calendar date including full year number.
Definition: gpsdefs.h:5553
TM_GPS_STATUS_BITS
Status flag bits used to define TM_GPS_STATUS_BIT_MASKS.
Definition: gpsdefs.h:2628
uint32_t base_freq
base frequency, see MBG_GPIO_STUDIO_CLOCK_BASE_FREQS
Definition: gpsdefs.h:8910
uint8_t mode
XMR/holdover mode, see XMR_HOLDOVER_STATUS_MODES.
Definition: gpsdefs.h:7159
uint16_t mode_param
Optional parameter depending on the mode, see POUT_MODES_PARAM_MASKS.
Definition: gpsdefs.h:5695
uint16_t ANT_CABLE_LEN
A data type used to configure the length of an antenna cable [m].
Definition: gpsdefs.h:11012
IOD IODE3
Issue of Data, Ephemeris (Subframe 3)
Definition: gpsdefs.h:18444
transmission via manycast, point to multipoint
Definition: gpsdefs.h:15146
uint8_t enable
Generally enable / disable leapfile.
Definition: gpsdefs.h:16215
MBG_DATABASE_SETTINGS::port is valid
Definition: gpsdefs.h:23524
#define MBG_MAX_HOSTNAME_LEN
The maximum length of a fully qualified host/domain domain name (FQDN)
Definition: gpsdefs.h:11146
NTP shared memory driver.
Definition: gpsdefs.h:15613
See MBG_DATABASE_MEMBER_DBNAME.
Definition: gpsdefs.h:23540
A PTP port identity.
Definition: gpsdefs.h:13067
MBG_GNSS_MODE_SETTINGS gnss_settings
Definition: gpsdefs.h:20598
MBG_IP_ADDR_PORT dst_addr
Destination address of the NTP peer, see MBG_IP_ADDR_PORT.
Definition: gpsdefs.h:17417
uint32_t pDlyFollowUpRx
Accepted PDelay Follow-Up message Rx counter.
Definition: gpsdefs.h:14459
uint32_t followUpMsgPerSecTx
Follow-up message Tx counter.
Definition: gpsdefs.h:14442
Attachment Unit Interface (AUI), externel transceiver.
Definition: gpsdefs.h:11518
see NTP_REFCLK_TYPE_PPS
Definition: gpsdefs.h:15632
DCLS (G007 is undefined, SBS not supported with Gxxx)
Definition: gpsdefs.h:4555
uint32_t reserved_1
reserved, currently always 0
Definition: gpsdefs.h:9968
number of supported roles
Definition: gpsdefs.h:15109
uint8_t minor_version
Minor version number.
Definition: gpsdefs.h:16883
this ref source is on extension card
Definition: gpsdefs.h:6955
number of known types
Definition: gpsdefs.h:10392
state of time sync signal clk_1
Definition: gpsdefs.h:10495
BVAR_FLAGS
Bit masks associated with BVAR_FLAG_BITS.
Definition: gpsdefs.h:809
NTP_MISC_ORPHAN_MODE_SETTINGS settings
See NTP_MISC_ORPHAN_MODE_SETTINGS.
Definition: gpsdefs.h:16190
SHS_SETTINGS settings
current configuration settings
Definition: gpsdefs.h:17726
persistent association
Definition: gpsdefs.h:17132
Firmware has been deleted.
Definition: gpsdefs.h:9637
watchdog reset
Definition: gpsdefs.h:9617
uint8_t L2flag
L2 P data flag [—].
Definition: gpsdefs.h:18473
NTP NMEA driver.
Definition: gpsdefs.h:15611
uint32_t pDlyFollowUpPerSecRx
Accepted PDelay Follow-Up message Rx counter.
Definition: gpsdefs.h:14460
max. Glonass satellite number (64 + sat slot ID)
Definition: gpsdefs.h:664
see NTP_SYS_STATE_SUPP_SYS_JITTER
Definition: gpsdefs.h:16830
NTP local clock.
Definition: gpsdefs.h:15608
MBG_GPIO_BITS_FORMAT_MASKS
Bit masks associated with MBG_GPIO_BITS_FORMATS.
Definition: gpsdefs.h:8031
MBG_LED_MODE_MASKS
Bit masks associated with LED modes.
Definition: gpsdefs.h:18772
uint8_t min
Specify the minimum interpacket spacing (guard time) in seconds.
Definition: gpsdefs.h:15478
uint16_t cur_restrs
Number of currently configured restrictions.
Definition: gpsdefs.h:15377
see NTP_PEER_STATE_SUPP_XLEAVE
Definition: gpsdefs.h:17388
A structure to used to query the current configuration and capabilities of a PTP port.
Definition: gpsdefs.h:13342
MBG_SERVICE_SETTINGS settings
Definition: gpsdefs.h:23074
See NTP_GLB_STATS_FLAG_PEERSTATS.
Definition: gpsdefs.h:15525
MBG_NET_INTF_LINK_BOND_MODE_MASKS
Network interface link bonding mode masks.
Definition: gpsdefs.h:11715
user shall be forced to change the password on password warning
Definition: gpsdefs.h:22792
Identifier for a reference source.
Definition: gpsdefs.h:6701
uint16_t idx
Definition: gpsdefs.h:7470
uint16_t core_mod_type
See MBG_EXT_SYS_INFO_CORE_MOD_TYPES.
Definition: gpsdefs.h:19415
leap second disarmed
Definition: gpsdefs.h:16734
NTP_TSTAMP ref_time
Last time the system time has been adjusted, see NTP_TSTAMP.
Definition: gpsdefs.h:16899
number of known signal shapes
Definition: gpsdefs.h:7708
uint32_t dlyReqMsgTx
Delay request message Tx counter.
Definition: gpsdefs.h:14445
Supported options for digital audio output.
Definition: gpsdefs.h:9075
State of FDM device.
Definition: gpsdefs.h:10158
See MBG_IO_PORT_OP_MODE_ALWAYS.
Definition: gpsdefs.h:20495
uint32_t supp_flags
reserved, currently always 0
Definition: gpsdefs.h:9078
NTP_TRUSTED_KEY_INFO info
Definition: gpsdefs.h:16054
uint32_t flags
flags, see MBG_GPIO_STUDIO_CLOCK_FLAGS
Definition: gpsdefs.h:8912
device supports FDM API
Definition: gpsdefs.h:9817
uint32_t reserved1
reserved, currently always 0
Definition: gpsdefs.h:8695
uint8_t state
The device state, see XBP_DEVICE_STATES.
Definition: gpsdefs.h:18015
uint32_t reserved_1
Definition: gpsdefs.h:7562
char TZ_NAME[6]
The name of a time zone.
Definition: gpsdefs.h:2925
uint16_t status
status flags, see TM_GPS_STATUS_BIT_MASKS
Definition: gpsdefs.h:2605
power up reset
Definition: gpsdefs.h:9616
BVAR_FLAG_BITS
Enumeration of flag bits used to define BVAR_FLAGS.
Definition: gpsdefs.h:789
transmission automatically if minute changes
Definition: gpsdefs.h:3761
PTP_UC_MASTER_SETTINGS settings
specification for the unicast master with that index
Definition: gpsdefs.h:14332
Clock 2 fixed (CPU board only)
Definition: gpsdefs.h:20173
uint32_t flags
reserved, don&#39;t use, currently 0
Definition: gpsdefs.h:3512
uint8_t reserved
reserved, don&#39;t use, currently always 0
Definition: gpsdefs.h:7059
listening for PTP packets
Definition: gpsdefs.h:12716
uint8_t two_step
indicates, whether the clock is a two-step clock
Definition: gpsdefs.h:14846
no network connection
Definition: gpsdefs.h:17029
see MBG_GPIO_VIDEO_SD_FORMAT_PAL
Definition: gpsdefs.h:8361
XMR_STATS stats
XMR statistics of the particular source.
Definition: gpsdefs.h:7406
uint8_t reserved_0
Currently reserved, unused, always 0.
Definition: gpsdefs.h:18977
double XYZ[N_XYZ]
A position in cartesian coordinates.
Definition: gpsdefs.h:2742
Ionospheric correction parameters.
Definition: gpsdefs.h:18597
uint32_t reserved_3
reserved, currently not used
Definition: gpsdefs.h:17882
uint32_t flags
reserved, currently always 0
Definition: gpsdefs.h:9048
IEEE C37.238 profile extension, only if PTP_MSK_OPT_EXT_POWER is set.
Definition: gpsdefs.h:13643
#define MAX_MBG_TLV_FEAT_BYTES
Array size required to store up to MAX_MBG_TLV_FEAT_TYPES bits.
Definition: gpsdefs.h:18216
MBG_LICENSE_TIME_MONITOR_MEMBERS
Bits used to define MBG_LICENSE_TIME_MONITOR_MEMBER_MSKS.
Definition: gpsdefs.h:19771
timeout after GPS reception has stopped
Definition: gpsdefs.h:2192
uint32_t reserved_4
reserved, currently 0
Definition: gpsdefs.h:16319
uint32_t supp_flags_broadcast
supported flags for broadcast associations
Definition: gpsdefs.h:16313
Definition: gpsdefs.h:2735
uint32_t freq_resolution
frequency resolution [Hz], unspecified if 0
Definition: gpsdefs.h:7870
double alpha_0
Ionosph. Corr. Coeff. Alpha 0 [sec].
Definition: gpsdefs.h:18602
A structure used to report the synthesizer state.
Definition: gpsdefs.h:2890
uint16_t supp_flags
indicates which flags are supported by XMULTI_REF_SETTINGS::flags, see XMR_SETTINGS_FLAG_MSKS ...
Definition: gpsdefs.h:7279
uint16_t n_supp_intf_route
max. number of supported interface routes, see MBG_NET_INTF_ROUTE_SETTINGS_IDX, MBG_NET_INTF_ROUTE_IN...
Definition: gpsdefs.h:11876
uint16_t log_variance
PTP offset scaled log variance representing the time stability.
Definition: gpsdefs.h:13091
MBG_GPIO_VIDEO_SYNC_TYPES
Enumeration of types used with video sync GPIO outputs Depends on configured video output...
Definition: gpsdefs.h:8607
uint16_t id
Configurable key id (1..65534)
Definition: gpsdefs.h:15991
MBG_VLAN_CFG vlan_cfg
VLAN configuration.
Definition: gpsdefs.h:11246
Per minute, same as STR_PER_MIN, COM0 and COM1.
Definition: gpsdefs.h:3962
Specific FDM settings and limits.
Definition: gpsdefs.h:10316
uint16_t ufu_idx
0...MBG_FW_INFO::num_ufus-1
Definition: gpsdefs.h:23326
MBG_EVENT_SETTINGS settings
See MBG_EVENT_SETTINGS.
Definition: gpsdefs.h:21874
uint8_t stratum
Current stratum level of the system.
Definition: gpsdefs.h:16890
1000baseT Full Duplex (1 GBit/s)
Definition: gpsdefs.h:11425
PTP_CLOCK_ID gm_id
identifier ot the upstream time source
Definition: gpsdefs.h:13195
duplicate packet
Definition: gpsdefs.h:17259
uint16_t n_sv_status
Number of GNSS_SV_STATUS_IDX structures that can be read (only if MBG_GNSS_FLAG_MSK_HAS_SV_STATUS) ...
Definition: gpsdefs.h:10699
see MBG_IMS_STATE_FLAG_BIT_HAS_FDM
Definition: gpsdefs.h:9829
uint8_t out_enb_state
e.g. bit 0 is set if corresponding output 0 is enabled, etc.
Definition: gpsdefs.h:17578
uint32_t reserved_1
Future use.
Definition: gpsdefs.h:15568
Index structure for PTPv2 port dataset.
Definition: gpsdefs.h:15073
MULTI_REF_STATUS_BIT_MASKS
Bit masks associated with MULTI_REF_STATUS_BITS.
Definition: gpsdefs.h:6631
uint32_t reserved_1
Reserved for future use, currently 0.
Definition: gpsdefs.h:19599
see TM_BIT_NO_SYNC
Definition: gpsdefs.h:2675
see PTP_PRESETS_POWER
Definition: gpsdefs.h:13667
uint8_t severity
See MBG_EVENT_SEVERITIES.
Definition: gpsdefs.h:22066
uint16_t flags
currently reserved, always 0
Definition: gpsdefs.h:11855
Current mode cannot be determined.
Definition: gpsdefs.h:20454
spike detected
Definition: gpsdefs.h:16727
Framed data stream output.
Definition: gpsdefs.h:7669
A structure used to transmit information on date and time.
Definition: gpsdefs.h:2713
PTP_CLOCK_ID clock_identity
Definition: gpsdefs.h:13069
HAVEQUICK_FORMATS
Enumeration of HaveQuick formats.
Definition: gpsdefs.h:9382
ITU_LIMITS
Enumeration of ITU limit masks.
Definition: gpsdefs.h:7492
String type not supp by given port.
Definition: gpsdefs.h:3543
uint8_t access_type
See MBG_SNMP_ACCESS_TYPES, ignore in trap settings.
Definition: gpsdefs.h:21420
double OMEGADOT
+- Rate of Right Ascension [rad/sec]
Definition: gpsdefs.h:18454
PTPv2 default dataset.
Definition: gpsdefs.h:14865
Index structure for PTPv1 port dataset.
Definition: gpsdefs.h:14822
int16_t delay_req_intv
delay request interval [log2 s]
Definition: gpsdefs.h:14281
SMPTE ST 2059-2 profile extension.
Definition: gpsdefs.h:13600
transmission automatically if required, e.g. on capture event
Definition: gpsdefs.h:3762
uint32_t reserved
reserved, currently always 0
Definition: gpsdefs.h:14354
uint8_t n_ucaps
number of user time capture inputs
Definition: gpsdefs.h:886
[R/-] PTP_FLAG_UTC_VALID bit in PTP_STATE::flags is supported
Definition: gpsdefs.h:13413
MBG_SYSLOG_SETTINGS settings
See MBG_SYSLOG_SETTINGS.
Definition: gpsdefs.h:22221
GNSS_SV_STAT_QUALITY_INDS
Bits 23 to 31 are reserved.
Definition: gpsdefs.h:10918
interleave error (recovered)
Definition: gpsdefs.h:17199
NTP supports rawstats.
Definition: gpsdefs.h:15504
see STR_ON_REQ
Definition: gpsdefs.h:3779
uint8_t gnss_type
GNSS type as enumerated in MBG_GNSS_TYPES.
Definition: gpsdefs.h:10811
both pulses P_SEC and P_MIN on, use with ENABLE_FLAGS::pulses
Definition: gpsdefs.h:3169
multiple XMRS instances of the same ref type supported (XMULTI_REF_INSTANCES)
Definition: gpsdefs.h:2206
uint16_t dest_port
receiver destination port, 162 by default
Definition: gpsdefs.h:21692
MBG_DATE_TIME on
date and time to switch on
Definition: gpsdefs.h:5613
see USER_STAT_PASSWORD_WARN
Definition: gpsdefs.h:22928
MBG_GPIO_BITS_OUT_FLAGS
Enumeration of flags used with BITS type GPIO outputs.
Definition: gpsdefs.h:8268
see HQ_FMT_STANAG4372_SATURN_2
Definition: gpsdefs.h:9406
uint8_t priority_2
priority 2
Definition: gpsdefs.h:13287
int16_t delay_req_intv_min
log2 of minimum delay request interval [s]
Definition: gpsdefs.h:13354
Supports MBG_IO_PORT_ANT_SETTINGS::ant_cab_len.
Definition: gpsdefs.h:20564
PTP_PORT_STATES
Possible states of a PTP port.
Definition: gpsdefs.h:12710
uint8_t num_intf_route
number of configured interface routes, see MBG_NET_INTF_ROUTE_INFO_IDX
Definition: gpsdefs.h:11852
MBG_IP_ADDR ref_id
Reference ID of the NTP peer, see MBG_IP_ADDR.
Definition: gpsdefs.h:17426
see MBG_UCAP_NET_TRANSF_MODE_ON_REQ
Definition: gpsdefs.h:12403
MBG_GPIO_VIDEO_EPOCHS
Enumeration of epochs used with video type GPIO outputs.
Definition: gpsdefs.h:8442
discarded as not valid (TEST10-TEST13)
Definition: gpsdefs.h:17078
DNS name could not be resolved.
Definition: gpsdefs.h:17031
uint32_t supp_flags
supported flags, see MBG_USER_MNGMNT_FLAG_MASKS
Definition: gpsdefs.h:22760
PTPv2 parent dataset.
Definition: gpsdefs.h:14947
uint32_t reserved_0
Reserved, currently always 0.
Definition: gpsdefs.h:12500
uint32_t flags
see PORT_INFO_FLAGS
Definition: gpsdefs.h:3625
see MBG_LED_MODE_FLASH
Definition: gpsdefs.h:18776
uint32_t reserved_2
Reserved for future use, currently 0.
Definition: gpsdefs.h:19804
MBG_IMS_FDM_LINE_FREQ_MASKS
Bit masks corresponding to defined line frequencies.
Definition: gpsdefs.h:10207
uint32_t dlyReqMsgRx
Accepted Delay request message Rx counter.
Definition: gpsdefs.h:14443
AES67 media profile.
Definition: gpsdefs.h:13647
supports IRIG control bits (MBG_IRIG_CTRL_BITS)
Definition: gpsdefs.h:2198
uint16_t reserved_2
Reserved, currently always 0.
Definition: gpsdefs.h:16915
has pulse per second output
Definition: gpsdefs.h:2183
NTP_ROLES
Enumeration of known NTP roles.
Definition: gpsdefs.h:15103
Supports MBG_IO_PORT_ANT_SETTINGS::tr_dist.
Definition: gpsdefs.h:20568
double af0
+- Clock Correction Coefficient 0 [sec]
Definition: gpsdefs.h:18502
Generic state of an IMS device.
Definition: gpsdefs.h:9790
specifies the association as preemptable rather than the default persistent
Definition: gpsdefs.h:15141
LNE_PORT_FLAG_BITS
LNE port flag bits.
Definition: gpsdefs.h:19139
uint8_t prefix
Number of subnet mask bits for CIDR notation, e.g. 24 for /24.
Definition: gpsdefs.h:11077
IRIG msg contains inconsistent data.
Definition: gpsdefs.h:5222
uint32_t supp_flags
Supported NTP peer state values, see NTP_PEER_STATE_SUPP_FLAG_MASKS.
Definition: gpsdefs.h:17402
Phase jitter too large.
Definition: gpsdefs.h:5224
IRIG_SETTINGS settings
current settings
Definition: gpsdefs.h:5056
unknown or unspecified signal shape
Definition: gpsdefs.h:7705
MBG_SNMP_V3_SETTINGS settings
Definition: gpsdefs.h:21655
uint8_t num_cols
Number of port columns this device supports.
Definition: gpsdefs.h:20414
new NIST leapseconds file needed
Definition: gpsdefs.h:16739
NTP_SYMM_KEY_SETTINGS settings
Definition: gpsdefs.h:15948
GALILEO, Europe.
Definition: gpsdefs.h:10628
double OMEGA0
+- Longit. of Asc. Node of orbit plane [rad]
Definition: gpsdefs.h:18453
int8_t log_min_delay_req_interval
minimum delay request interval for this port
Definition: gpsdefs.h:15039
GNSS mode settings.
Definition: gpsdefs.h:10677
see MBG_IMS_FDM_LINE_FREQ_AUTO
Definition: gpsdefs.h:10209
uint16_t flags
see MBG_IP4_FLAG_MASKS
Definition: gpsdefs.h:11245
uint32_t supp_flags_server
supported flags for unicast associations
Definition: gpsdefs.h:16310
see NTP_ROLE_NONE
Definition: gpsdefs.h:15120
see MBG_FRAMING_7O1
Definition: gpsdefs.h:3392
See XBP_FEAT_BIT_NODES.
Definition: gpsdefs.h:17916
see POUT_BIT_FIXED_PULSE_LEN
Definition: gpsdefs.h:6333
uint8_t utc_offset_valid
set, if the current UTC offset is known to be correct
Definition: gpsdefs.h:14989
uint16_t serial
EF_OFF or EF_SERIAL_BOTH
Definition: gpsdefs.h:3144
see NTP_REFCLK_TYPE_TRUETIME
Definition: gpsdefs.h:15629
Reference source capabilities and current configuration.
Definition: gpsdefs.h:6800
MBG_XFEATURE_BITS
Enumeration of defined extended features.
Definition: gpsdefs.h:2343
Video signal output (PAL, NTSC, ...)
Definition: gpsdefs.h:7670
ITU-T G.8275.2 profile extension, only if PTP_MSK_OPT_EXT_TELECOM_PTS is set.
Definition: gpsdefs.h:13650
uint8_t cpu_type
Processor type, see NTP_CPU_TYPES.
Definition: gpsdefs.h:16887
uint8_t reserved
Future use.
Definition: gpsdefs.h:21188
uint32_t files
Single file (list) flags, See MBG_FW_FILE_MSKS.
Definition: gpsdefs.h:23272
Slot for reference clocks.
Definition: gpsdefs.h:17970
GNSS_SV_STATUS gnss_sv_status
Definition: gpsdefs.h:10971
A GPIO port&#39;s current settings, plus port index.
Definition: gpsdefs.h:9184
association restart
Definition: gpsdefs.h:17189
uint16_t flags
see MBG_IP4_FLAG_MASKS
Definition: gpsdefs.h:11282
uint8_t conn_type
See MBG_IO_PORT_CONN_TYPES.
Definition: gpsdefs.h:20809
General license information to be read from a device.
Definition: gpsdefs.h:19498
uint16_t GEN_IO_INFO_TYPE
Definition: gpsdefs.h:10351
uint32_t XMR_HOLDOVER_INTV
XMR holdover interval, or elapsed holdover time, in [s].
Definition: gpsdefs.h:7116
GPS is in warm boot mode.
Definition: gpsdefs.h:6613
uint32_t time_offset_ns
estimated time offset in holdover operation
Definition: gpsdefs.h:7163
see NTP_RESTR_FLAG_NTPPORT
Definition: gpsdefs.h:15358
NTP client only (ntpdate)
Definition: gpsdefs.h:16509
supported limits for qualtity metrics
Definition: gpsdefs.h:7547
DAC_VAL osc_dac_cal
disciplination value of the oscillator
Definition: gpsdefs.h:13210
MBG_PTP_V1_PORT_DATASET port_dataset
see MBG_PTP_V1_PORT_DATASET
Definition: gpsdefs.h:14825
number of known port states
Definition: gpsdefs.h:9345
MBG_EXT_SYS_INFO_FPGA_TYPES
Definition: gpsdefs.h:19283
Supported options of a BITS GPIO input.
Definition: gpsdefs.h:8208
uint32_t flags
see SHS_FLAG_MASKS
Definition: gpsdefs.h:17755
see TM_BIT_ANT_DISCONN
Definition: gpsdefs.h:2673
MBG_UCAP_NET_SUPP_FLAG_MASKS
Masks for supported flags used with MBG_UCAP_NET_GLB_INFO::supp_flags.
Definition: gpsdefs.h:12454
Configuration of a GPIO as video output module.
Definition: gpsdefs.h:8533
uint32_t pDlyReqMsgPerSecTx
PDelay Request message Tx counter.
Definition: gpsdefs.h:14454
uint32_t stat_flags
see GNSS status flags encoding
Definition: gpsdefs.h:10819
IEEE 802.1AS -like profile, only if PTP_MSK_OPT_EXT_8021AS is set.
Definition: gpsdefs.h:13648
don&#39;t use
Definition: gpsdefs.h:8081
see MBG_NET_INTF_LINK_TYPE_VLAN
Definition: gpsdefs.h:11785
uint8_t slot_type_id
See XBP_NODE_INFO::slot_type_id, or MBG_OWN_EVENT_SLOT_TYPE_ID.
Definition: gpsdefs.h:21882
MBG_HOSTNAME receiver_addr
Definition: gpsdefs.h:21691
Fixed (wired) clock from back plane (e.g. refclock 1 in M500 IMS)
Definition: gpsdefs.h:20170
NTP_TSTAMP rec_time
Current system time of the NTP peer, see NTP_TSTAMP.
Definition: gpsdefs.h:17429
max. number of active Glonass satellites
Definition: gpsdefs.h:665
uint8_t ntp_role
one of the supported NTP roles, see NTP_ROLES
Definition: gpsdefs.h:15222
currently initializing
Definition: gpsdefs.h:12713
MBG_NET_INTF_ADDR_MASKS
Network interface address masks.
Definition: gpsdefs.h:11812
PTP state changed to SLAVE.
Definition: gpsdefs.h:9635
see MBG_BAUD_RATE_57600
Definition: gpsdefs.h:3319
uint16_t epld_control_value
control value, determines value of bits to be changed, see SCU_CTRL_MASKS
Definition: gpsdefs.h:10473
int8_t log_announce_interval
announce interval to be used by this port
Definition: gpsdefs.h:15041
uint16_t idx
port index, 0..RECEIVER_INFO::n_com_ports-1
Definition: gpsdefs.h:3679
Number of known types.
Definition: gpsdefs.h:7674
Global configuration info of an NTP device (client/server)
Definition: gpsdefs.h:15246
Fibre Optic (FO) cable.
Definition: gpsdefs.h:11516
Limits to be considered when specifying PTP unicast masters.
Definition: gpsdefs.h:14231
uint32_t supp_flags
See NTP_MISC_MSKS.
Definition: gpsdefs.h:16103
uint32_t flags
see MBG_NET_INTF_ADDR_MASKS
Definition: gpsdefs.h:12171
PTP state changed to LISTENING.
Definition: gpsdefs.h:9630
int8_t log_sync_interval
mean sync interval to be used for multicast messages
Definition: gpsdefs.h:15043
no satellites can be received though antenna not failing
Definition: gpsdefs.h:9624
Power Line Time is locked.
Definition: gpsdefs.h:10234
NTP_SYMM_KEY_HASHES
Enumeration of NTP supported symmetric key hashing algorithms.
Definition: gpsdefs.h:15818
device supports user level configuration, otherwise user levels are static
Definition: gpsdefs.h:22713
uint32_t flags
see PTP_V1_PARENT_DATASET_FLAGS_MASKS
Definition: gpsdefs.h:14684
POUT_INFO_FLAG_MASKS
Flag bit masks used with POUT_INFO::flags.
Definition: gpsdefs.h:6329
PTP_V1_COMM_IDS
Definition: gpsdefs.h:14483
see MBG_NET_INTF_ADDR_BIT_DHCP4
Definition: gpsdefs.h:11814
include authentication fields encrypted using the autokey scheme
Definition: gpsdefs.h:15137
General TLV data structure.
Definition: gpsdefs.h:18307
uint8_t num_v3_settings
Number of configured v1/v2 trap receivers, see MBG_SNMP_V12_TRAP_INFO_IDX.
Definition: gpsdefs.h:21354
uint8_t num_services
Current number of supported services.
Definition: gpsdefs.h:23016
leap second armed from file or autokey
Definition: gpsdefs.h:16733
uint16_t last_general_event_sequence_number
Definition: gpsdefs.h:14790
uint32_t flags
reserved, currently always 0
Definition: gpsdefs.h:7842
indicates that this output depends on GPIO with MBG_GPIO_SETTINGS::ass_io_idx and may not be configur...
Definition: gpsdefs.h:9104
Flags not supp by device.
Definition: gpsdefs.h:3548
uint16_t type
type of LAN interface, see LAN_IF_TYPES
Definition: gpsdefs.h:11276
uint8_t timestr_ports
bit mask of COM ports supported for mode POUT_TIMESTR, see MAX_POUT_TIMESTR_PORTS ...
Definition: gpsdefs.h:6285
see MBG_GPIO_VIDEO_TC_MODE_NONE
Definition: gpsdefs.h:8507
[R/W] PTP can be used in slave mode although not in slave capable slot
Definition: gpsdefs.h:13523
POUT_INFO_FLAG_BITS
Flag bits used to define POUT_INFO_FLAG_MASKS.
Definition: gpsdefs.h:6313
NANO_TIME reserved_0
currently reserved, unused, always 0
Definition: gpsdefs.h:7328
See MBG_FW_FILE_VERSION_TXT.
Definition: gpsdefs.h:23259
uint32_t flags
Flags, see MBG_IMS_FDM_STATE_FLAG_MASKS.
Definition: gpsdefs.h:10167
uint32_t reserved_1
reserved, currently always 0
Definition: gpsdefs.h:9938
see MBG_GPIO_SIGNAL_SHAPE_SINE
Definition: gpsdefs.h:7725
MBG_SYSLOG_SETTINGS settings
Definition: gpsdefs.h:22206
see clock status word
Definition: gpsdefs.h:17195
see POUT_BIT_INVERTED, POUT_NOT_INVERTIBLE
Definition: gpsdefs.h:6232
Satellite information for a particular GNSS type.
Definition: gpsdefs.h:10749
Vertical Interval Time Code.
Definition: gpsdefs.h:8494
XMR source provides coasting mode.
Definition: gpsdefs.h:7255
uint32_t reserved_2
Definition: gpsdefs.h:19864
PTP_PORT_ID gm_port_id
use target port ID of master port (e.g. 135) or PTP_PORT_ID_WILDCARD
Definition: gpsdefs.h:14278
uint8_t grasp_row
Row position of the device grasp, consider MBG_IO_PORT_MSK_NO_GRASP.
Definition: gpsdefs.h:20424
uint32_t pDlyRespMsgTx
PDelay Response message Tx counter.
Definition: gpsdefs.h:14457
MBG_GPIO_DIGITAL_AUDIO_FLAG_MASKS
Bit masks associated with MBG_GPIO_DIGITAL_AUDIO_FLAGS.
Definition: gpsdefs.h:9030
(reserved)
Definition: gpsdefs.h:8079
uint32_t flags
unused, currently always 0 (should be named MBG_GNSS_MODE_SETTINGS_FLAG_MASKS)
Definition: gpsdefs.h:10681
uint32_t reserved
reserved, currently always 0
Definition: gpsdefs.h:10011
Clock resolution information.
Definition: gpsdefs.h:19853
if sync&#39;ed after reset
Definition: gpsdefs.h:10233
remote mode, XMR switching done by external command/control
Definition: gpsdefs.h:7197
ICODE_TX_CODES
Known IRIG TX code formats.
Definition: gpsdefs.h:4107
oscillator supply current in val/exp, output state in flags
Definition: gpsdefs.h:9894
uint8_t peer_evt_cnt
Number of events, since the last time the event code changed.
Definition: gpsdefs.h:17409
discarded by table overflow (not used)
Definition: gpsdefs.h:17080
NTP supports refclocks.
Definition: gpsdefs.h:15154
Coaxial BNC cable.
Definition: gpsdefs.h:11517
see PTP_NW_PROT_UDP_IPV6
Definition: gpsdefs.h:12664
Slave port in group, i.e. non-configurable port of LIU.
Definition: gpsdefs.h:20514
transition is currently active, slewing in progress
Definition: gpsdefs.h:7225
uint32_t u32
Definition: gpsdefs.h:22071
uint8_t clock_class
Definition: gpsdefs.h:13198
pure IEEE1588-2008 (PTPv2) with P2P
Definition: gpsdefs.h:13642
See MBG_IO_PORT_FLAG_REAR_PORTS.
Definition: gpsdefs.h:20345
uint16_t idx
port index, 0..MBG_GPIO_CFG_LIMITS::num_io-1
Definition: gpsdefs.h:9319
A timestamp with nanosecond resolution.
Definition: words.h:575
uint8_t reserved_7
Reserved, currently always 0.
Definition: gpsdefs.h:17456
see NTP_PEER_STATE_SUPP_REACH_STAT
Definition: gpsdefs.h:17379
int32_t dac_val_min
min. possible DAC Value, positive or negative
Definition: gpsdefs.h:9931
see MBG_GPIO_STUDIO_CLOCK_SCALE_4
Definition: gpsdefs.h:8836
MBG_SYSLOG_FLAG_MSKS
Definition: gpsdefs.h:22122
uint16_t good_svs
Num. of satellites that can currently be received and used.
Definition: gpsdefs.h:10753
uint32_t supp_ntp_roles
supported NTP roles, see NTP_ROLE_MASKS
Definition: gpsdefs.h:15256
POUT_SUPP_DCF77_UTC is supported for this output
Definition: gpsdefs.h:6316
see MBG_GPIO_STUDIO_CLOCK_SCALE_128
Definition: gpsdefs.h:8841
PTP_V1_PARENT_DATASET_FLAGS_MASKS
PTPv1 parent dataset flag masks used with MBG_PTP_V1_PARENT_DATASET::flags.
Definition: gpsdefs.h:14653
int32_t phase_offset
Phase offset in [ns].
Definition: gpsdefs.h:8537
see XMRSF_BIT_IS_TIME_OF_DAY_SRC
Definition: gpsdefs.h:6791
#define MBG_MONITORING_STR_SIZE
Definition: gpsdefs.h:21255
send a burst of eight packets at the first polling cycle
Definition: gpsdefs.h:15139
uint8_t sa_bits
sa bits group carrying SSM, MIN_SA_BITS_GROUP..MAX_SA_BITS_GROUP
Definition: gpsdefs.h:8120
MBG_IO_PORT_GRP_ROLE_BITS
Physical or logical group role bits.
Definition: gpsdefs.h:20510
uint16_t reserved_1
Future use and padding, currently 0.
Definition: gpsdefs.h:20977
An IPv4 or IPv6 network address, plus index.
Definition: gpsdefs.h:11945
Supports firmware management, see Firmware Management.
Definition: gpsdefs.h:2365
uint8_t instance
Refclock instance of the specified type. Usually up to 4 instances of the same type are supported by ...
Definition: gpsdefs.h:15684
for RX ignore, for TX don&#39;t generate TFOM flag
Definition: gpsdefs.h:5022
One-Step Clock active.
Definition: gpsdefs.h:13252
uint32_t dlyRespMsgPerSecRx
Accepted Delay response message Rx counter.
Definition: gpsdefs.h:14448
uint16_t idx
Definition: gpsdefs.h:11947
STR_TYPE_INFO str_type_info
Definition: gpsdefs.h:3736
uint32_t reserved_1
Future use.
Definition: gpsdefs.h:18334
uint32_t total_bytes
Definition: gpsdefs.h:18377
TM_GPS tm_reconn
time of antenna reconnect
Definition: gpsdefs.h:3104
uint32_t reserved_1
currently unused
Definition: gpsdefs.h:7428
See MBG_IO_PORT_SRC_CLK1.
Definition: gpsdefs.h:20222
#define MAX_USER_CHANNEL_BYTES
Definition: gpsdefs.h:22597
MBG_GPIO_FREQ_OUT_SUPP freq_out
if MBG_GPIO_SETTINGS::type is MBG_GPIO_TYPE_FREQ_OUT
Definition: gpsdefs.h:9213
see NTP_PEER_STATE_SUPP_DISP
Definition: gpsdefs.h:17386
Configuration settings for a specific programmable pulse output.
Definition: gpsdefs.h:6249
uint32_t reserved_5
Reserved for future use, currently 0.
Definition: gpsdefs.h:19807
uint8_t version_number
PTP version in use on the port.
Definition: gpsdefs.h:15046
specifies a symmetric-active association should be used with this server
Definition: gpsdefs.h:15148
uint16_t reserved
currently unused, always 0
Definition: gpsdefs.h:9843
#define MAX_IO_PORT_STATUS_BYTES
Array size required to store all status bits.
Definition: gpsdefs.h:21116
MBG_SNMP_V12_SETTINGS v12_settings
Definition: gpsdefs.h:21489
1) MBG_TLV_TYPE_BLOB => MBG_LICENSE_NTP_IDX, see License information
Definition: gpsdefs.h:18157
uint8_t reserved_1
Future use.
Definition: gpsdefs.h:23377
Structure for monitoring event settings.
Definition: gpsdefs.h:21812
uint32_t supp_members
MBG_EXT_SYS_INFO_MSKS
Definition: gpsdefs.h:19406
int32_t clk_jitter
[us] Jitter of the clock
Definition: gpsdefs.h:16910
uint16_t fractions
Definition: gpsdefs.h:16468
SMPTE_SYSTEM_FRAME_RATES
SMPTE System Frame Rates according to SMPTE ST 2059-2.
Definition: gpsdefs.h:13743
int16_t DNt
The day number at the end of which a leap second occurs.
Definition: gpsdefs.h:18574
Structure containing state information while reading TLV data.
Definition: gpsdefs.h:18330
time difference exceeds warning limit
Definition: gpsdefs.h:17780
support symmetric key authentication (MD5)
Definition: gpsdefs.h:15136
[R/-] can automatically become multicast master or slave, see PTP_CFG_CAN_BE_MULTICAST_AUTO ...
Definition: gpsdefs.h:13412
local timecode (IRIG, LOCAL driver, etc.)
Definition: gpsdefs.h:16673
Structure used to retrieve the number of records for a given type.
Definition: gpsdefs.h:5118
IEEE C37.238-2011 profile extension.
Definition: gpsdefs.h:13597
MBG_GNSS_TYPES
An enumeration of known satellite navigation systems.
Definition: gpsdefs.h:10623
has multiple input sources with priorities, superseded by GPS_FEAT_XMULTI_REF
Definition: gpsdefs.h:2190
see MBG_GPIO_VIDEO_HD_FORMAT_1080_I_59_94Hz
Definition: gpsdefs.h:8365
variable input signal via GPIO
Definition: gpsdefs.h:6432
MBG_NET_INTF_ADDR_BITS
Network interface address bits.
Definition: gpsdefs.h:11797
VHF/UHF radio/satellite (GPS, Galileo, etc.)
Definition: gpsdefs.h:16672
Modules (rows and columns) are layouted horizontally.
Definition: gpsdefs.h:20331
int16_t valid
flag data are valid
Definition: gpsdefs.h:18622
set in addition to TM_BIT_LS_ANN if leap sec is negative
Definition: gpsdefs.h:2636
#define MAX_XMR_METRICS
Definition: gpsdefs.h:7419
MBG_IO_PORT_TYPES
IO Port types.
Definition: gpsdefs.h:20055
A structure used to configure optional settings.
Definition: gpsdefs.h:5323
uint8_t enable
Enable / disable writing a driftfile.
Definition: gpsdefs.h:16125
uint8_t clk0_info
reference clock 0 type
Definition: gpsdefs.h:10449
XMULTI_REF_SETTINGS settings
the settings configured for this level
Definition: gpsdefs.h:6752
LNO_STATE_FLAG_BITS
Flags used with LNO_STATE::flags.
Definition: gpsdefs.h:17602
Switch &#39;on&#39; or &#39;off&#39; at the times specified in POUT_DATA::tm.
Definition: gpsdefs.h:5798
NTP specific license information.
Definition: gpsdefs.h:19663
uint32_t flags
holdover status flags, see XMR_HOLDOVER_STATUS_FLAG_MASKS
Definition: gpsdefs.h:7166
uint16_t idx
0..MBG_LED_LIMITS::num_leds-1
Definition: gpsdefs.h:18938
uint32_t announceMsgPerSecTx
Announce message Tx counter.
Definition: gpsdefs.h:14434
uint32_t flags
see MBG_GPIO_CFG_LIMIT_FLAG_MASKS
Definition: gpsdefs.h:7612
uint32_t supp_modes
Supported transfer modes, see MBG_UCAP_NET_TRANSF_MODE_MASKS.
Definition: gpsdefs.h:12498
int16_t MBG_REF_OFFS
A data type used to configure the ref offset.
Definition: gpsdefs.h:5297
Supports commands which have been added in stage 2.
Definition: gpsdefs.h:11389
uint8_t minpoll
Minimum polling interval, [log2 seconds], 0 if unused/unspecified.
Definition: gpsdefs.h:15690
see NTP_PEER_STATUS_BCST
Definition: gpsdefs.h:17146
MBG_UCAP_NET_SUPP_FLAGS
Supported flags for user captures via network.
Definition: gpsdefs.h:12442
See MBG_SVC_TYPE_SNMP.
Definition: gpsdefs.h:23009
see MBG_GPIO_VIDEO_OUT_HAS_NO_FREE_CONF
Definition: gpsdefs.h:8427
uint16_t reserved_2
Definition: gpsdefs.h:14526
number of known epochs
Definition: gpsdefs.h:8448
see MBG_LED_COLOR_YELLOW
Definition: gpsdefs.h:18829
MBG_UCAP_NET_RECV_INFO info
see MBG_UCAP_NET_RECV_INFO
Definition: gpsdefs.h:12616
NTP_ROLE_MASKS
Flag masks associated with NTP roles.
Definition: gpsdefs.h:15118
uint16_t feat_flags
see XMR_EXT_SRC_FEAT_FLAG_MSKS
Definition: gpsdefs.h:7280
MBG_FW_FLAGS
Definition: gpsdefs.h:23198
UTC ref offset not configured
Definition: gpsdefs.h:5225
uint16_t flash_stat_flags
Flash status flags, see NTP_FLASH_STAT_FLAG_MASKS.
Definition: gpsdefs.h:17442
invalid header or stratum
Definition: gpsdefs.h:17268
MBG_SERVICE_MSKS
Definition: gpsdefs.h:23006
uint32_t fpga_rev
Definition: gpsdefs.h:19411
uint16_t idx
0..MBG_NET_GLB_CFG_SETTINGS::num_intf_route-1
Definition: gpsdefs.h:12305
uint32_t reserved_rev_7
Definition: gpsdefs.h:19437
MBG_USER_MNGMNT_FLAG_MASKS
Definition: gpsdefs.h:22719
Global settings, features and flags for user captures via network.
Definition: gpsdefs.h:12493
uint16_t supp_num_events
Supported number of events. See MBG_EVENT_TYPES.
Definition: gpsdefs.h:21284
double M0
+- Mean Anomaly at Ref. Time [rad]
Definition: gpsdefs.h:18497
uint16_t ROM_CSUM
Definition: gpsdefs.h:10399
see NTP_PEER_STATUS_CONFIG
Definition: gpsdefs.h:17150
uint32_t pDlyFollowUpTx
PDelay Follow-Up message Tx counter.
Definition: gpsdefs.h:14461
uint8_t align_rule_idx
Index of the MBG_IO_PORT_INFO_IDX this port shall be optically aligned to.
Definition: gpsdefs.h:20811
uint8_t num_peers
number available peers
Definition: gpsdefs.h:16235
Twisted Pair (TP) copper cable.
Definition: gpsdefs.h:11515
MBG_TIME_SCALE_MASKS
Bit masks for known time scales.
Definition: gpsdefs.h:5480
uint32_t reserved_2
Future use.
Definition: gpsdefs.h:18352
MBG_IMS_FDM_OUTPUT_SETTINGS settings
current settings
Definition: gpsdefs.h:10047
MBG_GPIO_BITS_ERRS
Enumeration of BITS input error conditions.
Definition: gpsdefs.h:8177
modulated
Definition: gpsdefs.h:4536
uint16_t IGNORE_LOCK
Definition: gpsdefs.h:10401
uint16_t monitor_max
Maximum value for min.
Definition: gpsdefs.h:15456
Unknown transfer mode.
Definition: gpsdefs.h:12418
see XMR_HLDOVR_BIT_IN_HOLDOVER
Definition: gpsdefs.h:7238
server not synchronized
Definition: gpsdefs.h:17261
NTP_REACH_STAT_BITS
Enumeration of NTP peer reach status.
Definition: gpsdefs.h:17026
NTP restriction.
Definition: gpsdefs.h:15400
uint16_t idx
the priority level index (highest == 0), 0..XMULTI_REF_INSTANCES::n_xmr_settings-1 ...
Definition: gpsdefs.h:6751
uint16_t svs_in_view
Numb. of satellites that should be visible above the horizon.
Definition: gpsdefs.h:10595
uint8_t sys_rec_evt
Most recent event message, see NTP_SYS_EVT_BITS.
Definition: gpsdefs.h:16879
uint32_t dlyRespMsgRx
Accepted Delay response message Rx counter.
Definition: gpsdefs.h:14447
XMULTI_REF_STATUS status
status information
Definition: gpsdefs.h:6888
see NTP_ROLE_CLIENT
Definition: gpsdefs.h:15121
#define N_GNSS_MODE_PRIO
Definition: gpsdefs.h:10670
see PORT_INFO_FLAG_BIT_PORT_INVISIBLE
Definition: gpsdefs.h:3661
unsigned char uint8_t
Definition: words.h:210
uint32_t storage_size
Storage size in MB.
Definition: gpsdefs.h:19421
uint8_t dflt_clk_class_unsync_warm
Definition: gpsdefs.h:13290
Information on a specific XBP node.
Definition: gpsdefs.h:18006
see MBG_GPIO_SIGNAL_SHAPE_SQUARE
Definition: gpsdefs.h:7726
__int64 int64_t
Definition: words.h:249
GEN_IO_INFO_TYPE type
Definition: gpsdefs.h:10366
MBG_UCAP_NET_TRANSF_PROTO
Transfer protocol for user captures via network.
Definition: gpsdefs.h:12416
PLL is locked.
Definition: gpsdefs.h:9921
HaveQuick input.
Definition: gpsdefs.h:6437
Configuration of a GPIO digital audio output.
Definition: gpsdefs.h:9045
int32_t offs
standard offset from UTC to local time [sec]
Definition: gpsdefs.h:2942
GBIT_LINK_COPPER_MODES
Link modes for SyncE on a 1000BASE-T interface.
Definition: gpsdefs.h:14160
uint32_t subdomain_address
Definition: gpsdefs.h:14792
synchronized externally
Definition: gpsdefs.h:2639
see LNE_PORT_FLAG_BIT_IS_SFP
Definition: gpsdefs.h:19156
MBG_USER_CFG_FLAG_MASKS
Definition: gpsdefs.h:22801
Supported options for a variable frequency GPIO input.
Definition: gpsdefs.h:7804
uint32_t announceMsgTx
Announce message Tx counter.
Definition: gpsdefs.h:14433
uint32_t reserved_rev_9
Definition: gpsdefs.h:19439
MBG_IP4_FLAG_BITS
Enumeration of flag bits used with IP4_SETTINGS::flags and LAN_IF_INFO::flags.
Definition: gpsdefs.h:11315
See NTP_GLB_STATS_FLAG_CRYPTOSTATS.
Definition: gpsdefs.h:15523
uint16_t supp_hashes
See NTP_SYMM_KEY_HASH_MASKS.
Definition: gpsdefs.h:15861
MBG_NET_INTF_LINK_TYPE_MASKS
Network interface link type masks.
Definition: gpsdefs.h:11782
MBG_GPIO_FREQ_OUT_SETTINGS freq_out
if MBG_GPIO_SETTINGS::type is MBG_GPIO_TYPE_FREQ_OUT
Definition: gpsdefs.h:9141
uint8_t tdev_scale
scale factors of TDEV
Definition: gpsdefs.h:7426
int32_t freq
[ppb] Frequency offset relative to hardware clock
Definition: gpsdefs.h:16908
see NTP_PEER_STATUS_AUTH
Definition: gpsdefs.h:17149
IO Port Limits.
Definition: gpsdefs.h:20411
number of available sources exceeds what can be handled
Definition: gpsdefs.h:6954
support eXtended features, see Extended feature definitions
Definition: gpsdefs.h:2217
XMR_SETTINGS_FLAG_MSKS
Bit masks used with XMULTI_REF_SETTINGS::flags and XMR_EXT_SRC_INFO::supp_flags.
Definition: gpsdefs.h:6784
see PTP_PRESETS_6185093
Definition: gpsdefs.h:13673
Video sync signal output (H-Sync, V-Sync, ...)
Definition: gpsdefs.h:7671
MBG_SYSLOG_PROTOCOLS
Definition: gpsdefs.h:22128
uint32_t supp_flags_manycastclient
supported flags for manycast client associations
Definition: gpsdefs.h:16318
uint16_t reserved_0
Definition: gpsdefs.h:7551
Configuration of a GPIO fixed frequency output.
Definition: gpsdefs.h:7959
uint32_t lower_bound
sync state set to true if below this limit [ns]
Definition: gpsdefs.h:13302
see SMPTE_TAI_EPOCH_1970
Definition: gpsdefs.h:8462
Current configuration of an SHS controller.
Definition: gpsdefs.h:17698
NTP orphan mode info.
Definition: gpsdefs.h:16188
uint32_t mode
mode, see MBG_IMS_FDM_OUTPUT_MODES
Definition: gpsdefs.h:10010
see MBG_NET_INTF_LINK_OPT_CAN_SET_MAC
Definition: gpsdefs.h:11677
Indicates, that the password has been changed and needs to be crypted.
Definition: gpsdefs.h:22795
see USER_SCOPE_CONFIG_READ
Definition: gpsdefs.h:22575
uint32_t fixed_altitude_variance
Definition: gpsdefs.h:18698
see MBG_GPIO_VIDEO_SD_FORMAT_PAL_M
Definition: gpsdefs.h:8366
uint8_t n_supp_ref
Definition: gpsdefs.h:6817
uint32_t reserved_6
Reserved for future use, currently 0.
Definition: gpsdefs.h:19808
see SDH_NETWORK_OPTION_2
Definition: gpsdefs.h:14136
HAVEQUICK_FORMAT_MASKS
Bit masks associated with the enumerated HaveQuick formats.
Definition: gpsdefs.h:9400
one or both time sources disconnected
Definition: gpsdefs.h:17782
T_GPS t0a
Reference Time Almanac [sec].
Definition: gpsdefs.h:18492
General info on supported XMR sources and instances.
Definition: gpsdefs.h:7054
MBG_SNMP_V12_INFO info
Definition: gpsdefs.h:21468
state of power supply 3 monitoring input
Definition: gpsdefs.h:10507
uint16_t supp_refclk_types
See NTP_REFCLK_TYPE_MSKS.
Definition: gpsdefs.h:15777
NTP server.
Definition: gpsdefs.h:15107
MBG_USER_SCOPE_MSKS
Definition: gpsdefs.h:22572
see WRN_1PPS_MISSING
Definition: gpsdefs.h:6640
only if PTP_MSK_OPT_EXT_TELECOM_PHASE is set
Definition: gpsdefs.h:13651
uint16_t max_restrs
Number of maximum supported restrictions.
Definition: gpsdefs.h:15376
see IFLAGS_BIT_TX_GEN_LOCAL_TIME
Definition: gpsdefs.h:5042
uint32_t flags
Flags, see MBG_IO_PORT_INFO_MASKS.
Definition: gpsdefs.h:20819
see GNSS_TYPE_GLONASS
Definition: gpsdefs.h:10644
MBG_UCAP_NET_TRANSF_MODE
Transfer mode for user captures via network.
Definition: gpsdefs.h:12386
uint32_t supp_members
See MBG_LICENSE_PTPV2_MEMBER_MSKS.
Definition: gpsdefs.h:19598
see MBG_GPIO_STUDIO_CLOCK_BASE_FREQ_44_1KHZ
Definition: gpsdefs.h:8769
manycast shall be used on the given multicast address to discover peers
Definition: gpsdefs.h:15151
uint32_t num_levels
current number of users
Definition: gpsdefs.h:22730
MBG_SNMP_V3_INFO info
Definition: gpsdefs.h:21671
uint16_t unreach
Counter for the number of unsuccessful polling intervals.
Definition: gpsdefs.h:17433
MBG_GPIO_FIXED_FREQ_OUT_SUPP ff_out
if MBG_GPIO_SETTINGS::type is MBG_GPIO_TYPE_FIXED_FREQ_OUT
Definition: gpsdefs.h:9214
NTP_PEER_STATUS_FLAG_MASKS
Flag masks for NTP_PEER_STATUS_FLAGS.
Definition: gpsdefs.h:17144
MBG_IO_PORT_INFO_BITS
Definition: gpsdefs.h:20776
See MBG_FW_FILE_INITRD.
Definition: gpsdefs.h:23258
access denied (kiss code DENY)
Definition: gpsdefs.h:17192
GNSS_SV_STAT_HEALTH_CODES
Health indicators used with GNSS_SV_STATUS::stat_flags.
Definition: gpsdefs.h:10936
uint32_t reserved_1
Future use.
Definition: gpsdefs.h:16032
UTC correction has been made
Definition: gpsdefs.h:2630
MBG_EXT_SYS_INFO_BITS
Bits used to define MBG_EXT_SYS_INFO_MSKS.
Definition: gpsdefs.h:19227
unspecified NTP event
Definition: gpsdefs.h:17184
MBG_DEBUG_STATUS_BITS
Enumeration of flag bits used for debug status.
Definition: gpsdefs.h:5216
mask of all known flags
Definition: gpsdefs.h:5044
MBG_GPIO_LIMITS gpio_limits
Definition: gpsdefs.h:20918
MBG_LICENSE_BASE base
See MBG_LICENSE_BASE.
Definition: gpsdefs.h:19731
see MBG_IMS_FDM_STATE_FLAG_BIT_SYNC_AFTER_RESET
Definition: gpsdefs.h:10248
[R/W] supports one-step mode in master roles
Definition: gpsdefs.h:13418
uint8_t n_supp_pref_peers
maximal number of configurable preferred ref sources
Definition: gpsdefs.h:16265
uint16_t reserved_2
Reserved, currently 0.
Definition: gpsdefs.h:12178
Network host or domain name, plus index.
Definition: gpsdefs.h:12003
IO Port Info Index.
Definition: gpsdefs.h:20862
uint32_t idx
port index, 0..MBG_GPIO_CFG_LIMITS::num_io-1
Definition: gpsdefs.h:9275
Supports additional SNMP configuration (i.e. via script)
Definition: gpsdefs.h:21326
General LED info to be read from a device.
Definition: gpsdefs.h:18727
uint32_t reserved
Future use.
Definition: gpsdefs.h:15458
Direct attach SFP+ connection.
Definition: gpsdefs.h:11520
MBG_EVENT_SUPP_FLAGS
Definition: gpsdefs.h:21828
MBG_EVENT_INFO info
Definition: gpsdefs.h:21918
See MBG_IO_PORT_SRC_ACTIVE_CLOCK.
Definition: gpsdefs.h:20221
uint8_t reserved_0
reserved, currently always 0
Definition: gpsdefs.h:10117
number of known line frequencies
Definition: gpsdefs.h:10198
see MBG_LED_COLOR_RED
Definition: gpsdefs.h:18828
NTP_REFCLK_TYPES
Enumeration of supported refclock types.
Definition: gpsdefs.h:15606
MBG_IO_PORT_OP_MODE_MSKS
Masks for MBG_IO_PORT_OP_MODE_BITS.
Definition: gpsdefs.h:20492
external 1 PPS signal not available
Definition: gpsdefs.h:6619
modulated
Definition: gpsdefs.h:4540
MBG_GPIO_LIMITS limits
limits of this GPIO port
Definition: gpsdefs.h:9257
See MBG_IO_PORT_GRP_ROLE_NONE.
Definition: gpsdefs.h:20546
see MBG_LED_COLOR_GREEN
Definition: gpsdefs.h:18827
Structure for monitoring event info.
Definition: gpsdefs.h:21915
see MBG_FRAMING_8O1
Definition: gpsdefs.h:3394
uint8_t osc_type
type of installed oscillator, see GPS_OSC_TYPES
Definition: gpsdefs.h:884
ICODE_RX_CODES
Known IRIG RX code formats.
Definition: gpsdefs.h:4530
int16_t delay_req_intv_min
log2 of minimum delay request interval [s]
Definition: gpsdefs.h:14238
uint32_t reserved_4
Reserved for future use, currently 0.
Definition: gpsdefs.h:19737
uint32_t reserved
reserved, currently always 0
Definition: gpsdefs.h:7873
[R/-] PTP device supports software NTP daemon in parallel to PTP
Definition: gpsdefs.h:13527
uint16_t supp_flags
mask of flags supported in settings, see HAVEQUICK_FLAG_MASKS
Definition: gpsdefs.h:9483
authentication enabled
Definition: gpsdefs.h:17130
supports root delay to syspeer, see NTP_SYS_STATE::root_delay
Definition: gpsdefs.h:16802
PORT_INFO port_info
Definition: gpsdefs.h:3680
see PTP_PRESETS_C37238_2017
Definition: gpsdefs.h:13676
see PTP_OPT_EXT_SMPTE
Definition: gpsdefs.h:13620
MBG_IP4_FLAG_MASKS
Bit masks used with IP4_SETTINGS::flags and LAN_IF_INFO::flags.
Definition: gpsdefs.h:11339
see NTP_SYS_STATE_SUPP_CLK_WANDER
Definition: gpsdefs.h:16832
uint16_t port
UDP or TCP port.
Definition: gpsdefs.h:11967
MBG_GPIO_VIDEO_TC_MODES
Enumeration of time code modes used with video type GPIO outputs.
Definition: gpsdefs.h:8491
Decoder control loop is locked.
Definition: gpsdefs.h:5223
Almanac parameters of one specific satellite.
Definition: gpsdefs.h:18486
see NTP_REFCLK_TYPE_NMEA
Definition: gpsdefs.h:15631
uint32_t reserved_2
Reserved, currently 0.
Definition: gpsdefs.h:12325
int8_t log_min_pdelay_req_interval
minimum peer delay request interval for this port
Definition: gpsdefs.h:15045
uint32_t idx
the index of the user
Definition: gpsdefs.h:22962
double crc
+- Cosine Corr. Term to Orbit Radius [m]
Definition: gpsdefs.h:18458
See NTP_GLB_STATS_FLAG_ENABLE.
Definition: gpsdefs.h:15521
DCLS only.
Definition: gpsdefs.h:4115
See MBG_FW_FLAG_UNERASABLE.
Definition: gpsdefs.h:23213
Port has physical carrier connection (e.g. BNC cable in BPE&#39;s case)
Definition: gpsdefs.h:21074
see NTP_SYMM_KEY_HASH_SHA1
Definition: gpsdefs.h:15835
uint32_t cmd
See MBG_DATABASE_CMDS.
Definition: gpsdefs.h:23603
Slot for MRI (multi reference input) cards.
Definition: gpsdefs.h:17973
Current settings and general capabilities of a serial port.
Definition: gpsdefs.h:3618
uint32_t reserved_2
currently reserved, unused, always 0
Definition: gpsdefs.h:7332
Supports service management, see Service Management.
Definition: gpsdefs.h:2363
uint16_t reserved_2
Definition: gpsdefs.h:21793
see MBG_GPIO_FIXED_FREQ_1MHz
Definition: gpsdefs.h:7922
uint16_t flags
See MBG_DATABASE_SETTINGS_FLAG_MSKS.
Definition: gpsdefs.h:23463
see USER_STAT_DISABLED_ON_MAX_FAILS
Definition: gpsdefs.h:22931
uint32_t reserved
reserved, currently always 0
Definition: gpsdefs.h:9206
uint32_t reserved_3
reserved, currently always 0
Definition: gpsdefs.h:8242
uint8_t reserved_0
reserved, currently always 0
Definition: gpsdefs.h:8239
uint32_t reserved_4
Reserved for future use, currently 0.
Definition: gpsdefs.h:19806
Settings for receivers of user captures via network.
Definition: gpsdefs.h:12560
see WRN_MODULE_MODE
Definition: gpsdefs.h:6641
uint32_t signallingRx
Accepted Signalling message Rx counter.
Definition: gpsdefs.h:14463
uint32_t num_fails
current number of unsuccessful login attempts
Definition: gpsdefs.h:22940
MBG_USER_PERMS
Definition: gpsdefs.h:22370
MBG_USER_PERM_BUF cfg_read_perm
current config read permissions, see MBG_USER_PERM_BUF and MBG_USER_PERMS
Definition: gpsdefs.h:22943
MBG_EXT_SYS_INFO_CPUS
Definition: gpsdefs.h:19366
uint32_t supp_ref
bit mask of supported sources, see MULTI_REF_TYPE_MASKS
Definition: gpsdefs.h:6589
uint32_t boots
Number of system/deamon restarts -> Ignore.
Definition: gpsdefs.h:21622
See MBG_FW_FLAG_OSV.
Definition: gpsdefs.h:23211
int32_t offs_dl
additional offset if daylight saving enabled [sec]
Definition: gpsdefs.h:2943
see NTP_RESTR_FLAG_KOD
Definition: gpsdefs.h:15348
multicast master or slave (auto selection)
Definition: gpsdefs.h:12937
XMR_HOLDOVER_INTV elapsed
elapsed time in holdover mode, only valid if XMR_HLDOVR_MSK_IN_HOLDOVER is set
Definition: gpsdefs.h:7164
see MBG_NET_INTF_ADDR_BIT_DHCP6
Definition: gpsdefs.h:11815
going to switch to autonomous mode when XMR_HOLDOVER_STATUS::remote_watchdog reaches 0 ...
Definition: gpsdefs.h:7196
uint32_t format
signal format, see MBG_GPIO_BITS_FORMATS
Definition: gpsdefs.h:8111
uint8_t num_dns_srch_dom
number of configured DNS search domains, see MBG_NET_NAME_IDX
Definition: gpsdefs.h:11851
uint32_t reserved_6
Reserved for future use, currently 0.
Definition: gpsdefs.h:19673
double deltai
+- [rad]
Definition: gpsdefs.h:18501
MBG_IP_ADDR_PORT src_addr
Source address of the NTP peer, see MBG_IP_ADDR_PORT.
Definition: gpsdefs.h:17416
uint32_t idx
The index of the observed NTP peer.
Definition: gpsdefs.h:17541
uint32_t dlyReqMsgPerSecRx
Accepted Delay request message Rx counter.
Definition: gpsdefs.h:14444
MBG_NET_INTF_ADDR_INFO info
see MBG_NET_INTF_ADDR_INFO
Definition: gpsdefs.h:12247
uint8_t sys_sync_src
Current synchronization source, see NTP_SYNC_SRC_BITS.
Definition: gpsdefs.h:16877
Synchronous Ethernet, needs (external) ethernet interface.
Definition: gpsdefs.h:6439
T_GPS t0e
Reference Time Ephemeris [—].
Definition: gpsdefs.h:18447
XMR_METRICS metrics
Definition: gpsdefs.h:7471
A structure used to store port status bits.
Definition: gpsdefs.h:21132
clock stepped
Definition: gpsdefs.h:16736
uint8_t reserved_1
reserved, currently always 0
Definition: gpsdefs.h:13347
Device power control.
Definition: gpsdefs.h:19192
see PTP_FLAG_IS_UNICAST
Definition: gpsdefs.h:13268
PTP state changed to FAULTY.
Definition: gpsdefs.h:9628
uint32_t reserved_2
Reserved for future use, currently 0.
Definition: gpsdefs.h:19735
MBG_USER_PERM_BUF stat_read_perm
status read permission configuration, see MBG_USER_PERM_BUF and MBG_USER_PERMS
Definition: gpsdefs.h:22834
uint8_t leap_ind
Leap indicator, see NTP_LI_BITS.
Definition: gpsdefs.h:17407
authentication ok
Definition: gpsdefs.h:17131
see MBG_GPIO_SIGNAL_SHAPE_UNSPECIFIED
Definition: gpsdefs.h:7724
int32_t previousJamLocalOffset
Definition: gpsdefs.h:13852
uint32_t flags
reserved, currently always 0
Definition: gpsdefs.h:14355
see MBG_GPIO_BITS_OUT_FLAG_HDB3
Definition: gpsdefs.h:8286
Configuration settings specifiying how to query a PTP unicast master.
Definition: gpsdefs.h:14274
NANO_TIME path_delay
Definition: gpsdefs.h:13191
loss of frame
Definition: gpsdefs.h:8180
MBG_GPIO_DIGITAL_AUDIO_OUT_SETTINGS digital_audio_out
if MBG_GPIO_SETTINGS::type is ::;MBG_GPIO_TYPE_DIGITAL_AUDIO_OUT
Definition: gpsdefs.h:9148
multicast master
Definition: gpsdefs.h:12935
uint32_t flags
currently reserved, unused, always 0
Definition: gpsdefs.h:19040
see STR_CR_ON_SEC
Definition: gpsdefs.h:3784
User captures are transferred via UDP.
Definition: gpsdefs.h:12419
number of known types
Definition: gpsdefs.h:10547
uint8_t active_fw
Index of currently active firmware.
Definition: gpsdefs.h:23185
int16_t valid
flag data are valid
Definition: gpsdefs.h:18515
remote disable for output MUX
Definition: gpsdefs.h:10528
see NTP_PEER_STATE_SUPP_PRECISION
Definition: gpsdefs.h:17380
uint8_t boc
boc for T1 mode, 0..0x1F //##++++++++++++++
Definition: gpsdefs.h:8238
generic current in val/exp, output state in flags
Definition: gpsdefs.h:9892
NTP_SYS_STATE_SUPP_FLAGS
Enumeration of supported NTP system state values.
Definition: gpsdefs.h:16797
uint32_t reserved
Possible future use.
Definition: gpsdefs.h:15480
IRIG input via fiber optics.
Definition: gpsdefs.h:2482
MBG_LNE_PORT_SETTINGS settings
Current LNE port settings.
Definition: gpsdefs.h:19088
uint32_t reserved_1
reserved, currently 0
Definition: gpsdefs.h:16269
uint8_t micro_version
Micro version number.
Definition: gpsdefs.h:16884
One of several sets of satellite information for a particular GNSS type.
Definition: gpsdefs.h:10773
MBG_IP_ADDR addr
see MBG_IP_ADDR
Definition: gpsdefs.h:11965
uint8_t state
state code as enumerated in SYNTH_STATES
Definition: gpsdefs.h:2892
MBG_USER_PERM_BUF cfg_write_perm
config write permission configuration, see MBG_USER_PERM_BUF and MBG_USER_PERMS
Definition: gpsdefs.h:22836
Unknown transfer mode.
Definition: gpsdefs.h:12388
T_GPS t
time in GPS scale and format
Definition: gpsdefs.h:2716
oscillator not phase locked to PPS
Definition: gpsdefs.h:6953
Indicates, that this port shall be optically aligned to MBG_IO_PORT_INFO::align_rule_idx.
Definition: gpsdefs.h:20778
Date and time specification for switching operations.
Definition: gpsdefs.h:5587
uint8_t poll_intv_min
minimum supported NTP polling interval
Definition: gpsdefs.h:16302
See MBG_FW_FILE_MEINBERG_DTB.
Definition: gpsdefs.h:23253
PTP_UC_MSG_DURATION_LIMITS
Unicast PTP master message duration limits.
Definition: gpsdefs.h:14318
uint16_t proc_type
See MBG_EXT_SYS_INFO_PROC_TYPES.
Definition: gpsdefs.h:19413
see SHS_FLAG_BIT_DISB_SERIAL
Definition: gpsdefs.h:17816
see XMR_EXT_SRC_FEAT_FLAG_BIT_METRICS
Definition: gpsdefs.h:7271
the number of known baud rates
Definition: gpsdefs.h:3246
NANO_TIME_64 time2
Driver specific.
Definition: gpsdefs.h:15696
see MBG_NET_INTF_LINK_BOND_MODE_TLB
Definition: gpsdefs.h:11722
uint32_t reserved_1
reserved, currently always 0
Definition: gpsdefs.h:14242
Autokey sequence error.
Definition: gpsdefs.h:17266
uint16_t epld_control_mask
control mask, determines which bit is to be changed, see SCU_CTRL_MASKS
Definition: gpsdefs.h:10472
see TM_BIT_DL_ANN
Definition: gpsdefs.h:2662
number of defined formats
Definition: gpsdefs.h:8020
see BVAR_BIT_RCVR_POS_INVALID
Definition: gpsdefs.h:815
MBG_EVENT_SETTINGS settings
Definition: gpsdefs.h:21815
FIXED_FREQ_INFO fixed_freq
optional non-standard fixed frequency, may be 0 if not supported
Definition: gpsdefs.h:883
uint32_t reserved_3
reserved, currently 0
Definition: gpsdefs.h:16308
int32_t offs_from_utc
local time offset from UTC [sec]
Definition: gpsdefs.h:2604
see NTP_FLASH_STAT_PKT_DENIED
Definition: gpsdefs.h:17289
number of defined roles
Definition: gpsdefs.h:12944
NANO_TIME step_comp_val
current step compensation value
Definition: gpsdefs.h:7329
uint32_t reserved_2
Future use.
Definition: gpsdefs.h:15544
uint32_t used
current number of saved log entries
Definition: gpsdefs.h:9542
CSUM csum
checksum of the remaining bytes
Definition: gpsdefs.h:18488
Time zone / daylight saving parameters.
Definition: gpsdefs.h:2940
ref. clock is DCF77 PZF receiver
Definition: gpsdefs.h:10544
uint32_t reserved_2
reserved, currently always 0
Definition: gpsdefs.h:13202
PTP_CLOCK_ID grandmaster_identity
Identity of the grandmaster clock, see PTP_CLOCK_ID.
Definition: gpsdefs.h:14959
Enable, disable logging to database.
Definition: gpsdefs.h:23445
PORT_SETTINGS port_settings
Definition: gpsdefs.h:3597
MBG_GPIO_STUDIO_CLOCK_SCALE_MASKS
Bit masks associated with MBG_GPIO_STUDIO_CLOCK_SCALES.
Definition: gpsdefs.h:8827
SSU-B.
Definition: gpsdefs.h:8074
MBG_USER_PERM_BUF supp_perms
supported user permissions
Definition: gpsdefs.h:22758
int32_t fixed_altitude
Definition: gpsdefs.h:18697
uint32_t feat_flags
Feature flags, see MBG_NET_GLB_CFG_INFO_MASKS.
Definition: gpsdefs.h:11880
uint8_t osc_flags
oscillator flags, actually not used and always 0
Definition: gpsdefs.h:885
uint16_t URA
predicted User Range Accuracy
Definition: gpsdefs.h:18470
header distance exceeded
Definition: gpsdefs.h:17265
telephone modem (ACTS, PTB, etc.)
Definition: gpsdefs.h:16677
PTP state changed to MASTER.
Definition: gpsdefs.h:9632
NTP_SYMM_KEY_INFO info
Definition: gpsdefs.h:15972
uint8_t reserved_0
Currently reserved, unused, always 0.
Definition: gpsdefs.h:18730
uint8_t reserved_1
Stratum level when no ref source available.
Definition: gpsdefs.h:16216
uint16_t monitor_min
Maximum value for min.
Definition: gpsdefs.h:15455
time scale configured to return TAI
Definition: gpsdefs.h:2694
TIME_MODES
Definition: gpsdefs.h:18661
time difference not checked, eventually no limits configured
Definition: gpsdefs.h:17778
MBG_EVT_INFO info
optional event info, depending on event ID
Definition: gpsdefs.h:9568
uint16_t key_id
ID of symmetric authentication key.
Definition: gpsdefs.h:17444
code G00x
Definition: gpsdefs.h:5156
uint32_t reserved_1
Reserved, currently always 0.
Definition: gpsdefs.h:12501
MULTI_REF_GPS or MULTI_REF_GRC can use XMULTI_REF_SETTINGS::bias
Definition: gpsdefs.h:7090
uint8_t reserved
reserved, currently always 0
Definition: gpsdefs.h:14928
uint32_t supp_members
Definition: gpsdefs.h:20584
uint16_t patch_lvl
Patch level number.
Definition: gpsdefs.h:16886
double e
Eccentricity [—].
Definition: gpsdefs.h:18495
uint32_t total_bytes
Number of all bytes including header(s) that are related to a TLV block transaction.
Definition: gpsdefs.h:18311
uint16_t idx
Index of the port dataset, 0..MBG_PTP_V1_DEFAULT_DATASET::number_ports - 1.
Definition: gpsdefs.h:14824
see PTP_ROLE_TIME_MONITOR
Definition: gpsdefs.h:12972
[R] supports SyncE and external signal multiplexer
Definition: gpsdefs.h:13571
uint32_t defaultSystemFrameRateNum
Definition: gpsdefs.h:13804
uint32_t flags
flags, currently always 0
Definition: gpsdefs.h:8693
see XMR_HLDOVR_BIT_TRANSITION_ENBD
Definition: gpsdefs.h:7239
Supports the GPS_CLK_RES_INFO command, see Clock resolution info.
Definition: gpsdefs.h:2353
uint8_t cmd
See MBG_FW_UFU_FLASH_CMDS.
Definition: gpsdefs.h:23376
IP6_ADDR ip6_addr
IPv6 address if MBG_IP_ADDR::type == MBG_IP_ADDR_TYPE_IP6.
Definition: gpsdefs.h:11915
user level for external authentication and as template for new users
Definition: gpsdefs.h:22780
uint32_t reserved_2
reserved, currently 0
Definition: gpsdefs.h:15227
state of daylight saving is going to change
Definition: gpsdefs.h:2632
has extended multiple input source configuration, supersedes GPS_FEAT_MULTI_REF
Definition: gpsdefs.h:2195
Configuration of a GPIO as studio clock output module.
Definition: gpsdefs.h:8940
uint32_t base_clk
Base clock of the internal time base [MHz].
Definition: gpsdefs.h:19855
MBG_IO_PORT_BG_COLOURS
Definition: gpsdefs.h:20350
uint32_t supp_flags
supported flags, see MBG_GPIO_FLAG_MASKS
Definition: gpsdefs.h:9207
uint8_t clock_class
PTP clock class representing the current sync status.
Definition: gpsdefs.h:13089
uint32_t flags
NTP flags, see NTP_FLAG_MASKS.
Definition: gpsdefs.h:15230
[R/-] supports unicast and multicast master role at the same time, see PTP_CFG_CAN_BE_BOTH_MASTER ...
Definition: gpsdefs.h:13414
see NTP_RESTR_FLAG_NOTRAP
Definition: gpsdefs.h:15356
A generic structure used to specify a GPIO port&#39;s limits.
Definition: gpsdefs.h:9203
MBG_IO_PORT_INFO_MASKS
Definition: gpsdefs.h:20782
supports XBP (eXtended Binary Protocol) API and structures, see eXtended Binary Protocol definitions ...
Definition: gpsdefs.h:2216
XBP_FEAT_BITS
Enumeration of bits used to define XBP_FEAT_MASKS.
Definition: gpsdefs.h:17902
transmission via broadcast, point to multipoint
Definition: gpsdefs.h:15144
Peer settings for NTP devices.
Definition: gpsdefs.h:16393
configured output signal enabled
Definition: gpsdefs.h:9343
number of known flag bits
Definition: gpsdefs.h:6777
XMR_HOLDOVER_STATUS_MODES
XMR holdover status modes.
Definition: gpsdefs.h:7193
uint16_t grandmaster_id_2017
Grandmaster ID defined in C.37.2017 is now 16 Bits.
Definition: gpsdefs.h:13716
see SMPTE_UTC_EPOCH_1972
Definition: gpsdefs.h:8464
Synthesizer configuration parameters.
Definition: gpsdefs.h:2856
uint32_t reserved
reserved, currently always 0
Definition: gpsdefs.h:8211
see MBG_IMS_FDM_FLAG_CAN_SET_TDEV
Definition: gpsdefs.h:10308
uint32_t flags
see SHS_FLAG_MASKS
Definition: gpsdefs.h:17703
uint16_t reserved_rev_4
Definition: gpsdefs.h:19434
uint32_t supp_ql_masks
see :ITU_LIMIT_MASKS
Definition: gpsdefs.h:7560
Slot for ESI (extended reference input) cards.
Definition: gpsdefs.h:17974
MBG_NET_INTF_ROUTE_TYPES
Definition: gpsdefs.h:11820
see POUT_BIT_IF_SYNC_ONLY, POUT_SUPP_IF_SYNC_ONLY
Definition: gpsdefs.h:6233
Satellite configuration and health parameters incomplete.
Definition: gpsdefs.h:791
NANO_TIME auto_bias
current time automatic bias compensation
Definition: gpsdefs.h:7330
MBG_LICENSE_NTP license
Definition: gpsdefs.h:19690
#define N_NTP_SYMM_KEY_LEN
Definition: gpsdefs.h:15879
T_GPS t0a
complete reference time almanac
Definition: gpsdefs.h:18519
int16_t exp
10s exponent of the sensor value
Definition: gpsdefs.h:9842
MBG_FW_INFO info
Definition: gpsdefs.h:23290
An IPv4 or IPv6 network address plus UDP or TCP port number.
Definition: gpsdefs.h:11963
the user supports the disabling after a number of login fails, see MBG_USER_SETTINGS::max_fails ...
Definition: gpsdefs.h:22790
time difference OK, below warning limit
Definition: gpsdefs.h:17779
Structure that represents the status of an NTP peer.
Definition: gpsdefs.h:17400
uint32_t followUpMsgPerSecRx
Accepted Follow-up message Rx counter.
Definition: gpsdefs.h:14440
Generic state of an IMS sensor, with sensor index.
Definition: gpsdefs.h:9863
int64_t scaled_nanoseconds
Definition: gpsdefs.h:13112
See MBG_DATABASE_MEMBER_HOST.
Definition: gpsdefs.h:23539
Orbit source unknown.
Definition: gpsdefs.h:10951
uint32_t reserved1
reserved, currently always 0
Definition: gpsdefs.h:8914
Sync Monitor specific license information.
Definition: gpsdefs.h:19797
see XMR_HLDOVR_BIT_TIME_OFFS_VALID
Definition: gpsdefs.h:7241
uint8_t num_types
See MBG_IO_PORT_TYPE_INFO.
Definition: gpsdefs.h:20808
Supports generic TLV API, see Meinberg TLV API definitions.
Definition: gpsdefs.h:2345
Supports additional network configuration (i.e. via script)
Definition: gpsdefs.h:11391
uint8_t num_leds
Number of supported LEDs, see MBG_LED_SETTINGS_IDX::idx and MBG_LED_INFO_IDX::idx.
Definition: gpsdefs.h:18729
See MBG_IO_PORT_DIR_IN.
Definition: gpsdefs.h:20152
Network interface address specific settings.
Definition: gpsdefs.h:12321
XMR_HOLDOVER_INTV interval
current holdover interval, only valid if XMR_HLDOVR_MSK_IN_HOLDOVER is set
Definition: gpsdefs.h:7165
uint8_t flags
reserved, don&#39;t use, currently always 0
Definition: gpsdefs.h:5508
Reference source capabilities and current configuration for a specific priority level.
Definition: gpsdefs.h:6839
values in field XMR_HOLDOVER_STATUS::time_offset_ns are valid
Definition: gpsdefs.h:7226
See MBG_IO_PORT_ANT_MEMBER_IGN_LOCK.
Definition: gpsdefs.h:20578
Supported options of a sync type GPIO output.
Definition: gpsdefs.h:8722
uint8_t reserved0
reserved, currently always 0
Definition: gpsdefs.h:8943
see NTP_FLASH_STAT_PKT_BOGUS
Definition: gpsdefs.h:17287
uint32_t seconds
seconds since NTP epoch, see NTP_SEC_BIAS
Definition: gpsdefs.h:16486
marks a server as preferred peer for time synchronization
Definition: gpsdefs.h:15142
see MBG_BAUD_RATE_600
Definition: gpsdefs.h:3312
Event can be sent cyclically.
Definition: gpsdefs.h:21830
uint32_t idx
node index, 0..XBP_NODE_LIMITS::node_count-1
Definition: gpsdefs.h:18046
MBG_SNMP_GLB_SETTINGS settings
Definition: gpsdefs.h:21379
ITU-T G.8275.1 profile extension, only if PTP_MSK_OPT_EXT_TELECOM_PHASE is set.
Definition: gpsdefs.h:13645
IOD IODC
Issue Of Data, Clock.
Definition: gpsdefs.h:18442
uint32_t tsu_secs
current seconds value of time stamp unit
Definition: gpsdefs.h:13201
see MBG_NET_INTF_LINK_OPT_CAN_PTP_HW_TS
Definition: gpsdefs.h:11682
number of known formats
Definition: gpsdefs.h:9390
uint16_t interval
[s], only if MBG_EVENT_SUPP_FLAG_INTERVAL is set in MBG_EVENT_INFO::supp_flags, else 0...
Definition: gpsdefs.h:21791
#define MAX_USED_SATS
Definition: gpsdefs.h:10744
A Generic data field for programmable output settings.
Definition: gpsdefs.h:5637
int16_t sync_intv_min
log2 of minimum sync interval [s]
Definition: gpsdefs.h:14234
MBG_GNSS_MODE_INFO_FLAG_BITS
Flag bits used to define MBG_GNSS_MODE_INFO_FLAG_MASKS.
Definition: gpsdefs.h:10719
MBG_DATABASE_SETTINGS settings
See MBG_DATABASE_SETTINGS.
Definition: gpsdefs.h:23546
General NTP "discard" rate limiting limits to be read from a device.
Definition: gpsdefs.h:15449
uint8_t reserved_1
Future use.
Definition: gpsdefs.h:15403
MBG_SERVICE_STATUS status
Definition: gpsdefs.h:23154
uint8_t time_source
see PTP_TIME_SOURCES
Definition: gpsdefs.h:13205
see MBG_OPT_BIT_EMU_SYNC
Definition: gpsdefs.h:5376
#define MAX_XBP_CASC_LVL
Maximum XBP bus/controller cascading level.
Definition: gpsdefs.h:17853
LED shows green light.
Definition: gpsdefs.h:21080
uint32_t cur_bytes
Number of bytes in MBG_TLV::value.
Definition: gpsdefs.h:18375
see PTP_DELAY_MECH_P2P
Definition: gpsdefs.h:12782
see GPS_BIT_OSC_CFG_SUPP
Definition: gpsdefs.h:2493
uint32_t warn_days
number of days, after which the user shall be warned about an upcoming password expiration,
Definition: gpsdefs.h:22825
supports peer state events (NTP_PEER_STATE::peer_evt_cnt, NTP_PEER_STATE::peer_rec_evt) ...
Definition: gpsdefs.h:17352
uint32_t shape
selected signal shape, see MBG_GPIO_SIGNAL_SHAPES
Definition: gpsdefs.h:7962
Network host or domain name.
Definition: gpsdefs.h:11986
uint32_t reserved
Reserved, currently always 0.
Definition: gpsdefs.h:10320
uint32_t flags
reserved, currently always 0
Definition: gpsdefs.h:7811
IRIG msg could be decoded.
Definition: gpsdefs.h:5221
uint16_t supp_op_modes
See MBG_IO_PORT_OP_MODE_MSKS.
Definition: gpsdefs.h:20812
PLL is locked.
Definition: gpsdefs.h:17604
uint16_t reserved_2
Reserved, currently 0.
Definition: gpsdefs.h:12268
uint32_t supp_flags
indicates which flags are supported for SHS_SETTINGS::flags, see SHS_FLAG_MASKS
Definition: gpsdefs.h:17729
MBG_GPIO_VIDEO_SYNC_OUT_SUPP video_sync_out
if MBG_GPIO_SETTINGS::type is MBG_GPIO_TYPE_VIDEO_SYNC_OUT
Definition: gpsdefs.h:9218
IEC/IEEE FDIS 61850-9-3 Power Utility profile extension.
Definition: gpsdefs.h:13602
uint8_t domain_number
the PTP clock domain number, 0:3
Definition: gpsdefs.h:13204
MBG_IO_PORT_MSKS
Definition: gpsdefs.h:20340
uint16_t reserved
reserved, currently always 0
Definition: gpsdefs.h:17644
the number of known bits
Definition: gpsdefs.h:6620
AssistNow Offline orbit is used.
Definition: gpsdefs.h:10954
NANO_TIME bias
time bias, e.g. path delay
Definition: gpsdefs.h:6724
see PTP_NW_PROT_CONTROL_NET
Definition: gpsdefs.h:12667
see MBG_GPIO_STUDIO_CLOCK_SCALE_1_DIV_4
Definition: gpsdefs.h:8832
uint16_t idx
index of the sensor of this type
Definition: gpsdefs.h:9840
Definition: myutil.h:117
A buffer used to read raw IRIG data bits from an IRIG receiver.
Definition: gpsdefs.h:5423
10000baseR FEC (forward error correction) (10 GBit/s)
Definition: gpsdefs.h:11432
uint32_t reserved_7
Definition: gpsdefs.h:19859
int16_t valid
flag data are valid
Definition: gpsdefs.h:18439
Status information on a specific GPIO port.
Definition: gpsdefs.h:9317
IRIG receiver delay compensation.
Definition: gpsdefs.h:5139
transmission via multicast, point to multipoint
Definition: gpsdefs.h:15145
uint32_t reserved_4
Reserved, currently 0.
Definition: gpsdefs.h:12281
see NTP_RESTR_FLAG_NOMODIFY
Definition: gpsdefs.h:15352
uint32_t td_scale
scale for MBG_IMS_FDM_LIMITS::td_neg_limit and MBG_IMS_FDM_LIMITS::td_pos_limit
Definition: gpsdefs.h:10126
MBG_SNMP_V3_SEC_LEVELS
Definition: gpsdefs.h:21552
number of known bits
Definition: gpsdefs.h:2484
uint8_t min_max
Maximum value for min.
Definition: gpsdefs.h:15454
uint16_t data_len
length of the data set appended to the header
Definition: gpsdefs.h:17643
modulated (G147 is undefined, SBS not supported with Gxxx)
Definition: gpsdefs.h:4554
see NTP_PEER_STATE_SUPP_ROOT_DELAY
Definition: gpsdefs.h:17381
see NTP_RESTR_FLAG_NOTRUST
Definition: gpsdefs.h:15357
broadcast association
Definition: gpsdefs.h:17128
uint16_t IOD
Issue-Of-Data code.
Definition: gpsdefs.h:699
uint32_t supp_flags_multicast
supported flags for multicast associations
Definition: gpsdefs.h:16314
Definition: gpsdefs.h:2735
uint32_t reserved_0
reserved, currently always 0
Definition: gpsdefs.h:9967
discarded by intersection algorithm
Definition: gpsdefs.h:17079
MBG_IO_PORT_SETTINGS settings
Definition: gpsdefs.h:20741
32 kHz base frequency
Definition: gpsdefs.h:8751
the user can be removed (should not be set for root)
Definition: gpsdefs.h:22789
20000baseMLD2 Full Duplex (20 GBit/s)
Definition: gpsdefs.h:11433
MBG_SNMP_V12_TRAP_INFO info
Definition: gpsdefs.h:21539
MBG_BAUD_RATE_MASKS
Bit masks associated with baud rates enumerated in MBG_BAUD_RATE_CODES.
Definition: gpsdefs.h:3309
uint8_t timeout
In seconds.
Definition: gpsdefs.h:21483
GPS ASCII message.
Definition: gpsdefs.h:18619
Ionospheric correction parameters incomplete.
Definition: gpsdefs.h:794
uint32_t hz
integral number [Hz]
Definition: gpsdefs.h:7752
see PTP_FLAG_LS_ANN
Definition: gpsdefs.h:13266
PTPv1 default dataset containing global information about the device.
Definition: gpsdefs.h:14581
IEEE 802.1AS profile extension.
Definition: gpsdefs.h:13601
SCU_CLK_INFO_TYPES
Definitions for SCU_STAT_INFO::clk0_info and SCU_STAT_INFO::clk1_info.
Definition: gpsdefs.h:10541
int32_t root_disp
[us] Total dispersion to the system peer of the NTP peer
Definition: gpsdefs.h:17424
uint32_t supp_peer_flags
supported NTP flags for peers, see NTP_FLAG_MASKS
Definition: gpsdefs.h:16273
Supports additional NTP configuration (i.e. via script)
Definition: gpsdefs.h:15159
uint32_t pols
Pols which are used by this IO port, only if conn_type has more than 1 variable pol.
Definition: gpsdefs.h:20818
MBG_SNMP_ACCESS_TYPES
Definition: gpsdefs.h:21401
uint32_t flags
Definition: gpsdefs.h:6288
uint8_t state
See MBG_SERVICE_STATE.
Definition: gpsdefs.h:23141
see V1_PARENT_STATS
Definition: gpsdefs.h:14657
synchronization loop
Definition: gpsdefs.h:17270
see V1_TPROP_LEAP_59
Definition: gpsdefs.h:14727
the user is disabled, because the password has expired
Definition: gpsdefs.h:22919
XMULTI_REF_ID id
time source identifier
Definition: gpsdefs.h:6860
uint16_t year
including century
Definition: gpsdefs.h:5557
MBG_DATABASE_INFO info
Definition: gpsdefs.h:23581
uint16_t HEALTH
an SV&#39;s 6 bit health code
Definition: gpsdefs.h:697
uint32_t reserved
reserved, currently always 0
Definition: gpsdefs.h:17702
supports reading raw IRIG input data (MBG_RAW_IRIG_DATA)
Definition: gpsdefs.h:2202
see MBG_EXT_SYS_INFO_BIT_CORE_MOD_REV
Definition: gpsdefs.h:19255
MBG_GPIO_SETTINGS settings
current settings
Definition: gpsdefs.h:9187
see BVAR_BIT_UTC_INVALID
Definition: gpsdefs.h:813
uint32_t numUcConn
Number of current Unicast client connections.
Definition: gpsdefs.h:14474
#define MBG_TAINTED_CFG_BYTES
Definition: gpsdefs.h:22266
MBG_EVT_LVLS
Enumeration of event severity levels.
Definition: gpsdefs.h:9713
uint8_t grandmaster_id
[PTP_POWER_PROFILE_GM_ID_MIN..PTP_POWER_PROFILE_GM_ID_MAX]
Definition: gpsdefs.h:13714
Current settings and general capabilities of a unicast master.
Definition: gpsdefs.h:14351
the number of known status flags
Definition: gpsdefs.h:7227
see XMR_HLDOVR_BIT_IN_TRANSITION
Definition: gpsdefs.h:7240
uint32_t announceMsgRx
Accepted Announce message Rx counter.
Definition: gpsdefs.h:14431
uint32_t flags
NTP flags, see NTP_FLAG_MASKS.
Definition: gpsdefs.h:16241
uint16_t n_supp_dns_srvr
max. number of supported DNS server addresses, using MBG_IP_ADDR_IDX records
Definition: gpsdefs.h:11874
10000baseT Full Duplex (10 GBit/s)
Definition: gpsdefs.h:11429
uint32_t MBG_TLV_UID
A data type used to hold a unique ID (UID) for a TLV transaction.
Definition: gpsdefs.h:18075
uint8_t type
Type of the route entry, see MBG_NET_INTF_ROUTE_TYPES.
Definition: gpsdefs.h:12266
MBG_COM_CFG_STATUS_BITS
Flag bits used to mark individual PORT_SETTINGS fields.
Definition: gpsdefs.h:3531
PTP_V1_PORT_DATASET_DATASET_FLAGS
PTPv1 port dataset flags.
Definition: gpsdefs.h:14761
NANO_TIME mean_path_delay
Definition: gpsdefs.h:13192
HEALTH health
health indication of transmitting SV [—]
Definition: gpsdefs.h:18441
MBG_NET_INTF_ROUTE_INFO info
see MBG_NET_INTF_ROUTE_INFO
Definition: gpsdefs.h:12347
uint32_t reserved_2
Reserved, currently always 0.
Definition: gpsdefs.h:12530
XBP_FEAT_MASKS
XBP feature masks used with XBP_LIMITS::features.
Definition: gpsdefs.h:17914
uint32_t flags
see PTP_V1_TIME_PROP_DATASET_FLAGS_MASKS
Definition: gpsdefs.h:14741
uint32_t supp_opt_ext
a bit mask of supported optional extensions, see PTP_OPT_EXT_MASKS
Definition: gpsdefs.h:13359
uint16_t reserved_1
Future use.
Definition: gpsdefs.h:16172
#define MBG_TAINTED_CFG_FLAG_BYTES
Definition: gpsdefs.h:22267
uint32_t TM_STATUS_EXT
Type of an extended TM status which is mainly used inside the firmware.
Definition: gpsdefs.h:2684
char MBG_HOSTNAME[256]
A buffer for a fully qualified domain name (FQDN) or a numeric IP address string. ...
Definition: gpsdefs.h:11152
Signal detected but unusable.
Definition: gpsdefs.h:10923
A structure initiating a TLV transfer.
Definition: gpsdefs.h:18348
uint32_t reserved_3
Future use.
Definition: gpsdefs.h:18381
uint8_t mode
Stratum level when no ref source available.
Definition: gpsdefs.h:16171
Number of legacy string modes.
Definition: gpsdefs.h:3965
uint8_t mode
LED mode, see MBG_LED_MODES.
Definition: gpsdefs.h:18861
The CPU&#39;s PLL watchdog.
Definition: gpsdefs.h:5230
synthesizer on, use with ENABLE_FLAGS::synth
Definition: gpsdefs.h:3171
disable 10 MHz output in state SHS_STATE_ERROR
Definition: gpsdefs.h:17797
uint32_t flags
See MBG_SYSLOG_FLAG_MSKS.
Definition: gpsdefs.h:22191
See MBG_IO_PORT_OP_MODE_DISABLED.
Definition: gpsdefs.h:20494
NTP_PEER_STATE peer_state
Peer state, see NTP_PEER_STATE.
Definition: gpsdefs.h:17542
Server settings of an NTP device.
Definition: gpsdefs.h:16413
IP4_ADDR netmask
the network mask
Definition: gpsdefs.h:11242
#define N_MULTI_REF_PRIO
Maximum number of input sources.
Definition: gpsdefs.h:6562
uint8_t timeAddressFlags
Definition: gpsdefs.h:13815
see MBG_GPIO_VIDEO_FORMAT_OFF
Definition: gpsdefs.h:8359
uint16_t idx
the priority level index (highest == 0), 0..XMULTI_REF_INSTANCES::n_xmr_settings-1 ...
Definition: gpsdefs.h:6887
#define FPGA_INFO_SIZE
Definition: gpsdefs.h:2507
IRIG input.
Definition: gpsdefs.h:6426
uint32_t freq_idx
fixed frequency index, see MBG_GPIO_FIXED_FREQS
Definition: gpsdefs.h:7961
XMULTI_REF_ID id
reference time source identifier
Definition: gpsdefs.h:6722
code G14x
Definition: gpsdefs.h:5155
uint32_t reserved2
reserved, currently always 0
Definition: gpsdefs.h:8696
Initial ramdisk.
Definition: gpsdefs.h:23227
never synchronized
Definition: gpsdefs.h:16633
uint8_t reserved_1
reserved, currently 0
Definition: gpsdefs.h:16236
see XMRIF_BIT_EXT_SRC_INFO_SUPP
Definition: gpsdefs.h:7107
uint16_t max_hostname_len
max. length of hostname including trailing 0; if set to 0, max. length is 256 (see rfc1123) ...
Definition: gpsdefs.h:11877
uint16_t supp_members
Flag field which MBG_DATABASE_MEMBER_MSKS are valid.
Definition: gpsdefs.h:23551
see PTP_FLAG_SLAVE_ONLY
Definition: gpsdefs.h:13263
see USER_CFG_FORCE_DISABLE_ON_EXP
Definition: gpsdefs.h:22808
see GPS_BIT_IRIG_FO_IN
Definition: gpsdefs.h:2494
external 10 MHz signal not available
Definition: gpsdefs.h:6618
int16_t yday
day of year, 1..365, or 366 in case of leap year
Definition: gpsdefs.h:2598
See MBG_DATABASE_MEMBER_PASSWORD.
Definition: gpsdefs.h:23538
int16_t utc_offset
UTC offset observed against TAI
Definition: gpsdefs.h:13209
Network interface address specific settings, flags and supported features.
Definition: gpsdefs.h:12222
MBG_SNMP_V12_TRAP_SETTINGS settings
Definition: gpsdefs.h:21523
uint32_t reserved_2
Reserved for future use, currently 0.
Definition: gpsdefs.h:19669
NTP_FLASH_STAT_FLAGS
Enumeration of NTP flash status bit codes.
Definition: gpsdefs.h:17257
uint16_t idx
0..MBG_LED_LIMITS::num_leds-1
Definition: gpsdefs.h:18885
uint32_t reserved_2
Reserved, currently 0.
Definition: gpsdefs.h:12227
MBG_EVENT_STR string
Definition: gpsdefs.h:21964
uint32_t reserved_1
Future use.
Definition: gpsdefs.h:15543
uint16_t reserved_1
Definition: gpsdefs.h:21792
uint8_t reserved2
reserved, currently always 0
Definition: gpsdefs.h:8582
see NTP_FLASH_STAT_PKT_STRATUM
Definition: gpsdefs.h:17291
MF/HF radio (WWV, etc.)
Definition: gpsdefs.h:16671
int16_t delay_req_intv
log2 of the delay request interval [s]
Definition: gpsdefs.h:13299
receive broadcast messages on all interfaces
Definition: gpsdefs.h:15149
User captures will be transferred on request only.
Definition: gpsdefs.h:12389
uint32_t shape
selected signal shape, see MBG_GPIO_SIGNAL_SHAPES
Definition: gpsdefs.h:7778
receive messages from the given multicast group
Definition: gpsdefs.h:15150
MBG_USER_SETTINGS settings
settings, see MBG_USER_SETTINGS
Definition: gpsdefs.h:22856
supply voltage in val/exp, output state in flags
Definition: gpsdefs.h:9891
uint16_t reserved_2
Definition: gpsdefs.h:23309
Configuration of a GPIO as BITS input module.
Definition: gpsdefs.h:8109
see STR_ON_REQ_SEC
Definition: gpsdefs.h:3783
uint8_t mode
string mode, see STR_MODES
Definition: gpsdefs.h:3510
UTC offset parameters incomplete
Definition: gpsdefs.h:793
MBG_DATABASE_SETTINGS settings
Definition: gpsdefs.h:23494
uint8_t reserved_1
Reserved, currently 0.
Definition: gpsdefs.h:12177
Automatically, when a capture event has occurred, COM1 only.
Definition: gpsdefs.h:3963
see MBG_GPIO_DIGITAL_AUDIO_TYPE_DARS
Definition: gpsdefs.h:8994
uint8_t remote_watchdog
counts down in XMR_HLDOVR_PRE_AUTONOMOUS mode
Definition: gpsdefs.h:7162
PTP_ANN_RCPT_TIMEOUT_LIMITS
Possible values for PTP_CFG_SETTINGS::ann_rcpt_timeout.
Definition: gpsdefs.h:13330
see MBG_GNSS_FLAG_HAS_SV_STATUS
Definition: gpsdefs.h:10739
uint32_t reserved_1
Reserved, currently 0.
Definition: gpsdefs.h:12226
uint16_t supp_settings_flags
Definition: gpsdefs.h:23562
uint32_t reserved0
reserved, currently always 0
Definition: gpsdefs.h:9049
Autokey protocol error.
Definition: gpsdefs.h:17267
force the association to assume truechimer status; always survive the selection and clustering algori...
Definition: gpsdefs.h:15143
MBG_GPIO_STUDIO_CLOCK_OUT_SUPP studio_clk_out
if MBG_GPIO_SETTINGS::type is MBG_GPIO_TYPE_STUDIO_CLOCK_OUT
Definition: gpsdefs.h:9219
uint16_t reserved_2
Reserved, currently 0.
Definition: gpsdefs.h:20428
Database(s) have been (re-)connected.
Definition: gpsdefs.h:9641
uint8_t release_candidate
Release candidate number (0 = final release)
Definition: gpsdefs.h:19423
supports clock wander, see NTP_SYS_STATE::clk_wander
Definition: gpsdefs.h:16807
MBG_NET_GLB_CFG_INFO_MASKS
Flag masks used with MBG_NET_GLB_CFG_INFO::feat_flags.
Definition: gpsdefs.h:11402
the port can only be slave
Definition: gpsdefs.h:13245
See MBG_LICENSE_PTPV1_MEMBER_MAX_RPS.
Definition: gpsdefs.h:19722
see NTP_PEER_STATE_SUPP_STD
Definition: gpsdefs.h:17376
uint32_t reserved_2
Future use.
Definition: gpsdefs.h:16194
MBG_IO_PORT_SRC_MSKS
Bit masks of Meinberg I/O port attitudes.
Definition: gpsdefs.h:20216
See NTP_GLB_STATS_FLAG_LOOPSTATS.
Definition: gpsdefs.h:15524
MBG_DATABASE_MEMBERS
Definition: gpsdefs.h:23521
MBG_SNMP_V3_SETTINGS settings
Definition: gpsdefs.h:21640
NTP supports restrictions.
Definition: gpsdefs.h:15152
48 kHz base frequency
Definition: gpsdefs.h:8753
see MBG_GPIO_VIDEO_TC_MODE_VITC
Definition: gpsdefs.h:8508
[R/-] if PTP_CFG_SUPP_MCAST_SLAVE_FLAG bit set, indicates if multicast slave role is supported ...
Definition: gpsdefs.h:13421
HAVEQUICK_FLAG_BITS
Known HaveQuick control flags.
Definition: gpsdefs.h:9503
PTP_CFG_SETTINGS settings
the current configuration
Definition: gpsdefs.h:13344
uint16_t clock_offset_scaled_log_variance
Definition: gpsdefs.h:13197
MBG_GPIO_VIDEO_OUT_FLAGS
Enumeration of flags used with video type GPIO outputs.
Definition: gpsdefs.h:8409
Current settings and capabilities of a HaveQuick input or output.
Definition: gpsdefs.h:9479
Enable port if sync only.
Definition: gpsdefs.h:20457
see XMR_STATS_FLAG_BIT_STEP_COMPENSATED
Definition: gpsdefs.h:7378
Indicate there are incremental update files.
Definition: gpsdefs.h:23221
See MBG_LICENSE_BASE_FLAG_SUPP_UPGRADE.
Definition: gpsdefs.h:19537
supports root delay to syspeer, see NTP_PEER_STATE::root_delay
Definition: gpsdefs.h:17355
Slot for switch card units.
Definition: gpsdefs.h:17971
UTC has been converted to local time according to TZDL settings
Definition: gpsdefs.h:2631
uint32_t reserved1
reserved, currently always 0
Definition: gpsdefs.h:9050
see MBG_BAUD_RATE_4800
Definition: gpsdefs.h:3315
MBG_FRAMING_STR_IDXS
Indices used to identify a parameter in the framing string.
Definition: gpsdefs.h:3197
MBG_HOSTNAME addr
Definition: gpsdefs.h:15407
uint32_t rx
overall Rx packet counter
Definition: gpsdefs.h:14422
PTP state changed to INITIALIZING.
Definition: gpsdefs.h:9627
uint16_t port
Protocol port.
Definition: gpsdefs.h:22190
uint8_t hash
See NTP_SYMM_KEY_HASHES.
Definition: gpsdefs.h:15895
see USER_CFG_FORCE_CHANGE_ON_WARN
Definition: gpsdefs.h:22807
GPS is in cold boot mode.
Definition: gpsdefs.h:6612
MULTI_REF_TYPES
Enumeration of all known types of reference time source.
Definition: gpsdefs.h:6415
uint32_t supp_str_types
bit mask of string types supp. by this port, i.e. bit 0 set if str_type[0] is supp.
Definition: gpsdefs.h:3623
int32_t pulse_shift
Definition: gpsdefs.h:5651
supports clock jitter, see NTP_SYS_STATE::clk_jitter
Definition: gpsdefs.h:16806
uint32_t flags_2
currently reserved, always 0
Definition: gpsdefs.h:11881
MBG_GPIO_BITS_OUT_FLAG_MASKS
Bit masks associated with MBG_GPIO_BITS_OUT_FLAGS.
Definition: gpsdefs.h:8284
see NTP_SYS_STATE_SUPP_SERVICE_STATE
Definition: gpsdefs.h:16834
see MBG_EXT_SYS_INFO_BIT_RELEASE_CANDIDATE
Definition: gpsdefs.h:19259
Reference source configuration settings.
Definition: gpsdefs.h:6720
uint8_t minpoll
Minimal polling interval for the system peer (mintc)
Definition: gpsdefs.h:16904
uint16_t MBG_EVT_CODE
Definition: gpsdefs.h:9555
uint8_t stratum
Current stratum level of the NTP peer.
Definition: gpsdefs.h:17419
uint8_t installed_fws
Currently installed firmwares.
Definition: gpsdefs.h:23184
uint16_t icode
IRIG signal code, see ICODE_RX_CODES and ICODE_TX_CODES.
Definition: gpsdefs.h:5001
TM_STATUS_EXT clk_status_2
status of second clock
Definition: gpsdefs.h:17751
uint16_t flags
reserved, currently always 0
Definition: gpsdefs.h:6591
see MBG_IMS_FDM_STATE_FLAG_BIT_FD_OVERFLOW
Definition: gpsdefs.h:10250
max. GPS satellite PRN number
Definition: gpsdefs.h:656
the number of defined features
Definition: gpsdefs.h:13572
double beta_3
Ionosph. Corr. Coeff. Beta 3 [sec/deg^3].
Definition: gpsdefs.h:18610
uint8_t reserved
Future use.
Definition: gpsdefs.h:15776
10baseT Half Duplex (10 MBit/s)
Definition: gpsdefs.h:11420
autonomous mode, XMR sources are selected automatically by the device
Definition: gpsdefs.h:7195
Database is a local file only.
Definition: gpsdefs.h:23509
1) MBG_TLV_TYPE_STR => Command line call as string
Definition: gpsdefs.h:18145
Almanac data used for orbit.
Definition: gpsdefs.h:10953
uint16_t reserved_0
reserved, currently always 0
Definition: gpsdefs.h:14240
see PTP_PRESETS_TELECOM
Definition: gpsdefs.h:13668
TAI, i.e. GPS time plus constant offset (see GPS_TAI_OFFSET)
Definition: gpsdefs.h:5471
enable HDB3 encoding (E1 mode only)
Definition: gpsdefs.h:8270
uint8_t reserved_1
Future use.
Definition: gpsdefs.h:21883
uint8_t num_symm_keys
number of configured symm keys
Definition: gpsdefs.h:15223
uint16_t SVNO
the number of an SV (Space Vehicle, i.e. satellite)
Definition: gpsdefs.h:696
see MBG_FRAMING_8E1
Definition: gpsdefs.h:3391
see XMRSF_BIT_IS_TRUSTED_SRC
Definition: gpsdefs.h:6789
uint32_t reserved_3
Reserved for future use, currently 0.
Definition: gpsdefs.h:19736
uint8_t service_state
Current state of the NTP service see MBG_NTP_SERVICE_STATES.
Definition: gpsdefs.h:16913
NANO_TIME precision
precision of the time source
Definition: gpsdefs.h:6725
ref. clock is GPS receiver
Definition: gpsdefs.h:10543
supports peer reach status, see NTP_PEER_STATE::peer_reach_stat
Definition: gpsdefs.h:17353
NTP_REFCLK_CFG_SETTINGS settings
See NTP_REFCLK_CFG_SETTINGS.
Definition: gpsdefs.h:15773
see MBG_GNSS_FLAG_EXCLUSIVE
Definition: gpsdefs.h:10736
DAC limit specs.
Definition: gpsdefs.h:9929
int8_t wday
day of week, 0..6 == Sun..Sat
Definition: gpsdefs.h:2599
uint16_t code
Version number, e.g. 0x0120 means v1.20.
Definition: gpsdefs.h:734
code A0xx
Definition: gpsdefs.h:5154
see NTP_REFCLK_TYPE_SHM
Definition: gpsdefs.h:15633
max. number of active WAAS satellites
Definition: gpsdefs.h:661
VLAN interface, assigned to physical interface.
Definition: gpsdefs.h:11769
Access control override bit.
Definition: gpsdefs.h:10509
uint16_t idx
0..MBG_NET_GLB_CFG_SETTINGS::num_intf_addr-1
Definition: gpsdefs.h:12206
20000baseKR2 Full Duplex (20 GBit/s)
Definition: gpsdefs.h:11434
the device is currently in holdover mode
Definition: gpsdefs.h:7223
int32_t fix_offset
constant time offset to be compensated [ns]
Definition: gpsdefs.h:14282
MBG_IO_PORT_CONN_TYPES
Port connector types.
Definition: gpsdefs.h:20239
uint8_t max_poll
maximal configurable NTP polling interval
Definition: gpsdefs.h:16364
TM_GPS_STATUS_BIT_MASKS
Status flag masks used with TM_GPS::status.
Definition: gpsdefs.h:2658
#define IP6_ADDR_BYTES
The number of bytes used for an IPv6 address.
Definition: gpsdefs.h:11056
uint32_t supp_flags
bit mask of supported flags, see MBG_OPT_FLAGS
Definition: gpsdefs.h:5345
MBG_LICENSE_PTPV2_MEMBER_MSKS
Bit masks of PTPV2 license specific members.
Definition: gpsdefs.h:19584
uint32_t reserved_1
currently reserved, always 0
Definition: gpsdefs.h:11878
uint32_t reserved
reserved, currently always 0
Definition: gpsdefs.h:6726
MBG_IO_PORT_ANT_MEMBERS
Supported members in ::MBG_IO_PORT_ANTENNA_INFO and ::MBG_IO_PORT_ANTENNA_SETTINGS.
Definition: gpsdefs.h:20559
uint32_t shape
selected signal shape, see MBG_GPIO_SIGNAL_SHAPES
Definition: gpsdefs.h:7840
number of known flag bits
Definition: gpsdefs.h:7092
Satellite receiver status information.
Definition: gpsdefs.h:10591
See MBG_DATABASE_INFO_FLAG_LOCAL_FILE.
Definition: gpsdefs.h:23517
uint32_t hw_id
hardware identification
Definition: gpsdefs.h:10446
uint16_t CFG
an SV&#39;s 4 bit configuration code
Definition: gpsdefs.h:698
QZSS, Quasi Zenith Satellite System.
Definition: gpsdefs.h:10631
MBG_GPIO_STUDIO_CLOCK_FLAG_MASKS
Bit masks associated with MBG_GPIO_STUDIO_CLOCK_FLAGS.
Definition: gpsdefs.h:8893
the number of known modes
Definition: gpsdefs.h:5879
NANO_TIME_64 t_sync
Last sync Time (reference time)
Definition: gpsdefs.h:10164
see NTP_FLASH_STAT_PKT_UNSYNC
Definition: gpsdefs.h:17288
MBG_IO_PORT_ANT_MEMBER_MSKS
Definition: gpsdefs.h:20573
[R/-] MBG_PTP_STATISTICS_INFO can be queried
Definition: gpsdefs.h:13432
uint32_t survey_in_pos_var
Definition: gpsdefs.h:18675
see MBG_GPIO_VIDEO_HD_FORMAT_720_P_50Hz
Definition: gpsdefs.h:8362
uint8_t maxpoll
Maximum polling interval, [log2 seconds], 0 if unused/unspecified.
Definition: gpsdefs.h:15691
uint8_t host_mode
NTP mode of the requesting host, see NTP_MODE_BITS.
Definition: gpsdefs.h:17435
supports IMS data structures
Definition: gpsdefs.h:2210
NTP_RESTR_FLAGS
Enumeration of supported NTP restriction flags.
Definition: gpsdefs.h:15314
uint32_t reserved_0
Reserved, currently always 0.
Definition: gpsdefs.h:12584
XMR_EXT_SRC_INFO info
Definition: gpsdefs.h:7298
double af1
+- Clock Correction Coefficient 1 [sec/sec]
Definition: gpsdefs.h:18503
SDH_NETWORK_OPTIONS
SDH network options.
Definition: gpsdefs.h:14118
uint32_t supp_flags_multicastclient
supported flags for multicast client associations
Definition: gpsdefs.h:16317
state of time limit error input
Definition: gpsdefs.h:10497
GPIO_SA_BITS_GROUPS
Minimum and maximum SA BITS groups.
Definition: gpsdefs.h:8093
Meinberg NTP implementation (mbgntp)
Definition: gpsdefs.h:16512
Supported options for a fixed frequency output.
Definition: gpsdefs.h:7987
T1_SSM_QLVL
T1 SSM only quality level (6 bit encoded)
Definition: gpsdefs.h:14057
WAAS, Wide Area Augmentation System.
Definition: gpsdefs.h:10629
number of defined delay mechanisms
Definition: gpsdefs.h:12770
NTP refclock configuration and supported refclock types.
Definition: gpsdefs.h:15771
Passive port in group, i.e. passive port of network group (i.e. SFP or RJ45)
Definition: gpsdefs.h:20515
MBG_SYSLOG_PROTOCOL_MSKS
Definition: gpsdefs.h:22142
String type index exceeds num supp by driver SW.
Definition: gpsdefs.h:3541
see PTP_NW_PROT_IEEE_802_3
Definition: gpsdefs.h:12665
uint32_t freq_max
maximum output frequency [Hz], see MBG_GPIO_FREQ_OUT_SETTINGS::freq
Definition: gpsdefs.h:7869
NTP_SYMM_KEY_SETTINGS settings
Definition: gpsdefs.h:15929
PTP_V1_TIME_PROP_DATASET_DATASET_FLAGS
PTPv1 time drop dataset flags.
Definition: gpsdefs.h:14712
min. GPS satellite PRN number
Definition: gpsdefs.h:655
MBG_LICENSE_NTP_MEMBERS
Bits used to define MBG_LICENSE_NTP_MEMBER_MSKS.
Definition: gpsdefs.h:19640
uint32_t flags
flags for encoder control etc., see MBG_GPIO_BITS_OUT_FLAG_MASKS
Definition: gpsdefs.h:8235
Software revision information.
Definition: gpsdefs.h:732
MBG_TLV_FEAT_TYPES
Enumeration of known TLV feature types.
Definition: gpsdefs.h:18124
see MBG_UCAP_NET_TRANSF_MODE_AUTO
Definition: gpsdefs.h:12404
going to become master
Definition: gpsdefs.h:12717
supports service state, see NTP_SYS_STATE::service_state
Definition: gpsdefs.h:16809
this is actually not used, see PTP_OPT_EXT_NONE
Definition: gpsdefs.h:13616
Studio clock output.
Definition: gpsdefs.h:7672
MBG_FW_UFU_INFO info
See MBG_FW_UFU_INFO.
Definition: gpsdefs.h:23327
HD horizontal sync.
Definition: gpsdefs.h:8614
MBG_IO_PORT_INFO info
Definition: gpsdefs.h:20865
uint8_t reserved_1
reserved, currently always 0
Definition: gpsdefs.h:11909
uint8_t avg_max
Maximum value for avg.
Definition: gpsdefs.h:15452
see GNSS_TYPE_GPS
Definition: gpsdefs.h:10643
A structure used to report XBP features and limits.
Definition: gpsdefs.h:17875
see MBG_GPIO_FIXED_FREQ_10MHz
Definition: gpsdefs.h:7926
static bias auto correction in case of step
Definition: gpsdefs.h:6772
uint16_t flags
currently always 0
Definition: gpsdefs.h:11968
see MBG_LED_COLOR_BLUE
Definition: gpsdefs.h:18830
MBG_LICENSE_TIME_MONITOR license
Definition: gpsdefs.h:19825
NTP supports driftfile.
Definition: gpsdefs.h:16073
double sqrt_A
Square Root of semi-major Axis [sqrt(m)].
Definition: gpsdefs.h:18449
See NTP_MISC_FLAG_DRIFTFILE.
Definition: gpsdefs.h:16088
Current settings and general capabilities of a specific serial port.
Definition: gpsdefs.h:3677
see PTP_OPT_EXT_8021AS
Definition: gpsdefs.h:13621
invalid time, e.g. if RTC battery bas been empty
Definition: gpsdefs.h:2637
56000baseSR4 Full Duplex (56 GBit/s)
Definition: gpsdefs.h:11442
uint8_t parent_stats
indicates whether the variance and change rate values are valid
Definition: gpsdefs.h:14927
uint32_t supp_delay_mech
a bit mask of supported delay mechanisms, see PTP_DELAY_MECH_MASKS
Definition: gpsdefs.h:13360
LGCY_STR_MODES
Deprecated codes for serial string modes.
Definition: gpsdefs.h:3958
uint8_t num_ports
Number of supported ports, see MBG_LNE_PORT_SETTINGS_IDX::idx and MBG_LNE_PORT_INFO_IDX::idx.
Definition: gpsdefs.h:18976
MBG_EVENT_SUPP_FLAG_MSKS
Definition: gpsdefs.h:21835
See MBG_IO_PORT_FLAG_NO_GRASP.
Definition: gpsdefs.h:20346
uint8_t time_source
source of time used by the grandmaster clock, see PTP_TIME_SOURCES
Definition: gpsdefs.h:15013
int8_t delta_tls
Current UTC offset to GPS system time [sec].
Definition: gpsdefs.h:18575
MBG_GPIO_STATUS status
status information
Definition: gpsdefs.h:9320
A structure to store the configuration of a serial port.
Definition: gpsdefs.h:3202
see V1_DFLT_CLK_FOLLOWUP_CAPABLE
Definition: gpsdefs.h:14567
uint16_t flags
reserved, don&#39;t use, currently always 0
Definition: gpsdefs.h:6820
Supports MBG_IO_PORT_ANT_INFO::gnss_info and MBG_IO_PORT_ANT_SETTINGS::gnss_settings.
Definition: gpsdefs.h:20562
#define MSG_TLV_MAX_VALUE_SIZE
Definition: gpsdefs.h:18366
A structure used to query MULTI_REF configuration parameters.
Definition: gpsdefs.h:6586
uint8_t leap_59
set, if the last minute of the current UTC day containts 59 seconds
Definition: gpsdefs.h:14988
uint8_t system
Operating system, see NTP_SYSTEMS.
Definition: gpsdefs.h:16888
uint8_t type
See MBG_DATABASE_TYPES.
Definition: gpsdefs.h:23547
uint32_t supp_framings
bit mask of framings supp. by this port, see MBG_FRAMING_MASKS
Definition: gpsdefs.h:3622
number of defined port states
Definition: gpsdefs.h:12722
POUT_INFO pout_info
Definition: gpsdefs.h:6354
ITU_LIMIT_MASKS
Enumeration of ITU limit masks.
Definition: gpsdefs.h:7512
control voltage in val/exp, lock state in flags
Definition: gpsdefs.h:9888
not enabled after power-up
Definition: gpsdefs.h:2879
uint8_t peer_poll
Peer NTP polling interval.
Definition: gpsdefs.h:17438
MBG_GPIO_FREQ_IN_SUPP freq_in
if MBG_GPIO_SETTINGS::type is MBG_GPIO_TYPE_FREQ_IN
Definition: gpsdefs.h:9212
10 MHz input frequency
Definition: gpsdefs.h:6423
see MBG_NET_INTF_LINK_PORT_TYPE_FIBRE
Definition: gpsdefs.h:11535
clock synchronized
Definition: gpsdefs.h:16729
uint32_t reserved_3
Definition: gpsdefs.h:19863
int16_t current_utc_offset
offset between TAI and UTC in seconds
Definition: gpsdefs.h:15011
PTP_TIME_INTERVAL mean_path_delay
current mean propagation time between master and slave, see PTP_TIME_INTERVAL
Definition: gpsdefs.h:14905
MBG_PTP_V2_DEFAULT_DATASET_FLAGS flags
flags field, see MBG_PTP_V2_DEFAULT_DATASET_FLAGS
Definition: gpsdefs.h:14867
An IPv6 address plus number of netmask bits.
Definition: gpsdefs.h:11074
DAC_VAL dac_val
Oscillator fine DAC value.
Definition: gpsdefs.h:10596
uint16_t num
Definition: gpsdefs.h:10367
DCLS.
Definition: gpsdefs.h:4549
remote select for output MUX (clk_1 = 0)
Definition: gpsdefs.h:10527
GBIT Link has a configruation fault (conflict with link partner.
Definition: gpsdefs.h:14200
normal synchronized state
Definition: gpsdefs.h:16630
see TM_BIT_LS_ANN_NEG
Definition: gpsdefs.h:2666
This model can be a management CPU for meinbergOS (i.e. v7)
Definition: gpsdefs.h:1321
NTP_PEER_SETTINGS peer_settings
Definition: gpsdefs.h:16396
MBG_EVENT_VALUE_IRANGE irange
Definition: gpsdefs.h:22014
uint32_t mode
current output mode, see MBG_IMS_FDM_OUTPUT_MODES
Definition: gpsdefs.h:9963
uint16_t n_cur_peers
current number of configured peers
Definition: gpsdefs.h:16300
double OMEGADOT
+- Rate of Right Ascension [rad/sec]
Definition: gpsdefs.h:18500
see WRN_WARM_BOOT
Definition: gpsdefs.h:6634
double M0
+- Mean Anomaly at Ref. Time [rad]
Definition: gpsdefs.h:18451
see MBG_GPIO_STUDIO_CLOCK_SCALE_32
Definition: gpsdefs.h:8839
associated outputs off until synchronized
Definition: gpsdefs.h:3166
uint8_t flags
reserved, currently 0
Definition: gpsdefs.h:5592
uint8_t time_traceable
set, if timescale and utc offset are traceable to a primary reference
Definition: gpsdefs.h:14991
uint8_t pt_idx
index of the port types (e.g. 0 for PPO0, 1 for PPO1, ...)
Definition: gpsdefs.h:20979
see NTP_RESTR_FLAG_NOQUERY
Definition: gpsdefs.h:15353
NTP Unicast Server.
Definition: gpsdefs.h:12939
unreachable or nonselect
Definition: gpsdefs.h:17271
uint32_t supp_flags
supported NTP flags, see NTP_FLAG_MASKS
Definition: gpsdefs.h:16447
uint8_t dflt_clk_class_sync_warm
Definition: gpsdefs.h:13292
uint32_t supp_codes
see ICODE_TX_MASKS and ICODE_RX_MASKS
Definition: gpsdefs.h:5057
see NTP_RESTR_FLAG_LOWPRIOTRAP
Definition: gpsdefs.h:15350
uint16_t pulses
EF_OFF or EF_PULSES_BOTH
Definition: gpsdefs.h:3145
uint8_t value_type
See MBG_EVENT_VALUE_TYPES.
Definition: gpsdefs.h:21879
see MBG_NET_INTF_LINK_PORT_TYPE_BNC
Definition: gpsdefs.h:11536
DCLS (G003 is undefined, SBS not supported with Gxxx)
Definition: gpsdefs.h:4543
uint8_t color
LED color, see MBG_LED_COLORS.
Definition: gpsdefs.h:18862
Flags structure for the PTPv2 time properties dataset.
Definition: gpsdefs.h:14985
see NTP_PEER_STATE_SUPP_ROOT_DISP
Definition: gpsdefs.h:17382
XMR_QL
::TODO
Definition: gpsdefs.h:6914
Supports extended routing (multiple default gateways, routing tables)
Definition: gpsdefs.h:11392
MBG_LICENSE_NTP_MEMBER_MSKS
Bit masks of NTP license specific members.
Definition: gpsdefs.h:19654
see PTP_ROLE_MULTICAST_MASTER
Definition: gpsdefs.h:12966
see MBG_GPIO_CFG_LIMIT_FLAG_BIT_STATUS_SUPP
Definition: gpsdefs.h:7648
struct NTP_PEER_STATE_IDX NTP_REFCLK_STATE_IDX
uint16_t idx
0..RECEIVER_INFO::n_prg_out-1
Definition: gpsdefs.h:6251
port supports binary protocol at high speed, see MBG_DEFAULT_BAUDRATE_HS
Definition: gpsdefs.h:3649
PTP_ROLES
An enumeration of roles which can be taken by a PTP node.
Definition: gpsdefs.h:12931
Framing not supp by given port.
Definition: gpsdefs.h:3538
MBG_IO_PORT_SHAPE_LEVELS
Enumeration of known signal shapes/levels.
Definition: gpsdefs.h:20374
uint32_t supp_flags
supported flags, see MBG_GPIO_VIDEO_OUT_FLAG_MASKS
Definition: gpsdefs.h:8576
LLA_FIELDS
Sequence and number of components of a geographic position.
Definition: gpsdefs.h:2754
Device does not have a label.
Definition: gpsdefs.h:20334
double LLA[N_LLA]
A geographic position based on latitude, longitude, and altitude.
Definition: gpsdefs.h:2764
uint32_t revision
Main revision information.
Definition: gpsdefs.h:23305
GPS_FEATURE_BITS
Enumeration of device features flags reported in RI_FEATURES.
Definition: gpsdefs.h:2181
Searching signal.
Definition: gpsdefs.h:10921
MBG_GPIO_BITS_OUT_SETTINGS bits_out
if MBG_GPIO_SETTINGS::type is MBG_GPIO_TYPE_BITS_OUT
Definition: gpsdefs.h:9144
u-blox GNSS module without Galileo support
Definition: gpsdefs.h:19305
PTP_TIME_INTERVAL peer_mean_path_delay
estimate of the current one-way propagation delay on the link, only valid if P2P is used...
Definition: gpsdefs.h:15040
see NTP_PEER_STATE_SUPP_EVENTS
Definition: gpsdefs.h:17378
int16_t valid
Flag indicating UTC parameters are valid.
Definition: gpsdefs.h:18567
see TM_BIT_LS_ENB
Definition: gpsdefs.h:2665
MBG_GPIO_VIDEO_SYNC_TYPE_MASKS
Bit masks associated with MBG_GPIO_VIDEO_SYNC_TYPES.
Definition: gpsdefs.h:8630
PTPv1 UUID structure used in MBG_PTP_V1_DEFAULT_DATASET.
Definition: gpsdefs.h:14522
MBG_DAC_SPECS dac_specs
DAC specific limits.
Definition: gpsdefs.h:10049
Currently no link.
Definition: gpsdefs.h:14202
See MBG_SVC_CAN_EDIT_CMDLINE.
Definition: gpsdefs.h:23099
NTP trusted key info.
Definition: gpsdefs.h:16028
Settings, features and flags for receivers of user captures via network.
Definition: gpsdefs.h:12580
modulated
Definition: gpsdefs.h:4546
DCLS only.
Definition: gpsdefs.h:4117
MBG_LICENSE_PTPV2_MEMBERS
Bits used to define MBG_LICENSE_PTPV2_MEMBER_MSKS.
Definition: gpsdefs.h:19569
see V1_PARENT_UTC_REASONABLE
Definition: gpsdefs.h:14658
uint16_t n_levels
supported priority levels, 0..N_MULTI_REF_PRIO-1
Definition: gpsdefs.h:6590
MBG_UCAP_NET_GLB_SETTINGS settings
see MBG_UCAP_NET_GLB_SETTINGS
Definition: gpsdefs.h:12495
LNE_PORT_FLAG_MASKS
LNE port flag bit masks.
Definition: gpsdefs.h:19154
uint16_t reserved_8
Reserved, currently always 0.
Definition: gpsdefs.h:17457
NANO_TIME_64 t_plt
Current power line time.
Definition: gpsdefs.h:10163
uint16_t type
See MBG_EVENT_TYPES.
Definition: gpsdefs.h:21875
see V1_PARENT_GM_PREFERRED
Definition: gpsdefs.h:14659
rate exceeded (kiss code RATE)
Definition: gpsdefs.h:17191
see XMRIF_BIT_GNSS_BIAS_SUPP
Definition: gpsdefs.h:7108
IFLAGS_BITS
Flag bits used to define IFLAGS_BIT_MASKS.
Definition: gpsdefs.h:5020
MBG_DATABASE_SETTINGS::host is valid
Definition: gpsdefs.h:23527
Slot for all other input/output cards.
Definition: gpsdefs.h:17975
uint32_t idx
Range 0..MBG_GNSS_MODE_INFO::n_sv_status-1.
Definition: gpsdefs.h:10970
See MBG_IO_PORT_OP_MODE_ENABLED.
Definition: gpsdefs.h:20498
modulated
Definition: gpsdefs.h:4538
MBG_PTP_V2_PARENT_DATASET_FLAGS flags
Flags field, see MBG_PTP_V2_PARENT_DATASET_FLAGS.
Definition: gpsdefs.h:14950
see MBG_NET_INTF_LINK_OPT_CAN_NTP_HW_TS
Definition: gpsdefs.h:11681
see MBG_TIME_SCALE_GPS
Definition: gpsdefs.h:5483
uint16_t idx
0..MBG_LED_LIMITS::num_leds-1
Definition: gpsdefs.h:19118
MBG_GPIO_FLAG_MASKS
Bit masks associated with MBG_GPIO_FLAGS.
Definition: gpsdefs.h:9117
int32_t delta_t
clock offs at reconn. time in 1/RECEIVER_INFO::ticks_per_sec units
Definition: gpsdefs.h:3105
Configuration settings of an IRIG input or output.
Definition: gpsdefs.h:4999
uint16_t id
Configurable key id (1..65534)
Definition: gpsdefs.h:15894
int16_t ann_intv_min
log2 of minimum announce interval [s]
Definition: gpsdefs.h:13352
uint32_t reserved_5
reserved, currently 0
Definition: gpsdefs.h:16320
uint32_t pDlyFollowUpPerSecTx
PDelay Follow-Up message Tx counter.
Definition: gpsdefs.h:14462
see MBG_GPIO_VIDEO_SD_FORMAT_NTSC
Definition: gpsdefs.h:8360
number of known bits
Definition: gpsdefs.h:5024
Definition: gpsdefs.h:2735
uint32_t reserved_9
Reserved, currently always 0.
Definition: gpsdefs.h:17459
SHS_FLAG_BITS
SHS flag bits.
Definition: gpsdefs.h:17793
uint32_t supp_fmts
bit mask of supported formats, see MBG_GPIO_BITS_FORMAT_MASKS
Definition: gpsdefs.h:8314
int16_t ann_intv_max
log2 of maximum announce interval [s]
Definition: gpsdefs.h:14237
device supports user configuration, otherwise users are static
Definition: gpsdefs.h:22712
MBG_DATABASE_SETTINGS_FLAGS
Definition: gpsdefs.h:23443
see PTP_FEAT_SYNCE_EXT_MUX
Definition: gpsdefs.h:13584
MBG_IO_PORT_OP_MODE_BITS
Port Operation Bits.
Definition: gpsdefs.h:20452
PTP_V1_PORT_DATASET_FLAGS_MASKS
PTPv1 port dataset flag masks used with MBG_PTP_V1_PORT_DATASET::flags.
Definition: gpsdefs.h:14773
MBG_GPIO_VIDEO_EPOCH_MASKS
Bit masks associated with MBG_GPIO_VIDEO_EPOCHS.
Definition: gpsdefs.h:8460
NANO_TIME last_sigma
standard deviation (sigma) of prev. interval
Definition: gpsdefs.h:7325
not yet synchronized
Definition: gpsdefs.h:16668
MBG_NET_GLB_CFG_SETTINGS glb_settings
Definition: gpsdefs.h:11871
uint32_t dlyRespMsgPerSecTx
Delay response message Tx counter.
Definition: gpsdefs.h:14450
Network interface route specific settings.
Definition: gpsdefs.h:12264
number of defined BVAR_STAT bits
Definition: gpsdefs.h:796
General info to be read from an LNE device.
Definition: gpsdefs.h:18974
see MBG_GPIO_FIXED_FREQ_1544kHz
Definition: gpsdefs.h:7923
#define MBG_MAX_USER_PASSWORD_LEN
Definition: gpsdefs.h:22815
ITU-T G.8275.2 profile extension.
Definition: gpsdefs.h:13603
uint32_t last_changed
Unix timestamp when this event state has been changed.
Definition: gpsdefs.h:22064
Flags structure for the PTPv2 parent dataset.
Definition: gpsdefs.h:14925
only if PTP_MSK_OPT_EXT_C37238_2017 is set
Definition: gpsdefs.h:13652
GPS_PLATFORMS
Definition: gpsdefs.h:18631
uint8_t n_prg_out
number of programmable pulse outputs
Definition: gpsdefs.h:889
standard GPS
Definition: gpsdefs.h:6422
see MBG_BAUD_RATE_460800
Definition: gpsdefs.h:3322
MBG_NET_INTF_LINK_SPEED_MODES
Network interface link speed mode enumeration.
Definition: gpsdefs.h:11417
see NTP_FLASH_STAT_PKT_CRYPTO
Definition: gpsdefs.h:17294
Supports TTM requests via GPS_TIME command.
Definition: gpsdefs.h:2355
disable serial output on error
Definition: gpsdefs.h:10523
uint32_t dlyReqMsgPerSecTx
Delay request message Tx counter.
Definition: gpsdefs.h:14446
ANT_STATUS_CODES
Status code used with ANT_INFO::status.
Definition: gpsdefs.h:3122
uint8_t type
See NTP_REFCLK_TYPES.
Definition: gpsdefs.h:15683
see GBIT_LINK_COPPER_PREFER_SLAVE
Definition: gpsdefs.h:14185
uint16_t reserved_3
Definition: gpsdefs.h:14529
number of defined flag bits
Definition: gpsdefs.h:11330
RECEIVER_INFO_FLAG_MASKS
Bit masks to be used with RECEIVER_INFO::flags.
Definition: gpsdefs.h:2491
uint32_t gid
group id
Definition: gpsdefs.h:22878
File containing firmware version.
Definition: gpsdefs.h:23228
uint8_t pos_col
Column position of this port.
Definition: gpsdefs.h:20815
Query MBG_NET_INTF_ADDR_INFO by its index.
Definition: gpsdefs.h:12244
uint32_t syncMsgPerSecRx
Accepted Sync message Rx counter.
Definition: gpsdefs.h:14436
see MBG_GPIO_STUDIO_CLOCK_BASE_FREQ_32KHZ
Definition: gpsdefs.h:8768
XMULTI_REF_INFO info
ref source configuration and capabilities
Definition: gpsdefs.h:6842
leap armed from server LI code
Definition: gpsdefs.h:17193
uint8_t reserved_0
reserved, currently unused and always 0
Definition: gpsdefs.h:9295
discarded by the cluster algorithm
Definition: gpsdefs.h:17081
Current settings and general capabilities of an LED, plus index.
Definition: gpsdefs.h:18936
see POUT_BIT_SUPP_IF_SYNC_ONLY, POUT_IF_SYNC_ONLY
Definition: gpsdefs.h:6331
40000baseSR4 Full Duplex (40 GBit/s)
Definition: gpsdefs.h:11438
[R/-] Hardware supports Synchronous Ethernet Out
Definition: gpsdefs.h:13428
uint16_t reserved_3
Reserved, currently always 0.
Definition: gpsdefs.h:17421
int8_t nxt_prio
next priority level after holdover, 0..XMULTI_REF_INSTANCES::n_xmr_settings, or XMR_PRIO_LVL_UNSPEC ...
Definition: gpsdefs.h:7161
See MBG_DATABASE_SETTINGS_FLAG_SAVE_PERSIST.
Definition: gpsdefs.h:23454
#define MBG_IFNAMSIZ
The maximum length of an interface name.
Definition: gpsdefs.h:11168
MBG_LED_MODES
Possible modes of LEDs.
Definition: gpsdefs.h:18754
uint32_t num_recvs
Number of configured network receivers, see MBG_UCAP_NET_RECV_INFO_IDX.
Definition: gpsdefs.h:12468
MBG_NET_GLB_CFG_INFO_FLAGS
Feature flag bits used to define MBG_NET_GLB_CFG_INFO_MASKS.
Definition: gpsdefs.h:11387
Supports user management, see User Management.
Definition: gpsdefs.h:2362
has DCF77 compatible time mark output
Definition: gpsdefs.h:2186
uint8_t flags
reserved, currently always 0
Definition: gpsdefs.h:2893
uint32_t reserved_4
Definition: gpsdefs.h:19862
MBG_FRAMING_CODES
Enumeration of all known serial port framings.
Definition: gpsdefs.h:3334
see NTP_RESTR_FLAG_IPV4
Definition: gpsdefs.h:15360
IP4_ADDR gateway
the default gateway
Definition: gpsdefs.h:11244
HAVEQUICK_FLAG_MASKS
Bit masks associated with HaveQuick control flags.
Definition: gpsdefs.h:9519
uint32_t reserved_3
Reserved for future use, currently 0.
Definition: gpsdefs.h:19670
PTP_NW_PROTS
Enumeration of protocols possibly used with PTP.
Definition: gpsdefs.h:12642
uint32_t gnss_set
bit mask of currently used GNSS systems, see MBG_GNSS_TYPE_MASKS
Definition: gpsdefs.h:10679
uint32_t supp_types
Supported restriction types, see NTP_RESTR_TYPE_MSKS.
Definition: gpsdefs.h:15378
int16_t handshake
handshake mode, yet only HS_NONE supported
Definition: gpsdefs.h:3206
100baseT Half Duplex (100 MBit/s)
Definition: gpsdefs.h:11422
LAN_IF_TYPES
Codes used with LAN_IF_INFO::type.
Definition: gpsdefs.h:11301
output is enabled
Definition: gpsdefs.h:9908
T_GPS tt
time of transmission
Definition: gpsdefs.h:18445
uint32_t timestamp
Definition: gpsdefs.h:7423
uint32_t tick
fractions of a second, 1/RECEIVER_INFO::ticks_per_sec units
Definition: gpsdefs.h:2567
see NTP_SYS_STATE_SUPP_EVENTS
Definition: gpsdefs.h:16825
uint32_t reserved_3
Future use.
Definition: gpsdefs.h:15703
see NTP_RESTR_TYPE_SOURCE
Definition: gpsdefs.h:15300
uint32_t reserved
reserved, currently always 0
Definition: gpsdefs.h:7841
the number of known codes
Definition: gpsdefs.h:4556
uint8_t port_state
see MBG_GPIO_PORT_STATES
Definition: gpsdefs.h:9294
no input signal
Definition: gpsdefs.h:6948
Configuration settings for a single LNE port, plus index.
Definition: gpsdefs.h:19061
see MBG_BAUD_RATE_2400
Definition: gpsdefs.h:3314
A structure to define on/off cycle times.
Definition: gpsdefs.h:5611
uint32_t reserved
reserved, currently always 0
Definition: gpsdefs.h:9795
uint32_t reserved3
reserved, currently always 0
Definition: gpsdefs.h:8697
Configuration settings for a single LED, plus index.
Definition: gpsdefs.h:18883
transmisson automatically if second changes, but carriage return (0x13) on time
Definition: gpsdefs.h:3764
A HaveQuick signal as configured in HAVEQUICK_SETTINGS::format.
Definition: gpsdefs.h:5874
TLV header structure containing information on current TLV transaction.
Definition: gpsdefs.h:18371
see POUT_BIT_SUPP_PULSE_SHIFT, POUT_DATA::pulse_shift
Definition: gpsdefs.h:6335
uint32_t flags
XBP flags, currently not used.
Definition: gpsdefs.h:17878
uint8_t reserved0
reserved, currently always 0
Definition: gpsdefs.h:8581
uint32_t revision
Main revision information.
Definition: gpsdefs.h:23266
LED shows red light.
Definition: gpsdefs.h:21079
See MBG_IO_PORT_FLAG_FRONT_PORTS.
Definition: gpsdefs.h:20343
Other orbit information is used.
Definition: gpsdefs.h:10958
uint32_t core_mod_rev
Definition: gpsdefs.h:19418
double omega
+- Argument of Perigee [rad]
Definition: gpsdefs.h:18498
uint32_t flags
flags, see MBG_USER_STAT_FLAG_MASKS
Definition: gpsdefs.h:22938
MBG_TIME t
time to switch
Definition: gpsdefs.h:5590
uint16_t ufu_idx
See MBG_FW_UFU_FLASH_CMD_DEVICE_UFU.
Definition: gpsdefs.h:23378
uint16_t idx
Index for several sets of the same type.
Definition: gpsdefs.h:17642
see WRN_ANT_DISCONN
Definition: gpsdefs.h:6635
XMR_HOLDOVER_STATUS_FLAG_BITS
XMR holdover status flag bits.
Definition: gpsdefs.h:7221
uint32_t supp_members
See MBG_LICENSE_PTPV1_MEMBER_MSKS.
Definition: gpsdefs.h:19732
Other orbit information is used.
Definition: gpsdefs.h:10956
see USER_CFG_MULTI_SESSION
Definition: gpsdefs.h:22806
PTP_CLOCK_ID gm_clock_id
use clock ID of master port, or PTP_CLOCK_ID_WILDCARD
Definition: gpsdefs.h:14277
uint16_t triggers
See MBG_MONITORING_TYPE_MSKS if set in MBG_MONITORING_LIMITS::supp_types.
Definition: gpsdefs.h:21790
uint32_t features
Mask of XBP features, see XBP_FEAT_MASKS.
Definition: gpsdefs.h:17877
no server found (ntpdate mode)
Definition: gpsdefs.h:17190
uint32_t reserved2
reserved, currently always 0
Definition: gpsdefs.h:9051
see MBG_NET_GLB_SUPP_ADD_CONF
Definition: gpsdefs.h:11406
uint8_t shs_state
see SHS_STATES
Definition: gpsdefs.h:17752
MBG_GPIO_FIXED_FREQ_OUT_SETTINGS ff_out
if MBG_GPIO_SETTINGS::type is MBG_GPIO_TYPE_FIXED_FREQ_OUT
Definition: gpsdefs.h:9142
see SMPTE_GPS_EPOCH_1980
Definition: gpsdefs.h:8465
See MBG_DATABASE_MEMBER_PORT.
Definition: gpsdefs.h:23536
MBG_USER_CHANNEL_BUF supp_lvl_channels
supported channels for external users
Definition: gpsdefs.h:22757
uint16_t format
see HAVEQUICK_FORMATS
Definition: gpsdefs.h:9458
uint32_t reserved_5
Reserved, currently 0.
Definition: gpsdefs.h:12282
see MBG_UCAP_NET_TRANSF_PROTO_UDP
Definition: gpsdefs.h:12432
Kernel device tree.
Definition: gpsdefs.h:23225
MBG_GPIO_BITS_IN_SUPP bits_in
if MBG_GPIO_SETTINGS::type is MBG_GPIO_TYPE_BITS_IN
Definition: gpsdefs.h:9215
See MBG_IO_PORT_OP_MODE_IF_SYNC_ONLY.
Definition: gpsdefs.h:20496
uint32_t reserved_1
reserved, currently always 0
Definition: gpsdefs.h:9462
MBG_IMS_FDM_OUTPUT_MODE_MASKS
Bit masks used with MBG_IMS_FDM_OUTPUT_STATE::mode.
Definition: gpsdefs.h:10103
Detailed GNSS satellite status.
Definition: gpsdefs.h:10809
uint32_t reserved
reserved, currently always 0
Definition: gpsdefs.h:7991
MBG_UCAP_NET_RECV_SETTINGS settings
see MBG_UCAP_NET_RECV_SETTINGS
Definition: gpsdefs.h:12563
MBG_USER_CFG_FLAGS
Definition: gpsdefs.h:22786
uint32_t n_supp_levels
supported number of user levels
Definition: gpsdefs.h:22754
POUT_SETTINGS pout_settings
Definition: gpsdefs.h:6283
uint32_t reserved_4
Future use.
Definition: gpsdefs.h:15953
String mode not supp by given port and string type.
Definition: gpsdefs.h:3546
uint32_t MBG_IRIG_CTRL_BITS
Bit coded return type for PCPS_GET_IRIG_CTRL_BITS.
Definition: gpsdefs.h:5392
See MBG_FW_FILE_KERNEL_DTB.
Definition: gpsdefs.h:23256
int16_t pr_residual
Pseudo range residual [m].
Definition: gpsdefs.h:10817
uint8_t max_v12_settings
Only valid if MBG_SNMP_GLB_INFO::supp_versions contains MBG_SNMP_VERSION_MSK_V1 or MBG_SNMP_VERSION_M...
Definition: gpsdefs.h:21381
see NTP_SYS_STATE_SUPP_PRECISION
Definition: gpsdefs.h:16826
No valid receiver position available.
Definition: gpsdefs.h:795
uint16_t reserved_2
Reserved, currently always 0.
Definition: gpsdefs.h:17414
SD horizontal sync.
Definition: gpsdefs.h:8610
uint16_t ver_code
version number (hex)
Definition: gpsdefs.h:11278
see USER_STAT_PASSWORD_EXP
Definition: gpsdefs.h:22929
uint32_t flags
reserved, currently 0
Definition: gpsdefs.h:10474
has PTP support
Definition: gpsdefs.h:2199
uint16_t dest_port
receiver destination port, 162 by default
Definition: gpsdefs.h:21491
see MBG_EXT_SYS_INFO_BIT_OS_REV
Definition: gpsdefs.h:19253
Supports I/O port structures, see IO Port API.
Definition: gpsdefs.h:2356
uint32_t csc_limit
max. cycle slip [1/1000 cycle units], see MBG_GPIO_FREQ_IN_SUPP::csc_limit_max
Definition: gpsdefs.h:7777
MBG_HOSTNAME hostname
Definition: gpsdefs.h:16360
SMPTE274M-7 1080i at 59.94 Hz.
Definition: gpsdefs.h:8343
uint32_t reserved_1
reserved, currently always 0
Definition: gpsdefs.h:8240
MBG_LED_SETTINGS settings
LED settings.
Definition: gpsdefs.h:18886
An XBP address specifier.
Definition: gpsdefs.h:17861
int16_t sync_intv_min
log2 of minimum sync interval [s]
Definition: gpsdefs.h:13350
See MBG_DATABASE_MEMBER_USER.
Definition: gpsdefs.h:23537
uint8_t reserved_1
Reserved for future use, currently 0.
Definition: gpsdefs.h:19549
see PTP_ROLE_BOTH_MASTER
Definition: gpsdefs.h:12969
uint32_t format
signal format, see MBG_GPIO_BITS_FORMATS
Definition: gpsdefs.h:8234
PORT_SETTINGS port_settings
current configuration of the port
Definition: gpsdefs.h:3620
PTP_V1_PARENT_DATASET_FLAGS
PTPv1 parent dataset flags.
Definition: gpsdefs.h:14636
uint32_t flags
idx bit set if mtie[idx] is valid
Definition: gpsdefs.h:7424
MBG_NET_INTF_LINK_PORT_TYPES
Network interface link port types.
Definition: gpsdefs.h:11512
uint32_t reserved_2
Reserved, currently always 0.
Definition: gpsdefs.h:12471
supports configurable time scale (UTC, TAI, GPS, ...)
Definition: gpsdefs.h:2197
uint16_t MULTI_REF_STATUS
A data type used to query MULTI_REF status information.
Definition: gpsdefs.h:6601
uint32_t supp_srcs
See MBG_IO_PORT_SRC_MSKS.
Definition: gpsdefs.h:20982
Frequency deviation overflow occurred.
Definition: gpsdefs.h:10235
int16_t ann_intv_min
log2 of minimum announce interval [s]
Definition: gpsdefs.h:14236
uint16_t idx
the priority level index (highest == 0), 0..XMULTI_REF_INSTANCES::n_xmr_settings-1 ...
Definition: gpsdefs.h:7405
see HQ_FLAG_TX_GEN_LOCAL_TIME
Definition: gpsdefs.h:9521
Specific output settings and limits, plus index.
Definition: gpsdefs.h:10066
see GNSS_TYPE_EGNOS
Definition: gpsdefs.h:10648
uint8_t reserved_1
reserved, currently 0
Definition: gpsdefs.h:16304
GPIO_SSM_VALS
Minimum and maximum known SSM values.
Definition: gpsdefs.h:8064
uint8_t version
See MBG_SNMP_VERSIONS.
Definition: gpsdefs.h:21419
supports standard values of NTP_SYS_STATE, all fields except below and reserved
Definition: gpsdefs.h:16799
XMR source provides XMR_STATS.
Definition: gpsdefs.h:7253
MBG_GPIO_BITS_ERR_MASKS
Bit masks associated with BITS input error conditions.
Definition: gpsdefs.h:8192
GNSS_SVNOS
GNSS satellite numbers.
Definition: gpsdefs.h:653
uint32_t defaultSystemFrameRateDenum
Definition: gpsdefs.h:13805
MBG_EVENT_TYPES
Definition: gpsdefs.h:21753
uint32_t max
max number of log entries which can be saved
Definition: gpsdefs.h:9543
MBG_GPIO_FREQ freq
frequency, see MBG_GPIO_FREQ_OUT_SUPP::freq_min and MBG_GPIO_FREQ_OUT_SUPP::freq_max ...
Definition: gpsdefs.h:7838
uint16_t status
status bits, see XMR_REF_STATUS_BIT_MASKS
Definition: gpsdefs.h:6861
see GBIT_LINK_COPPER_FORCE_SYNCE_AUTO
Definition: gpsdefs.h:14181
int32_t offset
Tx: unused, Rx: offset of incoming time in [s].
Definition: gpsdefs.h:9460
uint32_t supp_flags_broadcastclient
supported flags for broadcast client associations
Definition: gpsdefs.h:16316
uint32_t reserved_1
Reserved, currently 0.
Definition: gpsdefs.h:12324
uint16_t reserved_2
Future use.
Definition: gpsdefs.h:16217
uint32_t exp_days
number of days, after which the password becomes invalid, see MBG_USER_INFO::password_doc,
Definition: gpsdefs.h:22826
see XMRIF_BIT_MRF_NONE_SUPP
Definition: gpsdefs.h:7105
uint8_t slave_only
indicates, whether the clock is a slave-only clock
Definition: gpsdefs.h:14847
see PTP_ROLE_UNICAST_SLAVE
Definition: gpsdefs.h:12974
FDM device settings.
Definition: gpsdefs.h:10262
uint8_t cn_ratio
Carrier-to-noise ratio [dbHz].
Definition: gpsdefs.h:10813
#define MAX_N_MULTI_REF_TYPES
Theoretical maximum number of multi ref input signal types.
Definition: gpsdefs.h:6449
Number of known signal shapes.
Definition: gpsdefs.h:20380
int16_t range
scale factor for freq; 0..MAX_SYNTH_RANGE
Definition: gpsdefs.h:2859
int16_t sync_intv_max
log2 of maximum sync interval [s]
Definition: gpsdefs.h:13351
uint16_t reserved_1
Future use.
Definition: gpsdefs.h:15862
Number of known FDM flags.
Definition: gpsdefs.h:10296
uint32_t idx
Definition: gpsdefs.h:15429
program restart
Definition: gpsdefs.h:16730
uint32_t reserved_2
reserved, currently always 0
Definition: gpsdefs.h:10128
int16_t valid
flag data are valid
Definition: gpsdefs.h:18489
PTP_V1_DEFAULT_DATASET_FLAGS
PTPv1 default dataset flags.
Definition: gpsdefs.h:14549
see PTP_PRESETS_AES67
Definition: gpsdefs.h:13671
see TM_BIT_LS_ANN
Definition: gpsdefs.h:2664
uint8_t reserved
Currently reserved, always 0.
Definition: gpsdefs.h:18020
see MBG_IO_PORT_INFO_BIT_IS_ALIGNED
Definition: gpsdefs.h:20784
uint8_t sec100
100ths of seconds
Definition: gpsdefs.h:5576
uint32_t pDlyReqMsgPerSecRx
Accepted PDelay Request message Rx counter.
Definition: gpsdefs.h:14452
uint32_t supp_modes
bit mask of modes supp. by this output, see POUT_MODE_MASKS
Definition: gpsdefs.h:6284
Antenna status and error at reconnect information.
Definition: gpsdefs.h:3100
external (e.g. for inputs)
Definition: gpsdefs.h:20179
See MBG_IO_PORT_SRC_EXTERNAL.
Definition: gpsdefs.h:20229
the number of known GPS_FEATURE_BITS, should now be at its limit, i.e. 32.
Definition: gpsdefs.h:2218
uint32_t td_pos_limit
max. time deviation limit in 1 ms steps
Definition: gpsdefs.h:10268
see V1_DFLT_IS_BC
Definition: gpsdefs.h:14571
if set, Out1: HD, Out2: SD
Definition: gpsdefs.h:8411
uint32_t supp_colors
Supported colors, see MBG_LED_COLOR_MASKS.
Definition: gpsdefs.h:18912
SW_REV sw_rev
software revision and ID
Definition: gpsdefs.h:876
uint32_t reserved_6
reserved, currently 0
Definition: gpsdefs.h:16321
MBG_SNMP_V3_TRAP_INFO info
Definition: gpsdefs.h:21740
uint32_t supp_flags
supported flags, see::MBG_GPIO_STUDIO_CLOCK_FLAG_MASKS
Definition: gpsdefs.h:8946
uint32_t reserved_3
reserved, currently 0
Definition: gpsdefs.h:16419
uint8_t num_v12_settings
Number of configured v1/v2 settings, see MBG_SNMP_V12_INFO_IDX.
Definition: gpsdefs.h:21353
uint8_t peer_mode
NTP mode of the peer, see NTP_MODE_BITS.
Definition: gpsdefs.h:17436
uint8_t supp_cfgs
See NTP_REFCLK_CFG_FLAGS.
Definition: gpsdefs.h:15775
IO Port Settings Union.
Definition: gpsdefs.h:20630
uint16_t port_type
MBG_IO_PORT_TYPES
Definition: gpsdefs.h:20691
see XMRSF_BIT_AUTO_BIAS_SLAVE
Definition: gpsdefs.h:6787
uint8_t ssm
minimum E1 SSM for acceptance, 0..N_GPIO_SSM_VALS-1
Definition: gpsdefs.h:8119
uint8_t leap_ind
Leap indicator, see NTP_LI_BITS.
Definition: gpsdefs.h:16876
int32_t disp
[us] filter dispersion of the NTP peer
Definition: gpsdefs.h:17450
Configuration of a GPIO variable frequency output.
Definition: gpsdefs.h:7836
uint32_t reserved_1
Reserved, currently always 0.
Definition: gpsdefs.h:12470
no extension used
Definition: gpsdefs.h:13596
see NTP_REFCLK_TYPE_PARSE
Definition: gpsdefs.h:15630
GNSS_SV_STAT_ORBIT_SOURCES
Orbit source codes used with GNSS_SV_STATUS::stat_flags.
Definition: gpsdefs.h:10949
A structure used to hold time in GPS format.
Definition: gpsdefs.h:2563
uint32_t flags
flags, see MBG_GPIO_FLAG_MASKS
Definition: gpsdefs.h:9135
reference is master source
Definition: gpsdefs.h:6949
NANO_TIME err_limit
time difference limit above which an error is indicated
Definition: gpsdefs.h:17700
double cis
+- Sine Corr. Term to Inclination Angle [rad]
Definition: gpsdefs.h:18463
see WRN_GPS_UNLOCK
Definition: gpsdefs.h:6638
included by the combine algorithm
Definition: gpsdefs.h:17082
uint32_t features
Definition: gpsdefs.h:18979
GBIT Link is currently clock master.
Definition: gpsdefs.h:14198
see PTP_FLAG_ONE_STEP
Definition: gpsdefs.h:13270
MBG_FW_UFU_FLASH_CMDS
Command types used to flash UFU(S) to device(s)
Definition: gpsdefs.h:23344
uint8_t chassis_idx
Index of the associated IMS chassis, or MBG_OWN_EVENT_CHASSIS.
Definition: gpsdefs.h:21876
e.g. IRIG AM/DC, see MBG_IO_PORT_SHAPE_LEVELS
Definition: gpsdefs.h:20066
uint8_t type
type, see MBG_USER_TYPE
Definition: gpsdefs.h:22873
uint32_t reserved
Future use.
Definition: gpsdefs.h:15380
int32_t clk_wander
[ppb] Frequency wander of the clock
Definition: gpsdefs.h:16911
output slopes can be shifted, see POUT_DATA::pulse_shift
Definition: gpsdefs.h:6319
uint8_t n_prio
reserved, don&#39;t use, currently always 0 //##++++ TODO: check which devices support/use this field ...
Definition: gpsdefs.h:6819
uint32_t annReceptTout
Announce recept timeout count.
Definition: gpsdefs.h:14472
IEEE C37.238-2017 profile extension.
Definition: gpsdefs.h:13604
number of defined LAN interface types
Definition: gpsdefs.h:11306
A time step was compensated at the input source.
Definition: gpsdefs.h:7363
NTP_RESTR_TYPES
Enumeration of supported NTP restriction types/keywords.
Definition: gpsdefs.h:15280
antenna disconnect detected
Definition: gpsdefs.h:9621
PTP_ROLE_MASKS
Bit mask associated with PTP_ROLES.
Definition: gpsdefs.h:12962
uint16_t reserved_1
reserved, currently always 0
Definition: gpsdefs.h:8128
uint16_t reserved_2
Reserved for future use, currently 0.
Definition: gpsdefs.h:19601
uint32_t supp_flags
Supported restriction flags, see NTP_RESTR_FLAG_MSKS.
Definition: gpsdefs.h:15379
XMR statistics for a particular source.
Definition: gpsdefs.h:7321
see HQ_FMT_STANAG4246_2
Definition: gpsdefs.h:9403
disbled by cfg, i.e. freq == 0.0
Definition: gpsdefs.h:2878
uint8_t poll
Current polling interval for the system peer (tc)
Definition: gpsdefs.h:16903
NANO_TIME delay_asymmetry
Definition: gpsdefs.h:13193
see PTP_OPT_EXT_TELECOM_PHASE
Definition: gpsdefs.h:13619
uint32_t reserved_0
Currently reserved, always 0.
Definition: gpsdefs.h:17929
[R/-] PTP packet generator supports IPv6
Definition: gpsdefs.h:13525
number of known types
Definition: gpsdefs.h:8979
int16_t delay_req_intv_max
log2 of maximum delay request interval [s]
Definition: gpsdefs.h:13355
NTP supports orphan mode.
Definition: gpsdefs.h:16074
uint32_t fd_pos_limit
max. frequency deviation limit in 1 mHz steps
Definition: gpsdefs.h:10265
uint8_t direction
MBG_IO_PORT_DIRS
Definition: gpsdefs.h:20692
uint8_t reserved
Reserved, currently always 0.
Definition: gpsdefs.h:14951
MBG_SERVICE_CTL
Definition: gpsdefs.h:23048
uint32_t reserved_4
Reserved for future use, currently 0.
Definition: gpsdefs.h:19671
See MBG_IO_PORT_ANT_MEMBER_GNSS.
Definition: gpsdefs.h:20576
uint32_t sw_rev
Definition: gpsdefs.h:19408
uint8_t min
0..59
Definition: gpsdefs.h:5574
uint32_t supp_scales
bit masks of supported scales, see MBG_TIME_SCALE_MASKS
Definition: gpsdefs.h:5523
int16_t delay_req_intv_max
log2 of maximum delay request interval [s]
Definition: gpsdefs.h:14239
50Hz line frequency
Definition: gpsdefs.h:10196
Device does not have a grasp.
Definition: gpsdefs.h:20335
state of power supply 4 monitoring input
Definition: gpsdefs.h:10508
uint16_t synth
EF_OFF or EF_SYNTH
Definition: gpsdefs.h:3147
uint16_t supp_phys_grp_roles
Supported roles in MBG_IO_PORT_STATUS::phys_grp_role, see MBG_IO_PORT_GRP_ROLE_MSKS.
Definition: gpsdefs.h:20813
Address has been automatically assigned by DHCP via IPv4.
Definition: gpsdefs.h:11799
Glonass / GPS receiver.
Definition: gpsdefs.h:6436
the user password has expired
Definition: gpsdefs.h:22918
uint32_t syncMsgPerSecTx
Sync message Tx counter.
Definition: gpsdefs.h:14438
uint8_t num_refclks
number of available refclks NTP_REFCLK_CFG_INFO
Definition: gpsdefs.h:16415
antenna cable short circuited
Definition: gpsdefs.h:2641
see TM_BIT_ANT_SHORT
Definition: gpsdefs.h:2671
See MBG_FW_FLAG_IMMUTABLE.
Definition: gpsdefs.h:23214
uint32_t max_rps
Maximum number of supported PTPv1 delay requests per second.
Definition: gpsdefs.h:19733
See MBG_FW_FILE_ROOTFS.
Definition: gpsdefs.h:23255
uint32_t reserved_2
Future use.
Definition: gpsdefs.h:15993
the number of known framings
Definition: gpsdefs.h:3346
see NTP_FLASH_STAT_PEER_LOOP
Definition: gpsdefs.h:17297
Note: most serial ports don&#39;t support this!
Definition: gpsdefs.h:3345
uint16_t idx
0..RECEIVER_INFO::n_prg_out-1
Definition: gpsdefs.h:6353
uint8_t phys_grp_role
Physical group role state, see MBG_IO_PORT_GRP_ROLE_BITS.
Definition: gpsdefs.h:21189
see USER_CFG_PASSWORD_CHANGED
Definition: gpsdefs.h:22809
MBG_GPIO_VIDEO_FORMATS
Enumeration of Video signal formats.
Definition: gpsdefs.h:8335
see MBG_NET_GLB_SUPP_STAGE_2
Definition: gpsdefs.h:11404
combined 10 MHz plus PPS
Definition: gpsdefs.h:6425
uint16_t reserved_1
Reserved, currently always 0.
Definition: gpsdefs.h:12528
uint16_t general_port_address
Definition: gpsdefs.h:14794
uint32_t reserved_0
reserved, currently always 0
Definition: gpsdefs.h:9937
see HQ_FLAG_USE_EXT_PPS
Definition: gpsdefs.h:9523
NTP_TSTAMP ref_time
Last time the NTP peers time has been adjusted, see NTP_TSTAMP.
Definition: gpsdefs.h:17428
ANT_CABLE_LEN ant_cab_len
Definition: gpsdefs.h:20599
see MBG_GPIO_DIGITAL_AUDIO_TYPE_OFF
Definition: gpsdefs.h:8993
MBG_NET_INTF_LINK_OPTS
Network interface link option bits.
Definition: gpsdefs.h:11657
uint32_t idx
the index of the user
Definition: gpsdefs.h:22901
#define N_IRIG_RX_COMP_VAL
Definition: gpsdefs.h:5084
Server settings info of an NTP device.
Definition: gpsdefs.h:16437
IP4_ADDR broad_addr
the broadcast address
Definition: gpsdefs.h:11243
NTP_TRUSTED_KEY_SETTINGS settings
Definition: gpsdefs.h:16030
uint32_t supp_protocols
See MBG_SYSLOG_PROTOCOL_MSKS.
Definition: gpsdefs.h:22170
MBG_LED_COLOR_MASKS
Bit masks of possible LED colors.
Definition: gpsdefs.h:18825
uint8_t flags
See MBG_DATABASE_INFO_FLAG_MSKS.
Definition: gpsdefs.h:23548
MBG_UCAP_NET_RECV_SETTINGS settings
see MBG_UCAP_NET_RECV_SETTINGS
Definition: gpsdefs.h:12582
double cus
+- Sine Corr. Term to Arg. of Latitude [rad]
Definition: gpsdefs.h:18461
uint16_t flags
see IFLAGS_BIT_MASKS
Definition: gpsdefs.h:5002
MBG_NET_INTF_ADDR_SETTINGS addr_settings
see MBG_NET_INTF_ADDR_SETTINGS
Definition: gpsdefs.h:12224
uint32_t supp_nw_prot
a bit mask of supported network protocols, see PTP_NW_PROT_MASKS
Definition: gpsdefs.h:13358
Output switched on if time synchronized (condition time_syn).
Definition: gpsdefs.h:5836
PTP_TIME_SCALES
An enumeration of time scales used with PTP.
Definition: gpsdefs.h:13134
NTP_SRV_MODE_SETTINGS settings
Definition: gpsdefs.h:16439
see MBG_EXT_SYS_INFO_BIT_RAM_SIZE
Definition: gpsdefs.h:19257
see PTP_ROLE_UNICAST_SLAVE
Definition: gpsdefs.h:12965
state of power supply 2 monitoring input
Definition: gpsdefs.h:10499
Orphan Mode support disabling.
Definition: gpsdefs.h:16144
see XMRSF_BIT_USE_TRUSTED_SRC
Definition: gpsdefs.h:6790
supports root dispersion, see NTP_PEER_STATE::root_disp
Definition: gpsdefs.h:17356
General NTP symmetric key limits to be read from a device.
Definition: gpsdefs.h:15859
#define MBG_SVC_NAME_LEN
Definition: gpsdefs.h:23026
MBG_IMS_STATE_FLAG_MASKS
Bit masks used with MBG_IMS_STATE::flags.
Definition: gpsdefs.h:9827
See MBG_SYSLOG_PROTOCOL_UDP.
Definition: gpsdefs.h:22144
MBG_SNMP_V3_TRAP_SETTINGS settings
Definition: gpsdefs.h:21709
clock error more than 600 s
Definition: gpsdefs.h:16731
supports extended network interface configuration, supersedes GPS_FEAT_LAN_IP4
Definition: gpsdefs.h:2213
NTP Truetime driver.
Definition: gpsdefs.h:15609
uint8_t min_poll
minimal configurable NTP polling interval
Definition: gpsdefs.h:16363
CSUM csum
Checksum of the remaining bytes.
Definition: gpsdefs.h:18566
uint32_t reserved_2
Future use.
Definition: gpsdefs.h:16174
[R/-] supports unicast master, see PTP_ROLE_UNICAST_MASTER
Definition: gpsdefs.h:13411
Code and carrier locked, and time synchronized.
Definition: gpsdefs.h:10925
uint8_t hysteresis
hysteresis (percent) between yellow and red alarm
Definition: gpsdefs.h:7550
MBG_LICENSE_BASE base
See MBG_LICENSE_BASE.
Definition: gpsdefs.h:19597
SHS_FLAG_MASKS
SHS flag masks.
Definition: gpsdefs.h:17814
uint8_t state
see MBG_PWR_STATES
Definition: gpsdefs.h:19194
GBIT_LINK_COPPER_MODE_MASKS
Flag masks used with MBG_SYNC_E_INFO::supp_gbit_link_copper_modes ::FIXME.
Definition: gpsdefs.h:14178
see V1_PARENT_GM_IS_BC
Definition: gpsdefs.h:14660
POUT_SETTINGS_FLAG_BITS
Flag bits used to define POUT_SETTINGS_FLAGS.
Definition: gpsdefs.h:6198
Handshake index exceeds num supp by driver SW.
Definition: gpsdefs.h:3539
see POUT_BIT_TIMEBASE_UTC, POUT_SUPP_DCF77_UTC
Definition: gpsdefs.h:6234
uint32_t reserved_6
Definition: gpsdefs.h:19860
Current settings and general capabilities of an LNE port, plus index.
Definition: gpsdefs.h:19116
uint32_t td_neg_limit
min. time deviation limit in 1 ms steps
Definition: gpsdefs.h:10267
Receiver should use his own timestamp.
Definition: gpsdefs.h:22117
transmission on request by received &#39;?&#39; character only
Definition: gpsdefs.h:3759
uint32_t reserved_3
reserved, currently 0
Definition: gpsdefs.h:15228
see MBG_EXT_SYS_INFO_BIT_STORAGE_SIZE
Definition: gpsdefs.h:19258
int8_t month
month, 1..12
Definition: gpsdefs.h:2596
GPS, United States.
Definition: gpsdefs.h:10625
PTP_TIME_SOURCES
Codes to specify the type of a time source used with PTP.
Definition: gpsdefs.h:12883
uint16_t n_supp_peers
maximum number of configurable peers
Definition: gpsdefs.h:16299
uint16_t idx
0..MBG_NET_GLB_CFG_SETTINGS::num_intf_route-1
Definition: gpsdefs.h:12346
see NTP_RESTR_TYPE_ADDRESS
Definition: gpsdefs.h:15301
MBG_LNE_PORT_INFO info
LNE port info.
Definition: gpsdefs.h:19119
supports NTP structures
Definition: gpsdefs.h:2212
PTP_CLOCK_QUALITY clock_quality
quality of the local clock, see PTP_CLOCK_QUALITY
Definition: gpsdefs.h:14871
uint8_t selected_presets
selected PTP presets, see PTP_PRESETS
Definition: gpsdefs.h:13281
int32_t jitter
[us] filter jitter of the NTP peer
Definition: gpsdefs.h:17451
[R/-] Hardware supports Synchronous Ethernet In
Definition: gpsdefs.h:13429
locked to input signal
Definition: gpsdefs.h:6950
NTP supports leapfile.
Definition: gpsdefs.h:16075
state of power supply 1 monitoring input
Definition: gpsdefs.h:10498
see MBG_EXT_SYS_INFO_BIT_FPGA_REV
Definition: gpsdefs.h:19254
double cic
+- Cosine Corr. Term to Inclination Angle [rad]
Definition: gpsdefs.h:18462
NANO_TIME last_min
minimum value within interval
Definition: gpsdefs.h:7327
max. WAAS satellite number
Definition: gpsdefs.h:660
See MBG_FW_FILE_UNKNOWN.
Definition: gpsdefs.h:23251
uint32_t flags
see XMR_STATS_FLAGS_MSKS
Definition: gpsdefs.h:7333
see NTP_SYS_STATE_SUPP_CLK_JITTER
Definition: gpsdefs.h:16831
Configuration of a GPIO as sync output module.
Definition: gpsdefs.h:8690
uint8_t slot_id
ID of the slot in which this device is installed, 0 or up to 15, if multiple slots not supported...
Definition: gpsdefs.h:7058
see NTP_FLASH_STAT_PKT_DUP
Definition: gpsdefs.h:17286
uint32_t freq_min
minimum output frequency [Hz]
Definition: gpsdefs.h:7806
On request only, if a capture event is available, COM1 only.
Definition: gpsdefs.h:3964
uint32_t status
status word flags (use PacketCounterStat_e)
Definition: gpsdefs.h:14421
see MBG_FRAMING_8N1
Definition: gpsdefs.h:3389
see PTP_ROLE_UNICAST_MASTER
Definition: gpsdefs.h:12967
IRIG/AFNOR DCLS time code signal mapped to this output.
Definition: gpsdefs.h:5842
Supported options for a variable frequency GPIO output.
Definition: gpsdefs.h:7866
uint8_t mtie_scale
scale factors of MTIE
Definition: gpsdefs.h:7425
uint16_t port_type
See MBG_IO_PORT_TYPES.
Definition: gpsdefs.h:20976
NTP_PEER_STATE_SUPP_FLAG_MASKS
Flag masks for NTP_PEER_STATE_SUPP_FLAGS.
Definition: gpsdefs.h:17374
Baud rate index exceeds num supp by device.
Definition: gpsdefs.h:3534
Code and carrier locked, and time synchronized.
Definition: gpsdefs.h:10926
Number of known output modes.
Definition: gpsdefs.h:10093
NTP_RESTR_FLAG_MSKS
Flag masks associated with NTP_RESTR_FLAGS.
Definition: gpsdefs.h:15344
MBG_SERVICE_INFO_MSKS
Definition: gpsdefs.h:23096
int32_t root_delay
[us] Total roundtrip delay to the system peer of the NTP peer
Definition: gpsdefs.h:17423
[R/W] supports disabling of PTP management messages
Definition: gpsdefs.h:13419
IP4_ADDR ip4_addr
IPv4 address if MBG_IP_ADDR::type == MBG_IP_ADDR_TYPE_IP4.
Definition: gpsdefs.h:11914
uint32_t mgmtRx
Accepted Management message Rx counter.
Definition: gpsdefs.h:14467
MBG_IO_PORT_DIRS
Port directions (input or output)
Definition: gpsdefs.h:20117
uint32_t ram_size
RAM size in MB.
Definition: gpsdefs.h:19420
uint32_t supp_baud_rates
bit mask of baud rates supp. by this port, see MBG_BAUD_RATE_MASKS
Definition: gpsdefs.h:3621
Instead of a standard L1 antenna, a Meinberg antenna/converter can be used with this GNSS device...
Definition: gpsdefs.h:1320
TM_GPS tm_off
date/time when daylight saving ends
Definition: gpsdefs.h:2945
see MBG_GPIO_STUDIO_CLOCK_SCALE_1_DIV_2
Definition: gpsdefs.h:8833
ITU-T G.8275.1 profile extension.
Definition: gpsdefs.h:13599
NTP specific license information.
Definition: gpsdefs.h:19729
uint16_t khz_val
the base frequency in [kHz]
Definition: gpsdefs.h:848
BAUD_RATE baud_rate
transmission speed, e.g. 19200L, see MBG_BAUD_RATES
Definition: gpsdefs.h:3204
Settings for receivers of user captures via network.
Definition: gpsdefs.h:12524
see HQ_FMT_STANAG4246_1
Definition: gpsdefs.h:9402
#define MBG_SVC_CMD_LEN
Definition: gpsdefs.h:23027
SDH_NETWORK_OPTION_MASKS
Flag masks used with MBG_SYNC_E_INFO::supp_sdh_network_opts ::FIXME.
Definition: gpsdefs.h:14133
uint8_t shape_level
Signal shape/level, see MBG_IO_PORT_SHAPE_LEVELS.
Definition: gpsdefs.h:20980
see TM_BIT_UTC
Definition: gpsdefs.h:2660
A structure used to identify a device type and supported features.
Definition: gpsdefs.h:873
double omega
+- Argument of Perigee [rad]
Definition: gpsdefs.h:18452
uint32_t reserved_4
Reserved, currently 0.
Definition: gpsdefs.h:12181
uint16_t reserved_2
reserved, currently always 0
Definition: gpsdefs.h:17754
NTP_SYS_EVT_BITS
Enumeration of NTP system event message bits.
Definition: gpsdefs.h:16722
Global configuration settings of an NTP device (client/server)
Definition: gpsdefs.h:15220
number of known state flag bits
Definition: gpsdefs.h:10237
see NTP_RESTR_FLAG_IGNORE
Definition: gpsdefs.h:15347
PTPv2 current dataset.
Definition: gpsdefs.h:14901
Health status unknown.
Definition: gpsdefs.h:10938
uint32_t xleave
[ns] interleave delay of the NTP peer
Definition: gpsdefs.h:17453
uint8_t reserved_4
Reserved, currently always 0.
Definition: gpsdefs.h:17432
uint32_t reserved
reserved, currently always 0
Definition: gpsdefs.h:17728
uint8_t clk1_info
reference clock 1 type
Definition: gpsdefs.h:10450
supports filter dispersion, see NTP_PEER_STATE::disp
Definition: gpsdefs.h:17360
see MBG_LED_MODE_OFF
Definition: gpsdefs.h:18774
uint32_t supp_flags
Supported settings, currently 0.
Definition: gpsdefs.h:14412
Supports MBG_IO_PORT_ANT_SETTINGS::ignore_lock.
Definition: gpsdefs.h:20566
NTP_STATS_GLB_SETTINGS settings
See NTP_STATS_GLB_SETTINGS.
Definition: gpsdefs.h:15565
see HQ_FMT_STANAG4430_EXTD
Definition: gpsdefs.h:9407
uint8_t reserved_1
reserved, currently 0
Definition: gpsdefs.h:15225
see MBG_EXT_SYS_INFO_BIT_OS_TARGET
Definition: gpsdefs.h:19260
maximum message duration [s]
Definition: gpsdefs.h:14321
see NTP_RESTR_TYPE_DEFAULT
Definition: gpsdefs.h:15299
see MBG_NET_INTF_LINK_PORT_TYPE_AUI
Definition: gpsdefs.h:11537
uint16_t max_uclients
Maximal number of supported unicast clients.
Definition: gpsdefs.h:19600
Priority can be configured using the MBG_GNSS_MODE_SETTINGS::prio field.
Definition: gpsdefs.h:10722
uint32_t fd_neg_limit
min. frequency deviation limit in 1 mHz steps
Definition: gpsdefs.h:10264
uint16_t wn
the week number since the GPS system has been put into operation
Definition: gpsdefs.h:2565
uint8_t clock_accuracy
see PTP_CLOCK_ACCURACIES
Definition: gpsdefs.h:13199
leapsecond values update from file
Definition: gpsdefs.h:16738
MBG_SNMP_V3_PRIV_PROTOCOLS
Definition: gpsdefs.h:21584
An IPv6 address.
Definition: gpsdefs.h:11061
uint32_t supp_shapes
bit mask of supported signal shapes, see MBG_GPIO_SIGNAL_SHAPE_MASKS
Definition: gpsdefs.h:7809
uint8_t num_intf_addr
number of configured interface addresses, see MBG_NET_INTF_ADDR_INFO_IDX
Definition: gpsdefs.h:11849
GEN_IO_INFO (read only)
Definition: gpsdefs.h:10390
NTP trusted key settings, with index.
Definition: gpsdefs.h:16009
input signal is available
Definition: gpsdefs.h:9344
see MBG_GPIO_STUDIO_CLOCK_SCALE_512
Definition: gpsdefs.h:8843
uint32_t reserved2
reserved, currently always 0
Definition: gpsdefs.h:9081
#define MBG_DATABASE_MAX_STR
Definition: gpsdefs.h:23458
transmission automatically if second changes
Definition: gpsdefs.h:3760
MBG_SNMP_V12_TRAP_SETTINGS settings
Definition: gpsdefs.h:21508
MBG_NET_INTF_LINK_PORT_TYPE_MASKS
Network interface link port masks.
Definition: gpsdefs.h:11531
supports sys state events (NTP_SYS_STATE::sys_evt_cnt, NTP_SYS_STATE::sys_rec_evt) ...
Definition: gpsdefs.h:16800
see MBG_NET_INTF_LINK_TYPE_PHYS
Definition: gpsdefs.h:11784
uint8_t reserved_1
Future use.
Definition: gpsdefs.h:16126
NTP_GLB_SETTINGS settings
current configuration settings
Definition: gpsdefs.h:15248
uint8_t ql_mask
see :ITU_LIMIT_MASKS
Definition: gpsdefs.h:7549
uint16_t message_duration
time period until master stops sending messages [s]
Definition: gpsdefs.h:14283
customizable, always supported
Definition: gpsdefs.h:13640
Flags not supp by driver SW.
Definition: gpsdefs.h:3547
NTP_PEER_EVT_BITS
Enumeration of NTP peer event message codes.
Definition: gpsdefs.h:17182
[R/-] supports the combination of One-Step and Layer2 mode
Definition: gpsdefs.h:13422
Output state of FDM device plus index.
Definition: gpsdefs.h:9987
Global current network settings and supported features.
Definition: gpsdefs.h:11869
number of known types
Definition: gpsdefs.h:5140
see MBG_TIME_SCALE_DEFAULT
Definition: gpsdefs.h:5482
uint8_t ass_io_idx
associated GPIO index, only valid if MSK_MBG_GPIO_DEPENDS_ON_ASS_IO_IDX is set in flags field ...
Definition: gpsdefs.h:9133
See MBG_IO_PORT_OP_MODE_AFTER_SYNC.
Definition: gpsdefs.h:20497
uint8_t n_filter_values
Number of filter values available, currently always 0.
Definition: gpsdefs.h:17455
int64_t delay
[ns] filter delay to this NTP peer
Definition: gpsdefs.h:17448
arbitrary time scale, maybe UTC
Definition: gpsdefs.h:13137
see PTP_NW_PROT_UDP_IPV4
Definition: gpsdefs.h:12663
A structure used to store a bit mask of supported TLV context types.
Definition: gpsdefs.h:18232
uint16_t n_supp_dns_srch_dom
max. number of supported DNS search domain records, using MBG_NET_NAME_IDX records ...
Definition: gpsdefs.h:11875
see NTP_PEER_STATE_SUPP_HEADWAY
Definition: gpsdefs.h:17383
see MBG_GPIO_STUDIO_CLOCK_OUTPUT_ENABLED
Definition: gpsdefs.h:8895
uint16_t nw_prot
one of the enumerated protocols, see PTP_NW_PROTS
Definition: gpsdefs.h:13186
ref. clock is DCF77 AM receiver
Definition: gpsdefs.h:10545
MBG_TLV_HDR hdr
See MBG_TLV_HDR.
Definition: gpsdefs.h:18405
Network interface address specific settings, flags and supported features.
Definition: gpsdefs.h:12164
uint32_t reserved_1
Definition: gpsdefs.h:19865
40000baseKR4 Full Duplex (40 GBit/s)
Definition: gpsdefs.h:11435
Trusted source offset limit violated (valid if device has XMRSF_MSK_USE_TRUSTED_SRC) ...
Definition: gpsdefs.h:6958
unspecified NTP event
Definition: gpsdefs.h:16724
uint32_t reserved
reserved, currently always 0
Definition: gpsdefs.h:7963
Framed data stream input.
Definition: gpsdefs.h:7668
General NTP misc limits to be read from a device.
Definition: gpsdefs.h:16101
[R/-] Hardware supports multiplexed signal outputs
Definition: gpsdefs.h:13430
uint8_t reserved
currently reserved, always 0
Definition: gpsdefs.h:11854
supports flash status word, see NTP_PEER_STATE::flash_stat_flags
Definition: gpsdefs.h:17358
see NTP_PEER_STATUS_AUTHENB
Definition: gpsdefs.h:17148
MBG_EXT_SYS_INFO_CORE_MOD_TYPES
Definition: gpsdefs.h:19302
uint32_t MBG_DEBUG_STATUS
A data type used to read the board&#39;s debug status.
Definition: gpsdefs.h:5204
see MBG_GPIO_BITS_T1_TIMING
Definition: gpsdefs.h:8036
position actually not verified, LOCK LED off
Definition: gpsdefs.h:2646
see PTP_ROLE_MULTICAST_AUTO
Definition: gpsdefs.h:12968
uint32_t survey_in_duration
Definition: gpsdefs.h:18674
uint32_t reserved1
reserved, currently always 0
Definition: gpsdefs.h:8584
MBG_IMS_SENSOR_STATE_FLAG_MASK_VOLTAGE
IMS sensor state flags for voltage.
Definition: gpsdefs.h:9906
see HQ_FMT_STANAG4372_SATURN_1
Definition: gpsdefs.h:9405
Definition: gpsdefs.h:2754
supports reading decoded IRIG time (PCPS_IRIG_TIME)
Definition: gpsdefs.h:2203
modulated
Definition: gpsdefs.h:4544
double i0
+- Inclination Angle [rad]
Definition: gpsdefs.h:18456
NTP_SYS_STATE_SUPP_FLAG_MASKS
Flag masks for NTP_SYS_STATE_SUPP_FLAGS.
Definition: gpsdefs.h:16822
uint8_t reserved_1
reserved, currently 0
Definition: gpsdefs.h:16442
uint32_t supp_members
See MBG_LICENSE_TIME_MONITOR_MEMBER_MSKS.
Definition: gpsdefs.h:19800
MBG_IMS_SENSOR_STATE_FLAG_MASK_PLL
IMS sensor state flags for PLL.
Definition: gpsdefs.h:9919
#define GPS_EPLD_STR_SIZE
Definition: gpsdefs.h:679
uint8_t reserved_1
Definition: gpsdefs.h:14525
has general purpose inputs/outputs
Definition: gpsdefs.h:2205
MBG_NET_INTF_ROUTE_SETTINGS route_settings
see MBG_NET_INTF_ROUTE_SETTINGS
Definition: gpsdefs.h:12323
NANO_TIME warn_limit
time difference limit above which a warning is indicated
Definition: gpsdefs.h:17701
uint8_t reserved_1
reserved, currently 0
Definition: gpsdefs.h:16366
Version is active (currently running)
Definition: gpsdefs.h:23201
see USER_MNGMNT_SUPP_USER_CFG
Definition: gpsdefs.h:22721
#define GPS_ID_STR_SIZE
Definition: gpsdefs.h:676
NANO_TIME time_diff
current time difference between the 2 clocks
Definition: gpsdefs.h:17749
MBG_PTP_STATISTICS_SETTINGS settings
Definition: gpsdefs.h:14411
uint32_t milli_phase_max
max. abs. milli_phase, see MBG_GPIO_FREQ_OUT_SETTINGS::milli_phase
Definition: gpsdefs.h:7871
uint8_t priority_1
priority 1
Definition: gpsdefs.h:13286
uint8_t log_grp
Logical group number (i.e. bond0), or MBG_NO_LOG_GROUP.
Definition: gpsdefs.h:21190
NTP symmetric key settings, with index.
Definition: gpsdefs.h:15926
40000baseLR4 Full Duplex (40 GBit/s)
Definition: gpsdefs.h:11439
uint32_t syncMsgTx
Sync message Tx counter.
Definition: gpsdefs.h:14437
see PTP_NW_PROT_PROFINET
Definition: gpsdefs.h:12668
uint8_t num_ip_addr
Number of configured ip addresses.
Definition: gpsdefs.h:15899
MBG_GNSS_MODE_INFO gnss_info
Definition: gpsdefs.h:20585
Simple LAN interface information.
Definition: gpsdefs.h:11274
see MBG_BAUD_RATE_1200
Definition: gpsdefs.h:3313
MBG_NET_HW_TYPES
Hardware type for identification of physical interfaces.
Definition: gpsdefs.h:11175
see GBIT_LINK_COPPER_FORCE_OR_IS_MASTER
Definition: gpsdefs.h:14182
Number of defined codes.
Definition: gpsdefs.h:10632
MBG_IO_PORT_STATUS_BUFFER supp_stati
Supported MBG_IO_PORT_STATUS_BITS in MBG_IO_PORT_STATUS_BUFFER.
Definition: gpsdefs.h:21185
PTP_DELAY_MECH_MASKS
Bit masks associated with enumerated PTP delay mechanisms.
Definition: gpsdefs.h:12779
see PTP_ROLE_NTP_CLIENT
Definition: gpsdefs.h:12971
oscillator control has reached full accuracy
Definition: gpsdefs.h:6951
see USER_CFG_CAN_REMOVE
Definition: gpsdefs.h:22804
See MBG_IO_PORT_GRP_ROLE_PASSIVE.
Definition: gpsdefs.h:20549
see TM_BIT_NO_POS
Definition: gpsdefs.h:2676
MBG_EVENT_VALUE_SELECTION selection
Definition: gpsdefs.h:22013
see V1_PORT_DATASET_BURST_ENB
Definition: gpsdefs.h:14775
Supports bonding.
Definition: gpsdefs.h:11390
SD frame/field sync.
Definition: gpsdefs.h:8612
uint16_t idx
0..MBG_LNE_LIMITS::num_ports-1
Definition: gpsdefs.h:19063
uint16_t ass_id
Association ID of the peer.
Definition: gpsdefs.h:17404
int16_t sync_intv
log2 of the sync interval [s]
Definition: gpsdefs.h:13296
temperature in degrees Celsius
Definition: gpsdefs.h:9886
see MBG_GPIO_STUDIO_CLOCK_SCALE_1_DIV_32
Definition: gpsdefs.h:8829
supports sys assoc ID as sys peer, see NTP_SYS_STATE::sys_assoc
Definition: gpsdefs.h:16808
MBG_DATABASE_SETTINGS::user is valid
Definition: gpsdefs.h:23525
XBP_ADDR addr
The address of the specific node.
Definition: gpsdefs.h:18008
MBG_IMS_STATE_FLAG_BITS
Enumeration of bits used to define MBG_IMS_STATE_FLAG_MASKS.
Definition: gpsdefs.h:9815
uint32_t reserved_2
currently unused
Definition: gpsdefs.h:7429
No group role, only possible if port is not assigned to any group.
Definition: gpsdefs.h:20512
uint32_t reserved_8
Definition: gpsdefs.h:19858
unicast master
Definition: gpsdefs.h:12936
[R/-] SMPTE TLV structure can be queried in slave state
Definition: gpsdefs.h:13439
see PTP_ROLE_NTP_SERVER
Definition: gpsdefs.h:12970
44.1 kHz base frequency
Definition: gpsdefs.h:8752
has pulse per minute output
Definition: gpsdefs.h:2184
see XMRSF_BIT_AUTO_BIAS_MASTER
Definition: gpsdefs.h:6786
input voltage in val/exp, output state in flags
Definition: gpsdefs.h:9889
See MBG_IO_PORT_GRP_ROLE_SLAVE.
Definition: gpsdefs.h:20548
uint16_t idx
the priority level index (highest == 0), 0..XMULTI_REF_INSTANCES::n_xmr_settings-1 ...
Definition: gpsdefs.h:6841
see MBG_EXT_SYS_INFO_BIT_HW_REV
Definition: gpsdefs.h:19252
See NTP_MISC_FLAG_ORPHAN_MODE.
Definition: gpsdefs.h:16089
MBG_IMS_FDM_FLAG_MASKS
IMS FDM flag masks.
Definition: gpsdefs.h:10306
number of known flags
Definition: gpsdefs.h:8413
disable serial output in state SHS_STATE_ERROR
Definition: gpsdefs.h:17795
NANO_TIME last_max
maximum value within interval
Definition: gpsdefs.h:7326
GPS time as sent by the satellites, monotonical.
Definition: gpsdefs.h:5470
uint32_t addr_index
Index of the address on the physical interface it is assigned to.
Definition: gpsdefs.h:12168
backup (more than tos maxclock sources)
Definition: gpsdefs.h:17083
unknown reach status
Definition: gpsdefs.h:17028
uint32_t followUpMsgTx
Follow-up message Tx counter.
Definition: gpsdefs.h:14441
uint32_t reserved_3
Reserved, currently 0.
Definition: gpsdefs.h:12180
PTP time interval.
Definition: gpsdefs.h:13110
disable 10 MHz output on error
Definition: gpsdefs.h:10525
NTP_REFCLK_CFG_INFO info
Definition: gpsdefs.h:15798
uint8_t delay_mech
see PTP_DELAY_MECHS
Definition: gpsdefs.h:13206
uint32_t fd_pos_limit
max. frequency deviation limit, 1/MBG_IMS_FDM_LIMITS::fd_scale Hz units
Definition: gpsdefs.h:10121
uint32_t pDlyReqMsgRx
Accepted PDelay Request message Rx counter.
Definition: gpsdefs.h:14451
see MBG_NET_INTF_LINK_BOND_MODE_ROUNDROBIN
Definition: gpsdefs.h:11717
uint32_t time
like time_t, seconds since 1970
Definition: gpsdefs.h:9566
supports HaveQuick structures
Definition: gpsdefs.h:2211
see XMR_EXT_SRC_FEAT_FLAG_BIT_STATS
Definition: gpsdefs.h:7270
A time step was detected at the input source.
Definition: gpsdefs.h:7362
uint8_t num_v3_trap_receivers
Number of configured v3 trap receivers, see MBG_SNMP_V3_TRAP_INFO_IDX.
Definition: gpsdefs.h:21356
see NTP_RESTR_FLAG_VERSION
Definition: gpsdefs.h:15359
see SHS_FLAG_BIT_DISB_10MHZ
Definition: gpsdefs.h:17818
MBG_USER_INFO info
info, see MBG_USER_INFO
Definition: gpsdefs.h:22902
src can be used for time of day synchronization
Definition: gpsdefs.h:6775
int16_t sync_intv
sync interval [log2 s]
Definition: gpsdefs.h:14279
PTP_STATE_FLAGS
Flags bits used with PTP_STATE::flags.
Definition: gpsdefs.h:13243
device provides on-board FPGA
Definition: gpsdefs.h:2483
NTP client.
Definition: gpsdefs.h:15106
uint16_t reserved_2
Future use.
Definition: gpsdefs.h:16127
A structure controlling when output signals are enabled.
Definition: gpsdefs.h:3142
Current settings and general capabilities of a specific programmable pulse output.
Definition: gpsdefs.h:6351
uint32_t reserved_3
Reserved, currently always 0.
Definition: gpsdefs.h:16917
selected input mode was invalid, set to default
Definition: gpsdefs.h:6611
see MBG_IMS_FDM_OUTPUT_MODE_FD
Definition: gpsdefs.h:10105
MBG_DATE_TIME off
date and time to switch off
Definition: gpsdefs.h:5614
uint8_t label_row
Row position of the device label, consider MBG_IO_PORT_MSK_NO_LABEL.
Definition: gpsdefs.h:20422
see V1_DFLT_EXT_TIMING
Definition: gpsdefs.h:14570
MBG_USER_CHANNEL_BUF supp_user_channels
supported channels for internal users
Definition: gpsdefs.h:22756
MBG_NET_INTF_LINK_STATE_BITS
Network interface link state bits.
Definition: gpsdefs.h:11590
int8_t elev
Elevation [deg], range: -90..90 deg.
Definition: gpsdefs.h:10814
uint8_t svno
Satellite number, see ::TODO.
Definition: gpsdefs.h:10812
time sync actually not verified
Definition: gpsdefs.h:2645
MBG_TIME_SCALE_SETTINGS settings
current settings
Definition: gpsdefs.h:5521
always pretend to be synchronized, alternatively GPS_FEAT_IGNORE_LOCK may be supported ...
Definition: gpsdefs.h:5363
peer has bad quality (dispersion, ...)
Definition: gpsdefs.h:17034
Synchronous Equipment Timing Source (SETS)
Definition: gpsdefs.h:8077
MBG_GNSS_TYPE_MASKS
Bit masks associated with MBG_GNSS_TYPES.
Definition: gpsdefs.h:10641
uint32_t time
Timeticks since last "boots" event -> Ignore.
Definition: gpsdefs.h:21623
see NTP_FLASH_STAT_PEER_DIST
Definition: gpsdefs.h:17296
uint16_t RCV_TIMEOUT
Definition: gpsdefs.h:10400
transmission if second changes and a request has been received before
Definition: gpsdefs.h:3763
see PTP_MSK_OPT_EXT_C37238_2017
Definition: gpsdefs.h:13624
LED shows blue light.
Definition: gpsdefs.h:21081
MBG_SERVICE_INFO info
Definition: gpsdefs.h:23126
disable PPS output in state SHS_STATE_ERROR
Definition: gpsdefs.h:17796
Number of known flag bits.
Definition: gpsdefs.h:6221
Configuration settings for a single LED.
Definition: gpsdefs.h:18859
uint16_t type
sensor type, see MBG_IMS_SENSORS
Definition: gpsdefs.h:9839
uint8_t grandmaster_priority_2
Priority 2 attribute of the grandmaster clock.
Definition: gpsdefs.h:14958
[R/-] supports the combination of One-Step and P2P Delay Mechanism
Definition: gpsdefs.h:13423
clock not synchronized, reflects the state of the "time sync error" output pin
Definition: gpsdefs.h:2644
Definition: gpsdefs.h:2754
see MBG_BAUD_RATE_921600
Definition: gpsdefs.h:3323
Output settings of FDM device.
Definition: gpsdefs.h:10008
2500baseX Full Duplex (2.5 GBit/s)
Definition: gpsdefs.h:11428
int32_t u_min
min. possible real voltage range [mV], positive or negative, depending on MBG_DAC_SPECS::dac_val_min ...
Definition: gpsdefs.h:9934
1 PPS in addition to time string
Definition: gpsdefs.h:6431
association demobilized
Definition: gpsdefs.h:17186
uint32_t supp_flags
reserved, currently always 0
Definition: gpsdefs.h:7992
uint32_t reserved_3
reserved, currently 0
Definition: gpsdefs.h:16445
uint16_t reserved
reserved, currently always 0
Definition: gpsdefs.h:8121
see GPS_BIT_HAS_FPGA
Definition: gpsdefs.h:2495
uint32_t num_users
current number of users
Definition: gpsdefs.h:22729
see MBG_NET_INTF_LINK_OPT_CAN_SYNCE_IN
Definition: gpsdefs.h:11678
uint16_t idx
Index of the port dataset, 0..MBG_PTP_V2_DEFAULT_DATASET::number_ports - 1.
Definition: gpsdefs.h:15075
56000baseKR4 Full Duplex (56 GBit/s)
Definition: gpsdefs.h:11440
see PTP_PRESETS_DFLT_E2E
Definition: gpsdefs.h:13665
uint32_t supp_gnss_types
Bit masks of supported GNSS types, see MBG_GNSS_TYPE_MASKS.
Definition: gpsdefs.h:10697
see MBG_GPIO_STUDIO_CLOCK_SCALE_2
Definition: gpsdefs.h:8835
NANO_TIME offset
time offset from main time base
Definition: gpsdefs.h:6862
uint32_t reserved_6
Reserved for future use, currently 0.
Definition: gpsdefs.h:19606
uint32_t reserved_1
reserved, currently always 0
Definition: gpsdefs.h:14285
uint32_t flags
see LNE_PORT_FLAG_MASKS
Definition: gpsdefs.h:19093
uint16_t flags
Definition: gpsdefs.h:5705
MBG_LED_COLORS
Possible colors of LEDs.
Definition: gpsdefs.h:18807
antenna OK after failure
Definition: gpsdefs.h:9623
NTP symmkey info.
Definition: gpsdefs.h:15946
MBG_SYSLOG_INFO info
See MBG_SYSLOG_INFO.
Definition: gpsdefs.h:22235
10000baseKX4 Full Duplex (10 GBit/s)
Definition: gpsdefs.h:11430
PPS peer (when the prefer peer is valid)
Definition: gpsdefs.h:17085
MBG_TLV_DATA data
See MBG_TLV_DATA.
Definition: gpsdefs.h:18332
Code and carrier locked, and time synchronized.
Definition: gpsdefs.h:10927
uint16_t flags
flags, see XMR_QL // TODO ###
Definition: gpsdefs.h:6863
disable PPS output on error
Definition: gpsdefs.h:10524
see MBG_IMS_FDM_LINE_FREQ_60HZ
Definition: gpsdefs.h:10211
uint16_t reserved_2
reserved, currently 0
Definition: gpsdefs.h:16443
the number of defined flags
Definition: gpsdefs.h:13443
uint16_t mbg_os_type
See MBG_EXT_SYS_INFO_OS_TYPES.
Definition: gpsdefs.h:19416
see MBG_BAUD_RATE_19200
Definition: gpsdefs.h:3317