Nexus Embedded Platform 1.0.0
Statically assembled reusable embedded mechanisms
Loading...
Searching...
No Matches
cache.h
Go to the documentation of this file.
1
8#ifndef NEXUS_ARCH_CACHE_H
9#define NEXUS_ARCH_CACHE_H
10
11#include "nexus/arch/features.h"
12#include <stddef.h>
13#include <stdint.h>
14
15#ifdef __cplusplus
16extern "C" {
17#endif
38nx_arch_result_t nx_arch_dcache_clean(uintptr_t address, size_t bytes);
53nx_arch_result_t nx_arch_dcache_invalidate(uintptr_t address, size_t bytes);
66 size_t bytes);
84nx_arch_result_t nx_arch_instruction_sync(uintptr_t address, size_t bytes);
85#ifdef __cplusplus
86}
87#endif
88#endif
nx_arch_result_t nx_arch_dcache_clean_invalidate(uintptr_t address, size_t bytes)
Publish dirty data and discard the complete cache lines.
nx_arch_result_t nx_arch_dcache_invalidate(uintptr_t address, size_t bytes)
Discard complete data cache lines without writing them.
nx_arch_result_t nx_arch_instruction_sync(uintptr_t address, size_t bytes)
Make a complete owned range coherent for CPU instructions.
nx_arch_result_t nx_arch_dcache_clean(uintptr_t address, size_t bytes)
Publish dirty data cache lines to the point of coherency.
Reviewed CPU mechanisms and allocation-free result types.
nx_arch_result_t
Result of a validated local CPU mechanism operation.
Definition features.h:16