|
Zephyr Project API 4.4.99
A Scalable Open Source RTOS
|
Protocol-neutral precision clock operations. More...
Go to the source code of this file.
Data Structures | |
| struct | precision_clock_api |
| Operations implemented by a precision clock adapter. More... | |
| struct | precision_clock |
| Protocol-neutral precision clock instance. More... | |
Macros | |
| #define | PRECISION_CLOCK_SCALED_PPM_SHIFT 16 |
| Number of fractional bits in a scaled parts-per-million rate adjustment. | |
| #define | PRECISION_CLOCK_SCALED_PPM_ONE (INT64_C(1) << PRECISION_CLOCK_SCALED_PPM_SHIFT) |
| One part per million in the scaled rate-adjustment representation. | |
Functions | |
| int | precision_clock_read (const struct precision_clock *precision_clk, precision_time_t *time_ns) |
| Read a precision clock. | |
| int | precision_clock_set (const struct precision_clock *precision_clk, precision_time_t time_ns) |
| Set a precision clock. | |
| int | precision_clock_adjust_phase (const struct precision_clock *precision_clk, precision_time_t phase_ns) |
| Apply a phase adjustment to a precision clock. | |
| int | precision_clock_ppb_to_scaled_ppm (double ppb, int64_t *scaled_ppm) |
| Convert parts per billion to scaled parts per million. | |
| int | precision_clock_adjust_rate (const struct precision_clock *precision_clk, int64_t scaled_ppm) |
| Set the rate offset of a precision clock. | |
Protocol-neutral precision clock operations.