flexPTP 1.0
An IEEE 1588 PTP implementation designed for microcontrollers
Loading...
Searching...
No Matches
settings_interface.h
Go to the documentation of this file.
1
10#ifndef FLEXPTP_SETTINGS_INTERFACE_H_
11#define FLEXPTP_SETTINGS_INTERFACE_H_
12
13#include <stdint.h>
14
15#include "timeutils.h"
16#include "ptp_types.h"
17
18#ifdef __cplusplus
19extern "C" {
20#endif
21
27void ptp_set_clock_offset(int32_t offset); // set clock offset in nanoseconds
28
34int32_t ptp_get_clock_offset();
35
41void ptp_prefer_master_clock(uint64_t clockId);
42
46void ptp_unprefer_master_clock(); // allow slave to synchronize to the BMCA-elected master
47
54
61
67void ptp_set_domain(uint8_t domain);
68
74uint8_t ptp_get_domain();
75
81void ptp_set_addend(uint32_t addend);
82
88uint32_t ptp_get_addend();
89
95void ptp_set_tuning(float tuning_ppb);
96
103
110
117
124
131
138
145
151void ptp_set_tlv_chain_by_name(const char * tlvSet);
152
158const char * ptp_get_loaded_tlv_chain();
159
165void ptp_set_profile_flags(uint8_t flags);
166
172uint8_t ptp_get_profile_flags();
173
179void ptp_load_profile(const PtpProfile * pProfile); // load profile preset
180
187
193void ptp_set_delay_req_log_period(int8_t drlp);
194
201
207void ptp_set_sync_log_period(int8_t slp);
208
215
221void ptp_set_announce_log_period(int8_t alp);
222
228void ptp_set_coarse_threshold(uint64_t ns);
229
235uint64_t ptp_get_coarse_threshold();
236
240void ptp_set_priority1(uint8_t p1);
241
247uint8_t ptp_get_priority1();
248
252void ptp_set_priority2(uint8_t p2);
253
259uint8_t ptp_get_priority2();
260
265
272
277
284
288void ptp_set_clock_variance(uint16_t var);
289
295uint16_t ptp_get_clock_variance();
296
300void ptp_set_local_steps_removed(uint16_t lsr);
301
308
314void ptp_time(TimestampU * pT);
315
321void ptp_set_time(TimestampU * pT);
322
329void ptp_update_time(TimestampI * dt);
330
331#ifdef __cplusplus
332}
333#endif
334
335#endif /* FLEXPTP_SETTINGS_INTERFACE_H_ */
This module defines the fundamental PTP message and state machine type, flags, bitfields and the PTP ...
PtpTransportType
PTP transport type enumeration.
Definition: ptp_types.h:136
PtpClockClass
Standard PTP clock classes.
Definition: ptp_types.h:204
PtpClockAccuracy
Standard clock accuracy definitions.
Definition: ptp_types.h:220
PtpDelayMechanism
PTP Delay mechanism enumeration.
Definition: ptp_types.h:144
PtpTransportSpecific
PTP transport specific enumeration.
Definition: ptp_types.h:152
void ptp_time(TimestampU *pT)
uint16_t ptp_get_local_steps_removed()
void ptp_set_delay_mechanism(PtpDelayMechanism dm)
uint64_t ptp_get_coarse_threshold()
void ptp_set_clock_variance(uint16_t var)
void ptp_set_announce_log_period(int8_t alp)
PtpDelayMechanism ptp_get_delay_mechanism()
void ptp_set_delay_req_log_period(int8_t drlp)
PtpClockClass ptp_get_clock_class()
int8_t ptp_get_announce_log_period()
void ptp_set_transport_type(PtpTransportType tp)
void ptp_set_clock_offset(int32_t offset)
void ptp_set_time(TimestampU *pT)
PtpTransportType ptp_get_transport_type()
uint8_t ptp_get_priority2()
uint8_t ptp_get_profile_flags()
uint64_t ptp_get_current_master_clock_identity()
int8_t ptp_get_sync_log_period()
uint8_t ptp_get_priority1()
int8_t ptp_get_delay_req_log_period()
int32_t ptp_get_clock_offset()
uint8_t ptp_get_domain()
void ptp_set_domain(uint8_t domain)
void ptp_set_local_steps_removed(uint16_t lsr)
PtpClockAccuracy ptp_get_clock_accuracy()
void ptp_set_priority2(uint8_t p2)
void ptp_set_addend(uint32_t addend)
float ptp_get_tuning()
PtpTransportSpecific ptp_get_transport_specific()
void ptp_set_sync_log_period(int8_t slp)
void ptp_set_transport_specific(PtpTransportSpecific tspec)
void ptp_unprefer_master_clock()
void ptp_prefer_master_clock(uint64_t clockId)
uint64_t ptp_get_own_clock_identity()
void ptp_set_clock_accuracy(PtpClockAccuracy ca)
void ptp_set_tuning(float tuning_ppb)
void ptp_set_tlv_chain_by_name(const char *tlvSet)
void ptp_set_clock_class(PtpClockClass cc)
void ptp_set_priority1(uint8_t p1)
uint16_t ptp_get_clock_variance()
void ptp_set_profile_flags(uint8_t flags)
void ptp_update_time(TimestampI *dt)
const char * ptp_get_loaded_tlv_chain()
uint32_t ptp_get_addend()
void ptp_load_profile(const PtpProfile *pProfile)
void ptp_set_coarse_threshold(uint64_t ns)
PTP profile structure.
Definition: ptp_types.h:356
Timestamp (signed)
Definition: timeutils.h:33
Timestamp (unsigned)
Definition: timeutils.h:24
This module defines storage classes for timestamps and operations on time values.