61 #if defined( _PRELIMINARY_CODE ) 99 if ( strstr( p->
name,
"CC_STANDARD" ) )
106 return strlen( p->
name ) != 0;
114 const char *str_table[],
119 for ( i = 0; i < n_entries; i++ )
120 if ( strcmp( search, str_table[i] ) == 0 )
191 p_ps->
mode = pp_mode;
216 if ( p_ps->
str_type == cap_str_idx )
225 *pp_mode = p_ps->
mode;
249 p_ps->
parm = p_pp->
com[port_idx];
276 p_pp->
com[port_idx] = p_ps->
parm;
328 if ( idx >= n_str_type )
356 if ( p_ps->
flags != 0 )
465 memset( p_gsii, 0,
sizeof( *p_gsii ) );
486 memset( p_gmi, 0,
sizeof( *p_gmi ) );
521 p->
hw_id = (
char *) malloc( len );
523 if ( p->
hw_id == NULL )
543 if ( strcmp( hw_id, p->
hw_id ) == 0 )
545 if ( strlen( p->
fw_id ) > 0 )
549 fprintf( stderr,
"Length of fw_id is 0 in %s for device %i (%s)\n",
550 __func__, i, p->
hw_id );
573 if ( strcmp( fw_id, p->
fw_id ) == 0 )
575 if ( strlen( p->
hw_id ) > 0 )
579 fprintf( stderr,
"Length of hw_id is 0 in %s for device %i (%s)\n",
580 __func__, i, p->
fw_id );
645 memset( tlv, 0,
sizeof( *tlv ) );
671 memset( tlv, 0,
sizeof( *tlv ) );
710 const char *prefix,
const char *suffix,
720 bytes +=
snprintf_safe( &buf[bytes], buflen - bytes,
"%u.%u.%u",
721 major, minor, patch);
724 bytes +=
snprintf_safe( &buf[bytes], buflen - bytes,
"%s", suffix );
1482 port = &p->
ports[i];
1763 p->
seconds = strtoul( s, &cp, 16 );
1778 #if !defined( MBG_TGT_MISSING_64_BIT_TYPES ) 1816 #endif // !defined( MBG_TGT_MISSING_64_BIT_TYPES ) uint32_t fractions
binary fractional part of a second, 0xFFFFFFFF -> 0.9999999... s (resolution 2^-32s =~ 233 ps) ...
MBG_TLV_UID uid
Unique source ID. See MBG_TLV_DATA::uid.
_NO_MBG_API_ATTR int _MBG_API chk_dev_xmulti_ref_supp_ext_src_info(const ALL_XMULTI_REF_INFO *info)
MBG_SYSLOG_GLB_SETTINGS settings
MBG_SYSLOG_GLB_SETTINGS.
void free_all_gpio_info(ALL_GPIO_INFO *p)
Free memory allocated by mbgextio_get_all_gpio_info.
MBG_IMS_SENSOR_STATE state
sensor state
int32_t BAUD_RATE
A data type to configure a serial port's baud rate.
MBG_GNSS_MODE_SETTINGS settings
Current GNSS mode settings.
NTP_REFCLK_STATE_IDX * refclk_states
MBG_IMS_FDM_STATE * fdm_state
the number of known modes
MBG_IO_PORT_TYPE_INFO_U data
Port type specific data.
#define MBG_PS_MSK_HS
see MBG_PS_BIT_HS
void ntp_tstamp_to_nanotime_64(const NTP_TSTAMP *p_nts, NANO_TIME_64 *p_nt64)
Convert a NTP_TSTAMP structure to a NANO_TIME_64 structure.
uint8_t n_str_type
max num of string types supported by any port
COM_PARM parm
transmission speed, framing, etc.
void chk_free_dev_hw_id(DEVICE_INFO *p)
MBG_SYSLOG_SERVER * servers
GNSS_SAT_INFO gnss_sat_info
see GNSS_SAT_INFO
MBG_GPIO_SETTINGS settings
current settings
voltage in val/exp, output state in flags
#define MBG_PS_MSK_FLAGS_OVR_SW
see MBG_PS_BIT_FLAGS_OVR_SW
struct mbg_klist_head list
User capture counter, see MAX_UCAP_ENTRIES.
MBG_GPIO_STATUS_IDX * states
void free_all_net_status_info(ALL_NET_STATUS_INFO *p)
Free an ALL_NET_STATUS_INFO structure.
MBG_GPIO_SETTINGS gpio_settings
void free_all_ims_state(ALL_IMS_STATE *p)
Free memory allocated by mbgextio_get_all_ims_state.
_NO_MBG_API_ATTR int _MBG_API chk_dev_xmulti_ref_supp_ext_source_metrics(const ALL_XMULTI_REF_INFO *info, int type)
#define MBG_PS_MSK_STR_TYPE_OVR_SW
see MBG_PS_BIT_STR_TYPE_OVR_SW
XMULTI_REF_INFO_IDX * infos
int setup_default_str_type_info_idx(STR_TYPE_INFO_IDX stii[], const RECEIVER_INFO *p_ri)
void(* release_priv)(struct mbg_syslog_server *)
static __mbg_inline int mbg_klist_is_empty(const struct mbg_klist_head *head)
uint16_t idx
string type index, 0..RECEIVER_INFO::n_str_type-1
Structure that represents a timestamp in NTP Timestamp Format.
int valid_port_info(const PORT_INFO *p_pi, const STR_TYPE_INFO_IDX str_type_info_idx[], int n_str_type)
#define MBG_PS_MSK_STR_MODE
see MBG_PS_BIT_STR_MODE
XMR_EXT_SRC_INFO_IDX * ext_src_infos
uint32_t reserved_2
Future use.
A The structure used to store the configuration of two serial ports.
XMR_HOLDOVER_STATUS * holdover_status
MBG_GPIO_CFG_LIMITS cfg_limits
see NTP_ROLE_CLIENT_SERVER
_NO_MBG_API_ATTR int _MBG_API chk_dev_xmulti_ref_supp_ext_source_stats(const ALL_XMULTI_REF_INFO *info, int type)
All XBP information of a XBP supporting device.
_NO_MBG_API_ATTR int _MBG_API chk_dev_xbp_supp_nodes(const ALL_XBP_INFO *info)
MBG_SNMP_V12_INFO_IDX * v12_infos
#define MAX_PARM_POUT
The max number of programmable pulse outputs supported by configuration programs. ...
MBG_NET_INTF_ADDR_INFO_IDX * addr_infos
void free_all_ptp_v1_common_datasets(ALL_PTP_V1_COMMON_DATASETS *p)
Free an ALL_PTP_V1_COMMON_DATASETS structure allocated by mbgextio_get_all_ptp_v1_common_datasets.
void free_all_xmulti_ref_info(ALL_XMULTI_REF_INFO *p)
Free an ALL_XMULTI_REF_INFO structure.
void free_all_ucap_info(ALL_UCAP_INFO *p)
Free memory allocated by mbgextio_get_all_ucap_info.
uint32_t reserved_1
Future use.
A timestamp with nanosecond resolution, but 64 bit size.
COM_PARM com[2]
COM0 and COM1 settings.
uint32_t reserved_1
Reserved for future use.
uint32_t flags
see MBG_IMS_STATE_FLAG_MASKS
char name[(16+1)]
Optional string identifying a customized firmware version, should be empty in standard versions...
#define MBG_ERR_INV_PARM
Invalid parameter.
void mbg_tlv_init(MBG_TLV *tlv, MBG_TLV_UID uid, MBG_TLV_TYPE tlv_type, uint32_t total_bytes)
Initializes a MBG_TLV.
#define MBG_PS_MSK_STR_TYPE
see MBG_PS_BIT_STR_TYPE
MBG_USER_MNGMNT_SETTINGS settings
settings, see MBG_USER_MNGMNT_SETTINGS
uint32_t type
GPIO type, see MBG_GPIO_TYPES.
#define MBG_ERR_ALREADY_ALLOC
pointer already allocated when trying to allocate memory
struct mbg_firmware_ufu * ufus
Array of MBG_FW_INFO::num_ufus.
MBG_IO_PORT_TYPE_INFO * get_io_port_type_info(const MBG_IO_PORT *port, uint16_t port_type)
Returns the currently used MBG_IO_PORT_TYPE_INFO for the appropriate MBG_IO_PORT. ...
All monitoring event data.
#define _inrange(_val, _min, _max)
MBG_IMS_FDM_OUTPUT_INFO_IDX * fdm_outinfo_idx
Configuration settings of a serial port.
#define MAX_PARM_PORT
The max number of serial ports supported by configuration programs.
XMR_METRICS_IDX * metrics_idx
#define MBG_PS_MSK_STR_TYPE_OVR_DEV
see MBG_PS_BIT_STR_TYPE_OVR_DEV
uint16_t good_svs
Numb. of satellites that can currently be received and used.
static __mbg_inline int num_bits_set(long val)
Count the number of bits which are not 0.
uint8_t num_servers
Number of configured servers.
uint32_t type
GPIO type, see MBG_GPIO_TYPES.
struct mbg_klist_head head
MBG_GNSS_MODE_INFO gnss_mode_info
MBG_NET_NAME_IDX * dns_srch_doms
uint32_t supp_modes
bit mask of modes supp. for this string type, see STR_MODE_MASKS
uint32_t read_bytes
Number of bytes read.
#define _int_from_size_t(_n)
void port_parm_from_port_settings(PORT_PARM *p_pp, int port_idx, const PORT_SETTINGS *p_ps, int cap_str_idx)
Set up a a legacy PORT_PARM structure from a PORT_SETTINGS structure.
void mbg_tlv_announce_init(MBG_TLV_ANNOUNCE *tlv, MBG_TLV_UID uid, MBG_TLV_TYPE tlv_feat_type, uint32_t total_bytes)
Initializes a MBG_TLV_ANNOUNCE structure.
void free_all_ims_info(ALL_IMS_INFO *p)
Free memory allocated by mbgextio_get_all_ims_info.
see MBG_GPIO_DEPENDS_ON_ASS_IO_IDX
void str_ntp_hex_to_nano_time_64(const char *s, NANO_TIME_64 *p)
Set up a NANO_TIME_64 structure from a hex string with a time in seconds and binary fractions...
uint32_t flags
currently unused, always 0
uint32_t flags
see XMR_INST_FLAG_BIT_MASKS
uint16_t num_ufus
Number of available UFUs.
void mbg_tlv_rcv_state_init(MBG_TLV_RCV_STATE *state, MBG_TLV_UID uid, uint32_t total_bytes)
Initializes MBG_TLV_RCV_STATE structure.
void setup_gps_only_sat_info_idx_from_statinfo(ALL_GNSS_INFO *p_agi)
Setup GNSS info from stat_info so we can use the same printing routine
MBG_PTP_V1_PORT_DATASET_IDX * port_datasets
NTP_SRV_MODE_INFO * srv_info
MBG_IO_PORT_SETTINGS_U data
Data union for settings' type.
MBG_TLV_TYPE type
One of the MBG_TLV_TYPES or MBG_TLV_FEAT_TYPES depending on the type of message.
MBG_SNMP_V12_TRAP_INFO_IDX * v12_trap_infos
void port_parm_mode_from_port_settings(uint8_t *pp_mode, const PORT_SETTINGS *p_ps, int cap_str_idx)
Convert a PORT_SETTINGS::mode to a legacy PORT_PARM::mode.
int alloc_dev_hw_id(DEVICE_INFO *p, size_t len)
int get_baud_rate_idx(BAUD_RATE baud_rate)
void free_all_database_info(ALL_DATABASE_INFO *p)
Free an ALL_DATABASE_INFO structure.
_NO_MBG_API_ATTR int _MBG_API chk_dev_net_cfg_supp_stage_2(const ALL_NET_CFG_INFO *info)
MBG_TLV_UID tlv_type
"Subtype" identifying current TLV, see MBG_TLV_TYPES
MBG_USER_MNGMNT_INFO user_mngmnt_info
MBG_GPIO_INFO info
limits and current settings of this GPIO port
uint32_t MBG_TLV_TYPE
A data type to hold one of the MBG_TLV_TYPES or MBG_TLV_FEAT_TYPES.
uint8_t n_com_ports
number of on-board serial ports
MBG_TLV_DATA data
See MBG_TLV_DATA.
#define DEFAULT_GPS_BAUD_RATES_C166
NTP_CLNT_MODE_INFO * clnt_info
void free_all_user_info(ALL_USER_INFO *p)
Free an ALL_USER_INFO structure.
_NO_MBG_API_ATTR int _MBG_API chk_dev_receiver_info(const RECEIVER_INFO *p)
NTP_REFCLK_CFG_INFO_IDX * refclk_info_idx
_NO_MBG_API_ATTR int _MBG_API chk_dev_ntp_supp_client(const ALL_NTP_CFG_INFO *info)
#define MBG_PS_MSK_BAUD_RATE_OVR_SW
Flag bit masks associated with MBG_COM_CFG_STATUS_BITS.
void free_all_monitoring_info(ALL_MONITORING_INFO *p)
Free an ALL_MONITORING_INFO structure.
A generic structure used to hold a GPIO port's settings.
MBG_UCAP_NET_RECV_INFO_IDX * recv_infos
All monitoring information.
static __mbg_inline void mbg_klist_init(struct mbg_klist_head *head)
#define MBG_ERR_N_STR_EXCEEDS_SUPP
Num. string formats of the device exceeds max. supp. by driver.
MBG_TLV_UID uid
Unique ID identifying following TLVs, 0 if empty/not set.
const char * get_hw_id_from_fw_id(const char *fw_id)
void free_all_io_ports(ALL_MBG_IO_PORTS *p)
Free memory allocated by mbgextio_get_all_io_ports.
void(* release_priv)(struct mbg_firmware *)
see XMRIF_BIT_HOLDOVER_STATUS_SUPP
#define DEFAULT_GPS_FRAMINGS_C166
uint32_t trans_bytes
Number of bytes transferred so far related to this TLV type.
Generic state of an IMS sensor.
_NO_MBG_API_ATTR int _MBG_API chk_dev_xmulti_ref_supp_mrf_none(const ALL_XMULTI_REF_INFO *info)
Summary information on all supported GNSS systems.
TLV structure containing information on current TLV transaction and its current data.
uint8_t num_dbs
Number of configurable databases.
MBG_IMS_FDM_INFO * fdm_info
Information on a specific supported string format.
MBG_IO_PORT_SETTINGS * setts
XMR_STATS_IDX * stats_idx
NTP_PEER_SETTINGS_IDX * peer_settings_idx
char framing[4]
ASCIIZ framing string, e.g. "8N1" or "7E2", see MBG_FRAMING_STRS.
uint8_t mode[2]
COM0 and COM1 output mode, see LGCY_STR_MODES.
the number of defined sources, must not exceed MAX_N_MULTI_REF_TYPES
uint8_t gnss_type
GNSS type as enumerated in MBG_GNSS_TYPES.
uint8_t str_type
index of the supported time string formats, see STR_TYPE_INFO_IDX
uint16_t svs_in_view
Num. of satellites that should be visible above the horizon.
XBP_NODE_LIMITS * node_limits
MBG_SNMP_V3_TRAP_INFO_IDX * v3_trap_infos
DEVICE_INFO device_list[(16+1)]
uint32_t flags
reserved, don't use, currently 0
#define MBG_PS_MSK_BAUD_RATE
see MBG_PS_BIT_BAUD_RATE
void(* release_priv)(struct mbg_event *)
see MBG_IMS_STATE_FLAG_BIT_HAS_FDM
void free_all_ucap_net_info(ALL_UCAP_NET_INFO *p)
Free an ALL_UCAP_NET_INFO structure.
transmission automatically if required, e.g. on capture event
MBG_IMS_FDM_OUTPUT_STATE_IDX * fdm_output_state_idx
#define MBG_ERR_N_COM_EXCEEDS_SUPP
Num. COM ports of the device exceeds max. supp. by driver.
MBG_EVENT_VALUE * dict_entries
MBG_NET_INTF_LINK_INFO_IDX * link_infos
int setup_gps_only_gnss_info_from_statinfo(ALL_GNSS_INFO *p_agi)
Setup GNSS info from stat_info so we can use the same printing routine.
All network configuration parameters.
All PTPv2 common datasets for a PTP device.
_NO_MBG_API_ATTR int _MBG_API chk_dev_ims_is_volt_out_enabled(const ALL_IMS_STATE *ims_state, unsigned idx)
XMULTI_REF_INSTANCES instances
MBG_NET_GLB_CFG_INFO glb_cfg_info
XBP_NODE_INFO_IDX * node_infos
void(* release_backref)(struct mbg_event *)
uint16_t idx
port index, 0..RECEIVER_INFO::n_com_ports-1
uint8_t num_services
Current number of supported services.
Satellite information for a particular GNSS type.
ALL_SYSLOG_INFO * all_syslog_info
NTP_PEER_STATE_IDX * peer_states
uint16_t good_svs
Num. of satellites that can currently be received and used.
uint32_t supp_ntp_roles
supported NTP roles, see NTP_ROLE_MASKS
STR_TYPE_INFO str_type_info
uint32_t reserved_1
Future use.
Structure containing state information while reading TLV data.
_NO_MBG_API_ATTR int _MBG_API chk_dev_gpio_has_status(const ALL_GPIO_INFO *info)
Checks whether GPIO supports status function.
uint32_t flags
see MBG_GPIO_CFG_LIMIT_FLAG_MASKS
uint16_t feat_flags
see XMR_EXT_SRC_FEAT_FLAG_MSKS
uint32_t reserved_2
Future use.
void free_all_firmware_info(ALL_FIRMWARE_INFO *p)
Free an ALL_FIRMWARE_INFO structure.
uint16_t svs_in_view
Numb. of satellites that should be visible above the horizon.
void free_all_events(ALL_EVENTS *p)
Free an ALL_EVENTS structure.
All PTPv1 common datasets for a PTP device.
ALL_GNSS_SAT_INFO_IDX gnss_sat_info_idx
MBG_GPIO_LIMITS gpio_limits
#define _is_supported(_i, _msk)
MBG_GPIO_LIMITS limits
limits of this GPIO port
NTP_MISC_LIMITS * misc_limits
MBG_PTP_V2_PORT_DATASET_IDX * port_datasets
Current settings and general capabilities of a serial port.
#define MBG_ERR_NO_MEM
Failed to allocate memory.
NTP_TRUSTED_KEY_INFO_IDX * trusted_key_info_idx
_NO_MBG_API_ATTR int _MBG_API chk_dev_ims_is_pll_locked(const ALL_IMS_STATE *ims_state, unsigned idx)
One of several sets of satellite information for a particular GNSS type.
ALL_SNMP_INFO * all_snmp_info
void trim_whitespace(char *s)
Trim both leading and trailing whitespace from a string.
see XMR_EXT_SRC_FEAT_FLAG_BIT_METRICS
the number of known baud rates
void free_all_ptp_v2_common_datasets(ALL_PTP_V2_COMMON_DATASETS *p)
Free an ALL_PTP_V2_COMMON_DATASETS structure allocated by mbgextio_get_all_ptp_v2_common_datasets.
uint32_t feat_flags
Feature flags, see MBG_NET_GLB_CFG_INFO_MASKS.
#define MBG_SUCCESS
Error codes used with Meinberg devices and drivers.
#define mbg_klist_first_entry(ptr, type, member)
uint32_t total_bytes
Number of all bytes including header(s) that are related to a TLV block transaction.
uint32_t supp_flags
supported flags, see MBG_GPIO_FLAG_MASKS
A generic structure used to specify a GPIO port's limits.
MBG_IMS_FDM_LIMITS * fdm_limits
#define MBG_PS_MSK_FRAMING_OVR_SW
see MBG_PS_BIT_FRAMING_OVR_SW
uint8_t num_types
See MBG_IO_PORT_TYPE_INFO.
void free_all_syslog_info(ALL_SYSLOG_INFO *p)
Free an ALL_SYSLOG_INFO structure.
NTP_SYMM_KEY_LIMITS * symm_key_limits
uint32_t seconds
seconds since NTP epoch, see NTP_SEC_BIAS
void free_all_snmp_info(ALL_SNMP_INFO *p)
Free an ALL_SNMP_INFO structure.
MBG_IO_PORT_TYPE_INFO * pt_infos
_NO_MBG_API_ATTR int _MBG_API chk_dev_ntp_supp_server(const ALL_NTP_CFG_INFO *info)
#define MBG_PS_MSK_FRAMING
see MBG_PS_BIT_FRAMING
uint32_t cur_bytes
Number of bytes in MBG_TLV::value.
void str_ntp_hex_to_ntp_tstamp(const char *s, NTP_TSTAMP *p)
Set up a NTP_TSTAMP structure from a hex string with a time in seconds and binary fractions...
_NO_MBG_API_ATTR int _MBG_API chk_dev_gpio_dep_on_ass_idx(const ALL_GPIO_INFO *gpio_info, unsigned idx)
#define MBG_PS_MSK_FLAGS
see MBG_PS_BIT_FLAGS
uint32_t MBG_TLV_UID
A data type used to hold a unique ID (UID) for a TLV transaction.
A structure initiating a TLV transfer.
uint32_t reserved_3
Future use.
#define MBG_PS_MSK_STR_MODE_OVR_SW
see MBG_PS_BIT_STR_MODE_OVR_SW
const char * mbg_framing_strs[N_MBG_FRAMINGS]
MBG_SNMP_V3_INFO_IDX * v3_infos
see XMRIF_BIT_EXT_SRC_INFO_SUPP
MBG_SYSLOG_GLB_INFO glb_info
uint8_t mode
string mode, see STR_MODES
Automatically, when a capture event has occurred, COM1 only.
_NO_MBG_API_ATTR int _MBG_API chk_dev_gpio_supp_ass_idx(const ALL_GPIO_INFO *gpio_info, unsigned idx)
static __mbg_inline uint32_t bin_frac_32_to_dec_frac(uint32_t bin, uint32_t scale)
Convert a 32 bit binary fraction to a scaled decimal.
_NO_MBG_API_ATTR int _MBG_API chk_dev_ims_has_fdm(const ALL_IMS_INFO *info)
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.
uint8_t installed_fws
Currently installed firmwares.
void(* release_priv)(struct mbg_firmware_ufu *)
void free_all_gpio_state(ALL_GPIO_STATE *p)
Free memory allocated by mbgextio_get_all_gpio_state.
void free_all_ntp_status(ALL_NTP_STATUS *p)
Free an ALL_NTP_STATUS structure.
MBG_GPIO_INFO_IDX * infos
Satellite receiver status information.
MBG_NET_INTF_ROUTE_INFO_IDX * route_infos
#define MBG_PS_MSK_HS_OVR_SW
see MBG_PS_BIT_HS_OVR_SW
Software revision information.
uint32_t reserved_1
Future use.
Current settings and general capabilities of a specific serial port.
void free_all_ntp_cfg_info(ALL_NTP_CFG_INFO *p)
Free an ALL_NTP_CFG_INFO structure.
uint32_t supp_framings
bit mask of framings supp. by this port, see MBG_FRAMING_MASKS
All SNMP configuration information.
control voltage in val/exp, lock state in flags
void free_all_svc_info(ALL_SERVICE_INFO *p)
Free an ALL_SERVICE_INFO structure.
void free_all_xmulti_ref_status(ALL_XMULTI_REF_STATUS *p)
Free an ALL_XMULTI_REF_STATUS structure.
see MBG_GPIO_CFG_LIMIT_FLAG_BIT_STATUS_SUPP
MBG_IMS_SENSOR_STATE_IDX * sensor_state_idx
MBG_IP_ADDR_IDX * dns_srvrs
void(* free_priv_data)(const struct mbg_io_port *, void *)
void free_all_xbp_info(ALL_XBP_INFO *p)
Free an ALL_XBP_INFO structure.
#define _mbg_decode_revision(_rev, _major, _minor, _patch)
_NO_MBG_API_ATTR int _MBG_API chk_dev_xmulti_ref_supp_holdover_status(const ALL_XMULTI_REF_INFO *info)
int snprintf_safe(char *s, size_t max_len, const char *fmt,...)
A portable, safe implementation of snprintf()
uint8_t n_prg_out
number of programmable pulse outputs
MBG_SERVICE_MGMT_INFO mgmt_info
All monitoring syslog data.
#define MBG_ERR_NOT_SUPP_BY_DEV
Command or feature not supported by device.
NTP_MISC_ORPHAN_MODE_INFO * orphan_mode_info
uint32_t gnss_set
bit mask of currently used GNSS systems, see MBG_GNSS_TYPE_MASKS
#define MBG_ERR_N_GNSS_EXCEEDS_SUPP
Num. of GNSS systems supp. by device exceeds max. supp. by driver.
int16_t handshake
handshake mode, yet only HS_NONE supported
MBG_USER * users
system users for internal authentication
void(* release_backref)(struct mbg_service *)
void(* release_backref)(struct mbg_user *)
void free_all_net_cfg_info(ALL_NET_CFG_INFO *p)
Free an ALL_NET_CFG_INFO structure.
uint32_t features
Mask of XBP features, see XBP_FEAT_MASKS.
BAUD_RATE mbg_baud_rates[N_MBG_BAUD_RATES]
PORT_SETTINGS port_settings
current configuration of the port
see XMRIF_BIT_MRF_NONE_SUPP
int64_t nano_secs
[nanoseconds]
int64_t secs
[seconds], usually since 1970-01-01 00:00:00
UCAP_ENTRY * calloc_ucap_entry(void)
uint32_t flags
flags, see MBG_GPIO_FLAG_MASKS
void(* release_priv)(struct mbg_database *)
MBG_DATABASE_GLB_INFO glb_info
void(* release_priv)(struct mbg_user *)
#define DEFAULT_SUPP_STR_TYPES_GPS
Bit mask of string types supported by legacy GPS receivers.
int setup_port_info_from_port_parm(PORT_INFO_IDX pii[], const PORT_PARM *p_pp, const RECEIVER_INFO *p_ri)
Setup an array of PORT_INFO_IDX structures from a PORT_PARM.
the number of known framings
see MBG_NET_GLB_SUPP_STAGE_2
int get_str_idx(const char *search, const char *str_table[], int n_entries)
static __mbg_inline void mbg_klist_delete_item(struct mbg_klist_head *item)
transmission on request by received '?' character only
On request only, if a capture event is available, COM1 only.
uint16_t port_type
See MBG_IO_PORT_TYPES.
_NO_MBG_API_ATTR int _MBG_API chk_dev_ims_is_volt_out_overload(const ALL_IMS_STATE *ims_state, unsigned idx)
uint32_t supp_baud_rates
bit mask of baud rates supp. by this port, see MBG_BAUD_RATE_MASKS
BAUD_RATE baud_rate
transmission speed, e.g. 19200L, see MBG_BAUD_RATES
A structure used to identify a device type and supported features.
STR_TYPE_INFO default_str_type_info[2]
uint32_t check_valid_port_info(const PORT_INFO *p_pi, const STR_TYPE_INFO_IDX str_type_info_idx[], int n_str_type)
void port_settings_from_port_parm(PORT_SETTINGS *p_ps, int port_idx, const PORT_PARM *p_pp, int cap_str_idx)
Set up a PORT_SETTINGS structure from a legacy PORT_PARM structure.
MBG_TLV_HDR hdr
See MBG_TLV_HDR.
int chk_sw_rev_name(SW_REV *p, int verbose)
Check if a software revision name should be displayed.
void port_settings_from_port_parm_mode(PORT_SETTINGS *p_ps, uint8_t pp_mode, int cap_str_idx)
Convert PORT_PARM::mode to PORT_SETTINGS::mode.
#define MAX_PARM_STR_TYPE
The max number of serial string types supported by configuration programs.
const char * get_fw_id_from_hw_id(const char *hw_id)
int get_framing_idx(const char *framing)
see XMR_EXT_SRC_FEAT_FLAG_BIT_STATS
int mbg_snprint_revision(char *buf, size_t buflen, const char *prefix, const char *suffix, uint32_t rev)
int chk_set_n_gnss_supp(ALL_GNSS_INFO *p_agi)
NTP_SYMM_KEY_INFO_IDX * symm_key_info_idx
#define NTP_SEC_BIAS
NTP epoch bias from ordinary time_t epoch.
uint16_t type
sensor type, see MBG_IMS_SENSORS
uint32_t num_users
current number of users
uint32_t supp_gnss_types
Bit masks of supported GNSS types, see MBG_GNSS_TYPE_MASKS.
XMULTI_REF_STATUS_IDX * status
MBG_TLV_DATA data
See MBG_TLV_DATA.
void(* release_priv)(struct mbg_service *)