Remote memory
Header:
openenoc_endpoint_rmem.hImplementation:
openenoc_endpoint_rmem.c-
openenoc_endpoint_status_t openenoc_endpoint_rmem_get_region(volatile const csr__endpoint_interface_t *endpoint, openenoc_endpoint_rmem_region_t *region)
Return the one mapped RMEM memory window.
- Parameters:
endpoint – In; required mapped, word-aligned endpoint-interface pointer.
region – Out; required mapped words pointer and capacity in 32-bit words.
- Returns:
OK;INVALID_ARGUMENTfor invalid endpoint pointer/output;UNSUPPORTEDwhen RMEM is absent.- Preconditions:
Configure peer mappings before using the pointed-to region. Accessors select the peer in hardware; callers check subregion alignment/capacity and follow platform MMIO rules.
- Side effects:
Uses generated capability information and returns an existing mapping; performs no MMIO access, remote transaction or allocation.
Public declarations
The maintained header below provides the exact public type and enum definitions.
RMEM region type
1typedef struct {
2 volatile uint32_t *words;
3 uint32_t word_count;
4} openenoc_endpoint_rmem_region_t;
5