|
Nexus Embedded Platform 0.1.0
Statically assembled reusable embedded mechanisms
|
Explicit clock consumers and epoch-bound drain control. More...
#include "nexus/core/status.h"Go to the source code of this file.
Data Structures | |
| struct | nx_clock_lease |
| One stable caller-owned consumer token. More... | |
| struct | nx_clock_barrier_t |
| Epoch-bound close control and quiescence evidence. More... | |
Typedefs | |
| typedef struct nx_clock_domain | nx_clock_domain_t |
| Opaque provider, statically supplied by its privileged owner. | |
| typedef struct nx_clock_lease | nx_clock_lease_t |
| One stable caller-owned consumer token. | |
Enumerations | |
| enum | nx_clock_power_mode_t { NX_CLOCK_SHALLOW_SLEEP = 0 , NX_CLOCK_DEEP_STOP , NX_CLOCK_DYNAMIC_RUN } |
| Only shallow sleep preserves the established clock/time domain. More... | |
Functions | |
| nx_result_t | nx_clock_domain_acquire (nx_clock_domain_t *domain, nx_clock_lease_t *lease) |
| Acquire one admitted clock consumer without waiting. | |
| nx_result_t | nx_clock_domain_release (nx_clock_domain_t *domain, nx_clock_lease_t *lease) |
| Remove the exact retained token after consumer drain. | |
| nx_result_t | nx_clock_domain_close (nx_clock_domain_t *domain, nx_clock_barrier_t *control) |
| Close admission and return the current epoch control. | |
| nx_result_t | nx_clock_domain_quiescent (nx_clock_barrier_t control) |
| Validate closed admission and zero retained consumers. | |
| nx_result_t | nx_clock_domain_reopen (nx_clock_barrier_t control) |
| Reopen a drained domain under a new admission epoch. | |
Explicit clock consumers and epoch-bound drain control.
Definition in file clock_domain.h.
| typedef struct nx_clock_domain nx_clock_domain_t |
Opaque provider, statically supplied by its privileged owner.
Definition at line 16 of file clock_domain.h.
| typedef struct nx_clock_lease nx_clock_lease_t |
One stable caller-owned consumer token.
Only shallow sleep preserves the established clock/time domain.
| Enumerator | |
|---|---|
| NX_CLOCK_SHALLOW_SLEEP | |
| NX_CLOCK_DEEP_STOP | |
| NX_CLOCK_DYNAMIC_RUN | |
Definition at line 43 of file clock_domain.h.
| nx_result_t nx_clock_domain_acquire | ( | nx_clock_domain_t * | domain, |
| nx_clock_lease_t * | lease ) |
Acquire one admitted clock consumer without waiting.
| nx_result_t nx_clock_domain_close | ( | nx_clock_domain_t * | domain, |
| nx_clock_barrier_t * | control ) |
Close admission and return the current epoch control.
| nx_result_t nx_clock_domain_quiescent | ( | nx_clock_barrier_t | control | ) |
Validate closed admission and zero retained consumers.
| nx_result_t nx_clock_domain_release | ( | nx_clock_domain_t * | domain, |
| nx_clock_lease_t * | lease ) |
Remove the exact retained token after consumer drain.
| nx_result_t nx_clock_domain_reopen | ( | nx_clock_barrier_t | control | ) |
Reopen a drained domain under a new admission epoch.